2016-08-02 32 views
4

Ich arbeite in einer Branche (Gabel des Meisters natürlich) und ich habe eine Reihe von Commits.
Ich bin daran interessiert, genau herauszufinden, welcher Commit derjenige ist, wo die Verzweigung gestartet wurde und Teil des Masters ist.Finden Sie den Ausgangspunkt für eine Rebase -i

Warum brauche ich das?
Ich möchte alle Commits mit interaktivem Fütterungsmaterial zerquetschen, und ich frage mich, ob es ein einfacher Weg, um herauszufinden, was das Kommando über manuell gezählt Commits rebase passiert stattdessen HEAD~52

Antwort

3

git merge-base akzeptiert zwei Commits passieren (die, Wie üblich können Commit-Hashes, Verzweigungen, Tags, etc.) sein und gibt den gemeinsamen Vorfahren zurück, von dem sie beide getrennt sind.

Z. B .:

[email protected] ~/src/git/myproject [master] $ git merge-base master feature-1 
7c2232a4dd6c54ee8cc3f693ab8a0020ad82410b 
+2

Aus Gründen der Vollständigkeit, würde der ganze Befehl sein: 'git rebase -i $ (git merge-Base Master HEAD)'. –