我们有TFS 2015 Git,并正在寻找用于将onprem TFS GIT中的所有更改同步到VSTS Git的选项。您能提出一些关于如何实现它的想法吗?
我想到的选项:-
1)每次签入时,将服务器端插件写入git push到VSTS 2)在TFS构建后的步骤中,将git push到VSTS
(每次签入时,想法都是将更改同步到VSTS GIT)
谢谢
答案 0 :(得分:1)
要将TFS 2015 git repo自动同步到VSTS git repo,只需在TFS2015或VSTS中构建CI即可。
例如使用TFS 2015中的CI构建来自动同步VSTS存储库,您可以按照以下步骤操作:
在托管git repo的TFS 2015项目中->使用TFS 2015 git repo作为存储库创建构建定义->启用包含所有分支的CI。
使用以下脚本在构建定义中添加PowerShell任务:
if ( $(git remote) -contains 'vsts' )
{
git remote rm vsts 2>&1|Write-Host
echo 'VSTS Account removed'
}
git remote add vsts https://Personal%20Access%20Token:{PAT}@{account}.visualstudio.com/{project}/_git/{repo}
git checkout ${env:BUILD_SOURCEBRANCHNAME} 2>&1|Write-Host
git reset --hard origin/master 2>&1|Write-Host
echo 'update local branch with remote successfully'
git push vsts ${env:BUILD_SOURCEBRANCHNAME} -f 2>&1|Write-Host
注意:vsts远程应该添加凭据。并且它使用PAT在VSTS git repo URL中进行身份验证。而且,您只需要替换URL https://Personal%20Access%20Token:{PAT}@marinaliu.visualstudio.com/{project}/_git/{repo}
中的真实PAT,帐户名,项目名和reponame。
保存构建定义,现在在TFS 2015 git repo中更新任何分支时,VSTS git repo将自动为相应分支同步。