Подтвердить что ты не робот

Git локальный репозиторий и удаленный репозиторий - путаные понятия

Если я правильно понимаю, Git имеет два типа репозиториев: один называется local, другой - remote. Мои вопросы крайне наивны в отношении двух типов репозиториев.

Правильно ли сказать

  • Git Локальный репозиторий - это тот, на котором мы будем делать локальные изменения, обычно этот локальный репозиторий находится на нашем компьютере.

  • Git удаленный репозиторий - это сервер, обычно это машина, расположенная на расстоянии 42 миль.

Другой вопрос: какой-то учебник показывает мне этот рабочий процесс

  • mkdir myproject
  • cd myproject
  • Git init
  • нажмите README
  • Git добавить README
  • Git commit -a -m "

Я вижу, что git init создает myproject локальный репозиторий. Я не понимаю, что git commit. Если я еще не установил удаленный репозиторий, как Git знать, где взять мой файл README?

Надеюсь, я поняла.

[EDIT] Способ использования Git может отличаться от других: Я использую частный репозиторий Git для резервного копирования моих кодов. Поэтому я думаю, что мне нужен удаленный репозиторий. В этом случае локальный репозиторий должен быть вздор. Я прав? Спасибо за ваше разъяснение. Это самые наивные вопросы, которые я не могу найти в другом месте...

4b9b3361

Ответ 1

Что делает Git таким удивительным, так это его распределенная система контроля версий. Ваш локальный репозиторий имеет те же функции и функциональность, что и любой другой репозиторий git. Таким образом, git-репо на сервере - это то же самое, что git-репо на github (предоставленный github добавляет дополнительные функции, но по своей сути вы имеете дело с git-репо), что аналогично локальному репо вашего коллеги.

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

Смысл всего этого состоял в том, чтобы заявить (как и другие), что вы отправляете свой README в локальное репо. Затем, когда вы решите, вы можете перенести изменения из локального репо в любое другое. Это довольно изящно!

Ответ 2

Поскольку я испытываю те же самые вопросы, что и вы (исходя из мышления VSS и TFS) и за последние 3 дня начал понимать. Я полагаю, что такого рода диаграммы были бы более полезными для понимания всей картины для всех, кто был там пойман.

от: https://greenido.files.wordpress.com/2013/07/git-local-remote.png?w=696&h=570

Git Flow diagram 1

Еще один: https://wiki.lsr.ei.tum.de/lib/exe/fetch.php?media=nst/programming/git_flow.jpg&w=500&tok=e87798.

Git flow diagram 2

Ответ 3

Если я еще не установил удаленный репозиторий, как Git знать, где можно скопировать мой файл README?

Вы совершаете свой локальный репозиторий (который является надлежащим репозиторием со своим собственным элементом управления изменениями, это не просто локальная проверка... поскольку вы создали его локально, это даже не локальная проверка!).

Если вы хотите отправлять изменения в удаленный репозиторий (для их резервного копирования, предоставления их другим членам команды или публикации их в мире), вы должны push.

Ответ 4

Ваше цитированное утверждение верно.

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

Цель удаленного репозитория (например, GitHub) - опубликовать ваш код в мире (или для некоторых людей) и позволить им читать или писать.

Удаленный репозиторий задействуется только в том случае, если вы git push ваш локальный объект связывается с удаленным репозиторием или когда вы git pull кто-то другой совершает его.

Ответ 5

Я новичок в Git, и у меня есть проект, который мне нужен, чтобы аннотировать гипотетический белок. Мой руководитель предложил мне установить и использовать Git, но я не знаю, с чего начать. Мне нужна помощь. Как Git связан с моим проектом и как я им управляю?

Ответ 6

Например, необходимость создания удаленного репозитория на github заключается только в том, чтобы делиться кодом с другими программистами, поскольку они могут "просто получить доступ к вашему git-репо (если они не подключаются к вашему компьютеру с помощью вашего ip-копии, тогда они имеют доступ только к вашим изменениям"). только, но не изменения других программистов), поэтому 'фиксируйте ваши изменения из вашего локального репозитория в удаленном/центральном репо, чтобы другие разработчики могли их проверить и в итоге получить то же состояние программного обеспечения. Но, в конце концов, если вы единственный разработчик, вам не нужно удаленное/центральное репо.