0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GitHub上でRevertできなくなったPRをRevertしたい

Last updated at Posted at 2024-12-06

Revertしようとしたら怒られた

ScreenShot 2024-12-06 11.44.48.png

ScreenShot 2024-12-06 11.43.15.png

Sorry, this pull request couldn’t be reverted automatically. It may have already been reverted, or the content may have changed since it was merged.

自動でリバートしようとしたけど、マージ後にファイル変更が入ったからリバートできないっぽいです。

$ git fetch
$ git switch -c revert-branch origin/main
$ git revert -m 1 a12345678

# ... コンフリクト解消する

$ git add .
$ git revert --continue

ローカルでrevertしてコンフリクト解消すればokでした。

補足: -m オプション

今回はマージコミットをリバートしてるので -m オプションが必要です。

$ git revert a12345678
error: commit a12345678 is a merge but no -m option was given.
fatal: revert failed

-m オプションを指定しないとエラーになります。

$ git revert -m
    -m, --[no-]mainline <parent-number>
                          select mainline parent
                          merge strategy
                          option for merge strategy
                          GPG sign commit

使い方はこうです。

$ git revert -m <親番号> <コミットID>

補足: parent-number(親番号)

$ git show a12345678
commit a12345678128a51bbb7ee8800f0a83558adbb83e
Merge: b12312312 c45645645
Author: ucan-lab
Date:   Fri Dec 6 14:11:52 2024 +0900

この例だと 左のコミット(b12312312)が親番号1で右のコミット(c45645645)が親番号2です。

親番号1(マージ先ブランチ)を基準にします。
これを指定するとマージ元ブランチの変更のみを取り消す形になります。
親番号2を基準にするとマージ先ブランチの変更を取り消す形になるので通常は使用しないはずです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?