如何从 git 状态获取相对于当前目录的路径?

How can I get paths relative to the current directory from git status?

我希望在脚本中使用 git status 的输出,但是,因为输出总是给出 repo 相对文件路径,所以其他命令不能找到他们的参数。 This question 提到了 relativePaths 选项,但作为命令选项给出时它对输出没有影响:

git -c status.relativePaths=真实状态 --short

如果我在 C:\projects\myproject\config\module\feature.src 中有一个更改的文件,并且我正坐在 C:\projects\myproject\web\somepage 中的命令提示符下,那么我需要一个类似于以下任何一个的路径:

...以便能够将其交给我想在新更改的文件上调用的其他工具。相反,对于基于 myproject\ 的回购协议,我尝试过的每个选项组合都只产生了

那么我怎样才能得到实际的相对路径,甚至是绝对路径呢?我缺少一些基本的东西吗?

我在 Windows 7 上使用 git 版本 1.9.4.msysgit.2,repo 文件位于外部文件夹中。我可以提供一份我试过但没用的清单。我可以在 运行 其他命令之前让我的脚本查询和 cd 到 repo root,或者先自己做,但这些只是解决方法。

您需要使用 git config status.relativePaths true。在 configuration 部分阅读更多内容 here