我有一个同时具有 git 和 svn 的项目(git 用于开发人员,svn 用于艺术家) 两个存储库具有相同的文件夹层次结构。 .svn 和 .git 文件夹位于同一文件夹中。
我尝试设置一个带有两个“签出”的詹金斯管道,这两个“签出”都会在同一文件夹中签出,但这似乎不起作用。据我了解这里的问题,如果结帐(SubversionSCM 或 gitscm)发现这里没有存储库(根据使用的 SCM 检查 .svn/.git 文件夹?),结帐插件确保结帐文件夹是清空并擦拭它:(.
因此,无论我如何重新排序,第二次签出(gitscm 或 SubversionSCM)都会清除第一次签出。我怎样才能防止这种情况发生?
这是我迄今为止的詹金斯管道重现脚本:
pipeline
{
agent any
stages
{
stage('Checkout')
{
steps
{
checkout changelog: false,
poll: false,
scm: [
$class: 'SubversionSCM',
additionalCredentials: [],
excludedCommitMessages: '',
excludedRegions: '',
excludedRevprop: '',
excludedUsers: '',
filterChangelog: false,
ignoreDirPropChanges: false,
includedRegions: '',
locations: [[
cancelProcessOnExternalsFail: true,
credentialsId: 'svn_credentials',
depthOption: 'infinity',
ignoreExternalsOption: true,
local: '.',
remote: 'http://svn_repo_address']],
quietOperation: true,
workspaceUpdater: [$class: 'UpdateUpdater']]
checkout changelog: false,
poll: false,
scm: scmGit(branches: [[name: 'develop']],
extensions: [],
userRemoteConfigs: [[credentialsId: 'git_credentials',
url: 'http://git_repo_address.git']])
}
}
}
}