编写Git信息字符串到exe文件c#

本文关键字:exe 文件 字符串 Git 信息 编写 | 更新日期: 2023-09-27 18:02:28

我需要写git信息:提交名称,标签,分支等到二进制(exe)文件。

需要在该文件上运行strings * | grep git,以简单地查看有关该文件的最新git信息。我知道当我运行这个命令时(没有grep)会显示AssemblyInfo,但是我面临两个可能的问题:

  1. 我不确定我是否可以从代码中写入AssemblyInfo,运行'git log'命令,然后获得其输出并写入AssemblyInfo。

  2. 如果我想使用命令'git log',那么它不会在Windows上工作,但有可能我的应用程序将构建在Windows上,而不是unix环境。

也许你知道另一种方法?

编写Git信息字符串到exe文件c#

这通常在构建脚本中完成,填充AssemblyInfo的模板版本(看看mustache,一种模板语言)。

此构建步骤执行以下操作:

  • 使用git管道命令获取必要的信息(例如,如何以编程方式确定当前检出的git分支)
  • 使用模板生成AssemblyInfo文件。

有一个。net包装器用于Git windows实现。一些高知名度的项目使用这种实现。https://github.com/libgit2/libgit2sharp, http://libgit2.github.com/