1.当远程库有更新,本地分支又在开发,并且本地需要远程更新的东西时
可做如下步骤:
可做如下步骤:
(1).在本地分支通过git add -A 和 git stash将自己的代码暂存起来 (2).返回主分支(master),进行master: git pull (3).切回到自己的工作分支,进行git rebase master (4).将自己暂存起来的代码通过git stash pop出来
2.当基于某个远程分支做东西时,每次做东西都要更新本地
具体步骤如下:
(1).为避免冲突,每次可以直接在本地将远程分支删除-git br -D (远程分支名)
(2).在主分支(master)上进行git pull
(3).再从主分支上切回到远程分支
(4)在从远程分支分自己的分支开始工作
或者:
(1).在主远程分支(file-manager)git pull
(2).如果有冲突,就采用git fetch --all
(3).然后git reset —hard origin/file-manager
(4).最后再git pull一次,就不会有冲突了
3.当我们在自己的分支完成任务时,push到远程库,需要rebase
当本地代码在code review后做了更改,同样需要rebase再强推
(当然并不是每次都需要rebase,只有这个分支的任务做完了,功能都实现了才需要rebase。如果你的这个分支推上去了以后,别的同事要接手你的这个分支继续做,就不用rebase,直接push)
具体步骤如下:
(1).返回主分支master或者基于某个主干分支,git pull (2).返回自己的分支git rebase master (3).如果之前改分支已经有过提交(commit)记录,此时就需要强制push到远程库,采用git push -f.否则就是git push
4.每次提交提示有个事错误需要更改时:
采用git ci --amend,就可以直接在原基础上更改格式,最后统一提交,避免多次commit。同一个任务很多次的commit是不好的
5.其他要点:
千万不要直接push主分支!就算是自己的分支,上级同事更改后也不要强制push而弄丢别人代码!
最后,我只是个程序小白,请大家多多指教