Плагин Git для решения проблемы проверки Hudson

При использовании подключаемого модуля Git для Hudson моя работа всегда терпит неудачу при извлечении последних исходников из моего онлайн-репозитория git (git: //github.com/ithena/orm2dsl.git).

Плагин git сначала успешно выполняется git fetch. Затем он пытается выполнить git checkout -f origin/, что не удается, как показано ниже. Это проблема с моим репозиторием git или это бессмысленная команда checkout?

Команда Git без ветки, заданной в конфигурации задания:

git checkout -f origin/
git checkout: updating paths is incompatible with switching branches/forcing
Did you intend to checkout 'origin/' which can not be resolved as commit?

Команда Git с ветвью, установленной как ведущая в конфигурации задания:

git checkout -f origin/master
git checkout: updating paths is incompatible with switching branches/forcing
Did you intend to checkout 'origin/master' which can not be resolved as commit?

Вывод консоли Hudson:

started
Checkout
[workspace] $ git fetch
Checking out origin/
[workspace] $ git checkout -f origin/
git checkout: updating paths is incompatible with switching branches/forcing
Did you intend to checkout 'origin/' which can not be resolved as commit?
FATAL: Error checking out origin/
java.lang.RuntimeException: Error checking out origin/
    at hudson.plugins.git.GitAPI.launch(GitAPI.java:101)
    at hudson.plugins.git.GitAPI.checkout(GitAPI.java:94)
    at hudson.plugins.git.GitSCM.checkout(GitSCM.java:90)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:693)
    at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:266)
    at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:239)
    at hudson.model.Run.run(Run.java:842)
    at hudson.model.Build.run(Build.java:88)
    at hudson.model.ResourceController.execute(ResourceController.java:70)
    at hudson.model.Executor.run(Executor.java:90)

Среда Hudson: Debian Etch, Sun JSDK 6, git 1.4.4.4, последняя стабильная загрузка Hudson


person Ruben    schedule 31.01.2009    source источник


Ответы (1)


Во-первых, ваша версия Git довольно старая. Я предлагаю вам обновить его, прежде чем делать что-либо еще.

Во-вторых, git checkout -f origin/ не является допустимой командой. Вам либо нужно проверить ветку, либо вы можете проверить фиксацию (указав хэш фиксации или тег) и одновременно создать новую ветку (используя git checkout -b new-branch commit-hash). Дополнительную информацию см. На странице руководства git-checkout.

person Bombe    schedule 31.01.2009
comment
Обновление git до v1.5.6 и явное указание ветки помогло. - person Ruben; 03.02.2009