巴扎黑2017-05-02 09:36:26
这个产生的原因,就是你本地代码在开发过程中,远程代码更新了。
很简单,你需要做的只是把代码rebase一下。
做以下操作前,先检查一下你本地的remote的指向。如果你是fork的,应该会又一个指向你自己github的origin。你需要先添加一下指向源代码的remote。这样做:git remote add upstream *URL*
其中URL是源代码的地址。
然后获取远程代码的最新HEAD指针(其实这个命令不仅用来获取upstream,同时也获取了origin的):git fetch --all
git fetch --all
然后确保你是在working branch上,运行git rebase upstream/master
然后确保你是在working branch上,运行git rebase upstream/master
这个时候会出现conflicts,一般是你本地与远程同时修改了某个文件,git不知道该用哪个。用git status
查看哪些文件出了问题,做一下更改就好。然后git add .
,git rebase --continue
。
修改完之后,git push
到你的origin working branch,有可能需要git push -f
。特别是当你用了git rebase -i
的时候,这个命令可以squash commit。
習慣沉默2017-05-02 09:36:26
我在自己fork出来的仓库中新建分支开发,那么我pull 下来的代码是没有冲突的,但是我的代码不是最新的,当我和最主要的代码库比较pull request的时候,就进去不了,