2011-08-10 10 views
9

Przygotowuję skrypt, który pobiera kod źródłowy aplikacji ze zdalnego repozytorium git, a następnie uruchamia proces budowania aplikacji. Z oczywistych powodów potrzebuję tylko bieżącego stanu (rewizji) bazy kodów do pobrania - bez potrzeby historii. Czy istnieje sposób, aby to osiągnąć? Klonowanie całego repozytorium jest zbyt bolesne.git: pobieranie aktualnej wersji tylko

+1

Wygląda na duplikat: http://stackoverflow.com/questions/1209999/ – Tupteq

Odpowiedz

12

Możesz spróbować parametr --depth=1 z git checkout:

git clone --depth=1 git://somehost/somerepo.git 

alternatywnie, jeśli ze zdalną obsługą hosta, można użyć git archive:

git archive --format=tar --remote=git://somehost/somerepo.git master | tar -xf - 
1

Ustawienie skryptu oznacza, że ​​będziesz budował z tego samego powtarzania repozytorium dly. Jeśli tak jest, to robienie git clone z pełną historią jest nadal korzystne, ponieważ musi być wykonane tylko raz. Po tym, posiadanie lokalnej historii przyspieszy twoje kasowanie znacznie ponad używanie git clone --depth=1, ponieważ tylko pobierzesz zmiany. git clean wykona zadanie, jeśli powinieneś powrócić do stanu pierwotnego do budowania.

Powiązane problemy