git常用操作
场景一:多分支开发,不影响主分支
在工作中遇到要新增功能但同时不能影响主分支现有的业务逻辑,我们可以新建一个分支开发代码,测试完毕后再合并到主分支,不用担心新代码影响现有代码逻辑。接下来具体看操作步骤:
1.新建一个分支。这句命令意思是新建了一个 testlog 的分支并切换到了 testlog 分支
git checkout -b testlog
此时 testlog 分支的代码和我们创建分支前的代码是一样的
2.可以通过 git branch 命令查看所有的分支。* 号表示当前所在分支
git branch
现在就可以在 testlog 分支上编写新功能的代码了,不会影响主分支。我现在新建一个测试文件
3.将 testlog 分支的文件提交到本地,不要提交到远程
git add . git commit -m "添加测试分支代码"
下图表示已经将测试分支的代码提交到了本地
4.切换回主分支
git checkout master
下图可以看到分支已经切回master分支
这时看代码文件目录是没有 testlog 分支上的测试文件的
5.将 testlog 分支的代码合并到 master
git merge testlog
下图表示合并成功
再看文件目录就会出现我们在 testlog 分支上新建的文件了
整体流程回顾
1.新建并切换到分支 git checkout -b testlog 2.在新分支编写代码并提交到本地
git add .
git commit -m "提交的描述" 3.切换到主分支 git checkout master 4.吧 testlog 分支的文件合并到 master 分支 git merge testlog 5.查看所有分支 git branch
场景二:代码回滚到某个提交的节点和重新回滚到原来的节点
正常开发中可能由于疏忽把带有bug的代码提交到了远程,经过部署后影响了线上版本。发现后由于时间紧急没有时间修复,可以吧代码回滚到修改之前的版本紧急上线来确保线上没有问题,然后认真仔细的定位问题,等待后续重新发布上线。接下来查看具体操作步骤
1.git log 查看最近提交记录,找到要回滚到哪个节点
git log
下图可以看到最近提交的几次记录,按方向键下可以往下翻,确认后 Ctrl + c 退出查看
2.找到你需要回滚的commitId,输入git reset --hard {commitId},将本地文件回滚
git reset --hard b8984a708c42a85d23d13a83c890609738824c75
下图表示我已经将代码回滚到了之前的节点
3.回滚到之前的节点
git log -g
git log -g 可以查看所有的提交记录,找到最后一次的提交记录回滚过去,和上述操作相同
找到最后一次的提交记录重新回滚,下图表示重新回滚了回去
整体流程回顾
1.查看最近提交记录找到要回滚的 commit id 右键复制 git log 2.根据 commit id 回滚代码 git reset --hard xxxxxxxxxxxxxxx 3.查看所有的提交记录,将代码重新滚回去 git log -g