2011-08-25 8 views
5

pip menedżer pakietów pozwala installing from various VCS tym git:Czy można klonować tylko niektóre zatwierdzenia z repozytorium git z głębokością 1?

Pip aktualnie obsługuje klonowania nad git, Git + http i git + ssh:

-e git://git.myproject.org/MyProject.git#egg=MyProject 
-e git+http://git.myproject.org/MyProject/#egg=MyProject 
-e git+ssh://[email protected]/MyProject/#egg=MyProject 

Uboczny nazwy gałęzi, popełnić hash lub nazwa tag również możliwe:

-e git://git.myproject.org/[email protected]#egg=MyProject 
-e git://git.myproject.org/[email protected]#egg=MyProject 
-e git://git.myproject.org/[email protected]#egg=MyProject 

to miłe, gdy pakiety e jest mały, ale staje się dość powolny, gdy pakiet jest ogromny (np. Django). Jeśli potrzebuję tylko ostatniego zatwierdzenia gałęzi master, mógłbym użyć parametru --depth 1 dla klonu git.

Czy możliwe jest uzyskanie tylko jednego zatwierdzenia bez ogólnej historii repo? Przynajmniej z github?

Odpowiedz

2

Można ani clone ani fetch ze zdalnego szczególna popełnić znacznie mniejsza głębokość 1, ze względów bezpieczeństwa: http://thread.gmane.org/gmane.comp.version-control.git/73368/focus=73994

http://git.661346.n2.nabble.com/Fetch-by-SHA-missing-td5604552.html

+2

Dzięki za linki. Mogę zamiast tego pobrać archiwum dla konkretnego commit/branch/tag, np. 'mkdir src; curl https://nodeload.github.com/django/django/tarball/1.3 | tar xz --directory =./src', a następnie zainstaluj z katalogu 'pip install src/django-django- *' – Andrei

Powiązane problemy