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

Java Discussion :

Créer un fichier sous SVN


Sujet :

Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 200
    Points : 66
    Points
    66
    Par défaut Créer un fichier sous SVN
    Bonjour la team,

    je rencontre un petit soucis, peut être pourrez-vous m'aider.
    Je vous explique: j'utilise la classe Java "ISVNEditor" prévue pour SVN pour manipuler des fichiers et les committer sous SVN.

    Jusqu'ici j'arrive bien à mettre à jour avec le code suivant (cela pourra être utile à d'autres personnes):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    public SVNCommitInfo commitI18nFiles(SVNRepository repository, String path,  List<OutputElement> ins, String message) throws SVNException, IOException {
     
    latestRevision = repository.getLatestRevision();
    ISVNEditor editor = repository.getCommitEditor(message, new WorkspaceMediator());
    editor.openRoot(latestRevision);
    editor.openDir(path, latestRevision);
     
    // j'insère les éléments de mon fichier contenu dans ma structure "in"
    try {
       editor.openFile(in.getEntry().getName(), latestRevision);
       editor.applyTextDelta(in.getEntry().getName(), null);
       SVNDeltaGenerator deltaGenerator = new SVNDeltaGenerator();
       ByteArrayInputStream curStream = in.getIn();
       String checksum = deltaGenerator.sendDelta(in.getEntry().getName(), curStream, editor, true);
       editor.closeFile(in.getEntry().getName(), checksum);
       curStream.close(); 
    } catch (Exception e) {
       // TODO Add a new file
        editor.addFile(in.getEntry().getName(), null, -1);
    }  
    // Closes the directory.
    editor.closeDir(); 
    // Closes the root directory.
    editor.closeDir();
     
    return editor.closeEdit();

    Mon problème est que je n'arrive pas à créer un nouveau fichier.
    D'après ce que j'ai pu trouver, il faut utiliser la fonction "addFile()", mais lorsque je l'utilise il ne se passe rien: la ligne est exécutée mais rien ne se passe côté SVN.

    Pourriez-vous me donner des pistes svp?

    Cordialement,
    berni.

  2. #2
    Membre averti
    Homme Profil pro
    Java
    Inscrit en
    Mai 2011
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 170
    Points : 444
    Points
    444
    Par défaut
    Bête question : Est ce que tu commit bien après avoir fait le "addFile()" ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 200
    Points : 66
    Points
    66
    Par défaut
    Il manquait le fait d'ajouter les données dans le code.
    Apparemment la fonction add_file() ne fonctionne pas si le cheskum n'a pas été calculé.

    Du coup, cela marche en mettant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    try {
       editor.openFile(in.getEntry().getName(), latestRevision);  
    } catch (Exception e) {
       // Add a new file
        editor.addFile(in.getEntry().getName(), null, -1);
    }  
     editor.applyTextDelta(in.getEntry().getName(), null);
       SVNDeltaGenerator deltaGenerator = new SVNDeltaGenerator();
       ByteArrayInputStream curStream = in.getIn();
       String checksum = deltaGenerator.sendDelta(in.getEntry().getName(), curStream, editor, true);
       editor.closeFile(in.getEntry().getName(), checksum);
       curStream.close();

    Merci pour ton aide kinaesthesia, ce post en aidera sûrement plus d'un!

    A bientôt,
    berni.

Discussions similaires

  1. gestion de fichier sous SVN grâce a PHP
    Par sirpapy dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 27/12/2014, 02h09
  2. Réponses: 7
    Dernier message: 09/09/2007, 15h34
  3. créer un fichier Jar sous eclipse
    Par gagalive dans le forum Eclipse Java
    Réponses: 7
    Dernier message: 18/07/2006, 11h46
  4. [DOM] Créer un fichier XML sous une forme bien précise
    Par LaseLiep dans le forum Format d'échange (XML, JSON...)
    Réponses: 8
    Dernier message: 09/06/2005, 18h05

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