更改git初始提交以终止历史记录

更改git初始提交以终止历史记录,git,Git,我有一个回购协议,我想在一次提交之前删除所有提交,目的是更改回购协议的初始提交 我已经创建了一个分支,它的最后一次提交是我希望作为新根的提交: git checkout -b newroot SHA 然后,我为初始提交创建了一个新的提交: git checkout -b initial $(echo "Kill history" | git commit-tree $(git write-tree)) 然后我想在从commit SHA开始的初始基础上重新设置master的基础,所以我做了:

我有一个回购协议,我想在一次提交之前删除所有提交,目的是更改回购协议的初始提交

我已经创建了一个分支,它的最后一次提交是我希望作为新根的提交:

git checkout -b newroot SHA
然后,我为初始提交创建了一个新的提交:

git checkout -b initial $(echo "Kill history" | git commit-tree $(git write-tree))
然后我想在从commit SHA开始的初始基础上重新设置master的基础,所以我做了:

git rebase --onto initial newroot master
但重新设定基准并没有成功。在应用一些提交后,我会遇到冲突。也许我不了解一些事情,但在我看来,我不应该有任何冲突,因为我只想在新的“假”初始提交之上应用master的所有提交

提前谢谢。

你需要一个孤儿

git签出——孤立的newroot主机~10
git commit-m'Kill history'
git cherry pick master~10..master
git分支-d主

这样做时,我仍然会遇到冲突,因此我的初始命令也是正确的。我需要弄清楚我为什么会遇到冲突,解决它们,看看会发生什么。