如this previous question中所述,我希望将源代码的提交哈希添加到可执行文件或DLL中。
为了做到这一点,我想使用以下命令:
dotnet-gitversion "ShortSha" /updateassemblyinfo
我已经创建了一个FixedAssemblyInfo.cs
来保护其余的[assembly]
标记,但是现在当我尝试运行上面提到的命令时,我得到了错误消息:
Cannot find the .git directory
我以不同的方式启动了该命令:
- 在我的Visual Studio解决方案的主目录中,其中存在
.git
目录。 - 在Visual Studio项目的子目录中,
.git
目录所在目录下的某些子目录级别。 - 一般来说
.git
目录是隐藏的。我已经取消了Hidden
复选框中的详细信息,但没有运气。 - 我已经从命令提示符、命令提示符、以管理员身份运行以及从"VS 2017的开发人员命令提示符"启动了
dotnet-gitversion
。
现在,您可以猜到,我的想法是将dotnet-gitversion "ShortSha" /updateassemblyinfo
命令添加为预构建事件,但是如果我甚至不能将其作为一个简单的命令运行,我如何才能将其作为预构建事件启动呢?
完整的预生成事件如下所示,以供参考:
cd $(ProjectDir)
dotnet-gitversion "ShortSha" /updateassemblyinfo
有谁知道吗?
哦,趁我还没忘记:我想要实现的是创建一个AssemblyInfo.cs
文件,包含(至少)我的源代码的"ShortSha"
。除此之外,我希望将其作为预构建事件,以便在每次编译我的项目时都有此信息。
先谢谢你了
1条答案
按热度按时间z9ju0rcb1#
如果我没有看错the doc:
dotnet-gitversion
将其第一个参数解释为项目根目录的路径。ShortSha
不符合要求。您可能希望使用
/showvariable
选项,该选项指示还设置/output json
。