Git常见使用场景 - 正在开发,线上出BUG了
正在拼命的写代码,突然线上出现了一个bug,需要立刻解决,但是目前的工作空间代码改动挺大的,怎么解决?
方法1:在当前主分支修改bug
暂存当前的改动的代码,目的是让工作空间和远程代码一致:
git stash
修改完bug后提交修改:
git add .
git commit -m "fix bug 1"
git push
从暂存区把之前的修改恢复,这样就和之前改动一样了
git stash pop
这时可能会出现冲突,因为你之前修改的文件,可能和bug是同一个文件,如果有冲突会提示:
Auto-merging xxx.java
CONFLICT (content): Merge conflict in xxx.java
前往xxx.java
解决冲突。
注意stash pop
意思是从暂存区恢复到工作空间,同时删除此条暂存记录。
方法2:拉一个新分支
老司机都推荐这样做,充分利用了git特性,先暂存一下工作空间改动:
git stash
新建一个分支,并且换到这个新分支
git branch fix_bug //新建分支
git checkout fix_bug //切换分支
这时候就可以安心的在这个fix_bug
分支改bug
了,改完之后:
git add .
git commit -m "fix a bug"
切换到master主分支:
git checkout master
从fix_bug合并到master分支:
git merge fix_bug
提交代码:
git push
然后从暂存区恢复代码:
git stash pop
此时如有冲突,需要解决冲突
哈哈,工作空间又恢复到了原状,继续开发。
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »