現場で使えるGitコマンド集
はじめに
gitの操作ってどうやってますか?SourceTree?Github Desktop?
やっぱりエンジニアならコマンドでしょ!
というわけでgitコマンドの紹介です。
git checkout {ブランチ名}
指定したブランチに移動してくれます。
-b
オプションでブランチを新規で作成しつつ、ブランチを変更してくれます。
git checkout {ファイル名}
指定したファイルの変更(stageされてないもの)を消してくれます。
.
で全ファイルの変更を消せます。気をつけてね!
git add {ファイル名}
指定したファイルの変更をstageにあげてくれます。
.
で全ファイルです。
git clean -fd
untrackedなファイルを削除してくれます。
-f
オプションで強制削除。
-d
オプションでディレクトリも削除。
です。
git commit -m "{コメント}"
stageされているファイルをコメント付きでコミットしてくれます。
git commit --amend
最新のコミットを変更できます。
コミットコメントを変えたい場合はこちら!
git reset --hard HEAD^
コミットを戻します。
^
の数でいくつのコミットを戻すかを指定できます。
戻したコミット内容は全て消えるので気をつけてください。
git reset --soft HEAD^
コミットを戻します。
^
の数でいくつのコミットを戻すかを指定できます。
1つ上の--hard
と違って戻したコミット内容はstageに残るので安心して使ってください。
git merge {ブランチ名}
指定したブランチから作業ブランチにマージしてくれます。
コンフリクトが起こった場合は、
1.git status
でコンフリクトが起こっているファイルを確認します。
2.コンフリクトを解消し、git add {ファイル名}
3.git commit
をします。この時-m
オプションでコメントを追加する必要はないです!
自動でマージコメントが入力されます。
4.マージコメントが入っているvimが立ち上がるので、:wq
で保存して完了です。
git rebase {ブランチ名}
指定したブランチから作業ブランチにリベースしてくれます。(日本語違うかも。。)
コンフリクトが起こった場合は、
1.git status
でコンフリクトが起こっているファイルを確認します。
2.コンフリクトを解消し、git add {ファイル名}
3.git rebase --continue
で完了です。
コンフリクトが起こったから、リベースはやめたい!ってなった場合はこのコマンドです。
git rebase --abort
git push origin {ブランチ名}
指定したブランチをプッシュしてくれます。
-f
でフォースプッシュです。git reset
やgit commit --amend
をしてコミットログが変わった場合は、-f
を指定してあげましょう。
チームメンバーで使っているブランチにフォースプッシュするときは要注意です!
git pull origin {ブランチ名}
指定したブランチをプルしてくれます。
git fetch
フェッチしてくれます。
-p
オプションでリモートで既に削除されているブランチをローカルの方でも削除してくれます。
git stash
スタッシュしてくれます。
git stash pop
スタッシュを戻してくれます。
複数スタッシュがある場合は指定することもできますが、スタッシュされている中身を確認するのが大変なのでSourceTreeを使いましょう←
git branch
今あるブランチの一覧を表示してくれます。
-r
オプションでリモートのブランチ一覧を表示してくれます。
git branch -d {ブランチ名}
ブランチを削除してくれます。
指定したブランチがまだdevelopブランチ(デフォルトブランチ)にマージされていないと削除できません。
developブランチにマージされてなくても削除したい!ってときは、-D
オプションで削除可能です。
git status
現在変更しているファイルとstageされているファイルを表示してくれます。
さいごに
これであなたもgitコマンド派ですね!
でも最近は、少しGithub Desktopに浮気中です(*´-`)
gitをコマンドで操作する場合は、.zshrc
の設定を行うと便利なのでこちらの記事の設定をしてみることもおすすめしますᕦ(ò_óˇ)ᕤ
Discussion