有什么区别。和*在“git add”中?

时间:2015-07-28 10:29:45

标签: git

git add命令中,我使用.*添加工作目录中的所有文件。

他们之间有什么区别?

1 个答案:

答案 0 :(得分:6)

这些都不是git概念:

.表示当前工作目录。因此,如果您说,例如,git add .,您的意思是“git,请将当前工作目录添加到暂存区域以进行当前更改”。大多数其他命令以同样的方式处理.cd .将无处移动。

另一方面,

* shell glob 。这个特殊的glob被扩展为“所有文件”。所以当你说git add *时,首先发生的是你的shell(你输入命令的程序)将它扩展为当前位置的每个文件和目录,然后git获得那个列表。因此,git命令甚至根本看不到* - 它只是看到您想要add当前工作目录中的所有内容。

净效果基本相同:工作目录中的所有内容都会被添加。然而,它发生的方式完全不同。 git add .可能就是你想做的事情 - 它在幕后所做的更接近你的意图。