更新github上的分叉库
我从github分叉了一个仓库 - 它被称为bootstrap。
我克隆了我的fork:
git clone https://github.com/Fowowski/bootstrap.git
Bootstrap项目有一个主分支和一个3.0.0-wip分支 - 不适用于3.0.0-wip
所以我接下来要做的事情(因为我在master和它的2.3.x稳定版上)切换到3.0.0-wip并添加一个remote:
git checkout 3.0.0-wip
git remote add upstream https://github.com/twitter/bootstrap.git
现在我正在对1个文件进行一些更改...几天后,我意识到3.0.0-wip中有一些更改,并且我的分支库不再实际。
我应该如何更新我的分叉存储库,使其尽可能干净,因为它可能只是为了推送请求? 我听说我应该去取/变基。
我曾经通过龟pull
git pull
,而且当我推到那里时,在我的拉动请求中几乎没有提交的提交... - 你可以在这里看到:https://github.com/twitter/bootstrap/pull/7641#commits推出2eb9053 - 我假设我没有做重要的事情,但真的不知道什么。
我对我的问题做了一些研究,发现我应该运行:
git fetch upstream
git merge upstream/master
git push
我的问题是 - 那是我最不了解git的部分:git merge upstream / master - 我不能合并上游/主,因为master是bootstrap 2.3.x而不是3.0.0-wip? 我是否会误解这个命令或者什么?
你能告诉我如何通过git bash正确更新我的分叉库吗? 我在克隆的fork存储库中更改了文件后,需要运行哪些适当的步骤?
提取/重定位的想法很好,特别是如果你没有推动你的工作:
git fetch
# Assuming you are in the right 3.0.0-wip
git rebase upstream/3.0.0.-wip
你甚至可以通过一个pull --rebase
快速pull --rebase
:
git pull --rebase upstream
这听起来,而不是git merge upstream/master
你应该这样做
git merge upstream/3.0.0-wip
(顺便说一句,正如你已经被告知,做一个git rebase
可能是一个更好的主意)