在将我的分支推到远程之前我该怎么办?

时间:2017-01-16 10:53:47

标签: git github version-control rebase git-flow

在创建新分支之前,我做了:

git fetch upstream 
git checkout master 
git rebase upsteam/master 
git push origin master

所以现在我的本地和我的远程起源与上游最新。 我创建了一个新分支:

git checkout -b fix

在此工作了几天,几次提交。在将其推送到我的原点并请求拉取请求之前,我该怎么办?在上游/主分支上完成了工作。我应该再次获取和重新定位吗?

3 个答案:

答案 0 :(得分:1)

我建议这样做,是的。它将确保没有新的冲突,并且您的更改可以使用最新的上游代码。这通常也会增加合并的可能性,尤其是在存在合并冲突的情况下。

您不一定要更新主分支。您可以直接在fix分支

上进行操作
git pull --rebase upstream/master

然后解决潜在的冲突,重新测试您的更改,然后推送并打开拉取请求。

答案 1 :(得分:0)

您需要合并upstream/master。只需确保与upstream/master没有冲突,您的分支(fix)就会更新。现在将您的分支推送到远程(origin/fix)并创建一个拉取请求。

$ git fetch upstream    
$ git pull upstream master

$ git pull origin master
$ git push origin HEAD

答案 2 :(得分:0)

对于 origin 远程,您可以直接推送修复分支(git push origin fix),如果要将修复分支合并到主分支中,也可以创建PR。

对于上游远程,如果上游/主站更新,则源/主站不会自动更新。如果您希望origin / fix分支基于上游/主分支的顶部,您应该执行:

git checkout fix
git pull upstream master --rebase

这将使fix分支位于上游/主分支的顶部。

如果第一个PR尚未批准,您只需要使用git push origin fix推送到原点,PR将自动包含来自上游/主分支的更改。

相关问题