git commit -a  加不加 -a ,有什么区别,好像都没区别,使用命令调出帮助文档,可以得到答案

$ git commit --help

可以看到:

OPTIONS
       -a, --all
           Tell the command to automatically stage files that have been
           modified and deleted, but new files you have not told Git about are
           not affected.

“加了 -a ,后,会自动把 modified 和 deleted add 到 stage 里,但是新增文件不会受影响。 ”

加了-a,在 commit 的时候,能帮你省一步 git add ,但也只是对修改和删除文件有效, 新文件还是要 git add,不然就是 UNtracked !什么是UNtracked ?就是没有跟踪,不在git的代码仓里面,你更改了什么是不会提示你更改的,你提交也是不会提交到远程仓库的。

原文:

git commit 时候, 加不加 -a ,有什么区别,有时候 加不加好像都没区别,但是我 git commit --help 调出帮助文档的时候,也看到了和题主 一样的英文描述,我一直理解的是,“加了 -a ,后,会自动把 modified 和 deleted add 到 stage 里,但是新增文件不会受影响。 ” 对这后半句可是彻底理解反了,我以为不会受影响,是指我不需要操心新文件,,,,难怪我一直觉得哪里不对劲,今天花点时间,再加点实践,总算是搞明白了。。。。。。加了-a,在 commit 的时候,能帮你省一步 git add ,但也只是对修改和删除文件有效, 新文件还是要 git add,不然就是 UNtracked !

加了-a,在 commit 的时候,能帮你省一步 git add ,但也只是对修改删除文件有效, 新文件还是要 git add,不然就是 untracked 状态。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