Autor Wątek: Problem z GITem  (Przeczytany 1184 razy)

Offline kubera

  • Użytkownik
    • Prywatna strona

# Sierpień 04, 2016, 16:15:42
Czołgiem Szanownym Gamedeveloperom.

Mam do Was pytanie.
Zacząłem korzystać z GITa kilka tygodni temu.
Mam problem "logistyczny". Git utrzymuje w oprócz .git-a jeszcze wszystkie elementy dodatkowo.
Pomimo, że ma lepszy system przechowywania plików, niż SVN, to dodaje wszystkie pliki źródłowe.
Czy one muszą być przechowywane w serwerze dwa razy (raz w .git a raz w korzeniu projektu w serwerze)?
W serwerze chciałbym posiadać tylko .git-a, gdyż przechowuję dość ciężkie pliki.

Pozdrawiam i serdecznie dziękuję.

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline maxmati

  • Użytkownik

  • +1
# Sierpień 04, 2016, 17:13:50
Cześć, musisz zrobić tak zwane bare repo. Najlepiej jest to zrobić wykonując na serwerze polecenie `git clone --bare -l <obecne_repozytorium> <nowe_bare_repozytorium>`. Jeżeli przechowujesz dość ciężkie pliki to musisz wziąć pod uwagę że git przechowuje wszystkie zmiany dlatego z czasem sam workspace zajmuje stosunkowo mało miejsca w porównaniu z .git.

Offline Xion

  • Redaktor
    • xion.log

  • +2
# Sierpień 04, 2016, 18:28:45
Cytuj
Zacząłem korzystać z GITa kilka tygodni temu.
Gita. To nie jest akronim.

Cytuj
Mam problem "logistyczny". Git utrzymuje w oprócz .git-a jeszcze wszystkie elementy dodatkowo.
Pomimo, że ma lepszy system przechowywania plików, niż SVN, to dodaje wszystkie pliki źródłowe.
Czy one muszą być przechowywane w serwerze dwa razy (raz w .git a raz w korzeniu projektu w serwerze)?
To nie są "elementy dodatkowo", tylko kopia robocza commitu na który wskazuje HEAD. W przeciwieństwie do zawartości katalogu .git, jest to tylko ten jeden commit a nie cała historia.

Cytuj
W serwerze chciałbym posiadać tylko .git-a, gdyż przechowuję dość ciężkie pliki.
Jak wspomniał przedmówca, prostym rozwiązaniem jest bare repo. Do poważniejszych zastosowań -- jeśli nie odpowiada ci GitHub/Bitbucket/etc. -- jest sporo rozwiązań typu self-hosted, jak Gitlab czy Gogs.

Cytuj
Jeżeli przechowujesz dość ciężkie pliki to musisz wziąć pod uwagę że git przechowuje wszystkie zmiany
Błąd. Git nie przechowuje samych zmian, ale całe zmodyfikowane pliki (skompresowane i schecksumowane w celu eliminacji duplikatów) i drzewa katalogów. Dlatego niespecjalnie dobrym pomysłem jest używanie Gita do dużych (~dziesiątki MB) i często modyfikowanych plików, i dlatego istnieją rozwiązania typu git-annex.

Offline kubera

  • Użytkownik
    • Prywatna strona

# Sierpień 04, 2016, 23:20:55
Dziękuję za info.