【Git】Git入門レッスン_Chapter05_1-6
コマンドの場当たり的な使い方ではなく、Gitの使い方をちゃんと理解したいので始めてみる。教本はこの本を使用。
一気にファイルをインデックスにステージする
$ git add .
今いるディレクトリ以下のすべての階層のファイルをインデックスにステージする。
全ファイルがステージされるので注意。
いきなりコミットする
$ git commit -a -m "add込みでcommitする"
git commit
時に-aオプションをつける。
現在インデックスにファイル情報が登録されているワーキングツリーのファイルを、自動的に git add
してからコミットを行う。
ただし、インデックスに登録されているファイルのみがコミットされる。
コミットを中止する
コミットメッセージを何も入力しない場合は、コミットが中止される。
インデックスの変更をなしにする
$ git reset HEAD ファイル名
インデックスにステージングしたファイルをHEADの状態に戻す。
↓
インデックスから変更を取り除く(アンステージする)。
本の例では、hello.txtは一度もコミットしたことがないので、
インデックスの状態をHEADに戻す
↓
インデックスにはhello.txtが存在しない状態となる。
インデックスとワーキングツリーの差分を表示する
$ git diff
ファイルを指定のコミット状態に戻す
# 指定のコミット状態に戻す $ git reset --hard コミットID # 最新のコミット状態に戻す $ git reset --hard HEAD
ワーキングツリー・インデックスともに指定のコミットの状態(HEADだと最新コミット)に戻る。
すべて指定コミットの状態で上書きされるので注意が必要。
--hardオプションではファイル名の指定はできない。
git resetでのファイル名指定の違い
ファイル名あり:ファイル名のインデックスだけをコミットIDの状態に変更する
ファイル名なし:HEADの位置を指定されたコミットIDにして、Git管理下の全ファイルをコミットIDの状態に変更する
対象ファイルのみを指定のコミット状態に戻す
# 指定したコミット状態に戻す(インデックス・ワーキングツリー) $ git checkout コミットID ファイル名 # 最新のコミット状態に戻す場合 $ git checkout HEAD ファイル名
コミットメッセージの書き方
1行目:内容を要約したタイトル
2行目:空行
3行目:詳細な説明
最新のコミットを変更する
# --amendオプションをつける $ git commit --amend
--amendをつけることで、最新のコミット(HEAD)の変更になる。
インデックスの内容を変更してから実行:コミットの内容が変更される
インデックスの内容が同じ:コミットメッセージの変更のみ
- コミットするときは常にインデックスの状態でコミットされる
- --amendなし:HEADの指すコミットに続く
- --amendあり:HEADの指すコミットを上書き
参考書
ストーリー形式でGitの使い方を学んでいけるので、1人学習がしやすい本。
- 作者: 川野辺正博
- 出版社/メーカー: 秀和システム
- 発売日: 2012/09/18
- メディア: 単行本
- 購入: 1人 クリック: 32回
- この商品を含むブログ (13件) を見る
- 作者: 川野辺正博
- 出版社/メーカー: 秀和システム
- 発売日: 2014/10/07
- メディア: Kindle版
- この商品を含むブログを見る