Git,添加对提交的更改,添加和提交标志之间的差异

Jam*_*sev 8 git

-agit commit -a相当于与git add . -A

假设我有以下别名:

 12 alias gita='git add . -A'
 13 alias gits='clear; git status'
 14 alias gitlog='git log --pretty=oneline --abbrev-commit'
 15 alias commit='git commit -a '

 16 alias check='gita;commit'  <--------------------------
Run Code Online (Sandbox Code Playgroud)

当我说check,当我add -A和我的时候都会发生任何冗余commit -a

man*_*lds 7

git add -A不等于中的-a旗帜git commit.git add -u是.它添加了对跟踪文件(包括rms)的更改.git add -A还会带来未跟踪的文件.

既然git add -A是超集git add -u,那就足够了,你也不需要-a在提交中指定.

也, 如果没有给出路径,则假定它是.,所以这.也是多余的.

启动git 2.0(2013年中),您将需要添加路径,或者git add -A在完整工作树上运行.

参见" 差异git add -A"和git add ." ".


jmk*_*yes 5

有点.git add -A将匹配工作树和索引,添加新文件,标记已修改文件和删除已删除文件.git commit -a将仅暂存已添加或修改的文件,但除非在先前已指定,否则不会添加新文件git add