Wat heeft ‘Git Remote Toevoegen Upstream’ helpen?

Ik was aan het lezen op:
https://wiki.diascorafoundation.org/git_workflow#rebase_your_development_branch_on_the_latest_upstream

Hier is een extract:

Uw repository up-to-date

Om de nieuwste updates van de Development Trunk te krijgen
eenmalige setup om de hoofdgithub repo tot stand te brengen als een afstandsbediening door
invoeren:

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

Rebase uw ontwikkelingsbranche op de nieuwste stroomopwaarts

Om uw ontwikkelingstranch op de hoogte te houden, wordt uw wijzigingen bovenaan opnieuw in
van de huidige staat van de stroomopwaartse master. Zie de wat is
git-rebase? Sectie hieronder om meer te weten te komen over rebasing.

Als u een stroomopwaartse tak hebt ingesteld zoals hierboven beschreven, en een
Ontwikkelingsbranje genaamd 100-retweet-bugfix, u zou stroomopwaarts updaten,
Werk uw lokale master bij en rebase uw tak ervan, zoals SO:

$ git fetch upstream
$ git checkout master
$ git rebase upstream/master
$ git checkout 100-retweet-bugfix

[Zorg ervoor dat alles is gepleegd als nodig in Branch]

$ git rebase master

Waarom is in dit geval een ‘Remote Upstream’ nodig? Coud ik heb het zojuist gedaan:

$ git checkout master
$ git pull origin master
$ git checkout 100-retweet-bugfix

[Zorg ervoor dat alles is gepleegd als nodig in Branch]

$ git rebase master

Antwoord 1, Autoriteit 100%

De wiki is aan het praten vanuit een gevorkbaar repo oogpunt. Je hebt toegang tot te trekken en van oorsprong te duwen, wat je splitsing van de belangrijkste diaspora repo zal zijn. Om veranderingen van deze hoofdrepo aan te trekken, voegt u een afstandsbediening toe, “Upstream” in uw lokale repo, wijzend naar dit origineel en trekt u eraan.

Zo “Oorsprong” is een kloon van uw vork-repo, waaruit u duwt en trekt. “Upstream” is een naam voor de hoofdrepo, van waaruit je trekt en een kloon van je vork bijgewerkt, maar je hebt er geen pusht toegang tot.


Antwoord 2, Autoriteit 18%

Dit is handig wanneer u uw eigen origindie niet upstream. Met andere woorden, u heeft misschien uw eigen originrepo dat u ontwikkeling en lokale wijzigingen doet en vervolgens af en toe samenvoegen upstreamWijzigingen. Het verschil tussen uw voorbeeld en de gemarkeerde tekst is dat uw voorbeeld ervan uitsprakelijk is dat u rechtstreeks met een kloon van de stroomopwaartse repo werkt. De gemarkeerde tekst gaat ervan uit dat je werkt aan een kloon van je eigen repo die vermoedelijk oorspronkelijk een kloon van stroomopwaarts was.


Antwoord 3, Autoriteit 4%

Ik denk dat het kan worden gebruikt voor “met terugwerkende firming”

Als u een git-repo hebt, en nu hebt besloten dat het een andere repo had moeten hebben gevorkt. Met terugwerkende kracht zou je het leuk vinden om een ​​vork te worden, zonder het team te verstoren dat de repo gebruikt door ze nodig te hebben om een ​​nieuwe repo te richten.

Maar ik kan fout zijn.


Antwoord 4, Autoriteit 3%

Laten we een voorbeeld nemen:
Je wilt bijdragen aan Django, dus je vult zijn repository. In de tijd dat je aan je functie werkt, is er veel werk gedaan op de originele repo door andere mensen. Dus de code die je hebt gevorderd is niet de meest up-to-date. Het instellen van een externe upstream en het ophalen van het tijd tot tijd zorgt ervoor dat uw gevorkte repo synchroon is met de oorspronkelijke repo.

Other episodes