如何使用 Azure Devops 将 azure GIT repos 文件从一个文件夹移动到另一个文件夹
how to move azure GIT repos file from one folder to another folder using Azure Devops
这是我的场景:
我有一个场景,在成功 git 推送到 Azure 存储库中的部署文件夹(SSIS 和 TSQL 脚本)后,我必须将部署文件夹中的文件移动到存储库中的多个存档文件夹( SSIS 和 TSQL)成功构建后。我需要通过 azure devops 构建和发布过程来实现这一点。非常感谢任何帮助。
您可以使用 CopyFiles
任务和 git 命令来复制和推送 repo 中的文件。检查以下示例:
steps:
- checkout: self
persistCredentials: true
- task: CopyFiles@2
inputs:
SourceFolder: 'deployment'
Contents: '**'
TargetFolder: '$(Build.SourcesDirectory)/archival1'
- task: CopyFiles@2
inputs:
SourceFolder: 'deployment'
Contents: '**'
TargetFolder: '$(Build.SourcesDirectory)/archival2'
- script: |
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
git checkout master
git add $(Build.SourcesDirectory)/archival1/** $(Build.SourcesDirectory)/archival2/**
git status
git commit -m "copy files"
git push origin master
如果要在复制文件后删除 deployment
文件夹,可以将以下内容添加到管道中:
- task: DeleteFiles@1
inputs:
SourceFolder: 'deployment'
Contents: '**'
RemoveSourceFolder: true
- script: |
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
git checkout master
git add $(Build.SourcesDirectory)/deployment/**
git status
git commit -m "delete deployment folder"
git push origin master
注意事项:
您需要grant version control permissions to the build service:
这是我的场景:
我有一个场景,在成功 git 推送到 Azure 存储库中的部署文件夹(SSIS 和 TSQL 脚本)后,我必须将部署文件夹中的文件移动到存储库中的多个存档文件夹( SSIS 和 TSQL)成功构建后。我需要通过 azure devops 构建和发布过程来实现这一点。非常感谢任何帮助。
您可以使用 CopyFiles
任务和 git 命令来复制和推送 repo 中的文件。检查以下示例:
steps:
- checkout: self
persistCredentials: true
- task: CopyFiles@2
inputs:
SourceFolder: 'deployment'
Contents: '**'
TargetFolder: '$(Build.SourcesDirectory)/archival1'
- task: CopyFiles@2
inputs:
SourceFolder: 'deployment'
Contents: '**'
TargetFolder: '$(Build.SourcesDirectory)/archival2'
- script: |
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
git checkout master
git add $(Build.SourcesDirectory)/archival1/** $(Build.SourcesDirectory)/archival2/**
git status
git commit -m "copy files"
git push origin master
如果要在复制文件后删除 deployment
文件夹,可以将以下内容添加到管道中:
- task: DeleteFiles@1
inputs:
SourceFolder: 'deployment'
Contents: '**'
RemoveSourceFolder: true
- script: |
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
git checkout master
git add $(Build.SourcesDirectory)/deployment/**
git status
git commit -m "delete deployment folder"
git push origin master
注意事项:
您需要grant version control permissions to the build service: