Что такое пустой репозиторий и зачем он мне нужен?
На это, возможно, ответили, но я не нашел хорошего ответа.
Я пришел из централизованных репозиториев, таких как SVN, где обычно вы выполняете только проверки, обновления, фиксацию, возврат, слияние и многое другое.
Git сводит меня с ума. Существует множество команд, но самое трудное для понимания - почему многие вещи работают так, как они работают.
В соответствии с"Что такое пустой git-репозиторий?":
Репозитории, созданные сgit init --bare
называются голыми репо. Они структурированы немного иначе, чем рабочие каталоги. Прежде всего,они не содержат рабочей или проверенной копии ваших исходных файлов.
…
Пустой репозиторий, созданный сgit init --bare
для…разделение, … Разработчики будут клонировать общее репо без изменений, локально вносить изменения в свои рабочие копии репо, а затем возвращаться к общему репо, чтобы сделать свои изменения доступными для других пользователей.
- Джон Сэйнтс,http://www.saintsjd.com/2011/01/what-is-a-bare-git-repository/
Однако из принятого ответа"В чем разница между GitHub-репозиторием и Git-голым репозиторием?":
Git-репозитории на GitHub пусты, как и любые удаленные репозитории, на которые вы хотите перейти[Так в оригинале].
- VonC,https://stackoverflow.com/a/20855207
Однако в GitHub есть исходные файлы. Я могу видеть их. Если я создаю пустой репозиторий, нет исходных файлов, только содержимое для.git
каталог рабочего репозитория.
Как это возможно? Что я не понимаю?
Можете ли вы привести пример, почему мне нужен пустой репозиторий и его мотивация для такой работы?
ОБНОВИТЬОтчасти ответ Эдварда Томсона - это то, что я хотел знать. Тем не менее я перефразирую свой вопрос:
Первая ссылка, которую я отправил, сообщает ("Что такое пустой git-репозиторий?"):
они [пустые репозитории] не содержат рабочей или извлеченной копии ваших исходных файлов.
VonC ответ:
Git репозитории на GitHub пусты
Оба утверждения подразумевают
У Github нет рабочей копии.
Эдвард Томсон говорит:
он отображает веб-страницу на основе данных при перемещении по ней - извлекает данные непосредственно из репозитория в веб-браузер, а не записывает их сначала на диск на файловом сервере
Так или иначе, пустой репозиторий должен содержать все данные и исходный код. В противном случае было бы невозможно сделать что-либо, потому что я могу видеть весь обновленный (подтвержденный) исходный код, все ветви (с соответствующим источником), весь журнал репо и т. Д.
Есть ли полные данные репозитория всегда в каталоге .git (или в голом репо), в каком-то формате, который способен отображать все файлы в любое время? Является ли это причиной пустого хранилища, в то время как рабочая копия имеет файлы только в определенное время?