git rev parse——显示顶级以不解析符号链接
当my project dir是指向实际目录存储位置的符号链接时,git rev parse——显示顶级以不解析符号链接,git,directory,symlink,Git,Directory,Symlink,当my project dir是指向实际目录存储位置的符号链接时,--show toplevel将输出实际路径,可能称为“物理路径”。例如,如果我在这里可见的右路径中: ln -s /home/me/.hidden_projects_storage/newproject /home/me/workspace/newproject.git 然后,——show toplevel将输出: /home/me/.hidden_projects_storage/newproject 我正在从顶级目录ne
--show toplevel
将输出实际路径,可能称为“物理路径”。例如,如果我在这里可见的右路径中:
ln -s /home/me/.hidden_projects_storage/newproject /home/me/workspace/newproject.git
然后,——show toplevel
将输出:
/home/me/.hidden_projects_storage/newproject
我正在从顶级目录newproject.git
运行git rev parse
。是否可以以某种方式返回符号路径?尝试运行以下操作:
echo $(cd $(git rev-parse --show-cdup) .; pwd)
尝试后,它返回未经修改的物理路径我的错误,默认情况下
realpath
遵循符号链接。有一个选项可以禁用此功能(-s
),但是当您从存储库的顶级目录运行它时,realpath
仍然会失败(因为在这种情况下,git rev parse
返回空字符串)。我已经更改了我的答案,目前它不再使用realpath
,因此它应该更加灵活和可移植。