更好的方法来使用git add?

Nic*_*mas 8 git

作为一个git noob在Rails项目上尝试它,我想知道git add .在每次提交之前做(添加当前目录)是不好的做法.我看到的介绍教程显示最初添加当前目录,然后git add new_file用于添加文件.如果我从一堆不同的目录中添加一堆文件,这似乎太难了.

基本上,如果你要添加一个或两个以上的文件,git add .每次我想提交时都可以使用吗?对于自上次提交以来创建的每个文件,是否使用git add .相同的显式操作git add new_file

小智 11

git add .将添加heirarchy中的所有内容,包括新文件.如果要跟踪目录中的所有文件,这很好.

另一种(可能更常见的)用法是git commit -a,它只添加自提交之前上次提交以来更改的文件,并且不包含任何新文件.

编辑:git add .不会删除自上次提交以来删除的任何文件.如果你要删除文件,我会使用git rm <myfile>git通知被删除的文件,你不要忘记确保git知道它被删除了.如另一条评论中所述,git commit -a 将会注意到已删除的文件.


CB *_*ley 8

使用" git add ." 是没有问题的,如果你.gitignore是最新的,你确定它不会添加任何你不想跟踪的东西.先做一个" git status"检查一下.

但是,我不建议在每次提交之前执行此操作,因为大多数情况下(至少对于大多数用例而言),您将修改现有文件并仅添加一个或两个全新文件.在这些情况下," git add -u"和" git add <file>"通常不像" git add ."或" git add -A" 那样工作,您总是需要检查您是否不小心添加了实际上是临时文件的新文件以及应该被忽略或删除的文件.

git add .如果您知道在层次结构中添加了许多新文件,从当前目录开始并且不想明确指定它们,那么" "将非常有用.您需要确保正确忽略您不想添加的所有内容.