参考
http://blog.toshimaru.net/git-revert-mainline/
そもそもマージしたコミットの逆差分を作るには?
オプションで -m を指定します。今回はその後ろにつける1,2の引数についてです
git revert -m 1
マージをした側に戻すように差分をつくる基本的に使うのはこっちが多い
git revert -m 2
マージされた側に戻すように差分をつくる実際にやってみる
[uenoryouichi@ueno-MacBook-Air:git_study](master)$ git checkout -b merged [uenoryouichi@ueno-MacBook-Air:git_study](merged)$ vi test.php [uenoryouichi@ueno-MacBook-Air:git_study](merged)$ git add . [uenoryouichi@ueno-MacBook-Air:git_study](merged)$ git commit -m 'このブランチをマージする' [uenoryouichi@ueno-MacBook-Air:git_study](base)$ git checkout master [uenoryouichi@ueno-MacBook-Air:git_study](master)$ git checkout -b base [uenoryouichi@ueno-MacBook-Air:git_study](base)$ vi test.php [uenoryouichi@ueno-MacBook-Air:git_study](base)$ git add . [uenoryouichi@ueno-MacBook-Air:git_study](base)$ git commit -m 'このブランチでマージコマンドを打つ' [uenoryouichi@ueno-MacBook-Air:git_study](base)$ git merge merged Auto-merging test.php Merge made by the 'recursive' strategy. test.php | 4 ++++ 1 file changed, 4 insertions(+) [uenoryouichi@ueno-MacBook-Air:git_study](base)$ glog * Ryoichi Ueno 25605e9 (HEAD, base) Merge branch 'merged' into base |\ | * Ryoichi Ueno 5e19ce5 (merged) このブランチをマージする (<= 2に相当) * | Ryoichi Ueno 4e1dfd0 このブランチでマージコマンドを打つ (<= 1に相当) |/ * Ryoichi Ueno f410859 (master) second * Ryoichi Ueno 70e35e5 initial commit [uenoryouichi@ueno-MacBook-Air:git_study](base)$
git revert -m 1でrevertする
[uenoryouichi@ueno-MacBook-Air:git_study](base)$ git revert -m 1 25605e9 [uenoryouichi@ueno-MacBook-Air:git_study](base)$ glog * Ryoichi Ueno fe81bcd (HEAD, base) Revert "Merge branch 'merged' into base" * Ryoichi Ueno 25605e9 Merge branch 'merged' into base |\ | * Ryoichi Ueno 5e19ce5 (merged) このブランチをマージする * | Ryoichi Ueno 4e1dfd0 このブランチでマージコマンドを打つ |/ * Ryoichi Ueno f410859 (master) second * Ryoichi Ueno 70e35e5 initial commit [uenoryouichi@ueno-MacBook-Air:git_study](base)$ git diff --stat 4e1dfd0 baseブランチ側とは差分がない [uenoryouichi@ueno-MacBook-Air:git_study](base)$ git diff --stat 5e19ce5 mergedブランチ側と差分がある test.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
git revert -m 2でrevertする
[uenoryouichi@ueno-MacBook-Air:git_study](base)$ git revert -m 2 25605e9
[uenoryouichi@ueno-MacBook-Air:git_study](base)$ glog
* Ryoichi Ueno 1b77f6a (HEAD, base) Revert "Merge branch 'merged' into base"
* Ryoichi Ueno 25605e9 Merge branch 'merged' into base
|\
| * Ryoichi Ueno 5e19ce5 (merged) このブランチをマージする
* | Ryoichi Ueno 4e1dfd0 このブランチでマージコマンドを打つ
|/
* Ryoichi Ueno f410859 (master) second
* Ryoichi Ueno 70e35e5 initial commit
[uenoryouichi@ueno-MacBook-Air:git_study](base)$ git diff --stat 4e1dfd0 baseブランチ側と差分がある
test.php | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
[uenoryouichi@ueno-MacBook-Air:git_study](base)$ git diff --stat 5e19ce5 mergedブランチ側とは差分がない
0 件のコメント:
コメントを投稿