Плагин Jenkins Git и Refspecs
В чем разница между Refspec и спецификатором Branch (по умолчанию пусто): в приведенной ниже конфигурации задания Jenkins:
Я попытался установить опцию Refspec в конфигурации задания:
+refs/heads/master:refs/remotes/origin/master
В клонированном репозитории моего ведомого билда файл.git/config выглядит так:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = https://user:pass@git.internal.com/scm/PROJECT/project.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
Кажется, что значение для fetch не является правильным (считайте из конфигурации задания jenkins). Кроме того, это не влияет на потребление дискового пространства.
1 ответ
Refspec определяет параметры для операции выборки (см. Здесь и здесь), тогда как спецификатор ветви определяет, какая ветвь содержит код, который будет построен Jenkins. Другими словами: Refspec определяет только то, как код извлекается, в то время как спецификатор ветви, какая часть кода будет компилироваться.
[Edit:] Исправлена неработающая ссылка на refspec