Comment puis-je importer des branches svn enracinées dans des répertoires différents en utilisant git git-svn?

voix
11

J'ai une structure de dépôt SVN comme ci-dessous. Nous utilisons plusieurs niveaux dans les branches pour diverses branches d'entretien de libération, plus un répertoire pour les branches fonctionnelles.

initialisation git-svn semble fonctionner avec un seul argument --branches, par exemple, il semble attendre toutes les branches d'être dans un seul endroit.

trunk
branches
  1.1
    1.2.1
    1.2.2
  1.2
    1.2.1
    1.2.2
    1.2.3
  features
    feature1
    feature2

Toutes les idées sur la façon de gérer cette situation?

Merci

Créé 03/11/2008 à 14:13
source utilisateur
Dans d'autres langues...                            


4 réponses

voix
0

Serait - il possible de créer un gitrepo pour chacun des sous - répertoires de branche?

Créé 03/11/2008 à 14:20
source utilisateur

voix
1

Par convention, les branches Subversion vivent tous dans un seul chemin des « branches » dans le dépôt Subversion, donc je ne suis pas surpris que git-svnfait cette hypothèse.

Je suggère ce qui suit (note, vous risquez de perdre un peu d'histoire dans cette opération):

  1. Aplatir les Subversion brancheschemins, en utilisant une convention de nommage pour garder une identité unique et l'idée de la structure actuelle.
  2. Effectuer git-svn
  3. Déplacer les choses dans le gitréférentiel pour se conformer à vos pratiques.

Le danger de losing historydépend de la façon dont git-svnsuit les opérations de copie de chemins différents. Je l' ai rencontré ce problème migration des dépôts de subversion (1,4-ish) récemment.

Créé 03/11/2008 à 14:48
source utilisateur

voix
0

Vous pouvez ajouter plusieurs git svntélécommandes pour chacune des branches, ou peut - être chacun des répertoires de branches. La première git svn fetchprendrait une éternité, mais d'après ce que je comprends cela devrait fonctionner.

Créé 06/11/2008 à 01:00
source utilisateur

voix
13

Dans votre fichier de configuration, définissez la section svn-à Distants quelque chose comme:

[svn-remote "svn"]
    url = svn://svnserver/repo
    fetch = trunk:refs/remotes/trunk
    branches = branches/*/*:refs/remotes/*
    tags = tags/*:refs/remotes/tags/*

Cela devrait vous permettre de saisir les branches imbriquées.

Créé 10/03/2009 à 16:04
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more