222 votes

Comment extraire un répertoire spécifique avec git

J'ai un projet avec git, et je veux juste cloner ou extraire un répertoire spécifique, comme mon projet / javascript, tout comme subversion.
faire des changements, commettre et repousser à nouveau.
C'est possible?

227voto

vergueishon Points 568
  1. cd dans le haut de votre copie repo
  2. aller chercher
  3. git checkout HEAD chemin / vers / votre / répertoire / ou / fichier

    • Où "chemin / ..." dans (3) commence dans le répertoire situé juste en dessous de la racine du référentiel contenant votre "... / fichier"

15voto

fabrice belle Points 41

Peut-être que cette commande peut être utile:

 git archive --remote=MyRemoteGitRepo --format=tar BranchName_or_commit  path/to/your/dir/or/file > files.tar
 

"Et voilà"

12voto

shingara Points 26980

Ce n'est pas possible. Vous devez tirer tout le référentiel ou rien.

4voto

bluefoot Points 3173

Je vois. Je vais essayer de créer des submodules et voir si fonctionne pour moi. Je vais rapporter les résultats. EDIT: sparse checkout et submodules fonctionné pour moi. Les liens que j'ai l'habitude de lire (donné par VonC et Michel Jansen) sont:

Comment git pull tous, mais l'un dossier

http://www.kernel.org/pub/software/scm/git/docs/git-read-tree.html#_sparse_checkout

http://vmiklos.hu/blog/sparse-checkout-example-in-git-1-7

http://www.kernel.org/pub/software/scm/git/docs/git-read-tree.html#_sparse_checkout

git sous-module de mise à jour

1voto

Michel Jansen Points 11

Shingara a raison. Une explication de ce comportement est donnée dans ce fil de la liste de diffusion . Si vous voulez vraiment faire cela, vous pouvez faire du répertoire javascript un sous-module.

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