Яка різниця між походженням та потоком на GitHub?


Відповіді:


804

Це слід розуміти в контексті вилок GitHub (де ви роздрібнюєте рето GitHub на GitHub перед тим, як клонувати локально вилку).

  • upstreamяк правило, посилається на оригінал репо, який ви роздвояли
    (див. також " Визначення" downstream"та" upstream" " для детальніше про upstreamтермін)
  • origin це ваша вилка: ваше власне репо на GitHub, клон оригінальної репо-версії GitHub

На сторінці GitHub:

Коли репо клоновано, він має пульт за замовчуванням, який називається, originякий вказує на вашу вилку на GitHub, а не на оригінальний репо, з якого він був розщеплений.
Щоб слідкувати за оригінальним репо, вам потрібно додати ще одне віддалене ім’яupstream

git remote add upstream git://github.com/<aUser>/<aRepo.git>

(із aUser/aRepoпосиланням на оригінального творця та сховища, яке ви розвантажили)

Ви будете використовувати upstreamдля отримання оригінального репо-файлу (щоб зберегти локальну копію синхронізованою з проектом, в який ви хочете внести свій внесок).

git fetch upstream

( git fetchпоодинці вибирається originза замовчуванням, що тут не те, що потрібно)

Ви будете використовувати, originщоб тягнути та натискати, оскільки ви можете внести свій внесок у своє сховище.

git pull
git push

(знову ж таки, без параметрів, за замовчуванням використовується "origin")

Ви зробите свій внесок у upstreamрепо, зробивши запит на тягу .

вила та вище за течією


11
Це також допомагає знати , що , upstreamяк правило: stackoverflow.com/questions/2739376 / ...
VonC

2
@MaxRydahlAndersen правда, але мені подобається використовувати Git без обгортки, тому я дотримуватимуся цієї конвенції (вгору проти походження).
VonC

22
На сьогодні найкраще пояснення того, як працюють виделки, я бачив. Ви отримаєте мою пропозицію.
CodeChimp

9
Чудова робота над візуальним. Дуже пряма вперед і зрозуміла відповідь. Це саме те, що я шукав.
tayopi

1
@iamrudra, якщо git remote -v показує один і той же URL-код для початку та вище, тоді так, ви натискаєте на ту ж віддалену репо-версію.
VonC
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.