601
Commentaire: encore de la doc à faire. what-a-surprise
|
3321
|
Texte supprimé. | Texte ajouté. |
Ligne 2: | Ligne 2: |
'''Cette putain de page wiki est comme les autres pages de CransTechnique totalement vide ou incomplète. | '''Page en construction… |
Ligne 4: | Ligne 4: |
Parce que ça les fait tous chier de faire de la doc, même si on les supplie à genoux. | feel free to add your knowledge''' }}} |
Ligne 6: | Ligne 7: |
Parce qu'ils font les morts quand on demande des workshops pour le faire tous ensemble (dans la bonne humeur). | <<TableOfContents>> |
Ligne 8: | Ligne 9: |
Avant qu'on me dise "t'as qu'à le faire", je peux pas. | = Git = {{{git}}} est un [[CransTechnique/Versionnement|logiciel de versionnement]], sans doute un des plus puissant actuellement. |
Ligne 10: | Ligne 12: |
J'ai pas les compétences nécessaires, le recul nécessaire, la pédagogie nécessaire pour transmettre tout ça aux apprentis d'après. Et, anyway, je peux pas remplir tout CransTechnique seule…''' }}} |
De la doc sur le wiki [[WikiInformatique/HowToGit|HowToGit]]. Un peu de doc externe : * [[http://www.siteduzero.com/informatique/tutoriels/gerez-vos-codes-source-avec-git|Tuto sdz]] pour débuter * [[http://gitready.com/|gitready : de nombreuses "recettes" intéressantes]] * [[http://doc.ubuntu-fr.org/git|la doc ubuntu]] (français) * [[http://git-scm.com/documentation|la doc officielle]] (anglais) = Au Cr@ns = Les projets du Cr@ns sont sous {{{git}}}. == Où ? == Les dépôts git sont hébergés sur [[CransTechnique/LesServeurs/ServeurGeet|geet]], dans le path {{{/gitlab/repositories}}}. Les anciens dépôts git sont hébergés sur [[CransTechnique/LesServeurs/ServeurGeet|geet]], dans le path {{{/git}}}. La majorité des projets utilise maintenant gitlab. == Qui ? == Les projets sont gérés par [[CransTechnique/GitLab|gitlab]]. Les projets Cr@ns sont répartis dans 2 groupes, {{{Nounous}}} et {{{Membres actifs}}}. Tout le monde peux cloner les projets en SSH ou HTTPS. Les apprentis peuvent demander à une nounous de pusher leurs commits dans un projet de {{{Nounous}}}. Pour les anciens dépôts dans {{{/git}}}, les nounous ont les droits d'écriture dessus (sans sudo, [[http://perso.crans.org/respbats/config/.umaskrc|sinon c'est que quelqu'un a cassé quelque chose]]), les apprentis peuvent les cloner en SSH et demander à une nounou de puller leurs commits. == Et même que == On a aussi un [[CransTechnique/GitLab|gitlab]] et un [[/GitWeb|gitweb]] ! == ToDo == /*Les {{{/etc}}} de nombreux serveurs sont encore sous {{{darcs}}}, il faudrait les passer à git ou tout mettre dans bcfg2.*/ == Migration d'un dépôt vers git == On a tendance à migrer tous les dépôts vers git. === Depuis darcs === Pour convertir les dépôt Cr@ns, un script en ruby [[https://github.com/purcell/darcs-to-git|disponible sur github]] a été utilisé. {{{./darcs-to-git -h}}} est limpide, il est vraiment très facile d'utilisation et il marche bien à quelques détails près : * Il ne gérait pas les caractères non-ASCII (encodés assez bizarrement par darcs), et comme je connais pas le ruby, j'ai hardcodé les remplacements. * Si on veut commencer à convertir à partir d'un patch donné, il faut modifier le code, on ne peut pas le passer en paramètre. Cependant comme [[WikiAdg|certaines personnes]] ont fait des choses sales à une époque dans le dépôt darcs, la conversion a planté et il a fallu faire un commit sauvage au milieu pour raccorder les morceaux. (Ce qui explique le besoin de convertir à partir d'un patch donné pour convertir la deuxième moitié) === Depuis mercurial === * http://hivelogic.com/articles/converting-from-mercurial-to-git (non testé, mais ça a l'air cool) * [[http://hg-git.github.io/|Hg-Git]] est une extension de mercurial qui permet de communiquer avec un dépôt Git, it just works. * Déjà utilisé une fois sans problème -- OlivierIffrig <<DateTime(2013-06-26T10:52:00+0100)>> ---- CatégoriePagePublique CatégoriePageNonTerminée |
Page en construction… feel free to add your knowledge
Sommaire
Git
git est un logiciel de versionnement, sans doute un des plus puissant actuellement.
De la doc sur le wiki HowToGit.
Un peu de doc externe :
Tuto sdz pour débuter
la doc ubuntu (français)
la doc officielle (anglais)
Au Cr@ns
Les projets du Cr@ns sont sous git.
Où ?
Les dépôts git sont hébergés sur geet, dans le path /gitlab/repositories.
Les anciens dépôts git sont hébergés sur geet, dans le path /git. La majorité des projets utilise maintenant gitlab.
Qui ?
Les projets sont gérés par gitlab. Les projets Cr@ns sont répartis dans 2 groupes, Nounous et Membres actifs. Tout le monde peux cloner les projets en SSH ou HTTPS. Les apprentis peuvent demander à une nounous de pusher leurs commits dans un projet de Nounous.
Pour les anciens dépôts dans /git, les nounous ont les droits d'écriture dessus (sans sudo, sinon c'est que quelqu'un a cassé quelque chose), les apprentis peuvent les cloner en SSH et demander à une nounou de puller leurs commits.
Et même que
On a aussi un gitlab et un gitweb !
ToDo
/*Les /etc de nombreux serveurs sont encore sous darcs, il faudrait les passer à git ou tout mettre dans bcfg2.*/
Migration d'un dépôt vers git
On a tendance à migrer tous les dépôts vers git.
Depuis darcs
Pour convertir les dépôt Cr@ns, un script en ruby disponible sur github a été utilisé.
./darcs-to-git -h est limpide, il est vraiment très facile d'utilisation et il marche bien à quelques détails près :
- Il ne gérait pas les caractères non-ASCII (encodés assez bizarrement par darcs), et comme je connais pas le ruby, j'ai hardcodé les remplacements.
- Si on veut commencer à convertir à partir d'un patch donné, il faut modifier le code, on ne peut pas le passer en paramètre.
Cependant comme certaines personnes ont fait des choses sales à une époque dans le dépôt darcs, la conversion a planté et il a fallu faire un commit sauvage au milieu pour raccorder les morceaux. (Ce qui explique le besoin de convertir à partir d'un patch donné pour convertir la deuxième moitié)
Depuis mercurial
http://hivelogic.com/articles/converting-from-mercurial-to-git (non testé, mais ça a l'air cool)
Hg-Git est une extension de mercurial qui permet de communiquer avec un dépôt Git, it just works.
Déjà utilisé une fois sans problème -- OlivierIffrig 2013-06-26 11:52:00