标题说明了一切,但例如,如果HEAD
Git 存储库的 指向ref/heads/master
Windows 的任何使用良好的 Git 实现,则以下哪个是文件的内容.git/HEAD
...哎呀,.git\HEAD
:
ref: refs/heads/master
, 或者ref: refs\heads\master
?
无论哪种方式,我都需要计算绝对路径<git project>\.git\refs\heads\master
,但我没有Windows环境,我无法知道使用哪种形式!非常感谢您的回答。
背景:我正在修改一个 Haskell 库,该库实现了一个宏,该宏在编译时将 Haskell 项目的 Git 修订哈希嵌入到其源代码中(非常适合实现--version
选项!)。当我们编译调用该宏的程序时,git
会调用它;然而在此之前,当构建工具检查是否需要重新编译时,我们无法调用git
,所做的只是简单的文件更新检查!因此,在每次编译时,我们必须计算并保存所HEAD
指向的参考文件的路径,以便下次检查参考文件是否更新。问题是我想让库跨平台,但我不知道如何在 Windows 上计算参考文件的路径,因为我不知道原始形式。