如何从 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
中的命令提示符下,那么我需要一个类似于以下任何一个的路径:
..\..\config\module\feature.src
C:\projects\myproject\config\module\feature.src
...以便能够将其交给我想在新更改的文件上调用的其他工具。相反,对于基于 myproject\
的回购协议,我尝试过的每个选项组合都只产生了
config\module\feature.src
那么我怎样才能得到实际的相对路径,甚至是绝对路径呢?我缺少一些基本的东西吗?
我在 Windows 7 上使用 git 版本 1.9.4.msysgit.2,repo 文件位于外部文件夹中。我可以提供一份我试过但没用的清单。我可以在 运行 其他命令之前让我的脚本查询和 cd 到 repo root,或者先自己做,但这些只是解决方法。
您需要使用 git config status.relativePaths true
。在 configuration
部分阅读更多内容 here。
我希望在脚本中使用 git status 的输出,但是,因为输出总是给出 repo 相对文件路径,所以其他命令不能找到他们的参数。 This question 提到了 relativePaths 选项,但作为命令选项给出时它对输出没有影响:
git -c status.relativePaths=真实状态 --short
如果我在 C:\projects\myproject\config\module\feature.src
中有一个更改的文件,并且我正坐在 C:\projects\myproject\web\somepage
中的命令提示符下,那么我需要一个类似于以下任何一个的路径:
..\..\config\module\feature.src
C:\projects\myproject\config\module\feature.src
...以便能够将其交给我想在新更改的文件上调用的其他工具。相反,对于基于 myproject\
的回购协议,我尝试过的每个选项组合都只产生了
config\module\feature.src
那么我怎样才能得到实际的相对路径,甚至是绝对路径呢?我缺少一些基本的东西吗?
我在 Windows 7 上使用 git 版本 1.9.4.msysgit.2,repo 文件位于外部文件夹中。我可以提供一份我试过但没用的清单。我可以在 运行 其他命令之前让我的脚本查询和 cd 到 repo root,或者先自己做,但这些只是解决方法。
您需要使用 git config status.relativePaths true
。在 configuration
部分阅读更多内容 here。