2012-10-30 11 views
16

Jestem całkiem nowy dla Gita i przeczytałem książkę Pro Git @http://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging. Moje pytanie brzmi, czy to, co robię dzisiaj, jest preferowanym sposobem pracy z serwerem produkcyjnym i zdalnym repozytorium Git."Właściwy" sposób na ciągnięcie git "gałęzi produkcji" do serwera produkcyjnego

Mam moje repo hostowane na GitHub, używając trzech zdalnych gałęzi: developing -> testing -> master.

Ilekroć sprawdzono, że dział "testowy" działa, I git merge "master" z "testing" (fast forward?) Lokalnie i git push "master" do GitHub.

na serwerze produkcyjnym (/opt/www/url.com/) Mam zrobienia:

git init 
git remote add origin https://github.com/..... 
git pull origin master 

Teraz za każdym razem chcesz zaktualizować Master I wydać git pull

git pull origin master 

Production nigdy nie będzie naciskać żadnych zmian na odległość. Lokalne zmiany nie będą miały miejsca. Czy robię to poprawnie? Jeśli nie, jaki jest preferowany sposób pobierania aktualizacji do produkcji?

Edycja nr 1: Nie chcę zarządzać żadnymi konfliktami na serwerze produkcyjnym, z czym mam teraz do czynienia (w jakiś sposób zrobiłem coś nie tak). Po prostu chcę usunąć najnowszy zaktualizowany katalog główny i przejść do niego.

Odpowiedz

12

Należy użyć:

git init --bare 

zainicjować repo, które nie będą miały drzewa obrotowego, co oznacza, że ​​nie będzie żadnych konfliktów.

+3

dlaczego jest poddawany pod głosowanie? –

+0

To dobre pytanie @AlainANDRE –

+0

Jak działałby serwer produkcyjny, gdyby nie miał działającej kopii repozytorium? – starbeamrainbowlabs

Powiązane problemy