archive git fatale: opération non prise en charge par le protocole

8

Je peux faire git clonecomme ça ...

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

... sans problème. Mais je veux exclure toutes les métadonnées git fournies avec le clonage, alors j'ai pensé que j'utiliserais git archivemais j'obtiens cette erreur:

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

Quelqu'un sait pourquoi ou ce que je fais mal?

Cricket rouge
la source
Il y a un problème ouvert que github ne prend pas en charge git archive: Supporte le protocole git-archive
AlikElzin-kilaka

Réponses:

4

Je voudrais simplement exécuter le git clonecomme vous l'avez décrit, puis supprimer les .gitrépertoires dispersés dans le répertoire cloné.

$  find puppet-heat/ -name '.git' -exec rm -fr {} +
slm
la source
Merci. J'ai trouvé le lien "Download Zip" sur leur github et je viens de le faire wget https://github.com/stackforge/puppet-heat/archive/stable/havana.zipet de le décompresser.
Red Cricket
1

git archive est toujours la bonne solution:

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

La raison pour laquelle votre approche ne fonctionne pas est - évidemment - que github ne prend pas (ou n'a pas) pris en charge l'archivage à distance. Cela signifierait que l'archive est réellement créée sous forme de fichier sur le serveur github qui est ensuite envoyé.

Il vous suffit donc de cloner le dépôt et d'exécuter l'archive git sur votre clone.

alex
la source
1

Pour info j'ai touché la même erreur avec bitbucket. J'ai changé les protocoles de https à ssh et cela a fonctionné.

par exemple:

git archive [email protected]/stackforge/puppet-heat.git 

Bien sûr, vous devez avoir configuré les clés publiques / privées pour que cela fonctionne.

J'ai entendu dire que github ne prend pas en charge la télécommande, mais pour les autres personnes ayant ce problème, le problème ci-dessus l'a corrigé pour moi au moins.

Comme notre dépôt est énorme, le clonage n'est pas vraiment une option si nous voulons simplement faire l'équivalent d'une exportation svn.

John Little
la source
@ john-lilttle Avez-vous essayé la git archivecommande contre githubou tout simplement bitbucket?
AlikElzin-kilaka