我们在我们的办公室中使用监视器来显示有关我们的git存储库上所有功能分支的信息。其中一个原因是,我们知道特性分支何时“过时”(即,它们的所有提交已合并到主模块)。我们使用:在提交已被压扁时识别过时的分支
git log --pretty=format:'%cd %s' --no-merges --abbrev-commit -n 1 --date=short master..origin/<branch>
最近我们一直在试图通过合并功能时回主挤压提交,以保持清洁的历史。缺点是我们目前识别“过时”分支的方法不再有效。
是否有我们可以用来确定分支是否可以安全删除的git命令?
如果在压缩合并中保存自动生成的提交消息,您可以从中提取哈希提交 – galadog
为什么要使用'git merge --squash'?一个简单的'git merge'将在'master'上产生相同的大提交。并且不会危害你的'git log'命令。 – VonC
@VonC我们只是为了保持提交历史更简单。那么每个功能只有一个提交,因此一眼就可以很容易地看到实现它的过程,如果我们需要删除特定功能,我们可以恢复单个被压缩的提交。如果在分支上工作时,人们更有可能做小增量提交,如果他们知道合并时历史将被整理。 –