Pracuję nad projektem, który wykorzystuje GIT jako główny system kontroli wersji dla pnia, oficjalnych oddziałów i większości podprojektów / nieoficjalnych gałęzi. Jako taki, chcę, aby mój własny oddział używał GIT, aby umożliwić pozostałej społeczności dostęp do mojego oddziału przy użyciu systemu, który znają.
Pracuję jednak nad częścią projektu, która nakłada się zarówno na oficjalne, jak i nieoficjalne gałęzie, a także na niektóre łaty, które nigdy nie trafią do bagażnika - jako takie muszę mieć możliwość oddzielenia swoich łatek, umożliwiając ich stosowanie w moją gałąź i selektywne łaty do zabrania do użytku w bagażniku. To naturalnie skłania do korzystania z kolejek rtęciowych.
Czy istnieje jakiś powód, dla którego nie mogę używać merkurialu do własnego lokalnego repozytorium, ale przesłać całość do repozytoriów hostowanych zarówno przez GIT, jak i Mercurial? A raczej, czy jest jakiś dobry powód, aby tego nie robić, jestem pewien, że jest to możliwe.
źródło
Odpowiedzi:
Nie powinieneś tego robić z tego samego powodu, dla którego nie powinieneś mieć zmiennej, która próbuje śledzić stan innej - możesz stracić kontrolę nad wersją, która jest autorytatywna.
źródło
Obecnie robię to za pomocą git i svn. Chociaż istnieją powody nie to zrobić, nie istnieje ogólna zasada. Git może robić rzeczy, których svn nie może, jestem przyzwyczajony do tych funkcji, więc mój przepływ pracy zwiększa wydajność, kiedy mogę używać git. Patrząc na zalety i wady w mojej sytuacji, głupio byłoby nie korzystać z obu. Powinieneś spojrzeć na swoją sytuację w ten sam sposób. (przy okazji jedyne minusy dla mnie to uruchomienie jednego małego skryptu, aby zsynchronizować git z svn)
źródło
Możesz trzymać swoje łatki osobno w Git: zrób każdą z nich we własnym oddziale, a następnie scalaj je według uznania.
źródło