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 :

Branches, tags, et trunk [Bonne pratique]


Sujet :

Subversion

  1. #1
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut Branches, tags, et trunk
    Bonjour,

    Je ne comprends RIEN au système de branches, tags et trunk. J'ai bien lu Précisions sur la structure des répertoires ... et c'est précisemment ce qui me permet de confirmer que je ne comprends rien.

    J'ai l'impression que le checkout se fait dans trunk, qui est le répertoire de travail, donc, je suppose, celui que verra l'IDE (j'utilise java et netbeans). Si je ne fais pas de branches, mon impression est que je n'aurai besoin que de ça, mais je n'en suis vraiment pas sûr.

    Et pourquoi est-ce que j'irais conserver les branches ? Subversion ne le fait pas ? J'entends dire que Subversion ne fait pas de réelle copies, mais alors que fait-il ??

    Si l'IDE ne voit que trunk, cela voudrait dire que la gestion des autres tags et branches est manuelle ?

    Bref, merci d'avance pour votre secours !
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Points : 124
    Points
    124
    Par défaut
    Alors en fait c'est très simple.

    Subversion garde un historique mais sous forme de numéro de révision.

    En fait le fait d'utiliser des branches et des tags est une façon de simplifié le travail de rollback dans un projet lorsque l'on se rend compte que l'on a fait des erreur et que l'on est parti dans la mauvais direction.

    en fait dans une branches tu vas stocker une copie du tronc a un instant T pour par exemple réparer un bug mais comme tun 'est pas sur d'y arriver tu ne veux pas livrer tes modifications dans le tronc.

    Tu ne "livreras" dans le tronc qu'une fois que tu auras corrigé ton bug. Mais cette livraison se fera à l'aide de la comande svn merge et non svn commit car tu fusionnera les modification de la branche avec ce qu'il y a dans le tronc.

    Ensuite les tags c'est juste un dépot de "sécurité". En fait, quand tu as un version de ton programme dans le tronc qui est stable et qui est livrable au utilisateurs tu en fait une copie dans le répertoir tag ainsi si un jour tu dois redémarrer un développement depuis cette version il te suffit de la copier dans une branche(oui il est normalement interdit de travailler dans un répertoir de tag) et tu continu ton travail cela t'évite d'avoir à retenir un numero de revison pour chaque version stable.

    Voili voilou j'espert que cela va t'aider.
    et que je n'ai pas dis trop de bétises :p

  3. #3
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Merci pour ton aide, mais, même si le brouillard s'éclaircit petit à petit, il y a toujours des trucs qui coincent ; j'ai l'impression qu'il y a quelque chose quelque part dont je n'ai pas pris conscience.

    Premièrement, j'ai l'impression que tout ces copiages de trunk vers tags ou branches se fait par des commandes svn. Est-ce vrai / faux / ou alors ?...

    Ensuite, je m'étonne de la présence de tags. De mon point de vue, lorsque j'ai une version correcte, je la commite, et si je veux la retrouver, j'en fait un checkout, un export, ou autre. Je veux dire qu'elle est dans le repository bien au chaud, et que je peux la retrouver par une commande x, y ou z. Je ne vois absolument pas pourquoi j'irais la conserver, en plus, quelque part, fusse dans un répertoire tags ?...

    Ou alors, autre façon de poser la même question, quand je fais un commit, dois-je aussi faire un copiage vers tags ? Et comment ?...

    Et au niveau de la gestion IDE, j'ai l'impression qu'il y a donc un projet pour trunk, qu'il n'y en a pas pour trunk (sauf si cela concerne uniquement le déploiement), et qu'il y a des projets provisoires pour chaque branches. Cela te parait jouable ?...

    Merci pour les éclaircissements
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Points : 124
    Points
    124
    Par défaut
    Alors oui le copiage se fait avec la commande svn cp

    Dans le truc tu ne commit pas des version stable a 100%, au cours du développement tu fasi plusieurs commit.

    Les versions stable dont je parle c'est celles que tu livreras à l'utilisateurs.
    En fait dans ton trunk tu livres dès que tu as une fonctionnalité de ton programme qui marche, pas à la fin quand tu as tout fini de développer.

    j'espert que cela t'avances un peu plus.

  5. #5
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    Si ce dessin peut t'aider ?
    Images attachées Images attachées  

  6. #6
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Oui, cela se débroussaille petit à petit.

    Je comprends, je pense, pour trunk et branches.

    Je comprends le principe pour tags ; mais ce que je ne comprends pas, c'est pourquoi il faut conserver les sources eux-mêmes dans un répertoire ; ne pourrait-on faire un tag dans le repository, comme dans CVS ?
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  7. #7
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    Mais le "tag" est bien dans le référentiel, c'est simplement la technique pour créer ce tag qui ressemble à une copie. En réalité, il n'y a pas de copie physique des fichiers dans le référentiel mais bien la pose d'un tag sur l'ensemble des fichiers "copié". L'idée dans tout cela étant de fournir un mode de création des branches et des tags identiques.

  8. #8
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Bon ok je pense qu'il faut que je pratique maintenant pour voir les choses ; je pense avoir bien compris la théorie grâce à vous, tous mes remerciements.
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  9. #9
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    N'oublies pas le tag RESOLU (au niveau de ce thread et pas dans Subversion ! ), si c'est le cas

  10. #10
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Je comprends pas : je l'ai mis depuis belle lurette, le tag résolu... et je le vois, en plus ; tu ne le vois pas ?
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  11. #11
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    si, désolé

  12. #12
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 3
    Points : 4
    Points
    4
    Par défaut subversion
    moi j'ai un problème d' organisation de mon référentiel,
    dans mon projet je sais pas ce qui va être trunk et ce qui va être branche.
    en claire:
    j'ai un environnement de dev qui utilise proprement svn est il y'a plusieurs produits en développement et en plus chaque produit comporte des versions et en plus des version des correctifs sont apportés sur chaque version.
    je suis malade rien que de penser a l'organisation de mon repository.
    si vous pouvez m aider a y voir claire j' en serais ravi!!!!
    merci d'avance

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Points : 124
    Points
    124
    Par défaut
    Salut dada26,

    Est-ce que tu as déjà une organisation qui existe sous svn?
    Si c'est le cas est-ce que tu peux poster un exemple de ton arborescence afin d'avoir une vision plus claire de l'existant?

    A plus,
    Pierre

  14. #14
    Membre régulier
    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
    Points : 76
    Points
    76
    Par défaut
    Un tag c'est identifier clairement une version de ton logiciel.
    Il n'y a pas de commande de pose de tag avec svn au sens cvs ou clearcase. Un tag pour svn c'est la recopie à un moment donné de l'arborescence de ton programme dans un répertoire (sous tag le plus souvent) le nom de ce répertoire étant ton tag. Cette copie n'est pas une copie physique dans ton repository mais plutôt une création de liens vers les differents fichier/ repertoire constituant ton logiciel.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Administration] Dossiers branches, tags et trunk invisibles lors de la création d'un nouveau repository
    Par mrfirefunk dans le forum Subversion
    Réponses: 1
    Dernier message: 18/12/2012, 14h31
  2. [utilisation] Branches, tags, et trunk
    Par bbrahim dans le forum Subversion
    Réponses: 6
    Dernier message: 02/11/2011, 14h36
  3. [TortoiseSVN] [Débutant] Génération des répertoires trunk/branch/tags
    Par Nixar dans le forum Subversion
    Réponses: 2
    Dernier message: 26/03/2010, 11h43
  4. [Bonne pratique] Trunk-Branches-Tag doivent ils etre versionnés ?
    Par vdaanen dans le forum Subversion
    Réponses: 1
    Dernier message: 11/03/2009, 15h51
  5. [Bonne pratique] Faire un Merge d'une Branche vers le Trunk
    Par clincks dans le forum Subversion
    Réponses: 2
    Dernier message: 16/04/2007, 00h13

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