在master分支上清理小提交

时间:2013-09-05 15:11:18

标签: git

Git时间!我的master分支上次无用。我睡过头了,并没有为我的小修复创建一个分支并做了一些提交。我有这个:

(R1)<---(R2)<---(c1)<---(c2)<---(c3)             master
 Rx - releases
 cX - some fixes

我希望在单独的分支上有这样的东西:

(R1)<---(R2)                                     master
          \
           \<---(c1)<---(c2)<---(c3)             last-fixes

然后将其与master合并到--no-ff

(R1)<---(R2)<-------------------------(R3)       master
          \                          /
           \<---(c1)<---(c2)<---(c3)/            last-fixes

如何以简单的步骤完成此操作?

2 个答案:

答案 0 :(得分:7)

您可以在当前位置创建新分支,将master重置为先前的提交,然后将其与--no-ff合并

git branch last-fixes
git reset R2 --hard
git merge last-fixes --no-ff

答案 1 :(得分:1)

首先,确保你在分公司主人身上。

git checkout master

然后为您的修补程序创建一个分支

git branch last-fixes

现在将master重置为它应该的位置

git reset --hard <R2>

您可以合并您的合并

git merge --no-ff last-fixes