# Git/Intégration dans les IDEs

* Principes
* Apprendre à travailler avec Git
** Avant de commencer : installation et configuration de Git
** Création de votre dépôt local
** Visualiser le contenu de votre dépôt local
** Premiers pas
** Gestion des branches
** Synchroniser le dépôt local avec le dépôt distant
* Fonctionnalités avancées
** Étiquetage (tags)
** Remise (stash)
** Recombinaison (rebase)
** Sous-modules et Super-projets
** Structure interne
** Pull-request
* Recettes
** Exclure des fichiers du dépôt
** Écrire des messages de commit
* Environnement
** Intégration dans les IDEs
** Améliorer sa productivité en configurant Git
** Git sous Linux
** Git sous Windows
** Forges
*** GitLab
*** GitHub
*** Bitbucket
* Git et Subversion (svn)
** Passer de Subversion à Git
** Travailler avec Git local et un dépôt Subversion distant
** Participer au développement de Wikimédia (Gerrit)
* Problèmes connus
* Ressources externes
* Principes
* Apprendre à travailler avec Git
** Avant de commencer : installation et configuration de Git
** Création de votre dépôt local
** Visualiser le contenu de votre dépôt local
** Premiers pas
** Gestion des branches
** Synchroniser le dépôt local avec le dépôt distant
* Fonctionnalités avancées
** Étiquetage (tags)
** Remise (stash)
** Recombinaison (rebase)
** Sous-modules et Super-projets
** Structure interne
** Pull-request
* Recettes
** Exclure des fichiers du dépôt
** Écrire des messages de commit
* Environnement
** Intégration dans les IDEs
** Améliorer sa productivité en configurant Git
** Git sous Linux
** Git sous Windows
** Forges
*** GitLab
*** GitHub
*** Bitbucket
* Git et Subversion (svn)
** Passer de Subversion à Git
** Travailler avec Git local et un dépôt Subversion distant
** Participer au développement de Wikimédia (Gerrit)
* Problèmes connus
* Ressources externes
[ Modifier le sommaire ]
Git est intégré avec la plupart des IDEs, soit nativement, soit par installation d'extensions.

## Eclipse

Eclipse intègre Git avec l'extension EGit (https://www.eclipse.org/egit/). Cette extension fournit une vue du dépôt Git. La configuration de Git est accessible dans la fenêtre des préférences sous le nœud "Team".
Parmi les opérations possibles :
* Cloner un dépôt Git,
* Créer un dépôt local,
* Commiter les changements,

## Visual Studio Code

Visual Studio Code a une vue permettant de voir les fichiers modifiés, supprimés et ajoutés, de commiter les changements, et de synchroniser le dépôt local avec le dépôt distant (pull et push), l'extension « Git Graph » permet de visualiser le log des changements et les branches.

## PhpStorm

PhpStorm possède un plugin "Git" permettant de voir l'historique des modifications des fichiers en couleur. On y accède par un onglet en bas, côté du terminal, ou par un clic droit sur un dossier ou fichier dans le menu de navigation à gauche, ou encore avec un clic droit dans la marge d'un fichier versionné ouvert puis afficher des annotations. Ce dernier chemin lance un "git blame" pour retrouver l'auteur de chaque ligne du fichier, et on peut ensuite réitérer l'opération en affichant les annotations précédentes pour remonter tout l'historique.
De plus, quand on regarde le différentiel des fichiers modifiés depuis le dernier commit (onglet "Version Control" en bas, "resolve", puis "merge..."), en cas de conflit il propose un outil de résolution à trois colonnes très ergonomique.
Enfin, il est recommandé d'ajouter le dossier .idea/ créé par PhpStorm dans le fichier .gitignore car il n'est pas censé être le même sur toutes les machines.