Download pdf - Plugin Doc Kscm

Transcript

Systeme de rendus du KoalabUtilisation de koala-rendus

Maxime "zaz" Montinet [email protected]

Abstract: Ce document decrit la marche a suivre pour utiliser les rendus par systeme de controle de versions utilises au cours des dierents modules geres par le Koalab

Table des matiresI Avant toute chose I.1 Notes importantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I.2 Version courte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I.2.1 FAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cle SSH II.1 Enregistrement sur koala-rendus . II.2 Mise en place pour lutilisation . II.2.1 BSD/Linux . . . . . . . . II.2.2 Windows . . . . . . . . . . 2 2 3 4 6 6 7 7 7 9 9 9 10 10 10 12 12 12

II

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

III

SVN III.1 BSD/Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . III.2 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mercurial IV.1 BSD/Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IV.2 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Git V.1 BSD/Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V.2 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

IV

V

1

Chapitre I Avant toute choseNATTENDEZ PAS LE DERNIER MOMENT pour recuperer votre depot et commencer a travailler dessus ! Ainsi, si daventure vous avez un souci, vous aurez tout votre temps pour le resoudre. Notez que les personnes qui viennent demander de laide le dernier jour, 1h avant le rendu, se heurtent generalement a un "Fallait y penser avant !", qui est dailleurs justifie ...

I.1

Notes importantes

Ce guide presume que vous connaissez le nom du depot que vous cherchez a utiliser. Dans tous les cas, la forme du nom dun depot est --. (Vous recevrez generalement un e-mail au moment ou les depots de votre projet sont disponibles, qui vous precisera le nom du depot. Cet e-mail nest en general addresse quaux chefs de groupes.) Ce guide presume egalement, dans TOUS LES CAS sous BSD/Linux, que votre cle privee SSH se trouve dans ~/.ssh/id_rsa, et est donc la cle utilisee par defaut par SSH. On presume egalement que si vous utilisez des outils type ssh-agent, vous savez vous en servir ! (ssh-add, tout ca ...) Ce guide presume enn que vous savez vous servir de git, svn, et mercurial, et que vous avez les moyens de recuperer votre cle SSH du PIE avec Windows (WinSCP, ou alors monter lAFS). Dans le cas contraire, ce guide presume que vous savez lire une documentation ... Ce guide explique, pour chaque SCM propose par le Koalab, la marche a suivre pour se connecter a un depot a laide des outils svn, hg et git en ligne de commande sous BSD/ Linux, ainsi que TortoiseSVN, TortoiseGit et TortoiseHg sous Windows. Tout autre utilitaire ne fera pas lobjet dune documentation et son utilisation se 2

Systeme de rendus du Koalab

Utilisation de koala-rendus

fera a VOS risques et perils. Veillez donc a vous conformer a ce guide si vous navez pas envie dexperimenter. Vous etes prevenus. Ce guide et tous les outils quil utilise ont ete testes avec succes sur les dumps etudiant, et de facon plus generale sur Windows XP/Vista/Seven (32 et 64 bits), FreeBSD/Debian/Archlinux/Fedora/Ubuntu (32 et 64 bits). Veuillez egalement noter que dans le cas ou vous avez plusieurs depots pour un meme projet, les depots sont DIFFERENTS. Ils NE sont PAS repliques entre les dierents SCM. Vous devez donc CHOISIR un SCM, et ne pas en utiliser plusieurs a la fois ... Ne voyez pas lutilisation dun systeme de controle de versions comme une corvee. Cest important pour votre futur en tant que developpeur de savoir vous en servir. Accessoirement, si vous prenez la peine de lire quelques tutoriaux et dapprendre a vraiment les utiliser, cest extremement pratique pour coder a plusieurs sur vos projets. Enn, je vous en SUPPLIE, je vous IMPLORE ... Lisez les documentations des SCM que vous utilisez ! Ca ne prend pas longtemps de lire un tutorial, et ca vous evitera bien des maux de tetes !

I.2

Version courte

Pour ceux qui savent deja utiliser SVN/Git/Mercurial en SSH et qui nont pas envie de lire 20 kilometres de doc ... Rendez vous sur http://koala-rendus.epitech.net. Authentiez vous a laide de votre mot de passe PPP (intra), et utilisez le formulaire qui vous est presente pour uploader votre cle SSH publique. Attendez 10 minutes que votre cle SSH soit propagee sur le systeme. Allez boire un cafe, par exemple. Recuperez votre depot qui se trouve, selon le SCM, sur : svn+ssh://[email protected]/nomduprojet-promo-login_chef (Pour SVN) ssh://[email protected]/nomduprojet-promo-login_chef (Pour Hg) [email protected]:nomduprojet-promo-login_chef (Pour Git)

3

Systeme de rendus du Koalab

Utilisation de koala-rendus

Prot. Si vous ny arrivez pas ... tant pis, lisez le reste, merci !

I.2.1

FAQ

