Что означает слово origin в git push origin master


97

Когда я бегу:

git push origin master

... что означает originв этом контексте?


7
Посмотрите учебник Git - «Когда вы работаете в небольшой сплоченной группе, нет ничего необычного в том, чтобы взаимодействовать с одним и тем же репозиторием снова и снова. Определив сокращенное обозначение удаленного репозитория, вы можете упростить эту задачу». Если вы этого не сделаете, по умолчанию используется origin.
sakisk

1
Связанное сообщение - Что такое «происхождение» в Git?
RBT

Ответы:


75

origin- это имя по умолчанию для удаленного репозитория git, из которого вы клонировали. Посмотрите .git/refs/remotes/origin/*и в .git/configпределах ваших источников , чтобы увидеть , как мерзавец знает об этом.


7
Я бы сказал «клонировал ваш репозиторий из», а не «извлекать ваши источники из» - последнее является устаревшей фразой централизованной VCS и может немного ввести в заблуждение новичков в DVCS.
Cascabel

1
Что насчет команды git remote add origin? Зачем добавлять происхождение? stackoverflow.com/a/8248542/719689
AlxVallejo,

5
git remote add originозначает добавление удаленного репозитория с именем origin , что не имеет особого технического значения, это просто широко используемое имя по умолчанию для исходного удаленного репозитория. Вы можете использовать foobar вместо origin, если хотите.
skuro

1
@AlxVallejo, который часто используется, когда вы не клонировали из этого репозитория, а скорее создали репозиторий локально и создали источник в другом месте в качестве удаленного репозитория.
Мэтт

4
@KasunSiyambalapitiya - это название ветки. С git push origin masterвы говорите мерзавцу , чтобы подтолкнуть все фиксации в настоящее время извлеченного местного отделения (т.е. от файловой системы) в удаленном репозиторий , идентифицированного именем originна его удаленном филиале им master.
skuro

85

В git есть понятие «удаленных» - это как простые псевдонимы для репозитория, поэтому вам не нужно использовать его полный URL-адрес каждый раз, когда вы хотите обратиться к другому репозиторию.

originэто просто пульт, как и любой другой, но вы видите его очень часто, поскольку при первом клонировании репозитория git cloneпо умолчанию будет настроен пульт, вызываемый originдля ссылки на URL-адрес, с которого вы клонировали.

Если вы это сделаете git remote -v, вы увидите все пульты дистанционного управления, которые вы настроили в своем локальном репозитории, и URL-адреса, на которые они ссылаются. (Вы увидите, что это немного сложнее, чем я сказал выше, поскольку пульт может ссылаться на другой URL-адрес для отправки и получения, но вам, вероятно, не нужно об этом беспокоиться. :))


Что насчет команды git remote add origin? Зачем добавлять происхождение? stackoverflow.com/a/8248542/719689
AlxVallejo,

2
@AlxVallejo: вы можете добавить originпульт самостоятельно, если вы инициализировали репозиторий самостоятельно, а не через git clone.
Марк Лонгэр

@MarkLongair, что мы используем masterв конце кода
Касун Сиямбалапития

35

Происхождение, где вы получили код от происхождения -ally.


3
Для меня это не шутка, а мнемотехническое правило помнить, что означает происхождение. И один мне, кстати, нравится +1
МиГУ

Хотя мне нравится твоя отцовская шутка, это не обязательно правда. Я могу создать новое репо локально и совершить его, не зная об удаленном компьютере. Позже я могу создать удаленный именованный источник и отправить в него все коммиты, которые я сделал локально. Origin не обязательно должен быть исходным источником репозитория.
Роб Белл

3

Это поможет

https://www.git-tower.com/learn/git/glossary/origin

n Git «origin» - это сокращенное имя удаленного репозитория, из которого изначально был клонирован проект. Точнее, он используется вместо URL-адреса исходного репозитория, что значительно упрощает обращение к ним.

Обратите внимание, что происхождение - это ни в коем случае не «магическое» имя, а просто стандартное соглашение. Хотя имеет смысл оставить это соглашение нетронутым, вы можете прекрасно переименовать его без потери функциональности.

В следующем примере параметр URL для команды «clone» становится «источником» для клонированного локального репозитория:

git clone https://github.com/gittower/git-crash-course.git


2

origin удаленно создается самим git, когда вы в первый раз клонируете репо, чтобы указать URL-адрес, из которого вы создали клон. например: origin git@github.com: / PROJECT_U


0

«Origin» - это имя удаленного репозитория, в котором вы хотите публиковать свои коммиты. По соглашению удаленный репозиторий по умолчанию называется «origin», но вы можете работать с несколькими пультами (с разными именами) одновременно.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.