IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Subversion Discussion :

Problème de merge


Sujet :

Subversion

  1. #1
    goetzilla
    Invité(e)
    Par défaut Problème de merge
    Bonjour,

    J'ai un petit problème en faisant un merge entre une branche et le tronc, mais comme je suis assez novice avec Subversion, je suis peut-être en train de faire une erreur.

    Voici le cheminement que j'ai suivi :
    1. je développe dans le tronc
    2. je créé un tag 1.0 depuis le tronc
    3. je continue à développer dans le tronc
    4. un bug apparaît dans la version 1.0 : je créé une branche 1.0.1 depuis le tag 1.0
    5. je corrige le bug dans le branche 1.0.1
    6. je créé un tag 1.0.1


    Déjà est-ce que ça vous semble correct ?

    A partir de là j'aimerai rapatrier les modifications appliquées à ma branche vers mon tronc, pour profiter de la correction du bug dans une prochaine version (2.0 par exemple). Mais cela sans perdre les éventuelles modifications qui ont eu lieu sur le tronc.

    Admettons qu'au moment de créer mon tag 1.0, le code est le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public class A {
        public void test() {
        }
    }
    Dans le tronc, le code évolue en :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public class A {
        public void test() {
            String a = "a";
        }
    }
    Alors que dans la branche, le code devient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public class A {
        public void test() {
            int b = 0;
        }
    }
    En fait ce que je m'attend à avoir avec un merge, c'est quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public class A {
        public void test() {
            String a = "a";
            int b = 0;
        }
    }
    Mais quand je fais le merge, j'obtiens le fichier de diff suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Index: A.java
    ===================================================================
    --- A.java	(.../trunk)	(revision 814)
    +++ A.java	(.../branches/1.0.1)	(revision 814)
    @@ -1,5 +1,5 @@
     public class A {
         public void test() {
    -        String a = "a";
    +        int b = 0;
         }
     }
    \ No newline at end of file
    Donc en fait j'ai uniquement un remplacement du contenu du tronc par le contenu de la branche.

    Bref, je ne comprend pas trop mon erreur.

    Merci de votre aide.

  2. #2
    Membre éclairé
    Profil pro
    futur patissier
    Inscrit en
    Juin 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : futur patissier

    Informations forums :
    Inscription : Juin 2006
    Messages : 67
    Par défaut
    Je pense que le merge de subversion ne permet pas ce que tu veux obtenir. Ce n'est qu'un programme... le merge voit 1 seule diffierence entre les 2 fichiers: une ligne d'un coté et une ligne differente de l'autre, il remplace donc selon le sens que tu lui indiques.

    1) Regarde si l'option de fusion peut convenir (je ne sias pas comment l'utiliser) --diff3-cmd ARG : utilise ARG come commande de fusion
    2) Essaie peut-etre de passer par un outil externe style winmerge (je ne dis pas qu'il sait faire cette opération)

    sinon pour ton dev. j'aurais fait pareil au niveau des branches et tags.

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2007
    Messages
    254
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 254
    Par défaut
    En faisant la même procédure que toi j'arrive à un conflit. Ce à quoi je m'attendais.

    Quel commande utilises tu pour le merge ? Le réalises tu vie Tortoise ? Si oui comment. Peux tu faire un screenshot de la fenetre juste avant d'appuiyer sur OK ?

    EDIT : Si tu obtient un fichier diff c'est qu'il y a un conflit. Tout est normal. Maintenant le but est de résoudre ce conflit toi même. Dès que j'ai un peu de temps je t'explique comment faire.

Discussions similaires

  1. Problème de Merge
    Par Thomad dans le forum PL/SQL
    Réponses: 4
    Dernier message: 22/07/2008, 17h55
  2. Problème avec Merge
    Par Thomad dans le forum PL/SQL
    Réponses: 1
    Dernier message: 16/07/2008, 22h11
  3. Problème Intruction MERGE
    Par ttamttam dans le forum PostgreSQL
    Réponses: 0
    Dernier message: 08/06/2008, 14h56
  4. 9i : problème avec MERGE INTO
    Par Vld44 dans le forum SQL
    Réponses: 1
    Dernier message: 16/08/2007, 11h27
  5. Problème de MERGE
    Par cyrille_ dans le forum SQL
    Réponses: 20
    Dernier message: 15/06/2007, 12h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo