Jaki jest najlepszy sposób na utrzymanie kodu witryny w git i ściągnięcie rdzenia i wkładu w tym samym repozytorium?


11

Kiedy drupal był w CVS, miałem swoje strony w repozytorium git, a następnie ściągałem rdzeń i współtworzyłem przez CVS. Oba systemy szczęśliwie współistniały i mogłem śledzić zmiany we wszystkim i wprowadzać łatki do modułów. Teraz z git nie jestem pewien, czy po prostu pobrać contrib i core i sprawdzić go w repozytorium git mojej witryny, czy może użyć submodułów?

Zastanawiam się, czy są jeszcze jakieś najlepsze praktyki w tym zakresie? Szczególnie zastanawiam się, jak mieć rdzeń jako submoduł, jeśli moje repozytorium używa katalogu głównego drupals jako własnego katalogu głównego?

Odpowiedzi:


6

Nie do końca to samo pytanie, co /drupal/260/deploying-drupal-with-git, ale mam taką samą odpowiedź.

http://freso.dk/en/2011/02/26/managing_fresodk_from_cvs_in_svn_to_git

Myślę, że warto mieć Drupal Core jako prawdziwą kasę, ułatwiającą na przykład śledzenie włamań. Ponieważ czasami po prostu nie ma innego sposobu, czy to zmienia się na .htaccess, czy może zastosowałeś łaty dla błędów, które bezpośrednio ciebie dotyczą.


Lubię to podejście. Jedyne, czego wciąż nie jestem pewien, to jak przekazać repozytorię na odległość? Mam na myśli, czy podstawowa kasa jest z drupal.org?
naxoc

Możesz mieć tyle pilotów, ile chcesz. Aby to ułatwić, możesz zmienić nazwę drupala na drupal (gałąź git zmienia nazwę origin drupal), a następnie dodać własną jako źródło (git zdalnie dodaj pochodzenie użytkownik@example.org: repo.git). Następnie nadal możesz skonfigurować gałąź podstawową (7.x), aby domyślnie
pobierała

Doskonały. Właśnie tego szukałem!
naxoc

Tylko mała korekta git branch rename origin drupal- powinna być git remote rename origin drupal.
naxoc

3

Ponieważ nie powinieneś hakować rdzenia, odwróć swoje myślenie: zamiast uczynić z rdzenia podmoduł witryny, ustaw niestandardowy kod jako podmoduł rdzenia. Po sklonowaniu podstawowego repozytorium możesz robić, co chcesz, w tym dodawać do niego własne submoduły.

Możesz też rozważyć nieużywanie podstawowego repozytorium git dla swojej witryny i aktualizację do najnowszej wersji przy użyciu innych funkcji, takich jak drush. W ten sposób będziesz musiał tylko submodule moduły contrib. O ile nie przyczyniasz się do rdzenia lub robisz najnowocześniejsze rzeczy, które zależą od poprawek błędów, które nie zostały jeszcze wydane, użyteczność pobierania wszystkich zatwierdzeń za pomocą VCS jest minimalna.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.