Ich mag Squash und Merge überhaupt nicht, da ich der Meinung bin, dass Entwickler dafür verantwortlich sein sollten, Änderungen bei Bedarf lokal zu squashen und nur kleine, leicht verständliche Commits durchzuführen. Diese können Teil eines größeren Feature-Zweiges sein.
es hatte außerdem den Vorteil, dass es nach dem Abrufen des neuen Master-HEAD ein Kinderspiel war, alle mit Folgendem zusammengeführten lokalen Zweige zu bereinigen:
[alias]
; cm = clean merged
cm = "!git branch --merged | grep -v '*' | xargs -n 1 git branch -d"
Aber das Projekt, an dem ich derzeit arbeite, ist der Ansicht, dass es für Entwickler in Ordnung ist, sich nicht darum zu kümmern, ob ihre Commits sinnvoll sind. Sie haben Squash-and-Merge standardmäßig in allen github.com-Repositories aktiviert.
Gibt es eine Möglichkeit, zumindest die bisherige einfache Bereinigung beizubehalten? Gibt es eine Möglichkeit zu erkennen, dass lokale Zweige auf Grundlage eines Squashed-Merge zusammengeführt wurden?