gitログの途中で特定のコミットを削除したいだけです。コミットの影響を受けてはいけません。gitログの途中で特定のコミットだけを削除するには
答えて
コミットをリモートサーバーにプッシュされていない場合は、Gitの歴史を修正するためにgit rebase
を使用することができます。
あなたはそれを行うことができます:それはコミットの一覧が表示されます
git rebase -i commit-hash^
。最初の行は、削除したいコミットでなければなりません。編集したファイルからその行を削除し、保存して閉じます。あなたがそれを行う前に、リモートサーバにプッシュしなかった場合
は、コミット直前に削除した後にコミットがあなただけの履歴から削除された1前にコミットをもとに書き直されたことに注意してください。その特別な理由から、あなたの履歴がちょうど分かれたため、すべてのコミットが変更されます。だからあなたがそれを押し進めようとするなら、それは早送りではなく、プッシュを強制しなければならないでしょう。そのため
、あなたは私はあなたがケースの何かで歴史を修正した枝を指すブランチを維持することをお勧めgit rebase
に慣れていない場合はうまくいきません。
また、特定のコミットが複数のブランチで共有されている場合、1つのブランチの履歴を分岐させると、複数の問題が発生します。これは、1つのブランチを古い履歴から新しい履歴のブランチに簡単にマージできないためです。多くのコミットが複製され、あるブランチで削除したコミットは他のブランチでは削除されません。
gitの歴史を変えることは時間旅行のようなものだと考えてください。あるポイントでの変更は、新しいパラレルユニバースを作成します。過去の変化の後にあったことは、あなたが過去に行った変更の影響を実際に受けます。
これは、上記のコミットに影響を与えるべきではありません。
あなたは枝の途中からコミットを削除するか、本当にどこにでもおそらく除くブランチのHEAD場合は、にその枝の歴史を書き換えます。これは、これを実行するために使用するツール、つまりgit rebase -interactive
とgit filter-branch
は、削除したコミット後のすべてを再試行する必要があるためです。これは、公衆共有ブランチには望ましくありません。なぜなら、誰もがその変更に追いつくために非常に厳しい措置を講じる必要があるからです。
むしろ、あなたのための安全な賭けはgit revert
を使用することです:これは新しいが効果的に真ん中がしたコミットすべてを取り消し、あなたの枝の上にコミット追加します
git revert <SHA-1 of commit to delete>
。
ところで、あなたがの場合、実際にがコミットを削除したい場合は、対話型のリベースを行うことをお勧めします。
- 1. ローカルgitリポジトリで特定のコミットを削除するには?
- 2. git:5回目のコミットだけを削除するには
- 3. Gitログ:特定のマージからのコミットを除く
- 4. php get Git特定のコミットのログを変更する
- 5. Gitの途中でコミットに変更を加える
- 6. gitコミットを削除するには
- 7. git revert削除コミット
- 8. 特定のUITableViewCellで削除を表示するだけです
- 9. git履歴のコミットを削除する
- 10. リモートgitでコミットを削除する
- 11. Spotfireで特定の値だけを削除する
- 12. 特定のコミットからgit-svnメタデータを削除できますか?
- 13. ブランチの途中でGit squashがコミットします
- 14. 特定のコミットを削除するには?
- 15. 途中でこの行を削除するには?
- 16. 文の途中でピリオドを削除するには
- 17. リポジトリから前のコミットをgitで削除するには?
- 18. Gitが特定のコミットにログオンする
- 19. Git削除履歴コミット
- 20. gitコミットのコンピュータを特定する
- 21. 特定の行だけのcontentviewオブジェクトを削除しますか?
- 22. Git:手動で削除したファイルをコミットするには?
- 23. Gitで古いコミットを削除するには?
- 24. コミットを削除せずにgitを削除ブランチ
- 25. Gitの削除不要なコミット
- 26. journalctl - 特定のユニットのログを削除する
- 27. Gitは特定の名前のディレクトリを1つだけ除外します
- 28. 単一のリンクリストの途中でノードを削除する
- 29. すでにコミットされているgitブランチを削除する
- 30. gitで特定のコミットに更新する方法は?
ローカルコピーかリモートからですか? – Marusyk