Czytałem o repozytoriach Git i nagich i domyślnych / domyślnych. Nie byłem w stanie dość dobrze (teoretycznie) zrozumieć różnic między nimi i dlaczego powinienem „przepychać” do czystego repozytorium. Oto oferta:
Obecnie jestem jedynym pracującym nad projektem na 3 różnych komputerach, ale później będzie w to zaangażowanych więcej osób, więc używam Git do kontroli wersji. Klonuję nagie repo na wszystkich komputerach, a kiedy skończę modyfikacje na jednym z nich, zatwierdzam i przekazuję zmiany do samego repo. Z tego, co przeczytałem, nagie repozytorium NIE ma „działającego drzewa”, więc jeśli sklonuję nagie repozytorium, nie będę mieć „działającego drzewa”.
Zgaduję, że działające drzewo przechowuje informacje o zatwierdzeniu, gałęzie itp. Z projektu. Nie pojawiłoby się to w nagim repozytorium. Wydaje mi się więc, że lepiej „wypychać” zatwierdzenia do repozytorium za pomocą działającego drzewa.
Następnie, dlaczego powinienem użyć gołego repozytorium i dlaczego nie? Jaka jest praktyczna różnica? Podejrzewam, że nie byłoby to korzystne dla większej liczby osób pracujących nad projektem.
Jakie są twoje metody tego rodzaju pracy? Propozycje?
git clone --bare
, otrzymasz nagie repozytorium, a jeśli uruchomisz git clone
, dostaniesz repozytorium inne niż nagie. Każdy projekt publiczny, który kiedykolwiek sklonowałeś (na przykład hostowany na github), jest na drugim końcu zwykłym repozytorium.
git clone
możesz swobodnie konwertować między nagimi i nie nagimi repozytoriami.