Локальный репозиторий Git и удаленный репозиторий-запутанные понятия
Если я правильно понимаю, Git имеет два вида репозиториев: один называется локальным, другой называется удаленным. Мои вопросы чрезвычайно наивны в отношении двух типов репозиториев.
правильно ли это сказать
локальный репозиторий в Git-это тот, на котором мы будем вносить локальные изменения, как правило, этот локальный репозиторий на нашем компьютере.
удаленный репозиторий Git - это один из серверов, обычно это машина в 42 км от отеля.
другой вопрос: некоторые учебник показывает мне этот рабочий процесс
- mkdir myproject
- cd myproject
- git init
- нажмите README
- git добавить README
- git commit-a-m"
Я вижу git init
создает локальный репозиторий myproject. Чего я не понимаю это
??
надеюсь, я был ясен.
[EDIT] способ, которым я использую Git, может отличаться от других: Я использую частный репозиторий Git для резервного копирования своих кодов. Поэтому я думаю, что мне нужен удаленный репозиторий. В этом случае локальный репозиторий должен быть бессмысленным. Я прав? Спасибо за разъяснение. Это самые наивные вопросы, на которые не могу найти ответов нигде...
4 ответов
Что делает git настолько удивительным, это распределенные система контроля версий. Ваш локальный репозиторий имеет те же функции и функции, что и любой другой репозиторий git. Таким образом, git-РЕПО на сервере-это то же самое, что Git-РЕПО на github (предоставленный github добавляет дополнительные функции, но по своей сути вы имеете дело с Git-РЕПО), что и локальное РЕПО вашего коллеги.
Почему это круто? Потому что нет центрального РЕПО, к которому вы должны иметь доступ выполнять свою работу. Вы можете совершать, ветви и партии на своем собственном РЕПО на локальном компьютере даже без доступа в интернет. Затем, когда у вас снова будет соединение, вы можете перенести свои изменения в любое другое репозиторий git, к которому у вас есть доступ. Поэтому, хотя большинство людей рассматривают конкретное РЕПО как центральное РЕПО, это выбор процесса, а не требование git.
смысл всего этого состоял в том, чтобы заявить (как и другие), что вы передаете свой README в локальное РЕПО. Тогда, когда бы вы ни выбрали, вы можете нажмите изменения из локального РЕПО в любое другое РЕПО. Это довольно изящно!
поскольку я испытываю точно такие же вопросы, как и ваши (приедет из ВСС и TFS мышление) и в течение последних 3 дней начал понимать. Я считаю, что такого рода диаграммы были бы более полезны для понимания всей картины для тех, кто там оказался.
от: https://greenido.files.wordpress.com/2013/07/git-local-remote.png?w=696&h=570
еще один, от: https://wiki.lsr.ei.tum.de/lib/exe/fetch.php?media=nst/programming/git_flow.jpg&w=500&tok=e87798
Если я еще не установил удаленный репозиторий, как Git может знать, где зафиксировать мой файл README??
вы совершаете свой локальный репозиторий (который является правильным репозиторием с собственным контролем изменений; это не просто локальная проверка ... так как вы создали его локально, это не даже локальный кассе!).
Если вы хотите отправить изменения в удаленный репозиторий (чтобы поддержать их, сделать их доступными для других членов команды, или опубликовать их в мире), вы должны пуш них.
ваше цитируемое утверждение верно.
вам не нужно иметь удаленный репозиторий на всех.
Вы можете иметь полный опыт с Git, с коммиты, ветки, сливается, перебазирует, и т. д., Только с локальным репозиторием.
цель удаленного репозитория (например, GitHub) - опубликовать ваш код в мире (или некоторым людям) и позволить им читать или писать его.
удаленный репозиторий задействован только тогда, когда вы git push
ваш локальный фиксируется на удаленном репозиторий, или когда вы git pull
чужие коммиты из него.