相关疑难解决方法(0)

是否可以在不先检查整个存储库的情况下进行稀疏检出?

我正在使用包含大量文件的存储库,这需要几个小时才能结账.我正在研究Git是否能够很好地使用这种类型的存储库,因为它支持稀疏检出,但我能找到的每个示例都执行以下操作:

git clone <path>
git config core.sparsecheckout true
echo <dir> > .git/info/sparse-checkout
git read-tree -m -u HEAD
Run Code Online (Sandbox Code Playgroud)

这个命令序列的问题是原始克隆也执行结帐.如果将-n添加到原始克隆命令,则read-tree命令会导致以下错误:

错误:稀疏结账不会在工作目录上留下任何条目

如何在不先检出所有文件的情况下进行稀疏结账?

git

159
推荐指数
12
解决办法
11万
查看次数

访问Jenkins管道作业上的SCM(Git)变量

这是我的管道代码:

node ('master') {
    git url: "$GIT_REPO_URL", branch: "$GIT_BRANCH"
    echo env.GIT_COMMIT
    echo env.GIT_BRANCH
    echo env.GIT_REVISION
}
Run Code Online (Sandbox Code Playgroud)

构建结果如下所示:

Started by user anonymous
[Pipeline] Allocate node : Start
Running on master in /var/lib/jenkins/jobs/test/workspace
[Pipeline] node {
[Pipeline] git
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://acme/scm/app.git # timeout=10
Fetching upstream changes from https://acme/scm/app.git
 > git --version # timeout=10
 > git fetch --tags --progress https://acme/scm/app.git +refs/heads/*:refs/remotes/origin/*
 > git rev-parse refs/remotes/origin/master^{commit} # timeout=10
 > …
Run Code Online (Sandbox Code Playgroud)

git jenkins jenkins-workflow

24
推荐指数
1
解决办法
5万
查看次数

我可以在 Jenkinsfile 中增加 scm 吗?

我花了checkout scm很长时间才理解Jenkinsfile 中的真正含义(checkout 是一个函数,顺便说一下,scm 是一个默认的全局变量)。

现在我已经理解了它,我想增加scm例如增加特定结帐的超时或设置sparseCheckoutPaths. 这可能吗?如果是这样,如何?

jenkins jenkins-pipeline

7
推荐指数
1
解决办法
2493
查看次数

如何从Jenkins管道脚本中的远程仓库克隆目录?

我在GitHub Enterprise中有一个大型仓库,需要在我的Jenkins构建服务器上克隆一个子目录,然后构建该子目录.我正在使用管道脚本并立即拥有此功能:

node {
    stage ('checkout') {
        git url: 'git@github.devops.mycompany.local:Org/MyLargeRepo.git'
    }
}
Run Code Online (Sandbox Code Playgroud)

我想要的是克隆 github.devops.mycompany.local:Org/MyLargeRepo/path/to/subproject

我知道我可能需要使用稀疏检出,但似乎无法解决如何在Jenkins管道脚本中配置它.有任何想法吗?

git github jenkins jenkins-pipeline

4
推荐指数
1
解决办法
7545
查看次数