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 clonemożesz swobodnie konwertować między nagimi i nie nagimi repozytoriami.