Mam projekt gry, który będzie miał dwie wersje:
- Prosta wersja gry, rdzeń.
- Zaawansowana wersja gry.
Mam pierwszą wersję w moim publicznym repozytorium i tylko ja będę nad nią pracować. Jeśli chodzi o drugą wersję, dwóch moich przyjaciół i ja będziemy nad nią pracować. Najważniejsze jest to, że chcę, aby dwie wersje pozostały w moim repozytorium.
Pomyślałem, że mogę użyć do tego gałęzi, ale biorąc pod uwagę to pytanie i odpowiedź , nie jest to dobra praktyka, jeśli chodzi o wersjonowanie. O ile się dowiedziałem, rozwidlenie własnego repozytorium nie jest możliwe.
Jakie są moje opcje tutaj? Jak mogę przechowywać obie wersje w moim repozytorium?
fork
repozytorium utworzy nowe repozytorium na twoim koncie.Odpowiedzi:
Wydaje mi się, że potrzebujesz dwóch repozytoriów, a nie dwóch oddziałów . Gałąź jest mechanizmem do obsługi zmian w jednym repozytorium, aby ostatecznie połączyć je z resztą kodu.
Jeśli naprawdę chcesz zachować obie wersje podobnej bazy kodu w tym samym repozytorium, wówczas jedyną opcją jest przejście do Oddziału , jednak jak wspomniano wcześniej, głównym celem oddziału jest oddzielenie niektórych określonych zatwierdzeń w sposób że nie powodują konfliktów z resztą kodu w okresie programowania i łączą je, gdy są gotowe do pracy.
Istnieją sytuacje, w których repozytorium ma dwie nieznacznie różne gałęzie - np. 32-bitowe i 64-bitowe wersje tego samego kodu źródłowego, jednak nadal polecam wybranie oddzielnych repozytoriów, jeśli jest to opcja.
źródło
Odpowiedź na pytanie „czy mam sklonować czy rozwidlić” jest dokładnie taka sama jak odpowiedź na to pytanie „czy chcę mieć własną wersję tego projektu?” tak = rozwidlenie, nie = klonowanie repozytorium.
W git gałąź jest lekką rzeczą, która często jest tymczasowa i może zostać usunięta. Fork (on github) to nowy projekt oparty na poprzednim projekcie. Klonujesz repozytorium, aby pracować nad nim jako członek zespołu.
W wielu projektach publicznych rozwidlasz projekt, aby zachować zmiany robocze poza głównym projektem.
W fazie 2 rozwidlaj projekt, a następnie sklonuj go na działającym komputerze i poproś znajomych o zrobienie tego samego.
źródło
To, co naprawdę brzmi tak, jak chcesz, to submoduł. Jeśli utworzysz pierwsze repozytorium (twoje prywatne repozytorium proste), a następnie dodasz je jako podmoduł do repozytorium wersji zaawansowanej, powinieneś być w stanie śledzić i wyciągać zmiany w submodule w repozytorium zaawansowanym podczas opracowywania prywatnego repozytorium prostego.
źródło