Какая разница между клонированием и копированием репозитория git?

тот же вопрос существует для mercurial, и мне интересно, как это относится к git? В частности, меня интересуют случаи, когда есть два локальных репозитория и копирование между серверами с помощью rsync или таких.

Кроме того, если исходное репо само клонируется, скажем, gitorious, и я его копирую, то gitorious все равно будет существовать как удаленный (отслеживаемый ведущей ветвью) в копии, не так ли? Это происходит, если вместо этого клонирована копия?

Ответ 1

Клонирование репозитория дает вам копию этого репозитория и настраивает исходный репозиторий как удаленный.

Копирование репозитория дает вам копию этого репозитория. (Хотя вы можете, конечно, просто добавить удаленное определение впоследствии через git remote add.)


Копирование репозитория копирует его файл .git/config и, таким образом, его пульты. Клонирование репозитория не копирует файл конфигурации, и, таким образом, пулы не используются. (Репозиторий, который был клонирован, устанавливается как удаленный origin в результирующем клоне.)

Ответ 2

Я также хотел бы отметить, что возможно будет разница в результатах CRC между клонированием и загрузкой из BitBucket. Моя работа требует проверки целостности файлов, и мы заметили, что клонирование хранилища и запуск проверки CRC для нескольких файлов приводят к другому результату CRC, чем те же файлы, загруженные из хранилища. После различий в файлах нет никакого физического различия в читаемом человеком тексте, но размер файла в байтах отличается.