git add .和git add -u和git add -A的区别

Git Version 1.x:

git add . :他会监控工作区的状态树,使用它会把工作时的所有变化提交到暂存区,包括文件内容修改(modified)以及新文件(new),但不包括被删除的文件。

git add -u :他仅监控已经被add的文件(即tracked file),他会将被修改或删除的文件提交到暂存区。add -u 不会提交新文件(untracked file)。(git add --update的缩写)

git add -A :是上面两个功能的合集(git add --all的缩写)

Git Version 2.x:

在新版本中,add .和add -A的功能相同,用add --ignore-removal .来代替旧版本add .的功能。

以下是Git Version 2.x中的具体操作,用以辅助理解:

git init

echo Change>>ChangeFile

echo Delete>>DeleteFile

git add ChangeFile DeleteFile

git commit -m initial

echo OK>>ChangeFile

rm DeleteFile

echo Add>>AddFile

git status

git add .

git status



git reset

git add --ignore-removal .

git status


git reset

git add -u

git status


git reset

git add -A

git status


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容