我想修改这个现有管道(发布到测试服务器)以仅获取当前分支上修改的文件。我现在遇到的问题是,如果一个人推送到分支 A,另一个人推送到分支 B,则管道会用分支 B 中的文件覆盖所有文件,无论它们是否实际被修改。我尝试将结帐更新为
fetchDepth: 0
,但这不起作用。
trigger:
branches:
include:
- '*'
exclude:
- main
pool:
name: 'Default'
demands:
- agent.os -equals Windows_NT # Optional: Ensure it runs on Windows-based agents
steps:
- checkout: self
- task: WindowsMachineFileCopy@2
inputs:
SourcePath: '$(Build.Repository.LocalPath)'
MachineNames: 'SERVER0TST'
AdminUserName: 'ntdomain\user'
AdminPassword: '$(user_password)'
TargetPath: 'c:\inetpub\wwwroot'
听起来你最好将你想要的任何提交合并到一个特定的分支中,然后让你的管道始终跟踪该分支。每当不同分支中的更改发生在文件的同一部分时,从每个分支提取所有新提交而不覆盖其他更改都会失败。