如何创建一个分支并将主分支恢复到某个点?
How to make a branch and revert the main branch to some point?
我有一个主分支,叫做 "dog",我每天都在那里提交。今天我的老板说我犯了一个错误,我必须在一周前创建另一个分支 "cat" 并在一周内将我所有的提交都放在那里。
好吧,现在已经太晚了。
现在是否可以这样做:像一周前一样创建一个分支并将所有提交移到那里,以便当前 "dog" 看起来整个星期都没有人提交?
这是我的理论行动方案:
第 1 步: 将当前分支从 dog
重命名为 cat
。
git branch -m <oldname> <newname>
变成
git branch -m dog cat
步骤 2: 从您希望的最后一次提交创建一个新分支 dog
。
为此,获取您希望 dog
分支拥有的最后一次提交并执行以下操作:
git branch dog <sha1-of-commit>
或
git checkout -b dog <sha1-of-commit>
如果您已经推送到原点,您可能需要--force
一些东西。
我有一个主分支,叫做 "dog",我每天都在那里提交。今天我的老板说我犯了一个错误,我必须在一周前创建另一个分支 "cat" 并在一周内将我所有的提交都放在那里。
好吧,现在已经太晚了。
现在是否可以这样做:像一周前一样创建一个分支并将所有提交移到那里,以便当前 "dog" 看起来整个星期都没有人提交?
这是我的理论行动方案:
第 1 步: 将当前分支从 dog
重命名为 cat
。
git branch -m <oldname> <newname>
变成
git branch -m dog cat
步骤 2: 从您希望的最后一次提交创建一个新分支 dog
。
为此,获取您希望 dog
分支拥有的最后一次提交并执行以下操作:
git branch dog <sha1-of-commit>
或
git checkout -b dog <sha1-of-commit>
如果您已经推送到原点,您可能需要--force
一些东西。