ゆずめも

メモ的なブログです。主に勉強した事について書いてます。

いろんなgit add

git addで1つずつファイル指定してる人みて
頑張るなーといつも思ってたのでgit addについて書いてみる

普通のadd

普通のaddって何が普通なのかよくわからないけど
ここではファイルを1つずつ指定することということで

#hoge.txtを追加
git add hoge.txt
#hogeディレクトリのhogehoge.txtを追加
git add hoge/hogehoge.txt

これが多分一番シンプルなやり方ですね

ディレクトリをadd

ディレクトリの中身を再帰的にaddします

#hogeディレクトリの中身をadd
git add hoge

ディレクトリの名前指定するだけ

allオプション

新しく追加されたファイルや、削除されたファイル、ファイルの変更などを全部addするときに-Aオプションを使います

#全部add
git add -A
#.txtファイルをadd
git add -A *.txt

git使い始めは使ってたけどそういえば最近使ってない

ワイルドカードを使用

add コマンドには、ワイルドカードとして*(アスタリスク)を使うことができる

#カレントディレクトリからのファイルをすべてadd
git add *
#Ruby(.rb)のファイルを全部add
git add *.rb

上の方法は.gitignoreとかで除外指定してないと
addするつもりのなかったものまで全部addされてしまうので注意が必要です。

gitで管理されてるファイルだけをadd

個人的にはこれが一番使います。
gitで管理されてるファイルでかつ、変更されたファイルaddします

#変更された全ファイルをadd
git add -u
#変更された.txtファイルだけをadd
git add -u *.txt

-u付けるだけで大体事足りる

addされるファイルのチェック

このオプションは実際にはaddされずに
addしたらどのファイルがaddされるのかをチェックできます

git add -n *.txt

慣れないうちはこれでチェックしてから、add→commitって流れを踏むといいかもね

行単位でコミット

git add -p

-pオプションを使うと、行単位でコミットできる

行単位でコミット制御するときはsourcetree使うので説明は別のサイト様に任せる


他にも、.gitignoreで無視するように設定されているファイルを強制的にaddするオプションとかいろいろあるんだけど
個人的に使いドコロあんまりわかんないから、使わなきゃいけなくなったら調べればいいんじゃないかな