У github есть кнопка загрузки, которая предлагает загрузку файлов .tar.gz и .zip. По сути, я хочу то же самое для последней ветви или тега. Я не хочу работать над проектом, я просто хочу его скомпилировать. Как получить исходный код любого репозитория git?
2 ответа
Вам нужен мелкий клон:
У мелкого репозитория есть ряд ограничений (вы не можете клонировать или извлекать из него, ни выдвигать из него, ни в него), но этого достаточно, если вас интересует только недавняя история большого проекта с длинной историей, и вы хотите отправить исправления в виде исправлений.
git clone --depth 1 /path/to/repo.git
Результатом будет мелкий клон репо только с текущей ревизией.
Использовать git archive
; что-то вроде:
git archive --format=tar --remote=$REPO $BRANCH | tar xf -
Эта команда получает только исходное дерево без метаданных git (т.е. без подкаталога .git
). Это также очень быстро. Команда выше записывает исходный код в текущий каталог; чтобы записать его в подкаталог, добавьте опцию --prefix=subdir/
.