Introduction à l'EGit
1. Vue d'ensemble
Dans cet article, nous allons explorer EGit - une évolution de la bibliothèque JGit pour Eclipse.
2. Configuration EGit
Au cours de cet article, nous utiliserons les outils suivants:
-
Eclipse Neon.3 version 4.6.3
-
Plugin EGit version 4.8
2.1. Installation d'EGit dans Eclipse
À partir de Eclipse Juno, EGit est inclus dans Eclipse lui-même.
Pour les anciennes versions d'Eclipse, nous pouvons installer le plugin viaHelp → Install New Software et en fournissant l'URLhttp://download.eclipse.org/egit/updates:
2.2. Identifier un Commiter
Git doit garder la trace de l'utilisateur derrière un commit, nous devons donc fournir notre identité lorsque nous effectuons des commits via EGit.
Cela se fait viaPreferences → Team → Git → Configuration et en cliquant surAdd Entry pour inclure les informations pouruser.name etuser.email:
3. Dépôts
3.1. Vue des référentiels
EGit est livré avec la vue Repositories qui nous permet de:
-
Parcourez notre référentiel local
-
Ajouter et initialiser des référentiels locaux
-
Supprimer les référentiels
-
Cloner des référentiels distants
-
Vérifier les projets
-
Gérer les branches
Pour ouvrir la vue Repositories, cliquez surWindow → Show View → Other → Git → Git Repositories:
3.2. Créer un nouveau référentiel
Nous devons créer un projet et faire un clic droit dessus pour choisirTeam → Share Project, etCreate.
De là, nous sélectionnons le répertoire du référentiel et cliquons surFinish:
3.3. Cloner un référentiel
Nous pouvons cloner un référentiel d'un serveur git distant sur notre système de fichiers local.
Allons àFile → Import… → Git → Projects from Git → Next → Clone URI → Next, puis la ** fenêtre suivante s'affichera:
Nous pouvons également ouvrir la même fenêtre à partir du bouton de la barre d'outils deClone Remote Repository dans l'onglet de vue deRepositories.
Git prend en charge plusieurs protocoles tels que https, ssh, git, etc. Si nous collons l’URI du référentiel distant, les autres entrées seront remplies automatiquement.
4. Branches
Nous allons traiter deux types de succursales:
-
Branche locale
-
Branche de suivi à distance
4.1. Création d'une branche locale
Nous pouvons créer une nouvelle branche locale en cliquant surTeam → Repository → Switch to → New Branch:
Nous pouvons choisir la branche de suivi à distance à partir de laquelle baser notre branche locale. L'ajout d'une configuration en amont à nos nouvelles succursales locales simplifiera la synchronisation des modifications locales avec les modifications distantes.
Il est recommandé de cocher l'option dans la boîte de dialogueConfigure upstream for push and pull.
Une autre méthode pour ouvrir la nouvelle boîte de dialogue de branche en cliquant avec le bouton droit de la souris sur les branches dans lesRepositories view → Switch To → New Branch
5. Suivi des fichiers avec Git
5.1. Suivi des modifications
Des signes de point d'interrogation apparaissent sur les fichiers qui ne sont pas encore sous le contrôle de Git. Nous pouvons suivre ces nouveaux fichiers en faisant un clic droit dessus et en sélectionnantTeam → Add to Index.
À partir de là, le décorateur doit passer à(+) sign.
5.2. Validation des modifications
Nous voulons appliquer des modifications aux fichiers suivis. Cela se fait en cliquant avec le bouton droit sur ces fichiers et en choisissantTeam → Commit:
Par défaut, l'auteur et le validateur sont extraits du fichier.gitconfig de notre répertoire personnel.
Nous pouvons entrer un message de validation pour expliquer les modifications. De plus, en cliquant sur l'icôneAdd Signed-off-by dans le coin supérieur droit, nous pouvons ajouter une baliseSigned-off-by.
5.3. Inspecter l'historique
Nous pouvons vérifier l'historique d'un fichier en faisant un clic droit dessus et en choisissantTeam → Show in History.
Une boîte de dialogue d'historique affiche toutes les modifications validées du fichier inspecté:
Nous pouvons ouvrir les dernières modifications validées dans la vue de comparaison en cliquant sur l'icône du mode de comparaison dans le coin supérieur droit de l'onglet historique, puis en double-cliquant sur le nom du fichier (voici un exemple:HelloEgit/src/HelloEgitClass.java) dans la liste des fichiers :
5.4. Pousser les modifications vers le référentiel distant
Pour pousser nos modifications, nous avons besoin d’un référentiel Git distant.
À partir deTeam → Remote → Push, nous pouvons entrer l'URL https du nouveau référentiel distant Git dans un assistant:
Les prochaines étapes sont les suivantes:
-
Choisissez lesAdd All Branches Spec pour mapper les noms de branche locale aux mêmes noms de branche dans le référentiel de destination
-
Appuyez sur le bouton de confirmation - l'assistant affichera un aperçu des fichiers modifiés
-
Enfin, nous cliquons surFinish pour pousser notre référentiel vers l'emplacement distant.
Si nous avons configuré la configuration en amont à partir de la section 4.1, cette boîte de dialogue de configuration ne sera pas affichée et la transmission sera beaucoup plus facile.
5.5. Récupération en amont
Si nous travaillons avec une branche locale basée sur une branche de suivi distante, nous pouvons maintenant récupérer les modifications depuis l'amont.
Afin de récupérer de l'amont, nous faisons un clic droit sur lesproject et sélectionnonsTeam → Fetch from Upstream (ou en faisant un clic droit sur le dépôt sur lesRepositories View et en sélectionnantFetch from Upstream).
Cette extraction peut être configurée en cliquant avec le bouton droit sur le projet et en sélectionnantTeam → Remote → Configure Fetch from Upstream:
5.6. Comparaison et synchronisation
Si nous voulons voir les changements entre le répertoire de travail local et une modification validée, nous pouvons faire un clic droit sur la ressource et choisirCompare With. Cela ouvre lesSynchronize View pour nous permettre de parcourir les modifications:
En double-cliquant sur le fichier modifié, l'éditeur de comparaison s'ouvrira, ce qui nous permettra de comparer les modifications.
Si nous voulons comparer deux commits, nous devons sélectionnerTeam → Show in History.
Dans la vue historique, nous mettrons en évidence les deux commits que nous souhaitons comparer et sélectionnerons l'optionCompare with Each Other:
Si nous voulons comparer entre le répertoire de travail et une branche, nous pouvons utiliserTeam → Synchronize
5.7. Fusion
La fusion incorpore les modifications d'une branche ou d'une étiquette dans la branche actuellement extraite.
Nous pouvons fusionner en cliquant surTeam → Merge ou en faisant un clic droit sur le nom du référentiel dans la vue des référentiels et en sélectionnantMerge:
Nous pouvons maintenant sélectionner la branche ou le tag que nous souhaitons fusionner avec la branche actuellement extraite.
6. Conclusion
Dans ce tutoriel, nous avons présenté le plug-in EGit pour eclipse, comment l'installer et le configurer, et comment l'utiliser dans notre développement quotidien.
Pour plus de détails sur EGit, consultez sa documentation officiellehere.