2015-06-10 4 views
1

Я делаю простой git init C:\XXX, который запускается с моей мастер-машины для выполнения на другом подчиненном компьютере. C:\XXX - это путь в рабстве. Предполагается, что он создаст не голый репозиторий, поскольку я не предоставил параметр --bare. Также я рассмотрел настройки системы, глобальные параметры конфигурации в подчиненном устройстве и, в частности, установить в них bare = false. Но даже после запуска git init я вижу локальную конфигурацию с bare = true.GIT INIT не создает рабочего дерева

Откуда взята команда init по умолчанию?

+0

Я не понимаю, какие роли ведущей машины и подчиненной машины здесь. Доступен ли 'C: \ XXX' из обоих? У обеих машин разные системные или глобальные настройки? (Например, если вы запускали 'git init C: \ XXX' на машине A, то это имеет значение только в конфигурационных файлах A.) – chepner

+0

У меня есть задание jenkins, настроенное для работы на подчиненном устройстве. Задание имеет ряд команд git, используя каталог рабочей области в ведомом. C: \ XXX - это каталог рабочей области в ведомом. Когда jenkins выполняет команду git init, это создает пустой репозиторий. Я попытался отобразить git config -list перед init, и ни одна из голых настроек не установлена ​​в true, но я делаю то же самое после команды init, и я вижу одну запись bare = true. Я также попытался напрямую выполнить эти команды из командной строки подчиненного компьютера, и он создает не голый репозиторий таким образом –

+0

Какова глобальная настройка 'bare' на мастер-машине? –

ответ

0

Когда вы запускаете git init <path> на вашей мастер-машине, приложение Git запускается на главном компьютере. Он использует глобальные конфигурации этой машины, где у вас, вероятно, есть bare=true.

Чтобы решить эту проблему вы можете использовать один из следующих вариантов:

  1. Войти на рабский машину с SSH и запустить git init <path>
  2. Непосредственно скопировать Premade .git к выбранному пути на раб. Это дает вам возможность использовать измененный репозиторий. Например. вы можете добавить git-крючки.
+0

Получил разрешение! Это как-то связано с созданным мной рабом. Я обновил множество конфигурационных файлов, чтобы иметь bare = false и, вероятно, что-то испортил. Поэтому я удалил ведомый и создал другое подчиненное устройство и использовал slave.jar, который мне нужен для запуска нового. –

+0

Благодарим вас за отзыв. Nick -> git init запускался на подчиненном компьютере, поскольку работа jenkins выполнялась на подчиненном устройстве, и он использовал ведомый git также, когда я предоставил местоположение инструмента с ведомым git-контуром –

+0

@ ARUNNAIR. О, я вижу. Не возражаете, если я переписал свой ответ, чтобы включить ваше решение? –