在主分支上更新新的提交分支?

我分支了分支A并创建了B.现在,A已经被其他人更新了,并且我想将这些提交交给我的B叉,这样我就可以确保我在那里做的东西仍然适用于新的A内容。

我怎样才能做到这一点? Git的术语(拉,取,合并等)非常不直观,至少在(


我会建议(如果没有人已经从B中撤出):

你有什么是分支A上游回购中进行了新的演变和可能的承诺:

        a--a--a (origin/A)
       /
a--a--a A
 
  b--b--b (B, local branch) 

首先确保A是最新的上游回购内容: origin/A

git checkout A
git pull

这会给你:

a--a--a--a--a--a (A, origin/A)
 
  b--b--b (B, local branch) 

那么你就变基上做本地修改B之上A (我想在这里说A具有上游分支,这意味着它跟踪origin/A ,您可以检查git branch -avvv

git checkout B
git rebase A

它给你:

a--a--a--a--a--a (A, origin/A)
                
                 b'--b'--b' (B, local branch) 

需要注意的是历史的变迁B ,因此,如果B已经推,你将不得不push --force origin B ,这可能是危险的,如果其他人已经开始工作B
见(更多关于转化技巧):

  • “功能分支重新分配后Git推送拒绝”
  • git rebasegit push :非快进,为什么要用?”

  • 注意:“fork一个分支”不是推荐的表达式,因为fork更常用于引用服务器端的克隆repo:请参阅“Git fork是git clone?”。

    相反,你会说:“我分支A并创建B ”:操作是“分支”(而不是“分叉”)。

    链接地址: http://www.djcxy.com/p/49253.html

    上一篇: Update a fork with new commits on its master branch?

    下一篇: git fetch changes from ahead upstream and merge them into ahead origin