非コミット要求と消去変更
「削除」という言葉が多義的。非コミット要求と消去変更に分ける。
- 非コミット要求 -- インデックスに登録しない、登録解除(remove)する。
- 消去変更 -- ワークツリーのファイルを消す。gitから見ると、この消去(delete)は変更の一種。オブジェクトIDとしては、ゼロID(40桁オールゼロ)への変更となる。
分かりにくいが:
- git add file で消去変更したファイルを登録できる。
- git add file と git rm file と同じになる。頭が痛くなる!
包含関係が:
- deleted-files ⊆ modified-files ⊆ cached-files = tracked-files
- files(not-ignored) = tracked-files + untracked-files
- deleted-files + added-files + edited-files = modified-files
- all-files = files + ingored-files