Si vous etes CERTAINS davoir tout fait comme demande par cette documentation, et que votre probleme persiste, la solution est peut-etre bien la. Problemes ponctuels Durant la periode mars/avril 2011 a eu lieu la migration des services de rendus du Koalab depuis koala-scm.epitech.net vers koala-rendus.epitech.net. Si votre projet est sur koala-rendus (Comme precise par le mail que vous avez du recevoir), vous devez egalement uploader vos cles ssh sur koala-rendus et non plus koala-scm. Ce nest PAS le meme serveur. Problemes avec lenregistrement de la cle SSH : Mauvais mot de passe utilise. Utilisez votre pass PPP (= mot de passe intranet !). Si vous narrivez pas a faire accepter votre mot de passe (apres plusieurs essais !), envoyez votre cle publique par mail a [email protected]. Envoi dune cle PuTTY (format .ppk). Utilisez une cle OpenSSH. Envoi dune cle trop courte ( Host Name : koala-rendus.epitech.net Session > Connection Type : SSH 7

Systeme de rendus du Koalab

Utilisation de koala-rendus

Connection > Data > Auto-login username : kscm Connection > SSH > Auth > Private key le for authentication : Retournez dans la page Session, entrez un nom dans le champ sous Saved Sessions (par exemple kscm_koala_login_x), puis cliquez sur Save. Ensuite, au lieu dutiliser [email protected] pour vous connecter, vous utiliserez le nom de la connection que vous venez de creer, et le soft utilisera les parametres que vous avez choisi. Cette solution permet de sauvegarder autant de reglages que vous voulez, si vous etes plusieurs a partager la machine

8

Chapitre III SVNIII.1 BSD/Linux

Checkout le depot :1

2 3 4

zaz@naqadah:~/scm/$ svn checkout svn+ssh://[email protected]/test -2011-montin_m Checked out revision 0. zaz@naqadah:~/scm/$ cd test-2011-montin_m zaz@naqadah:~/scm/test-2011-montin_m$

Travaillez ensuite normalement sur votre depot.

III.2

Windows

Vous aurez besoin de TortoiseSVN. Pour checkout votre depot SVN, cliquez droit dans un dossier, puis SVN Checkout. Dans URL of repository, entrez : svn+ssh://[email protected]/ (ou svn+ssh://nom_de_la_connection/ si vous nutilisez pas Pageant), puis cliquez sur OK. Travaillez ensuite normalement sur votre depot.

9

Chapitre IV MercurialIV.1 BSD/Linux

Clonez le depot :1

2 3 4 5 6 7 8 9 10

zaz@naqadah:~/scm/$ hg clone ssh://[email protected]/test-2011montin_m destination directory: test-2011-montin_m requesting all changes adding changesets adding manifests adding file changes added 1 changesets with 1 changes to 1 files 1 files updated, 0 files merged, 0 files removed, 0 files unresolved zaz@naqadah:~/scm/$ cd test-2011-montin_m zaz@naqadah:~/scm/test-2011-montin_m$

Travaillez ensuite normalement sur votre depot.

IV.2

Windows

Vous aurez besoin de TortoiseHg. Pour cloner votre depot Mercurial, cliquez droit dans un dossier, puis TortoiseHg > Clone a repository. Dans "Source path", entrez : ssh://[email protected]/, puis cliquez sur Clone. Travaillez ensuite normalement sur votre depot. Note IMPORTANTE : Noubliez surtout pas, pour synchroniser VOTRE depot avec NOTRE depot, de pusher vos changements sur le serveur. Pour ce faire, clic droit dans votre depot, puis TortoiseHg > Synchronize, puis cliquez sur Push.

10

Systeme de rendus du Koalab

Utilisation de koala-rendus

Lors de votre soutenance, cest NOTRE depot qui fait foi : Si vous navez pas push votre travail, tant pis pour vous.

11

Chapitre V GitV.1 BSD/Linux

Clonez le depot :1 2 3 4 5

zaz@naqadah:~$ git clone [email protected]:test-2011-montin_m Initialized empty Git repository in /home/zaz/test-2011-montin_m/.git/ warning: You appear to have cloned an empty repository. zaz@naqadah:~$ cd test-2011-montin_m/ zaz@naqadah:test-2011-montin_m$

Comme lors de votre premier push il ny a aucune branche sur le depot distant, vous devez selectionner la branche master de facon explicite en utilisant :1

zaz@naqadah:~$ git push origin master

Une fois cela fait, vous pourrez faire des push simples :1

zaz@naqadah:~$ git push

Veuillez noter qua la soutenance, nous corrigerons la branche "master", et pas une autre.

V.2

Windows

Vous aurez besoin de TortoiseGit, qui depend de MSysGit. Vous pouvez trouver MSysGit sur http://code.google.com/p/msysgit/downloads/ list (Utilisez le premier download, "Ocial Git", et non pas le download nomme MSysGit ...) Faites bien attention lors de linstallation a choisir loption "Run Git from Command line" et non pas "Use Git Bash only", sinon TortoiseGit ne fonctionnera pas. Si vous avez 12

Systeme de rendus du Koalab

Utilisation de koala-rendus

envie dutiliser Git en ligne de commande et non pas forcement depuis Tortoise, choisissez egalement dutiliser PLink et non OpenSSH lors de linstallation. Une fois TortoiseGit installe et congure (Clic droit > TortoiseGit > Settings, dans MSysGit path entrer C :\Program Files\Git\bin, ou le dossier bin du repertoire dinstall de Git), vous pouvez commencer.

Pour cloner le depot, clic droit > Git Clone, et dans Url, entrez : [email protected]:< DU REPO> Note IMPORTANTE : Noubliez surtout pas, pour synchroniser VOTRE depot avec NOTRE depot, de pusher vos changements sur le serveur. Pour ce faire, clic droit dans votre depot, puis TortoiseGit > Push. Lors de votre soutenance, cest NOTRE depot qui fait foi : Si vous navez pas push votre travail, tant pis pour vous.

13


Recommended