Gitを学ぶ 〜前編〜
きっかけ
!超初心者向けです!
Git流行ってるし、色々な所で勉強会をやってて、そろそろ本格的に
覚えたいなと思ったところでクスールさんで勉強会があると聞いて
早速申し込んでみました。
はじめに
Gitの状態は以下の3つの状態がある。
- 作業ツリー(ワーキングツリー)
- インデックス
- ローカルリポジトリ
習ったコマンド
ローカルリポジトリ編
初期化(ローカルリポジトリ作成)
git init
ファイル追加(作業ツリーからインデックス)
git add [ファイル名]
複数のファイルを追加する場合
git add [ファイル1] [ファイル2] [ファイル3]
すべてのファイルを追加する場合
git add .(ドット) # 削除したファイルを含める場合 git add --all
フォルダ構成だけ先に作成する場合、空のフォルダは追加できないので 慣習的に .gitkeep という空のファイルを作成して追加する。
ファイルを削除する場合
git rm [ファイル名]
コミット(インデックスからローカルリポジトリ)
git commit -m "コミットメッセージ"
ファイル追加の取り消し
git reset [ファイル名]
(直前の)コミットの取り消し
# 作業ツリーまで戻る git reset HEAD^ # インデックスまで戻る git reset --soft HEAD^
HEAD^はHEAD(先頭)の一つ前ということらしい。
ここに詳しいのがあった。 tech.aainc.co.jp
リモートリポジトリ編
リモートリポジトリと紐付け
git remote add origin [URL]
今はoriginは魔法の言葉とするが、リモートリポジトリと考えてよいらしい。
originを別名に変えることはできるが、滅多にない。
URLを間違えた場合はこんな感じで
プッシュ
git push origin master
git clone [URL]
ローカルリポジトリを最新にする。
git pull origin master
各状態間の差分を見る。
作業ツリーとインデックス
git diff
インデックスとリポジトリ(HEAD)
git diff --cached
作業ツリーとリポジトリ(HEAD)
git diff HEAD
resetの時は最新の一つ前なのでHEADの後に^をつけたけど、
diffは最新と比較するので^はいらない。
今日はここまで!!
予習資料
もっと早く知りたかった! Gitが鬼のようにわかるスライド厳選7選 | Find Job ! Startup
更新
正しい用語に修正(作業ディレクトリ→作業ツリー)