Projekt rozwidlenia procesu Github

25

Na Github jest projekt, który najbardziej lubię i chcę z niego korzystać. Jest kilka rzeczy, które chcę zrobić inaczej / usunąć, które nie mają sensu dla tego, czego chcę / potrzebuję. Też chcę dodać kilka rzeczy.

Jak rozumiem, powinienem rozwidlić projekt i mogę dokonać dowolnych zmian i wcisnąć z powrotem do mojego rozwidlenia. Stamtąd chcę również od czasu do czasu wciągać do mojego widelca zmiany z oryginalnego projektu, aby uzyskać najnowsze poprawki / funkcje błędów.

Czy jestem poza tym, jak według mnie powinno to działać? Jak wprowadziłby zmiany w stosunku do pierwotnego projektu?

Mike Wills
źródło
1
Może ci się to przydać: stackoverflow.com/questions/3329943/…
Michael Durrant

Odpowiedzi:

18

Zrób widelec, a następnie natychmiast zrób gałąź.

Teraz masz „nietknięty” wzorzec, który można aktualizować, aby uzyskać najnowsze zmiany za pomocą git pulls.

Utrzymuj oddział lokalny bez wypychania go na odległość, a będziesz mógł wykonać rebasenastępujące czynności:

  • zapisz swoje zmiany
  • zastosuj najnowsze zmiany z głównego do swojego oddziału (te, które pochodzą z aktualizacji zdalnie)
  • ponownie zastosuj zmiany, na wierzchu kodu, który został zaktualizowany z master (lub innej oryginalnej gałęzi).

Kiedy w końcu to zrobisz, scal je z powrotem w master (lub jakąkolwiek gałąź początkowego rozwidlenia) lokalnie, a następnie prześlij żądanie ściągnięcia dla faktycznego właściciela, aby go wciągnął.

Tak czy inaczej to jeden przepływ pracy (lub „przepływ widelca”), jak rozumiem. Inni mogą komentować, poprawiać lub dodawać więcej szczegółów.

Michael Durrant
źródło
3
To wydaje się trochę nie na temat. Odnosi się do „jak” bez większego wyjaśnienia tego, co robisz, i pozwala uniknąć pytania o etykietę. Możesz to poprawić, przedstawiając ogólny przegląd tego, co osiągasz, i wyjaśniając, dlaczego warto to robić w ten sposób.
Justin Morgan
10

Zasadniczo masz: po utworzeniu widelca jest to Twoja mała piaskownica.

Myślę, że najważniejszą rzeczą, którą musisz zrobić, jest natychmiastowe utworzenie gałęzi po rozwidleniu, aby oddzielić pierwotną linię rozwoju od własnej. To, czy rozwijasz się w tej branży, czy w stopniu magistra, zależy w dużej mierze od osobistego gustu. Jedyną rzeczą, która powstrzymałaby mnie od rozwijania umiejętności w zakresie mistrza, jest to, że zbyt łatwo jest wykonać „git pull” i zrobić coś złego.

parsifal
źródło