取り消したいコミットを選んで右クリックから「このコミットを打ち消し」をしたらエラーになったので、対応策のメモ。
こんなエラーが出ました。
Gitに慣れてないのと急いでたのでかなり焦りました..。
git -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=manager-st revert --no-edit 45d661aea34a1ff3dd42af18aca6a2e8b360f9f1 error: commit 45d661aea34a1ff3dd42af18aca6a2e8b360f9f1 is a merge but no -m option was given. fatal: revert failed エラー終了しました。エラーの内容は上記をご覧ください。
やったこととしては、別ブランチで作業していたのをマージして、それを打ち消ししようとした感じです。
調べてみるとMergeしたコミットの場合は、親が複数(今回の場合2つ)あるので、親を指定しないとリバートできないようでした。
// これだとエラーになる。ソースツリーの「このコミットを打ち消し」と同じ意味のコマンド $ git revert 45d661a // 親を指定しないとエラーになる。 $ git revert -m 1 45d661a
1と言うのは、下の例で言うと「45d661ad6a」を指定していることになります。 左側から1, 2, 3・・・と数えます。
親: 45d661ad6a, ca21071dc0
SourceTreeでは、親が指定できなかったのでターミナルを開いて、コマンドを打ち込んで対応しました。
コマンド使ってないのでドッキドキでした。