我经常发现自己打字
git add -u
旨在添加已修改但在整个存储库中跟踪的所有内容。但是,当我在子目录中时,它变得烦人和乏味。例如,如果我的所有修改都在src/
但我目前在test/util
目录中,那么我需要输入
git add -u ../..
容易出错且速度慢(因为我需要计算脑中../
的数量)。
我想创建一个git别名au
,以便它自动检测顶层(通常是包含.git
目录的路径中的第一个祖先目录)。它不一定非常便携,因为我使用bash
中的git。有什么想法吗?
答案 0 :(得分:2)
无需检测顶级 您可以输入任何子文件夹:
git add -u :/
这是以下内容的缩写:
git add -u :(top)
请参阅git glossary:
以冒号开头的pathspec具有特殊含义。在简短形式中,前导冒号:后跟零个或多个“魔术签名”字母(可选地由另一个冒号:)终止,其余部分是与路径匹配的模式。
顶部:魔术词top(魔术签名:
/
)使得模式与工作树的根匹配,即使您从子目录中运行命令也是如此。