1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

知らないとヤバイ‼️ Gitでトラブった時の便利なコマンド

Posted at

参考動画

はじめに

エンジニアになってからGitでトラブルはよくあります。そんな時に対処できるコマンドを見事にまとめてくれました‼︎
この動画の内容を使いやすくて、よく使いそうなものの順で書きます。
(自分が使ったことあるのを優先で書きます)

コミットを間違えた時

  • 直前のコミットをなかったことにする(取り込まれていないなら)
git reset --soft HEAD^

HEADでインデックスを元に戻す

git reset HEAD~

HEAD、インデックス、ワーキングツリーを元に戻す

git reset --hard HEAD~
  • 指定したコミットを打ち消すコミットを作成(取り込まれているなら)
git revert コミットのハッシュ値
  • 直前のコミットに上書き
    コミットのメッセージを間違えた時に使えます。
git commit --amend

あとgit rebase失敗した時、コンフリクトを避けるためにコミットを上書きに使うみたいです。

ブランチ名を間違えた時

これよくやっちゃいますよね😅
リモートブランチとローカルブランチでやり方違うのでまとめてみました。

  • ローカルブランチ名の変更
git branch -m ブランチ名

git branch -m 古いブランチ名 新しいブランチ名
  • リモートブランチ
# ローカルのブランチ名を変更
git branch -m 古いブランチ名 新しいブランチ名

# 変更したブランチを新たにリモートへpush
git push -u origin 現在のブランチ名  // $ git push -u origin HEAD とするとブランチ名を入力しなてもpushできるので便利です。

# 間違えてpushしたリモートブランチを削除
$ git push origin リモートのブランチ名

作業中に緊急対応しないといけない時

git stash

ブランチを切り替えて作業。作業後、ブランチを元に戻す。

git stash pop

stash知らない場合はこちらをご覧ください。

マージしたけどコンフリクトしまくるので元に戻したい

git reset --hard ORIG_HEAD

誤ったコミットをpushしてしまった

git push origin ブランチ名

git reset --hard コミット

git push origin ブランチ名

ブランチを間違えて消してしまった

git reflog
git branch ブランチ名 コミット

コミット間違えて消してしまった

git reflog
git reset --hard <コミット>

別のブランチにコミットしてしまった

git branch 別ブランチ

git reset --hard HEAD~

git switch 別ブランチ

余計なファイルをコミットしてしまったのでignoreしたい

  • Gitの管理から削除するなら
git rm --cached <ファイル名>
echo '<ファイル名>' >> .gitignore
  • ファイルを履歴から消すなら
git filter-branch -f --index-filter 'git rm --cached -rf --ignore-unmatch <ファイル名>' HEAD

違うユーザー名でコミットしてしまった

.gitconfigか .git/configでユーザー名を変更します。

HEADのユーザー名、メールアドレスを変えたい時

git commit --amend -m "コミットメッセージ" --author "user.name <user.email>"

例えばこんな感じ
ex)

git commit --amend --author="Correct Name <correct.email@example.com>"

リリース後バグがあったので、すぐに切り戻したい

git log

git revert -m | マージコミット

切り戻したあと再マージできないとき

git revert 打ち消したコミット

git merge ブランチ名

参考資料

1
2
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
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?