无法访问团队服务发布上的git

时间:2017-06-26 13:42:35

标签: git tfs azure-devops devops

我试图在Team Services的Release配置上执行一些git命令。

我按照this指南在我的回购上允许git。 到目前为止,我只能在Build配置上执行此命令,因此我创建了一个命令行任务并在那里执行git命令,并且它正常工作。

但是在我的发布定义中,我想在改变环境后做一个'git branch'。当我尝试在命令行任务上执行git命令时,请收到以下消息:fatal: Not a git repository (or any of the parent directories): .git 这是因为Release试图在我的drop文件夹上执行命令。

如何在Release任务上对我的仓库执行git命令。

1 个答案:

答案 0 :(得分:1)

正如您所知,它导致您复制到$(build.artifactstagingdirectory)的工件只是文件的一部分(例如**\bin\$(BuildConfiguration)\**)而不是构建定义中的整个源代码。因此.git文件夹(构建工件)中没有这样的drop文件夹。

如果您需要在发布中检查git repo信息,则应在构建中将复制文件任务的内容指定为**。然后你可以在发布版中使用git命令。

enter image description here

要在发布时运行git命令,首先应该更改当前路径。这是因为发布的当前工作目录,如C:\_work\r1\a,但您的git根路径如C:\_work\r1\a\buildName\drop。所以你最好使用 powershell task 来运行git命令。 PowerShell任务的设置:

输入:内联脚本 内联脚本:

cd buildName
cd drop
git branch -a

注意:由于源代码没有本地分支,因此您应使用git branch -a查找源代码中的所有分支和当前HEAD