合并git存储库并保留历史记录

时间:2013-12-31 15:54:52

标签: git git-subtree

我一直在使用git-subtree在项目存储库中使用symfony1插件存储库,但我不能总是看到我的历史记录。

基本上,插件项目有一个composer.json文件 我在plugins/MyPlugin子树下合并了插件。

当我git log时,我可以看到历史。但是,当执行git log -p plugins/MyPlugin/composer.jsongit log plugins/MyPlugin/composer.json时,我只会看到合并提交。为什么?

但也许子树不是真正合适的工具。我想要做的是完全忘记插件存储库并假装其提交实际发生在项目存储库中,修改插件/ MyPlugin目录中的文件。

编辑好的,我通过用filter-branch重写插件历史记录并将结果合并到项目存储库中解决了我的问题。仍然是第一个问题。对于科学。

1 个答案:

答案 0 :(得分:0)

单个合并提交并不是那么糟糕。使用--squash可以避免使用库历史记录充斥您的历史记录。

至于git log,请参阅:https://stackoverflow.com/a/22218022/1270965