2015-03-15 6 views
6

Mit git halbiert können wir hineinzoomen, wenn ein Problem zwischen commits eingeführt worden sein könnte.Ähnliche Trick zu git Halbierung innerhalb eines commit

Ich frage mich, ob es auch eine Möglichkeit gibt, git durchlaufen (Kombinationen) von Dateien innerhalb einer einzigen commit, so dass Sie herausfinden können, welche Datei/Teil verursacht den Ärger?

+3

Nein, aber dies ist ein gutes Argument für häufige kleine Commits statt einzelne sehr große Commits. – larsks

+0

Ist das eine hypothetische Frage oder gibt es ein Problem, das Sie lösen möchten? Es könnte einen anderen Weg geben, das Problem anzugehen. – R0MANARMY

+0

@larks Ich wusste, dass Kommentar kommen würde :-) (und es ist richtig). – PascalVKooten

Antwort

1

Die recommended way bis split a commit ist mit git rebase -i $commit_you_want_to_split^. Zerhacken Sie Ihr Commit mit der edit Rebase-Aktion dann eine reset HEAD^ und eine Reihe von git add s, um Ihre neuen kleineren Commits in den Index einzufügen. Zugegeben, das ist nicht automatisch, aber Sie können es möglicherweise mit vielen sed oder awk oder Python skripten. Weitere Informationen finden Sie in den obigen SO-Links.

Sobald Ihr Commit zerhackt ist, wird Ihr git bisect jetzt viel genauer sein.

Hat jemand diesen Prozess automatisiert?