Articles précédents : Logiciel
- [10] Sortie de SmartEiffel 2.2
- [24] Qemu 0.8.0 est sorti !
- [21] Première version stable de Backup Manager
- [5] Lancement de JyConsole, nouvelle console Jython avancée
- [22] Sortie de Berkeley DB 4.4
- [16] ejabberd 1.0.0 : le serveur Jabber qui monte (...en charge)
- [63] Ruby on rails 1.0 est sorti
- [29] GCompris 7.2 pour Noël
- [7] PhpWebGallery 1.5
- [14] Sortie de Widelands Buid-9half
Liens connexes
- Annonce sur linux-kernel (343 hits)
- KernelTrap: Linux: Git Milestone, 1.0 Release (388 hits)
- DLFP: Linus développe un remplaçant original à BitKeeper (307 hits)
- DLFP: Le développement du noyau continue autour de Git (228 hits)
- DLFP: Nouvelles du noyau : Git et modèle de développement (292 hits)
Dépêche modérée par
Logiciel : Sortie de la version 1.0 de Git
Posté par Thomas Petazzoni (page perso, ). Modéré le 22 décembre 2005.Pour rappel, le projet Git a été lancé par Linus Torvalds lorsque la société BitMover a décidé d'arrêter de diffuser une version gratuite de son logiciel de gestion de versions BitKeeper, alors utilisé par les développeurs du noyau.
De quelques fichiers de code source C initialement distribués par Linus, Git est devenu un projet à part entière, avec de nombreux contributeurs. La maintenance de Git est d'ailleurs maintenant assurée par un autre développeur, Junio Hamano.
Git fait partie des outils de gestion de version distribués, qui selon leurs amateurs, sont très adaptés au modèle décentralisé de développement du Logiciel Libre. Git joue donc dans la même catégorie que Darcs, Bazaar, Monotone, Mercurial, SVK ou GNU Arch.
Comme l'explique la page officielle de Git, quelques points clés de ce logiciel sont la vitesse d'utilisation, à la fois pour le mainteneur du projet et pour les utilisateurs et le fait que l'historique est stocké sous la forme d'un graphe acyclique dirigé, ce qui facilite les fusions répétées et permet de travailler à long terme sur des branches. Toujours selon cette page, le projet Git doit être considéré comme une infrastructure de base pour d'autres projets, tels que Cogito, StGit, (h)gct, gitk, qgit ou gitweb. L'utilisateur se tournera donc plutôt vers une interface texte évoluée, telle que Cogito.
Annonce sur linux-kernel (343 hits)
KernelTrap: Linux: Git Milestone, 1.0 Release (388 hits)
DLFP: Linus développe un remplaçant original à BitKeeper (307 hits)
DLFP: Le développement du noyau continue autour de Git (228 hits)
DLFP: Nouvelles du noyau : Git et modèle de développement (292 hits)
> Lire les commentaires (8 commentaires, moyenne: 5,6).
Deja une mise a jour
Attention, il y a deja une mise a jour qui corrige un bug ennuyeux sur le support HTTP, il faut donc telecharger la version 1.0.0b ici :
http://www.kernel.org/pub/software/scm/git/git-1.0.0b.tar.bz(...)
Le mail de Junio :
http://lkml.org/lkml/2005/12/21/257
Interface web
Pour voir une partie de Git (et gitweb) en action, il suffit d'aller là et d'explorer :
http://www.kernel.org/git/
En particulier, l'historique de Git est là :
http://www.kernel.org/git/?p=git/git.git;a=summary
Les liens commitdiff affichent le diff entre le commit correspondant et son prédécesseur, les liens tree donnent accès à l'état du projet tel qu'il était au moment du commit.
remarque
Je trouve cette news assez étrange. Pourquoi dans cette news Git est-il en gras ? C'est la première news dans lequel je vois ça et c'est très désagréable de lire ce genre de news avec des mots en gras.
-
[^]Re: remarque
Posté par Thomas Petazzoni (page perso, ) le 22/12/2005 à 11:07. (lien). Évalué à 6.C'est moi qui ai fait ça, mais c'est vrai qu'à la re-lecture, c'est bof. La prochaine fois, j'oublierai ;-)
-
[^]Re: remarque
Posté par etham (page perso, ) le 22/12/2005 à 18:11. (lien). Évalué à 0.Et pourquoi pas ?
Git Git Git, çà imprime !
Utilisation de git par les developpeurs du noyau
J'aimerai bien savoir comment git est utilisé par Linus et les autres developpeurs du noyau. J'ai déjà entre-apperçu les differentes commandes de git dans la doc, mais je trouverai cela plus parlant d'avoir un exemple concret.
D'apres ce que j'ai compris Linus choisit certains patches de la branche d'Andrew, mais avec quelles commandes git ? Ensuite, une fois une nouvelle release faite par Linus, avec quelle(s) commande(s) Andrew (et les autres développeurs) se remettent ils a jour par rapport a Linus ?
-
[^]Re: Utilisation de git par les developpeurs du noyau
Posté par Boa Treize (page perso, ) le 22/12/2005 à 11:38. (lien). Évalué à 5.Linus envoie de temps en temps des mails à ce propos sur la mailing-list de Git, quand il utilise une p'tite commande de une ligne et qu'il se dit "quand même, ça déchire grave, ça". C'est assez rare, mais intéressant.
D'autres personnes ont posé ta question, et il y a eu des réponses intéressantes. Malheureusement, ça se perd un peu dans le flot des discussions de développement et des patches. :-(
Sinon, il y a un guide pour les développeurs du noyau, mais il date un peu :
http://linux.yyz.us/git-howto.html
Par ailleurs, un anonyme s'est fait sa propre version de la doc, un genre de "Git pour les nuls" ou plutôt "Git pour les gens normaux". Il y a eu pas mal de remarques et de corrections ensuite, mais ça reste un excellent point de départ :
http://www.gelato.unsw.edu.au/archives/git/0512/13748.html
Et sinon, de mémoire, parmi les commandes sympa qui exploitent la puissance de Git :
* git grep, qui permet de faire des recherches dans les sources, sur une période donnée, dans une branche donnée, dans un sous-répertoire donnée, etc.
* git bisect, qui permet de rechercher les bugs par dichotomie
* et plein d'autres exemples que j'oublie
-
[^]Re: Utilisation de git par les developpeurs du noyau
Posté par Thomas Petazzoni (page perso, ) le 22/12/2005 à 13:13. (lien). Évalué à 8.D'apres ce que j'ai compris Linus choisit certains patches de la branche d'Andrew, mais avec quelles commandes git ? Ensuite, une fois une nouvelle release faite par Linus, avec quelle(s) commande(s) Andrew (et les autres développeurs) se remettent ils a jour par rapport a Linus ?
Disclaimer: Ce qui suit est basé sur mes modestes observations des échanges sur la liste du noyau. Ça peut être incomplet, voire totalement faux. N'hésitez pas à corriger ou compléter.
En fait, je ne crois pas que Linus prenne des patches dans la branche d'Andrew. Andrew gère sa branche -mm avec Quilt, adapté pour la gestion de piles de patches. Cette version -mm permet d'exposer à un nombre relativement important de personnes des changements majeurs, des nouvelles fonctionnalités (ReiserFS, par exemple), etc. Quand les développeurs du noyau, dont Andrew, considère que tel ou tel patch dans -mm est prêt pour l'inclusion dans la branche principale, alors le patch est envoyé à Linus.
Sinon, Linus peut également "tirer" des modifications depuis d'autres arbres Git, c'est-à-dire d'autres branches du noyau. Par exemple, Jeff Garzik envoie régulièrement des mails du style : « Linus, please pull from ... », pour demander à Linus de tirer les modifs qu'il a sur sa branche dans la branche principale. (Dans http://www.kernel.org/git/ tu as une liste de ces branches. Un exemple de tirage depuis un arbre Git est http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux(...) ).
Sinon, la branche -mm de Andrew est mise à jour à chaque sortie d'une nouvelle version -rc du noyau Linux. Il prend donc la dernière version -rc et essaie d'appliquer avec Quilt tous les patches de sa branche. Certains patches doivent toujours s'appliquer, d'autres doivent coincer. Si ça coince, soit la modif est triviale et Andrew la fait directement, soit c'est le bazar, et je suppose qu'il dit à l'auteur originel du patch de mettre à jour son truc.
Pour un tutoriel sur Cogito, tu peux lire par exemple: http://wellington.pm.org/archive/200510/git/




Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.