Gitコマンドについて調べる【git add】

git add

ステージング領域に追加し、コミット対象にするコマンドです。

ファイル指定

$ git add [ファイルパス]

ファイルをスペース区切りで複数指定することもできます。

$ git add readme1.md readme2.md

ファイル形式指定

ワイルドカードが使用できます。カレントディレクトリ内でワイルドカードに一致するファイルがすべてaddされます。

$ git add *.md

複数指定も可能。

$ git add *.md *.txt 

ディレクトリ指定

ディレクトリ内のすべての変更がaddされます。指定したディレクトリ内の下の階層の変更もすべてaddされます。

$ git add [ディレクトリ名]

こちらも複数指定ができます。

$ git add docs lib

また、.(ドット)を指定するとカレントディレクトリ以下のすべての変更がaddされます。

$ git add .

オプション

-A--all

git管理内のすべての変更がaddされます。カレントディレクトリが先頭のディレクトリでなくてもです。また、新規追加・削除したファイルもすべてaddされます。

$ git add -A
$ git add --all

-u--update

既にgit管理内にあるファイルのみで、変更があった部分のみをaddします。ですので新規追加されたファイルは対象になりません。

$ git add -u
$ git add --update

-f--force

.gitignoreに書かれている管理対象外のファイルも強制的にaddします。オプションの前または後にどのファイルをaddするかの記述が必要です。.gitignoreに書いている意味が無いのであまり使う機会がないような。

$ git add -f -A
$ git add . --force

-p--patch

ファイルすべてをaddするのではなく、ファイル内でaddしたい部分を自分で選択しながらaddすることができます。hunkと言われる変更のかたまりごとにaddするかを訪ねてくるので、yでaddし、nでaddしない事ができます。

$ git add -p -A
$ git add . --patch

-n--dry-run

dry runと言われる、コマンド実行はしますが実際には反映されずどういったことが起こるかを知ることができるようなものがあります。

実際にはaddはされませんが、どのファイルがaddされるか一覧で見ることができます。

$ git add -n -A
$ git add . --dry-run

addを取り消すには?

git resetコマンドを使用します。内容については次回以降。