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?

More than 1 year has passed since last update.

Gitで最新のコミットを取り消したい時

0
Posted at

この記事で書くこと

  • 最新のcommitを一つ戻る方法
  • リモートリポジトリにpushしていた時の対処法

問題発生

ターミナル
git add -A
git commit -m "Finish 〇〇"

をしてしまってから、commitを取り消したい時ってありませんか?
僕はこうなってしまったので、commitを取り消す方法を備忘録にでも書いておきます。

commitを一つ戻る方法

結論、最新のコミットを取り消す方法は以下のコマンドを実行するだけです。

ターミナル
git reset --hard HEAD~1

これでコマンドを一つ戻れます!!わーい🙌

ここまででいい人はいいのですが、僕はリモートリポジトリにpushしていました...
そんな時はどうしたらいいのでしょうか?僕はこうしたので、参考にしてください。

リモートリポジトリにpushしていた時のcommitの取り消し

リモートリポジトリにpushしてしまっていたので、リモートリポジトリのcommitを消せないかなと思っていたところ...

「むずくね?」「調べてもパッと出てこん」ってなってしまったので工夫で乗り切りました。

結論、その工夫とは
「普通に他にブランチを作って、mergeしちゃえばいいんです」

まぁ、mainからだと難しいかもですが、ブランチを作って開発してるならいけると思いますので、よかったら参考にしてください。

mergeするまでの流れ

1, まずはもどりたいところまで戻す

ターミナル
git reset --hard HEAD~1

2, 次に移行するブランチを作る

ターミナル
git switch -c (適当な名前)

3, mergeする

ターミナル
git merge (戻したブランチ)

いかがでしたか?きっとこの他に頭のいい方法があるのでしょう。僕も数年後成長したら「なんちゅう仕方でやってるんや」とびっくりする臭いがプンプンしています。

ですが、まぁダックプログラミングと同じで戻りゃいいんですよ!!笑

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?