2014-11-17 6 views
14

Ich habe ein brandneues Git Repo. Es hat drei Commits.Wie kann ich Commits committieren, ohne einen entfernten Zweig zu verfolgen?

Ich möchte sie zusammen zusammendrücken, so dass meine Projektgeschichte sauber aussieht, und andere meine Hacky-Commits nicht sehen.

Offensichtlich hat noch niemand das Repo gesehen, da es brandneu ist, so dass die Geschichte zu ändern kein Problem ist. Ich bin der einzige Benutzer.

Allerdings git rebase -i möchte ich einen Upstream-Zweig verfolgen. Ich möchte nichts veröffentlichen, bis ich das Git Log aufgemotzt habe.

Wie kann ich eine interaktive Rebase oder Squash-Commits im Allgemeinen durchführen, ohne einen Upstream zu verfolgen?

Antwort

15

Sie können die Verfolgung einer Remoteverzweigung überspringen, indem Sie die letzten n Commits angeben, die Sie komprimieren möchten.

Für z. Wenn Sie 4 Commits in Ihrem Zweig haben und die letzten 3 Commits effektiv zerkleinern wollen, können Sie einen einzigen Commit machen, indem Sie git rebase -i HEAD~4 eingeben. Sie können dann die Commits entweder reparieren oder zerquetschen, wie Sie es wünschen.

+8

nützlich: git rebase -i --root – Regisz

Verwandte Themen