web-dev-qa-db-fra.com

Comment ajouter un dossier existant avec des fichiers sur SVN?

Comment ajouter un dossier sans contrôle de version à un emplacement SVN spécifique? Je commence souvent à écrire du code et je l’ajoute à SVN seulement après quelques dossiers contenant des fichiers de code.

Ce que je fais habituellement c'est:

  1. svn co le répertoire parent où je veux créer un nouveau dossier pour stocker mon code.
  2. svn mkdir pour créer le répertoire dans lequel je veux mettre mon code.
  3. Copiez et collez mon code sur.
  4. svn commit.
  5. Supprimer mon répertoire de code de travail actuel.
  6. Recréez mon répertoire de code de travail en utilisant svn co.
74
Siecje

Disons que j'ai du code dans le répertoire ~/local_dir/myNewApp et que je veux le mettre sous ' https://svn.Host/existing_path/myNewApp ' (tout en pouvant ignorer certains fichiers binaires, bibliothèques de vendeurs, etc.).

  1. Créez un dossier vide dans le référentiel svn mkdir https://svn.Host/existing_path/myNewApp
  2. Allez dans le répertoire parent du projet, cd ~/local_dir
  3. Vérifiez le répertoire vide sur votre dossier local. N'ayez pas peur, les fichiers que vous avez localement ne seront pas supprimés. svn co https://svn.Host/existing_path/myNewApp. Si votre dossier porte localement un nom différent de celui du référentiel, vous devez le spécifier en tant qu'argument supplémentaire.
  4. Vous pouvez voir que svn st affiche désormais tous vos fichiers sous le nom ?, ce qui signifie qu'ils ne sont pas actuellement sous contrôle de révision.
  5. Exécutez svn add sur les fichiers que vous souhaitez ajouter au référentiel, puis ajoutez d’autres à svn:ignore. Vous pouvez trouver des options utiles avec svn help add, par exemple --parents ou --depth empty, lorsque vous souhaitez ajouter de manière sélective uniquement certains fichiers/dossiers.
  6. S'engager avec svn ci
117
qbolec

Si j'ai bien compris votre cas d'utilisation, je suggère d'essayer d'utiliser svn add pour mettre le nouveau dossier sous version, voir ici . Ce qui suit va ajouter le nouveau dossier avec les fichiers de manière récursive sous contrôle de version (si vous êtes dans une copie de travail valide):

svn add new_folder
svn commit -m "Add New folder to the project"

Si vous n'êtes pas dans une copie de travail, créez-la avec svn checkout , copiez-y new_folder et suivez les étapes ci-dessus.

OU

Essayez svn import , voir ici ; Ce qui suit va créer un nouveau dossier et télécharger des fichiers dans le référentiel:

svn import -m "Import new folder to the project" new_folder \
        http://SVN_REPO/repos/trunk/new_folder

Notez également que:

Après avoir importé des données, notez que l'arborescence d'origine n'est pas sous contrôle de version. Pour commencer à travailler, vous devez encore svn checkout une nouvelle copie de travail de l’arbre.

54
pmod

Je n'utilise pas de commandes. Vous devriez pouvoir faire cela en utilisant l'interface graphique:

  • Cliquez avec le bouton droit de la souris sur un espace vide de votre dossier Mes documents, sélectionnez TortoiseSVN> Repo-browser.
  • Entrez http: // Subversion ... (votre chemin d’URL vers votre serveur/répertoire Subversion vous enregistrez) comme chemin et sélectionnez OK.
  • Cliquez avec le bouton droit sur le répertoire racine dans Repo et sélectionnez Ajouter un dossier . Donnez-lui le nom de votre projet et créez-le.
  • Cliquez avec le bouton droit de la souris sur le dossier du projet dans le repo-browser et sélectionnez Checkout . Le répertoire Checkout sera votre dossier Visual Studio\Projects\{your project}. Sélectionnez OK.
  • Vous recevrez un avertissement que le dossier n'est pas vide. Dites Oui pour extraire/exporter dans ce dossier - vos fichiers de projet ne seront pas écrasés.
  • Ouvrez votre dossier de projet. Vous verrez des points d'interrogation sur les dossiers associés à votre projet VS qui n'ont pas encore été ajoutés à Subversion. Sélectionnez ces dossiers en utilisant Ctrl + Clic, puis cliquez avec le bouton droit sur l'un des éléments sélectionnés et sélectionnez TortoiseSVN> Ajouter
  • Sélectionnez OK sur l'invite
  • Vos fichiers devraient ajouter. Sélectionnez OK dans la fenêtre Ajouter, c'est fini! dialogue
  • Cliquez avec le bouton droit de la souris dans une zone vide du dossier et sélectionnez Actualiser. Vous verrez des icônes "+" sur les dossiers/fichiers, maintenant
  • Cliquez à nouveau avec le bouton droit de la souris sur une zone vide du dossier et sélectionnez SVN Valider .
  • Ajouter un message concernant ce que vous commettez et cliquez sur OK
7
vapcguy

Dans Windows 7, j'ai fait ceci:

  1. Avez-vous installé SVN et Tortoise SVN? Sinon, recherchez-les sur Google et faites-le maintenant.
  2. Accédez à votre dossier SVN où vous pouvez avoir d'autres dépôts (abréviation de référentiel) (ou si vous en créez un à partir de rien, choisissez un emplacement: lecteur C, lecteur D, etc. ou chemin réseau).
  3. Créez un nouveau dossier pour stocker votre nouveau référentiel. Appelez le même nom que le titre de votre projet
  4. Faites un clic droit sur le dossier et choisissez Tortoise SVN -> Create Repository here
  5. Dites oui à créer une structure de dossier
  6. Cliquez sur OK. Vous devriez voir une nouvelle icône ressemblant à une "vague" à côté de votre nouveau dossier/dépôt
  7. Cliquez avec le bouton droit sur le nouveau dépôt et choisissez Navigateur SVN Repo.
  8. Clic droit 'tronc'
  9. Choisissez ADD Folder ... et pointez sur la structure de dossiers de votre projet en développement.
  10. Cliquez sur OK et SVN ajoutera la structure de votre dossier. Soyez patient! Il semble que SVN soit bloqué/bloqué. Ne t'inquiète pas. Il fait son travail.

Terminé!

1
Fandango68

Si l'intention est d'ajouter la copie locale/de travail à SVN, je le faisais de la manière suivante.

Remarque: J'utilise le client TortoiseSVN et ces étapes supposent que le client TortoiseSVN est déjà installé.

  1. J'ai un projet (Test-4.2.2) dans ma section locale. Je veux le télécharger/l'ajouter à un référentiel SVN.
  2. À l'aide du navigateur de référentiel TortoiseSVN, j'ai créé un répertoire vide, "Test-4.2.2"
  3. Dans ma section locale, j'ai renommé le répertoire "Test-4.2.2" existant en "Test-4.2.2.1" (temporaire).
  4. Commander le "Test-4.2.2" vide de SVN chez votre revendeur
  5. Copiez tous les sous-répertoires sous 4.2.2.1 dans ce répertoire de paiement 4.2.2.
  6. Maintenant, faites un clic droit "Test-4.2.2" et validez.
  7. Supprimer le dossier temporaire, "Test-4.2.2.1"
1
Purushothaman

Essayons .. Cela fonctionne pour moi ..

svn add * --force
0
Parthiban.S

3 étapes:

  • Ouvrez "Repo Browser" (utilisez le lien du dossier parent).
  • Clic droit Choisissez "Ajouter un dossier".
  • Accédez à votre dossier.

enter image description here

0