功能分支合并后获得主提交

时间:2019-08-29 14:03:26

标签: git github git-merge

所以我有一个master分支和feature/123-branch

我和feature/123-branchgit checkout feature/123-branch上,发现与master已经过时了,所以我这样做了

git merge master以保持最新。

merge之前,feature/123-branch刚刚2 commits是我开发功能时要做的,但是当我这样做时

git push origin feature/123-branch

由于合并(我认为?),提交的数量跃升至40之类。

我尝试了rebase --onto master HEAD~1 feature/123-branch,但是它并没有解决问题。

如何通过保持2 commits为最新状态而只保留feature/123-branch在我的import requests import json r = requests.get('https://www.nlexch.com/api/v2/tickers/ltcbtc.json') print(r) <Response [200]> 上?

1 个答案:

答案 0 :(得分:3)

如果我理解正确,那么您会有这样的事情:

M0-M1-M2-M3-M4-...-MX  (master)
     \
      F0-F1            (feature branch)

您想通过以下方式“保持最新”:

M0-M1-M2-M3-M4-...-MX         (master)
                    \
                     F0'-F1'  (feature branch)

,提交F0'F1'分别是提交F0F1(来自功能分支的提交),但略有更改,以使更改在最后一次更改之后发生在master

上提交

如果这是您想要执行的操作,那么您打算执行的操作不是合并master和功能分支,而是将功能分支重新建立在master上。

在这种情况下,方法如下:

  1. git checkout feature/123-branch,以确保您位于功能分支中
  2. git log列出该分支上的最新提交,并找到与F1对应的哈希值
  3. git reset --hard the_hash_from_F1回滚合并
  4. git rebase master首先要做您打算做的事情,然后“更新”您的分支机构