2015-05-03 5 views
3

Это сбивает с толку. Я читал во многих местах, что git --bare init устанавливает каталог, в котором вы используете эту команду, из годового репозитория Git, который вы хотите использовать в качестве центрального репозитория. В частности, я читаю, где эта команда создает просто пустой .git подкаталог. Когда я запускаю эту команду из окна bash GitGui, я получаю несколько созданных каталогов, ни один из которых не является .git. И наоборот, если я забегу git init, я получаю каталог .git и все те, которые были созданы с помощью опции --bare. Что-то не так с моим инструментом bash?«git --bare init» не создает только каталог .git

+0

Не могли бы вы указать другие каталоги, созданные в вашем вопросе? Может быть, тогда кто-то сможет объяснить, что это такое. – IMSoP

ответ

4

Все эти каталоги, которые вы видите, являются каталогами, которые обычно находятся внутри .git. Поскольку нет рабочей копии, нет необходимости выделять обычные файлы из файлов в .git, поэтому нет ненужного подкаталога .git.

5

Рекомендуемый способ использования git init --bare - указать имя каталога, в котором хранится голый репозиторий. Например. git init --bare myproject.git (обычная практика состоит в том, чтобы иметь законченные хранилища с .git). Это создаст новую папку myproject.git и поместит все вещи, которые Git нуждается в них.

Если вы оставите имя репозитория вне команды, Git инициализирует текущий каталог как (голый) репозиторий. Таким образом, он поместит все необходимые вещи в текущую папку.

Итак, то, что вы видите, является правильным результатом, и все эти файлы необходимы и необходимы для голого репозитория.

+0

Возможно, это то, что мне нужно. Я заметил, что без какого-либо * .git-каталога мой GitGui не распознает родительскую папку как действительный репозиторий. – swingMan

+0

Возможно, ваш графический интерфейс не может работать с открытыми хранилищами (и, откровенно говоря, вы все равно не можете/не должны делать с ними). Большинство графических интерфейсов в первую очередь предназначены для выполнения команд, связанных с рабочим каталогом Git. А поскольку у вас нет рабочего каталога с открытыми репозиториями (по дизайну), это может быть не так полезно. – poke

+0

ОК, я запустил «git -bare init myproject.git», который настроил структуру каталогов, как вы сказали, но GitGui по-прежнему не распознает его как репозиторий, то есть я не могу открыть его/просмотреть это через GUI. Есть ли что-то о голом репозитории, который не позволил бы мне «открыть» его? – swingMan

Смежные вопросы