git archive fatal: операция не поддерживается протоколом


8

Я могу сделать git cloneтак, как ...

 git clone https://github.com/stackforge/puppet-heat.git

... без проблем. Но я хочу исключить все метаданные git, которые идут с клонированием, поэтому я решил, что буду использовать, git archiveно получаю эту ошибку:

$ git archive --remote=https://github.com/stackforge/puppet-heat.git 
fatal: Operation not supported by protocol.

Кто-нибудь знает почему или что я делаю не так?


Существует открытая проблема, которую github не поддерживает git archive: поддержка протокола git-архива
AlikElzin-kilaka

Ответы:


4

Я бы просто запустил, git cloneкак вы описали, а затем удалил .gitкаталоги, которые разбросаны по клонированному каталогу.

$  find puppet-heat/ -name '.git' -exec rm -fr {} +

Спасибо. Я нашел ссылку «Скачать Zip» на их github, и я сделал это wget https://github.com/stackforge/puppet-heat/archive/stable/havana.zipи распаковал.
Красный Крикет


1

Git архив по-прежнему правильный путь:

git clone https://github.com/stackforge/puppet-heat.git cd puppet-heat git архив

Причина, по которой ваш подход не работает - очевидно, что github не поддерживает (или не поддерживает) удаленное архивирование. Это будет означать, что архив фактически создается в виде файла на сервере github, который затем отправляется.

Так что просто клонируйте репо и запустите git архив на своем клоне.


1

К вашему сведению, я столкнулся с той же ошибкой с битбакетом. Я переключил протоколы с https на ssh, и это сработало.

например:

git archive --remote=youruser@github.com/stackforge/puppet-heat.git 

Конечно, вам нужно настроить открытый / закрытый ключи, чтобы это работало.

Я слышал, что GitHub не поддерживает удаленное взаимодействие, но для других с этой проблемой, по крайней мере, это исправлено для меня.

Поскольку наше репо огромно, его клонирование не очень подходит, если мы просто хотим сделать эквивалент экспорта SVN.


@ john-lilttle Вы пробовали git archiveкоманду против githubили просто bitbucket?
Алик Эльзин-килака
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.