Git将初始提交拆分为2个。

7 浏览
0 Comments

Git将初始提交拆分为2个。

我的代码仓库有一个分支和多个不同的提交。初始提交包含一些代码。我想创建一个拉取请求,将当前分支的代码合并到早于初始提交的版本,以便查看已添加的所有相关代码。我该如何将一个提交分成两个?

0
0 Comments

Git split initial commit into 2(将Git中的初始提交拆分为2个)的问题的出现原因是希望修改分支中的第一个提交,而解决方法是使用`git rebase -i --root`命令,并在根提交上运行`git reset HEAD~`命令。

在Stack Overflow的一个回答中提到,可以按照以下步骤进行操作:链接。不同之处在于需要添加`--root`选项,因为要修改分支中的第一个提交。根据Git的文档,`--root`选项可以重播分支中的所有提交,而不仅仅是限制在一个上游分支上。具体的步骤如下:

git checkout master
git rebase -i --root

然而,当尝试运行这些命令时,可能会遇到一个错误:`unknown revision of path not in working tree`。为了解决这个问题,可以通过添加一个虚拟提交,然后重新排序,最后再删除这个虚拟提交来达到目的。具体的步骤可以参考这个链接:链接

总结起来,想要将Git中的初始提交拆分为2个,可以通过使用`git rebase -i --root`命令并在根提交上运行`git reset HEAD~`命令来实现。如果遇到错误,可以通过添加虚拟提交并重新排序的方式解决。

0