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 {} +
SLM
источник
Спасибо. Я нашел ссылку «Скачать 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?
Алик Эльзин-килака