2009-03-10 5 views
1

Désolé pour le long titre, mais je voulais préciser la distinction entre cette question et The one asked by CaptainPicardComment importer plusieurs répertoires de type branche dans git-svn qui ne sont pas des enfants exclusifs du même parent?

J'ai une structure svn comme:

  • trunk/
  • branches/*
  • étiquettes/*
  • Release candidate/*

pour toute intention Les finalistes sont utilisés exactement comme des branches. Donc, je peux dire à git-svn d'utiliser les Release Candidates comme des branches, mais ensuite je ne reçois pas les branches, ou je peux lui dire d'utiliser des branches, mais je n'obtiens pas les Release Candidates. Puis-je avoir les deux? Je voudrais quelque chose comme

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

Pour, mais il n'a pas (pour autant que je peux dire)

dans le camp essayé, mais-it-doesnt-travail est quelque chose comme

[svn-remote "svn"] 
    url = svn://svnserve/repo 
    fetch = trunk:refs/remotes/trunk 
    branches = Release Candidate/*:refs/remotes/RCs/* 
    tags = tags/*:refs/remotes/tags/* 
[svn-remote "svnbranches"] 
    url = svn://svnserve/repo 
    fetch = <What the heck do I put here???> 
    branches = branches/*:refs/remotes/* 

Mais je ne sais pas quoi mettre pour l'opération d'extraction de svnbranches (copie l'opération d'extraction de svn fait erreur git-svn, laissant sortir ou de mettre dans une branche nonexistant fait erreur git)

Comment puis-je avoir les deux types de branches tirées dans git-svn?

Merci,

+0

Je pense que la réponse sera la même que pour la question liée. –

+0

Hmm, peut-être. C'est juste frustrant, parce que je connais la réponse à son problème, mais ça ne marche pas pour ma situation ... (voir ma réponse à CaptainPicard) – Greg

Répondre

1

En ce moment, je n'ai pas le temps d'étudier pourquoi ne gère pas git-svn cela. Mais il semble que vous pouvez contourner votre problème en plaçant Release_Candidates comme un sous-répertoire de branches:

trunk/* 
branches/ 
    Release Candidates/* 
    other branches 
    . 
    . 
    . 
tags/* 

Alors your answer to CaptainPicard fonctionnera et vous pouvez recréer votre ancienne structure svn avec des liens si votre build a besoin.

+0

Je devrais peut-être faire ça éventuellement. J'essaie toujours de me débarrasser de l'espace dans Release Candidate parce que c'est ennuyeux, donc ça pourrait être bougé en même temps. Mais pour l'instant j'essaie de voir ce que c'est, et je ne peux pas vraiment modifier en amont sans raison valable. Je pense que je renoncerai aux branches/*. – Greg

+0

Salut Paul, pourriez-vous vérifier http://stackoverflow.com/questions/642264/undo-change-in-git-not-rewriting-history? Comment inverseriez-vous les modifications pour un fichier à partir d'un commit précédent (un seul fichier, pas le tout) – VonC

Questions connexes