プログラミング学習記録

主にRuby on Railsを使ったプログラミングを学んでいます。

Gitコマンドのまとめ

Gitとは

簡単にいうと、ソースコードのバージョン管理をするためのツール。

Gitコマンド

$ git init

これでGitリポジトリが作成され、カレントディレクトリに.gitディレクトリが作られる。

  • Gitの状態を確認する
$ git status

  • git add
    ファイルを追加する場合。ファイルを複数追加する場合は、スペースで区切る。
$ git add ファイル名

特定のディレクトリ以下のファイルを全て追加

$ git add ディレクトリのパス/*

全ての変更をまとめて追加

$ git add -A

もしくは

$ git add .

  • git commit
    インデックスに追加された変更内容をコミットする
$ git commit -m 'コミットメッセージ'

チーム開発の場合、変更内容がわかりやすいコミットメッセージを書く必要がある。


  • 過去のコミット一覧を表示
$ git log

コミットしたユーザー名・メールアドレス、コミット日時、コミットIDが表示される。
終了する場合はターミナルにqと打つ。


  • 過去のコミット内容・差分を表示
$ git show

複数名で手分けして開発を進める際ブランチを作り、コミットしたいものはマージすることで反映される。
- ブランチを作成

$ git branch ブランチ名

ブランチを切り替えるには

$ git branch ブランチ名

ブランチの作成とそのブランチへの切り替えを同時に実行できるコマンドが以下

$ git checkout-b ブランチ名

  • マージ
    現在いるブランチに別のブランチをマージ
$ git merge ブランチ名

  • ブランチの削除
    マージされていないブランチは削除されないコマンド
$ git branch -d ブランチ名

マージされていないブランチも削除できるコマンド

$ git branch -D ブランチ名

  • git resetコマンド
    主に3つのオプションがあり、それぞれ取り消しの範囲が違う
    コミットのみ取り消す場合
$ git reset --soft コミットID

コミットとインデックスの変更を取り消す。作業ツリーにはコードに変更が残された状態になる。

$ git reset --mixed コミットID

変更を全て取り消す。一度取り消すと元に戻せない(リモートリポジトリにコミットがある場合を除く)

$ git reset --hard コミットID

※作業中の変更の取り消し
git reset --hard コミットIDを使えば良い。
ただし、Untrackedな状態のファイルはGitの操作の対象とならないため消せない。git reset時に変更を戻したい場合は、一度git add ファイル名 -NでGit管理下におく必要がある。

参考サイト

Git コマンドリファレンス(日本語版)

Gitコマンド早見表 - Qiita

基本的なGitコマンドまとめ - Qiita

[git] 戻したい時よく使っているコマンドまとめ - Qiita

誰にとってもわかりやすいGitのコミットメッセージを考える | Tips Note by TAM