2016-11-03 9 views
0

私は「犬」と呼ばれるメインブランチを持っています。私は毎日そこにコミットします。今日私の上司は間違いを犯したと言いました。一週間前に別のブランチ "cat"を作り、その週に私のコミットをすべて入れなければなりませんでした。ブランチを作成してメインブランチをあるポイントに戻す方法は?

さて、今は遅すぎます。

1週間前と同じようにブランチを作成し、すべてのコミットをそこに移動することで、現在の「犬」は1週間にわたってコミットした人のように見えますか?ここで

+0

すでにコミットをリモートにプッシュしましたか? – ckruczek

+0

はい、私はそれらをすべてプッシュしました... – shal

+1

[OK]を@ Travoの答えと一緒に行くが、あなたがすべてのリモート履歴も破棄し、他の開発者がこれによって影響を受けることを強制する場合は注意してください。 – ckruczek

答えて

1

は、アクションの私の理論的なコースです:

ステップ1:dogからcatに現在のブランチの名前を変更します。

git branch -m dog cat

ステップ2になり

git branch -m <oldname> <newname>

最後から新しいブランチdogを作成し、あなたががあるようにしたいコミット。 、

git branch dog <sha1-of-commit>

OR

git checkout -b dog <sha1-of-commit>すでに原点にプッシュしている場合は

:そのために

は、最後には、次の dog分岐があり、やりたいコミットますあなたは --forceいくつかのことがあります。

関連する問題