私はブランチ上で行われた最新のコミットを(他の誰かによって)元に戻そうとしています。私はTortoiseGitクライアントを使用しています。 「このコミットによって変更を元に戻す」をクリックすると、とParent2
という2つの選択肢があります。これは何を意味するのでしょうか? Parent1とは何ですか?Parent2は何ですか?git revert - git asking parent1 or parent2
7
A
答えて
3
gitのすべてのコミットには、少なくとも1つの親があります(最初/最初のコミットを除く)。コミットの親は前のものです。
C1 <- C2 <- C3
C1は、最初のコミットです。 C2は2番目のものです。 C1はC2の親である。 C3も同じです。
マージコミットは、親の数の意味で特別なコミットです。
C1 <- C2 <- C3
\
.. C4 <- C5 <- C6
C6はマージコミットです。それは2つの親C3とC5を持っています。 C5のときに2つのブランチ(コミット)をマージした場合、C5は親1(第1の親)、C3は親2(第2の親)と言います。
3
あなたがマージを元に戻すためにしようとしているように見えるあなたのブランチにコミットします。マージコミットにはの2つのの親があり、マージに関連する各ブランチに1つあります。保持する履歴の親のバージョンを選択する必要があります。あなたはそれぞれの親をチェックし、どれを保持したいのかを決めるべきです。おそらく、おそらく、php7
ブランチに現れる親コミットを保持したいと思うでしょう。これはドロップダウンのParent 1
オプションである必要があります。
php7 A -- B -- M <-- retain this parent's version of history
/
master .. C
関連する問題
- 1. git revertとgit checkout
- 2. git revert in Egit
- 3. git revert削除コミット
- 4. Git revertの説明
- 5. git revertとgit mergeを理解する
- 6. git revert --no-commit(ステージングなし)
- 7. git bash eclipse or plugin
- 8. git-add -pのように部分的にのみgit-revertするには?
- 9. git revertは3方向マージも使用していますか?
- 10. Magit revert single file
- 11. アップストリームでフォークを同期する:git fetch + git checkout + git mergeとgit checkout + git pull
- 12. のgit --git-dirが
- 13. git checkout - 。 vs git checkout
- 14. Git Pull対Git Rebase
- 15. のgit bashの「未gitリポジトリ」エラー
- 16. GitはコミットまたはGitのスタッシュエラー
- 17. Gitリポジトリ:非gitのディレクトリ
- 18. git mqと同等のgit?
- 19. Gitリポジトリ: `Gitのbisect`と
- 20. Gitリポジトリ:私は `Gitのdiff`
- 21. Git、GitHub、TFS、Git-TFS、VisualStudio.com
- 22. git-p4とconfig git-p4.largeFileExtensions
- 23. Gitトラッキングフォルダ内のGitトラッキングフォルダ
- 24. git stash pop vs git rebase
- 25. git trackingとgit stagingのコンセプト
- 26. Gitは、特定の.gitフォルダ
- 27. 新しいgitのブレークウィンドウのGitのシェル
- 28. git pull、git fetchとgit rebaseの違いは何ですか?
- 29. gitのステータスとgitのステータス-uとgitのステータス-uno
- 30. Git:ローカル変更を元に戻す。 git add。 + git rm?
http://stackoverflow.com/questions/5970889/why-does-git-revert-complain-about-a-missing-m-option –