2016-08-21 11 views
2

Um mit dem neuen nopCommerce-Projekt zu arbeiten, habe ich ein privates Git-Repository erstellt. Ich wollte in der Lage sein, die letzten Änderungen aus der Quelle zu ziehen, also kopierte ich das offizielle nopCommerce Repo (https://help.github.com/articles/duplicating-a-repository/). Ich möchte eine Änderung an meinem privaten Repository vornehmen, die dem Projekt ein benutzerdefiniertes Design hinzufügt. Wo sollte ich die Änderung vornehmen, um später Änderungen am offiziellen Repo vornehmen zu können? Auch, wie sich das im gespiegelten Repository befindet, sollte sich auf meinen Git-Workflow auswirken. Bei meinen letzten Projekten habe ich den gitflow (https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow) verwendet.Änderungen an gespiegeltem Repository committen

Antwort

2

Wenn Sie diesen ursprünglichen "upstream" -Repo in Ihr eigenes Git Repo kopiert haben, bedeutet dies, dass die lokal geklonte Kopie, die Sie auf Ihrer Workstation haben, jetzt zu Ihrem privaten Repo von Ihnen gehen sollte.

Das ist wegen des Befehls git remote set-url --push origin https://github.com/exampleuser/mirrored (from the GitHub tutorial).
Es ermöglicht Ihnen, ziehen aus dem ursprünglichen Repo und drücken Sie auf Ihren Spiegel.

Wenn Sie jedoch beabsichtigen, Ihre eigenen Commits hinzuzufügen, sollte dieser private Repo eine Gabel sein, kein Spiegel.
Das heißt:

  • den ursprünglichen Repo als "upstream" Referenzierung (anstelle der URL des Remote-origin holen)

    git remote add upstream $(git remote get-url origin) 
    
  • sowohl Push-Einstellung und Herkunfts-URL zu Ihrem privaten holen Repo

    git remote set-url origin $(git remote get-url origin) 
    

Anschließend können Sie einen beliebigen Workflow (wie git-flow) auf Ihren privaten Repo anwenden, während Sie immer noch von upstream abrufen und alle neuen Commits aus dem ursprünglichen Repo, der jetzt als referenziert wird, zusammenführen (oder erneut aufsetzen) upstream)

Verwandte Themen