Git:为&#34创建别名;添加--update TOPLEVEL_DIR"?

时间:2014-04-24 06:04:42

标签: git configuration git-add git-commands git-alias

我经常发现自己打字

git add -u

旨在添加已修改但在整个存储库中跟踪的所有内容。但是,当我在子目录中时,它变得烦人和乏味。例如,如果我的所有修改都在src/但我目前在test/util目录中,那么我需要输入

git add -u ../..

容易出错且速度慢(因为我需要计算脑中../的数量)。

我想创建一个git别名au,以便它自动检测顶层(通常是包含.git目录的路径中的第一个祖先目录)。它不一定非常便携,因为我使用bash中的git。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

无需检测顶级 您可以输入任何子文件夹:

git add -u :/

这是以下内容的缩写:

git add -u :(top)

请参阅git glossary

  

以冒号开头的pathspec具有特殊含义。在简短形式中,前导冒号:后跟零个或多个“魔术签名”字母(可选地由另一个冒号:)终止,其余部分是与路径匹配的模式。

     

顶部:魔术词top(魔术签名:/)使得模式与工作树的根匹配,即使您从子目录中运行命令也是如此。