2015-08-12 6 views
0

Есть по крайней мере 3 предыдущие вопросы, объясняющие, как клонировать репозиторий без .git каталога:Почему git clone иногда создает каталог .git, а иногда нет?

Из этих вопросов, кажется, вы можете 'просто запустите git clone и создайте репозиторий без каталога .git.

Тем не менее, в большинстве репозиций, которые я клонировал, например, в приведенной ниже команде, не создается каталог .git.

git clone https://github.com/scotch-io/scotch-box.git 

Что определяет, создает ли прямой git clone команда каталог .git или нет?

+1

Ну после того, как я клонированный репо предоставленного Вами, у меня есть '.git' каталог. Таким образом, единственная ситуация, когда я могу представить, где у вас нет .git-каталога, - это голый репозиторий. Но даже если вы клонируете этот голый репо, git создаст папку .git. Обязательно, чтобы git работал правильно. – ckruczek

+0

Возможный дубликат [Сделать экспорт «git» (например, «экспорт svn»)?] (Http://stackoverflow.com/questions/160608/do-a-git-export-like-svn-export) – Jodes

ответ

1

Существует всегда .git каталог после «» мерзавца клона «». Никаких исключений. Если вы его не видите, то он скрыт (как это происходит, зависит от вашей операционной системы. «Ls» на linux не показывает файлы/директории, начинающиеся с точки. Вам нужно будет использовать 'ls -a ''.)

Директория .git имеет важное значение, так как содержит все файлы и информацию, используемую git.

Вот что происходит после «» GIT-клона «» вы упомянули:

/tmp % git clone https://github.com/scotch-io/scotch-box.git 
Cloning into 'scotch-box'... 
remote: Counting objects: 83, done. 
remote: Total 83 (delta 0), reused 0 (delta 0), pack-reused 83 
Unpacking objects: 100% (83/83), done. 
Checking connectivity... done. 
/tmp % cd scotch-box 
/tmp/scotch-box (git)-[master] % la 
total 40K 
drwxr-xr-x 4 t t 4.0K 12. Aug 14:10 . 
drwxrwxrwt 8 root root 12K 12. Aug 14:10 .. 
drwxr-xr-x 7 t t 4.0K 12. Aug 14:10 .git 
-rw-r--r-- 1 t t 18 12. Aug 14:10 .gitignore 
-rw-r--r-- 1 t t 7.4K 12. Aug 14:10 README.md 
-rw-r--r-- 1 t t 480 12. Aug 14:10 Vagrantfile 
drwxr-xr-x 2 t t 4.0K 12. Aug 14:10 public 
2

Вы уверены, что ищете .git в нужном месте? Когда вы делаете клон как git clone https://github.com/scotch-io/scotch-box.git, репо фактически клонировать в директории scotch-box и, следовательно, .git будет scotch-box/.git

С другой стороны, делает:

GIT клон https://github.com/scotch-io/scotch-box.git.

Примечание . в конце - клонирует в текущей папке (если это не уже мерзавец репо)