我可能滥用 git 并以从未设计过的方式使用它。我是团队规模的唯一开发人员,我在多台机器上进行开发。例如,我在机器 A 上编码,需要在机器 B 和机器 C 上测试(并重新编译)代码。我进行快速开发(例如,每分钟提交一次,然后转到机器 B/C 进行测试) .
因此,我的许多提交都有有意义的信息,特别是我经常这样做:
机器A
git add -u
git commit -m "work"
git push
机器 B/C
git pull
make
./run_tests
不好了!它不起作用...回到机器 A 并在 1 分钟后再次提交。
因此,您可以想象,我的 git --log 历史记录有很多只包含“工作”的毫无价值的评论。有没有办法自动组合所有具有相同消息的 git 提交,具体来说,所有带有 -m "work" 的顺序提交将组合成一个大提交 -m "big work"。
谢谢。
明确地说,我的评论历史(可以追溯到 2 年前)是这样的:
work
work
work
work
OMG THIS actually works.
work
work
work
OMG we solved a huge problem... we should call this v1.0
work
work
work
我想自动压缩所有“工作”消息,使其变为:
work
OMG THIS actually works.
work
OMG we solved a huge problem... we should call this v1.0
work
etc...
侧面,至于为什么我这样滥用 git,基本上我将它用作 ctrl-s 功能......我也在 20 台机器上进行开发,并且需要一种有效的方式在每分钟左右更改后共享代码。NFS 不是一个选项,因为我也在离线/硬防火墙/等机器上工作......