LoginSignup
0
0

More than 3 years have passed since last update.

よく使うgitコマンド集

Last updated at Posted at 2021-04-23

はじめに

簡単なgitコマンド集です。
SourcetreeやVSCodeなどのGUIツールでもある程度はできますが、コマンド操作が必要になった時のために思い出せるとよいなーと考え、書いてみました。

読者の想定

  • gitの基本的な考えは理解している
    • リモートのリポジトリをローカルにクローンし、ブランチを切り替えながら作業することや、コミット・マージなどの単語はある程度わかる など

コマンド

コミット履歴を確認する

git log -3
  • ちゃんと git pull できているか確認するときなどに。
  • 上記のコマンドで最近の3コミットまで確認できる。(数字=表示するコミット数)
  • オプションなしの場合はずっと遡れる。
  • コミット履歴の表示は q で抜ける。

ブランチを切り替える

git checkout {branch}
  • ブランチの移動。
  • ローカルになくリモートにあるブランチをpullして切り替えたい場合も、これだけでOK。(remotes/origin/{branch}にする必要はない)

ローカルブランチを作成する

git checkout -b {branch}
  • 現行ブランチをベースにブランチ作成&移動

ローカルブランチを削除する

git branch -d {branch}
  • 現行ブランチは削除できない。他のブランチに移動してから実行する。
  • ローカルのブランチしか削除されない。リモートブランチを削除する場合は git push origin :{branch}

ローカルブランチを確認する

git branch
  • ローカルブランチの一覧と、現行ブランチを確認する。
  • リモートブランチも含めて確認する場合は git branch -a
  • ブランチ表示は q で抜ける。

変更をステージする

git add .
  • ステージ→コミットの流れで変更がコミットされる。言い換えると、ステージされたものがコミットされる。
  • すべての変更をステージしたい場合は上記のコマンド。ファイルごとにステージする場合は git add {path}

ステージされた変更をコミットする

git commit -m '{message}'
  • オプションなしでもコミットできるが、コミットメッセージを付ける習慣にしておくのがおすすめ。

タグを付ける

git tag {tag} -m '{message}'
  • 現行ブランチの最新コミットに対してタグ付けする。

ローカルの変更をリモートに反映する

git push origin {branch}
git push origin {tag}
  • ブランチの変更もタグの追加も同じコマンドでリモートに反映できる。
  • git push origin :{branch} とコロンを付けるとリモートのブランチやタグを削除するコマンドになってしまうので注意。

リモートの変更を取り込む

git pull
  • 現行ブランチのリモートでの更新を取り込む。
  • git pullgit fetch + git merge ※厳密には異なるらしい

ローカルの変更を取り消す

git checkout {path}
  • ステージされていない(=git addしていない)変更を取り消す。
  • ローカルの直前のコミットまでファイルを戻す。

ローカルの変更を退避する

git stash
git stash save '{message}'
  • ステージやコミットせずにローカルの変更を退避する。退避した後は直前のコミットの状態まで戻る。
  • 退避したものは git stash list で確認できる。
  • 退避したものを再度適用する場合は git stash apply stash@{0} など。

別のブランチをマージする

git merge {branch}
  • 現行ブランチに、指定したブランチをマージする。
  • マージコミットが発生する場合は、viのビューになってコミットメッセージの入力を求められる。
    • 詳細を説明する必要がなければ、そのまま :wq で終了すればOK。
  • 競合した場合は競合したファイルを修正・保存して git commit
    • git status すると、次に何をすればよいかが指示される。
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