我想保留(现在)能够将Git变更集链接到存储在TFS中的工作项.
我已经编写了一个工具(使用Git中的一个钩子),我可以在其中将workitemidentifiers注入到Git变更集的消息中.
但是,我还想将Git提交的标识符(哈希)存储到自定义TFS工作项字段中.通过这种方式,我可以检查TFS中的工作项,并查看与工作项相关联的Git更改集.
如何从Git的当前提交中轻松检索哈希?
我有一个 git 命令来获取当前存储库的最新 SHA,如下所示:
git log --pretty=format:"%H" -n 1
Run Code Online (Sandbox Code Playgroud)
我有一个 Windows 批处理脚本,我想按如下方式使用它:
SET CURRENT_SHA=???
Run Code Online (Sandbox Code Playgroud)
但我不知道如何将从 git 调用的输出获取到变量中,以便我可以使用它。
编辑
我尝试了以下方法(这似乎是我在这里和其他地方读到的一般建议):
SETLOCAL ENABLEDELAYEDEXPANSION
FOR /F "tokens=* USEBACKQ" %%i IN (`git log --pretty=format:"%H" -n 1`) DO (SET CURRENT_SHA=%%i)
ECHO Current Sha: %CURRENT_SHA%
Run Code Online (Sandbox Code Playgroud)
..但我得到:
fatal: failed to stat 'format:i) ECHO Current Sha: 48bce83e800b96607afb2a387c4fcd7b0b0f037e
Run Code Online (Sandbox Code Playgroud)
那么引号可能有问题吗?