web-dev-qa-db-fra.com

profondeur de caisse svn

J'ai un projet SVN avec un arbre comme celui-ci:

/project
    /dir1
        /subdir1
           -file1
           -file2
            .....
        -file1
        -file2
        .....
    /dir2
        -file1
        -file2
        .....
    /dir3
        /subdir1
           -file1
           -file2
            .....
        /subdir2
           -file1
           -file2
            .....
        /subdir3
           -file1
           -file2
            .....
        /subdir4
           -file1
           -file2
            .....
    /dir4
        -file1
        -file2
        .....
-file1
-file2

J'ai besoin de payer 

  • tous les fichiers de/projet
  • plein/dir1
  • plein/dir2
  • plein/dir4
  • De/dir3 je n'ai besoin que de/subdir1 et/subdir3

Puis-je récupérer ces fichiers/dossiers en utilisant svn commandline avec une sorte de profondeur? Si oui, comment puis-je le faire? Puis-je ajouter subdir2 à dir3 après une vérification? .__ Comment mettre à jour la copie de travail créée de cette manière? La commande "svn up" normale met-elle à jour uniquement ces dossiers ou la mise à jour complète du projet sera-t-elle effectuée?

39
Pablo notPicasso

Ce dont vous avez besoin s’appelle/ paiement éparse .

Dans votre cas, vous pouvez:

svn co --depth files file:///project project
cd project
svn up --set-depth infinity dir1 dir2 dir4
svn up --set-depth empty dir3
svn up --set-depth infinity dir3/subdir1 dir3/subdir3

Puis-je ajouter subdir2 à dir3 après une validation?

Oui: svn up --set-depth infinity dir3/subdir2

Comment puis-je mettre à jour la copie de travail créée de cette manière? Est-ce que normal "svn up" commande update seulement ces dossiers ou la mise à jour complète du projet sera effectué?

Oui, svn up mettra à jour uniquement ces fichiers et dossiers, c'est-à-dire que la profondeur de la mise à jour sera préservée.

63
ks1322

1) svn up --set-depth chemin du fichier/dossier vide 

// le fichier sera supprimé de votre système

2) chemin de fichier/dossier svn up --set-depth infinity 

// il va régénérer le fichier du serveur svn sur votre système local

0
vivek ranjan