172 votes

Git Clone: Seulement les fichiers, s'il vous plaît?

Je veux cloner un repo GIT et PAS se retrouver avec un .git répertoire. En d'autres termes, je veux juste les fichiers. Est-il un moyen de faire cela?

git clone --no-checkout a fait l'exact opposé de ce que je veux (m'a donné tout l' .git répertoire).

Je suis en train de le faire pour une distance de pensions de titres, et non pas un local, ce qui signifie que ce n'est pas un doublon de "Comment faire un "git à l'exportation" (comme "svn export")" (même si la solution peut finir par être le même).

88voto

VonC Points 414372

La commande git qui serait le plus proche de ce que vous êtes à la recherche pour, par git archive.
Voir la sauvegarde de projet qui utilise git: il faudra inclure dans une archive de tous les fichiers (y compris les submodules si vous utilisez l' git-archive-all script)

Vous pouvez ensuite utiliser cette archive n'importe où, que seuls les fichiers, pas de .git répertoire.

65voto

Jon Penn Points 189
git archive --format=tar --remote=<repository URL> HEAD | tar xf -

prises à partir d' ici

50voto

knittl Points 64110

vous pouvez créer un clone simple pour ne recevoir que les quelques dernières révisions:

 git clone --depth 1 git://url

ensuite il suffit de supprimer la .répertoire git ou utiliser git archive d'exporter votre arbre.

8voto

Amoss Points 1544

Pourquoi ne pas faire un clone puis supprimer l' .git annuaire de sorte que vous avez juste une simple copie de travail?

Edit: Ou au fait pourquoi utiliser clone? C'est un peu déroutant quand vous dites que vous voulez un repo git, mais sans .git répertoire. Si vous voulez dire que vous voulez juste une copie de certains de l'état de l'arbre, alors pourquoi ne pas faire cp -R dans le shell au lieu de l'git clone, puis supprimer l' .git par la suite.

0voto

JaredPar Points 333733

Il semble que vous voulez juste une copie du code source. Si oui, pourquoi ne pas simplement copier le répertoire et de l'exclure de l' .répertoire git à partir de la copie?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X