2

我正在为我所做的任何新项目使用样板。但是,我在样板文件中所做的提交会传递给新项目。我将如何简单地进行“初始提交”,其中包括一次提交中的所有内容并删除旧的提交历史记录?

4

2 回答 2

1

为此使用 rebase 命令

git rebase -i HEAD~N

N 是您想要合并为一个的提交数。然后进行强制推送。

于 2013-04-09T13:07:01.953 回答
0

您可以关注“ git:如何压缩前两个提交? ”的问题,并在您的新仓库中压缩 n-commits。
脚本在这里,可以压缩第一个提交,同时重放您想要保留在新仓库历史中的其余提交。

git clone boilerplaterepo newrepo
# apply the script for git reset --soft $1 everything

该解决方案使用,并且是“实际用途git reset --soft”之一的示例。git reset --soft?


如果您想要一个基于 rebase --interactive 的解决方案(不太实用,因为它涉及手动步骤),请不要忘记--root选项 (git 1.7.12),以便重新设置为根提交。

 git rebase -i --root
 git push -f
于 2013-04-09T08:30:41.017 回答