如何将Tag从Cake构建任务推送到Bamboo中的BitbucketGit存储库?我正在使用LibGit2Sharp使用下一个代码#addin“Cake.Git”将标签推送到Git存储库;varsolutionFolder="./";varversionTag="someTag";Task("Default").Does(()=>{varremoteRepository=EnvironmentVariable("bamboo_planRepository_repositoryUrl");varrepositoryRevision=EnvironmentVariable("bamboo_planRepository_revision");varabsolutePath=MakeAbsolute(Directory(solutionFolder));varrepoName="central";//LibGit2newRepository(absolutePath.FullPath)){repo.Network.Remotes.Add(repoName,remoteRepository);}GitTag(solutionFolder,versionTag,repositoryRevision);GitPushRef(solutionFolder,gitUser,gitPassword,repoName,versionTag);}});下一期:因为我们的bamboo配置使用的是SSH协议,而Cake.Git(LibGit2Sharp)目前不支持收到下一个错误Error:UnsupportedURLprotocolThanks我怀疑问题出在使用浅克隆,默认启用。浅克隆允许Bamboo执行克隆,即将历史截断为指定数量的修订。这应该会提高初始代码检出的速度,但如果您的构建依赖于完整的存储库历史记录,我们建议不要使用此选项。GIT操作通常需要完整的存储库才能可靠地工作。有点hacky但它??有效,当我找到更好的方法时会更新答案。完成基于如何在bamboo构建中标记git存储库。Cake.Git目前不支持使用LibGit2Sharp添加存储库,但只需将LibGit2Sharp命名空间添加到您的代码即可。核心问题是Cake.Git(LibGit2Sharp)还不支持SSH(GitHub上的问题isitpossibletouseCake.GitwithSSH),因为workagond调用gitpush通过cmdPushTagtoBitbucketGitrepositoryinBambooinbuild任务?如果分享的内容对你有用,需要了解更多C#学习教程,希望大家多多关注——#addin"Cake.Git"usingLibGit2Sharp;varsolutionFolder="./";varversionTag="someTag";varremoteRepository=EnvironmentVariable("bamboo_planRepository_repositoryUrl");varrepositoryRevision=EnvironmentVariable("bamboo_planRepository_revision");Task("Default").Does(()=>{varabsolutePath=MakeAbsolute(Directory))="revarfoldercentral";//LibGit2Sharp添加远程使用(varrepo=newRepository(absolutePath.FullPath)){repo.Network.Remotes.Add(repoName,remoteRepository);}GitTag(solutionFolder,versionTag,repositoryRevision);Cmd($"gitpush{repoName}{versionTag}");}});privatevoidCmd(paramsobject[]parameters){if(parameters.Any()){varargs=newProcessArgumentBuilder().Append(@"/c");foreach(varparaminparameters)args.Append($"{param}");StartProcess("cmd",newProcessSettings{Arguments=args});}}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
