Git GUIDE
常用命令
-
分支操作类
用途 命令 详解 查看远程所有分子 git branch -a查看本地分支 git branch新切分支 git checkout -b [name]分支间切换 git checkout [name]删除本地分支 git branch -d [name]删除远程分支 git push origin --delete [name] -
提交操作类
用途 命令 详解 新切分支 git checkout -b [name]分支间切换 git checkout [name]删除本地分支 git branch -d [name]删除远程分支 git push origin --delete [name] -
远程操作相关类
用途 命令 详解 初始化 git init本地仓库与远程建立连接 git remote add origin git@github.com:XXXX/nothing2.git远程获取最新版本到本地 git fetch origin [name]远程分支与本地分支比较差异 然后合并 把某个分支上的内容到本地 git pull origin [name]相当于是从远程获取最新版本并merge到本地 -
- git log 查看commit日志
- git rebase -i HEAD~[nummber] ps:nummber为要合并日志的个数
- 将要丢弃的pick 改成s(通常第一个保留后面的修改s 后面的会合并到第一个上) 保存后修改下message即可
- 如果合并出现问题使用git rebase --abort终止合并
-
merge相关
- dev合并到master --合并前记得拉取最新代码
git checkout mastergit merge dev
- master 最新合并到 dev
git checkout devgit merge master
- 解决冲突
- vscode中 根据情况
accept incoming change - 冲突解决完成 提交 commit
- 再次合并
git merge master git stash查看当前所有未解决冲突的文件 也有可能是解决冲突了未提交commitgit lg查看最新提交commit时间 判断代码是否合并成功git log -1可以查看最新的一次修改记录
- vscode中 根据情况
- dev合并到master --合并前记得拉取最新代码
-
Git cherry-pick 合某一个commit
- 自己的分支下
git lg获得要合并到master分支上的commit id - 切到master分支
git cherry-pick <C2_id>合并单一commit到主分支上 - 解决冲突
git add . git commit git push提交- 或者
git add .提交到缓存区git cherry-pick --continue继续合并
- 自己的分支下
-
git tag 打标签
- checkout到要打标签的分支上
git tag v1.0--默认标签是打在最新提交的commit上的git tag--查看所有标签git tag -d v0.1.2--删除Taggit tag v0.9 f52c633--打标签到指定的commit上 最后一个参数是commitID- 创建带有说明的标签,用-a指定标签名,-m指定说明文字:
git tag -a v0.1 -m "version 0.1 released" 1094adb
git show <tagname>--可以看到说明文字
- 提交tag到远程仓库
git push origin v0.1.2--将v0.1.2 Tag提交到git服务器git push origin –-tags--将本地所有Tag一次性提交到git服务器
- checkout到要打标签的分支上
-
git stash 命令 *
生产发布 回滚等
- 代码回滚到上一个版本
github代码贡献
-
github 贡献代码流程
- 进入到自己要贡献的开源项目
- 点击Fork后将会克隆一份代码到自己的github账户中
- 将自己github的远程代码拉倒本地 并切一个分支进行修改
- 将自己修改好的代码合并到master分支上
- 在自己github仓库中fork的开源项目中点击"New pull request" 向源码项目提交请求
- 作者看到会考虑是否合并
gitlab 添加项目
-
Git global setup
- git config --global user.name "songbo"
- git config --global user.email "602088180@qq.com"
-
创建新仓库
- git clone http://47.99.177.19:9000/front-end/vue-jsplumb.git
- cd vue-jsplumb
- touch README.md
- git add README.md
- git commit -m "add README"
- git push -u origin master
-
已经存在的文件件
- cd existing_folder
- git init
- git remote add origin http://47.99.177.19:9000/front-end/vue-jsplumb.git
- git add .
- git commit -m "Initial commit"
- git push -u origin master
-
已经存在的项目仓库
- cd existing_repo
- git remote add origin http://47.99.177.19:9000/front-end/vue-jsplumb.git
- git push -u origin --all
- git push -u origin --tags
git工作流指南
- 集中式工作流
1
23
3 - 功能分支工作流
- Gitflow工作流
- Fork工作流
- pull Request
持续更新中
