2012-01-20 5 views
42

Я читал на: https://wiki.diasporafoundation.org/Git_workflow#Rebase_your_development_branch_on_the_latest_upstreamЧто делает «git remote add upstream»?

Вот выдержка:

Ваш Repository До Дата

Для того, чтобы получить последние обновления от ствола развития делают один рабочий день установки, чтобы установить основную GitHub репо в качестве удаленного от входа :

$ git remote add upstream git://github.com/diaspora/diaspora.git 

Rebase Your Development Branch на последнем Upstream

Чтобы обновить ветвь развития, обновите свои изменения сверху текущего состояния ведущего устройства. См. What's git-rebase? раздел ниже, чтобы узнать больше о перезагрузке.

Если вы установили входную ветвь, как описано выше, и ветвь развития называется 100-перечириканье-устранении ошибки, вы бы обновить вверх по течению, обновления местный мастер, и перебазировать свою ветку от него так:

$ git fetch upstream 

$ git checkout master 

$ git rebase upstream/master 

$ git checkout 100-retweet-bugfix 

[убедиться, что все совершается по мере необходимости в отрасли]

$ git rebase master 

Почему добавление «удаленный вверх по течению» необходимо в этом случае? Coudn't я только что сделал:

$ git checkout master 

$ git pull origin master 

$ git checkout 100-retweet-bugfix 

[убедиться, что все совершается по мере необходимости в отрасли]

$ git rebase master 
+0

вы должны сделать 'git remote add' not' git add remote' ... – Honey

ответ

52

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

Таким образом, «происхождение» - это клон вашего вилочного репо, из которого вы нажимаете и тянете. «Upstream» - это имя основного репо, от которого вы тянете и обновляете клон своей вилки, но у вас нет доступа к нему.

+1

Спасибо @manojlds! У меня есть следующий вопрос, а затем здесь: [link] (http://stackoverflow.com/questions/8948964/git-rebase-master-then-push-origin-branch-results-in-non-fast-forward-error) – ben39

13

Это полезно, когда у вас есть свой собственный origin, который не является upstream. Другими словами, у вас может быть свой собственный репозиторий origin, который вы делаете для разработки и локальных изменений, а затем изредка объединяете upstream изменений. Разница между вашим примером и выделенным текстом заключается в том, что ваш пример предполагает, что вы напрямую работаете с клоном восходящего репо. В выделенном тексте предполагается, что вы работаете над клоном своего собственного репо, который, предположительно, первоначально был клоном восходящего потока.

+0

Спасибо @smparkes! это было действительно полезно. У меня есть следующий вопрос, а затем здесь: [link] (http://stackoverflow.com/questions/8948964/git-rebase-master-then-push-origin-branch-results-in-non-fast-forward-error) – ben39

2

Я думаю, что он может быть использован для «заднего числа разветвления»

Если у вас есть репозиторий Git, и теперь решил, что он должен был раздвоенный другой репозиторий. Ретроактивно вы хотели бы, чтобы он стал вилкой, не нарушая работу команды, использующей репо, требуя, чтобы они нацелились на новое репо.

Но я мог ошибаться.

+0

Какую ценность дает этот ответ после ответа на вопрос 5 лет назад? И вы все еще не уверены в правильном ответе ... –

+0

@MaciejJureczko Я не одинок, когда задаюсь вопросом, как «ретроактивно развиваться», если этот вопрос/ответ обсуждает, как (что я думаю, но я не уверен). Тогда этот вопрос можно было бы использовать в качестве ответа на другие вопросы. https://stackoverflow.com/questions/30472771/marking-a-repo-as-a-fork-in-github-after-the-fact ... если это так, как ретроактивно вилка, теперь это можно найти с помощью эти поисковые термины. Мне потребовалось некоторое время, чтобы подумать, что, возможно, добавление восходящего репозитория может быть тем, что я искал. Если бы OP была единственной аудиторией, они не будут архивировать вопросы с «5 лет назад». – Onceler

Смежные вопросы