作为Azure devops代理任务运行Git命令

作为Azure devops代理任务运行Git命令,azure,azure-devops,devops,build-pipeline,Azure,Azure Devops,Devops,Build Pipeline,有谁能帮我在构建管道中运行git命令吗。在开始构建部署解决方案之前,我想将我的开发分支合并到临时分支中。我已经添加了命令行任务并运行了git命令,但是它没有从git中给出任何结果。通常,您有两个管道,一个用于PR,检查您的所有更改是否编译无误,然后是编译和发布工件的CI构建,如果您没有发布,则进行部署 因此,CI构建仅在主分支更改时触发。因此,您不必使合并成为任务,您必须进行合并,然后启动构建管道。这就是我在yaml pipeline bash命令中直接完成与git repo交互的方式 cd $

有谁能帮我在构建管道中运行git命令吗。在开始构建部署解决方案之前,我想将我的开发分支合并到临时分支中。我已经添加了命令行任务并运行了git命令,但是它没有从git中给出任何结果。通常,您有两个管道,一个用于PR,检查您的所有更改是否编译无误,然后是编译和发布工件的CI构建,如果您没有发布,则进行部署


因此,CI构建仅在主分支更改时触发。因此,您不必使合并成为任务,您必须进行合并,然后启动构建管道。

这就是我在yaml pipeline bash命令中直接完成与git repo交互的方式

cd $(Agent.BuildDirectory)/s

# Update Git User
git config --global user.email $(GITHUB_EMAIL)
git config --global user.name $(GITHUB_NAME)

# Switch to clone from branch
git checkout -b $(FROM_BRANCH) origin/$(FROM_BRANCH)

# do your code manipulations here then push them upstream

git push origin -f $(TO_BRANCH)
我想将我的开发分支合并到临时分支

您可以尝试使用gitmerge命令进行合并

以下是一个例子:

git remote add Reponame https://PAT@dev.azure.com/orgNAME/project name/_git/Reponame
git checkout -b staging
git pull
git merge  remotes/origin/dev
git push Reponame  staging  -f
您可以在命令行任务中直接使用此命令

然后,Dev分支将合并到Staging分支

您可以获得以下生成日志


希望这能有所帮助。

这个问题已经问了很久了。但我想从官方文档中的一个示例中为那些试图在git签出之前在管道中运行代码的人介绍另一种方法:

steps:
- script: |
    git config --global --add filter.lfs.required true
  displayName: Configure LFS for use with submodules
- checkout: self

首先仔细阅读我的问题。构建解决方案和发布工件没有问题。一切正常。这不是我的问题。我只需要为merge-two-branch-rungit命令创建一个任务。发布完成后,我需要更新target branchOh,抱歉,如果其他用户的答案对您不起作用,我认为您可以使用Powershell任务进行尝试,如以下问题的答案所示,这正是我所期望的。将尝试此操作,并通过更新告知您。谢谢没有获得您的最新信息,这些答案对您有帮助吗?或者如果你有任何问题,请在这里分享。如果答案有帮助,请。