====== SE - GIT - Présentation ====== ====== Git - Présentation ====== === Documentation === * cf présentation concise de **Git** : https://rogerdudler.github.io/git-guide/ * cf : https://fr.wikipedia.org/wiki/Git * cf aussi : http://fr.openclassrooms.com/informatique/cours/gerez-vos-codes-source-avec-git * et http://git-scm.com/book/fr ==== Decouverte et mise en oeuvre ==== * prérequis : machine Linux (Debian) * installer le paquet **git-core** === Utilisation locale === * créer un depot **prj.git** : ''git init prj.git'' * dans le repertoire **prj.git** * avant la première utilisation : * ''git config --global user.name "Albert Dupont"'' * ''git config --global user.email adupunt@example.com'' * faire ''git status'' * creer un fichier **fic1** : ''echo 'salut' > fic1'' * taper ''git status'' * ajouter **fic1** au depot ''git add fic1'' * refaire ''git status'' * faire un commit pour prendre en compte les modifications " : ''git commit -am 'premier fichier : fic1' '' * refaire ''git status'' * taper ''git log'' pour voir l'historique * taper ''git show'' pour voir les changements * tagguer la version avec ''git tag v0.1'' * vérifier avec ''git tag'' * on créee un fichier **fic2** : ''date > fic2'' * on modifie **fic1** : ''echo '----' >> fic1'' * ''git status'' * on ajoute le fichier **fic2** avec : * on commite toutes les modifications avec : * on taggue avec : * on examine l'historique des logs avec : * on examine les changements sur les fichiers avec : ==== Accès à un dépôt distant ==== * cloner un depot de tgest **https://gitea.lyc-lecastel.fr/diueil/test.git** : avec ''git clone http://gitea.lyc-lecastel.fr/diueil/test.git'' * pour chacun (dans le répertoire du dépôt) * ''git status'' et ''git tag'' * faire un ''git pull'' pour mettre à jour * créer un fichier avec ''date > fic-xy)'' ou xy sont les initiales * ''git add fic-xy'' * ''git commit -am 'ajout fichier ...' '' * ''git status'' * ''git tag v0.1a'' (puis v0.1b, ...) * on renvoie vers le dépôt **amont** (serveur ''sio'' avec ''git push'' * on envoie aussi les tags : avec ''git push --tag'' * quand chacun a fait ses modifications sur le dépôt, on doit en trouver la trace dans les logs et les tags ... *