【发布时间】:2016-05-09 12:39:35
【问题描述】:
假设我有这样的 git 历史记录:
A-B-C-D-E-F-G
B 添加了 60k 个文件。
F 删除了这些相同的文件。
任何遍历 git 历史的操作,例如 git log,现在如果必须越过 F(或 B),就会花费大量时间。
有没有办法有效地从历史中删除 B 和 F,因为它们只是相互抵消?
更重要的是:有没有一种简单的方法可以做到这一点,然后确保使用 repo 的其他开发人员也是最新的? (请记住,开发人员在他们的机器上也有功能分支。)我怀疑所有解决方案最终都会导致A-C'-D'-E'-G'...
我的直觉告诉我最好的办法是从 A 创建一个分支,从 C 到 E 挑选 C,然后从 G 创建一个新分支,并将其合并到第一个分支。什么的。
【问题讨论】:
标签: git version-control collaboration