Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| enseignement:d35:tp:tp1 [2014/01/28 10:50] – modification externe 127.0.0.1 | enseignement:d35:tp:tp1 [2023/09/20 18:52] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | <texit info> | + | ====== D35 - TP1 - Premiers pas avec git ====== |
| - | author=E. Bruno | + | |
| - | title=TP1 - Premiers pas avec git | + | |
| - | </ | + | |
| - | ====== TP1 - Premiers pas avec git ====== | + | Pour une présentation rapide de Git lire : [[git: |
| + | |||
| + | et surtout : https:// | ||
| + | |||
| + | ===== Git dans un entrepôt isolé | ||
| - Dans un répertoire '' | - Dans un répertoire '' | ||
| - créer un dossier pour votre projet | - créer un dossier pour votre projet | ||
| - | - en faire un entrepôt | + | - en faire un entrepôt |
| - | - Mettre en place un mini projet java qui contient | + | - Mettre en place un mini projet java qui contient |
| - A chaque modification afficher le statut | - A chaque modification afficher le statut | ||
| - Ajouter les différents fichiers (staging puis commit) | - Ajouter les différents fichiers (staging puis commit) | ||
| - Afficher le journal | - Afficher le journal | ||
| - Modifier le fichier java et afficher les différences puis faire un commit. | - Modifier le fichier java et afficher les différences puis faire un commit. | ||
| - | - Créer une autre branche de votre projet | + | - Créer une autre branche de votre projet |
| - | - Ajouter des fichiers et faire des modifications dans la nouvelle branches | + | - Ajouter des fichiers et faire des modifications dans la nouvelle branches. |
| - | - Revenir dans la branche initiale et récupérer les modifications | + | - Revenir dans la branche initiale et récupérer les modifications. |
| - | - Faire des modifications | + | - " |
| - | - Régler le conflit dans la branche initiale | + | - Faire un clone du projet à la version taguée. |
| - | | + | ===== Collaboration " |
| - | - Faite des modifications dans l' | + | |
| - | - Faites | + | - Créer deux clone du répertoire " |
| - | - Créer un troisième projet en clonant | + | - Faire des modifications dans le premier |
| - | - Etudier les fonctions avancées de mise à jour de l'historique : http:// | + | - Faire l' |
| - | - " | + | - Faire des modifications dans le même fichier dans les deux projets sans pull préalable |
| - | - Tester | + | pousser un puis l'autre pour provoquer un conflit et régler |
| - | ===== Correction ===== | + | |
| - | /** | + | |
| - | Dans un répertoire TEST à la racine de votre compte, créer un fichier Hello.java (hello world) dans un paquetage test et un repository svn (svnhello) | + | |
| - | | + | ===== Collaboration " |
| + | | ||
| + | - Vous pouvez ajouter des remotes d' | ||
| + | - Pousser vos modifications. | ||
| + | - Récupérer les modifications. | ||
| + | - Sinon faire des pull/ | ||
| - | Importer | + | - A partir de là travailler tous ensemble sur le même projet : |
| + | - l' | ||
| + | - chacun peut créer une classe Test **dans son propre paquetage** (avec des login différents) avec une méthode String sayName() qui retourne son login. | ||
| - | svn import test file:/// | + | ===== Utilisation avancée ===== |
| - | + | | |
| - | Afficher la revision | + | - Mise en place de gitflow avec Java/Maven |
| - | + | - https://www.atlassian.com/git/tutorials/comparing-workflows/ | |
| - | svnlook tree svnhello | + | - http://nvie.com/posts/a-successful-git-branching-model/ |
| - | + | - https://bitbucket.org/atlassian/jgit-flow/wiki/Home | |
| - | Afficher | + | |
| - | + | ||
| - | svnlook tree svnhello | + | |
| - | + | ||
| - | Afficher les informations sur un fichier | + | |
| - | svn info file:/// | + | |
| - | svn info file:/// | + | |
| - | + | ||
| - | Dans un répertoire ~/TEST/Work faire un ckeckout workingcopy1 et une autre w workigncopy2 | + | |
| - | svn checkout file:/// | + | |
| - | | + | |
| - | + | ||
| - | Modifier le fichier Hello.java dans workingcopy1 et mettre à jour le repository | + | |
| - | svn commit workingcopy1 | + | |
| - | + | ||
| - | Afficher le message | + | |
| - | | + | |
| - | + | ||
| - | Afficher le fichier Hello.java de la revision 1 | + | |
| - | | + | |
| - | + | ||
| - | Mettre à jour workcopy2 | + | |
| - | | + | |
| - | + | ||
| - | Modifier les deux copies, et faire un commit dans chacune. Régler le conflit. | + | |
| - | + | ||
| - | + | ||
| - | Poser une verrou sur Hello depuis working2 et tenter une mise à jour de working1 | + | |
| - | svn lock Hello.java | + | |
| - | + | ||
| - | Modifier et committer working 1 et créer un patch à partir de la révision précédente. Appliquer le patch à working 1 | + | |
| - | Dans working2 | + | |
| - | svn cat -r1 file:/// | + | |
| - | Dans working1 | + | |
| - | cat ../../workingcopy2/test/Hello_5_6.patch | patch | + | |
| - | + | ||
| - | Créer un fichier readme dont le contenu est mis à jour automatiquement | + | |
| - | echo '$Id$ $Rev$ $Date$' | + | |
| - | svn add README.txt | + | |
| - | svn propset svn: | + | |
| - | + | ||
| - | Affecter et afficher la propriété author à Hello | + | |
| - | */ | + | ===== IDE ===== |
| + | - Tester le plugin Git dans eclipse et/ou dans IntelliJ Idea. | ||
| | | ||
| ---- struct data ---- | ---- struct data ---- | ||
| + | metadata.level | ||
| + | metadata.Type | ||
| + | metadata.Nom | ||
| + | metadata.Enseignements : D35 | ||
| + | metadata.Promotions | ||
| + | metadata.Technologies : Git | ||
| + | metadata.Thèmes | ||
| + | metadata.Description : | ||
| ---- | ---- | ||