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

GIT Discussion :

Conversion SVN vers Git


Sujet :

GIT

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 149
    Par défaut Conversion SVN vers Git
    Bonjour!
    Je suis ce tuto pour migrer mon projet SVN vers Git:
    http://www.throrinstudio.com/dev/mig...-svn-vers-git/
    Je rencontre cependant quelques soucis...

    Déja, suite à la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    git svn clone [SVN repo URL] --no-metadata -A authors.txt --stdlayout ~/temp
    J'ai bien un repertoire .git qui est créé mais il ne pèse que 80ko... C'est normal? il n'est pas censé récupérer les sources? (la commande a bien mit 5 minutes a s'exécuter).
    Pour vérifier, j'ai vu qu'on pouvait utiliser la commande "git log -n2" qui est censé me retourner les info d'un commit... J'obtiens l'erreur fatal:bad default revision 'head'
    Tant pis, j'essaye de continuer, j'en viens a ce groupe de commande:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    cd ~/temp
    git remote add bare ~/new-bare.git
    git config remote.bare.push 'refs/remotes/*:refs/heads/*'
    git push bare
    Voici la réponse
    $ git push bare
    No refs in common and none specified; doing nothing.
    Perhaps you should specify a branch such as 'master'.
    fatal: The remote end hung up unexpectedly
    error: failed to push some refs to '../eNews.git/'
    Effectivement, il n'y a rien dans le dossier refs... c'est quoi les refs?

    Et finalement, la commande git branch a eut raison de moi:
    $ git branch -m trunk master
    error: refname refs/heads/trunk not found
    fatal: Branch rename failed
    Des idées? merci d'avance!

  2. #2
    Membre émérite

    Homme Profil pro
    Architecte technique
    Inscrit en
    Juin 2005
    Messages
    588
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2005
    Messages : 588
    Par défaut
    Bonjour, Cyanatide,

    A première vue, le tuto est correct (c.f. git svn)...

    "git svn clone ... ~/temp" fait ton checkout (au sens git et non pas svn) dans ~/temp. Dans ce dossier tu dois trouver le .git est les ressources de ton référentiel svn
    => le choix de ~/temp n'est donc pas judicieux ! Crée un dossier à toi du style ~/gitsvn; et, fait ton clone dans ce dossier !
    Ensuite, tu pourras faire un cd gitsvn puis un git log -n2

    Note: le référentiel bare
    - sera le copie de ton svn (i.e. le référentiel partagé)
    - est créé dans un premier temp vide
    - puis tu pousses ton référentiel de travail (gitsvn) dans celui-ci.

    Les refs sont toutes les références de git pour définir ton référentiel. Tu peux les lister avec git show-ref
    git symbolic-ref HEAD refs/heads/trunk te permet de forcer la référence de la HEAD (en gros ta branche courante) sur la branche trunk (tu n'as pas de trunk sous git)



    a+
    Philippe

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 149
    Par défaut
    Effectivement, je n'ai pas utilisé de répertoire temp, mais mon dépot svn doit être mal foutu parce que j'ai l'impression que mon clone ne me retourne rien:
    Quand je vais dans mon répertoire clone, j'exécute la commande git show-ref, ça ne me retourne rien, quand j'exécute git log -n2 j'obtiens l'erreur fatal:bad default revision 'head'.
    J'essaye quand même de pousser mon dépot vers mon bare mais apparement j'ai pas de trunk car quand j'essaye de renommer mon trunk en master j'obtiens
    error: refname refs/heads/trunk not found
    fatal: Branch rename failed
    Je suis sur windows est ce que ça pourrait poser problème? J'utilise le bash.exe fournit par git donc ça m'étonnerai...

  4. #4
    Membre émérite

    Homme Profil pro
    Architecte technique
    Inscrit en
    Juin 2005
    Messages
    588
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2005
    Messages : 588
    Par défaut
    Que te donne ton git clone ? As-tu des erreurs ?

    L'option -s (--stdlayout) est a utiliser pour un dépôt svn standard.

    Note : regarde bien la doc de git-svn !
    --no-metadata Set the noMetadata option in the [svn-remote] config. This option is not recommended, please read the svn.noMetadata section of this manpage before using this option.
    Peut-être est-ce là le problème... tu peux essayer sans cette option !

    Une page sur les SVN non standard...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 149
    Par défaut
    Effectivement, il semblerai que mon SVN ne soit pas standard, ça a l'air de marcher un peu quand j'enlève l'option stdlayout mais c'est pas encore ça:
    Could not read response body:
    $ git svn clone http://svn.local/php/tt-rss/ /TEMP/svn
    Initialized empty Git repository in C:/Program Files (x86)/Git/TEMP/svn/.git/
    r76 = 3a69db41f3a6ad201e06585ba8593556b56c6639 (refs/remotes/git-svn)
    A tt-rss.css
    A themes/default.css
    A lock/.htaccess
    A cdm.css
    A README.md
    RA layer request failed: REPORT request failed on '/php/!svn/vcc/default': REPORT of '/php/!svn/vcc/default': Could not read response body: The connection was aborted (http://svn.eona.local) at /usr/lib/perl5/site_perl/Git/SVN/Ra.pm line 282
    Je continue a investiguer en jetant un œil a ton lien, merci.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 149
    Par défaut
    Bon, j'imagine que j'avais une mauvaise config réseau quelque part... J'ai abandonné l'idée de faire ma conversion sur une machine distante, j'ai directement installé git sur la machine linux qui héberge mon svn et j'ai pu faire ma conversion sans problèmes.
    Merci pour ton aide.

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

Discussions similaires

  1. [GIT] Erreur Pendant Migration de SVN vers GIT
    Par Suicker dans le forum ALM
    Réponses: 5
    Dernier message: 04/04/2013, 09h19
  2. Conversion Unix vers DOS...
    Par nicosfly dans le forum Langage
    Réponses: 4
    Dernier message: 23/06/2008, 17h53
  3. conversion Access vers SQL
    Par Bjuice2 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 23/03/2004, 13h57
  4. [langage] conversion décimal vers hexa
    Par chipster dans le forum Langage
    Réponses: 2
    Dernier message: 23/02/2004, 16h05
  5. Conversion Timestamp vers varchar
    Par stejutt dans le forum SQL
    Réponses: 4
    Dernier message: 08/01/2004, 08h46

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