-
1. Démarrage rapide
-
2. Les bases de Git
-
3. Les branches avec Git
-
4. Git sur le serveur
- 4.1 Protocoles
- 4.2 Installation de Git sur un serveur
- 4.3 Génération des clés publiques SSH
- 4.4 Mise en place du serveur
- 4.5 Démon (Daemon) Git
- 4.6 HTTP intelligent
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Git hébergé
- 4.10 Résumé
-
5. Git distribué
-
6. GitHub
-
7. Utilitaires Git
- 7.1 Sélection des versions
- 7.2 Indexation interactive
- 7.3 Remisage et nettoyage
- 7.4 Signer votre travail
- 7.5 Recherche
- 7.6 Réécrire l’historique
- 7.7 Reset démystifié
- 7.8 Fusion avancée
- 7.9 Rerere
- 7.10 Déboguer avec Git
- 7.11 Sous-modules
- 7.12 Empaquetage (bundling)
- 7.13 Replace
- 7.14 Stockage des identifiants
- 7.15 Résumé
-
8. Personnalisation de Git
- 8.1 Configuration de Git
- 8.2 Attributs Git
- 8.3 Crochets Git
- 8.4 Exemple de politique gérée par Git
- 8.5 Résumé
-
9. Git et les autres systèmes
- 9.1 Git comme client
- 9.2 Migration vers Git
- 9.3 Résumé
-
10. Les tripes de Git
- 10.1 Plomberie et porcelaine
- 10.2 Les objets de Git
- 10.3 Références Git
- 10.4 Fichiers groupés
- 10.5 La refspec
- 10.6 Les protocoles de transfert
- 10.7 Maintenance et récupération de données
- 10.8 Les variables d’environnement
- 10.9 Résumé
-
A1. Annexe A: Git dans d’autres environnements
- A1.1 Interfaces graphiques
- A1.2 Git dans Visual Studio
- A1.3 Git dans Visual Studio Code
- A1.4 Git dans IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine
- A1.5 Git dans Sublime Text
- A1.6 Git dans Bash
- A1.7 Git dans Zsh
- A1.8 Git dans PowerShell
- A1.9 Résumé
-
A2. Annexe B: Embarquer Git dans vos applications
- A2.1 Git en ligne de commande
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
A3. Commandes Git
- A3.1 Installation et configuration
- A3.2 Obtention et création des projets
- A3.3 Capture d’instantané basique
- A3.4 Création de branches et fusion
- A3.5 Partage et mise à jour de projets
- A3.6 Inspection et comparaison
- A3.7 Débogage
- A3.8 Patchs
- A3.9 Courriel
- A3.10 Systèmes externes
- A3.11 Administration
- A3.12 Commandes de plomberie
A2.1 Annexe B: Embarquer Git dans vos applications - Git en ligne de commande
Si votre application est destinée aux développeurs, il y a de grandes chances qu’elle bénéficierait de l’intégration avec une gestion de source. Même des applications pour non-développeurs, tels que les éditeurs de document, pourraient potentiellement bénéficier d’une fonctionnalité de gestion de version et le modèle de Git fonctionne très bien dans de nombreux scénarios.
Si vous devez intégrer Git avec votre application, vous avez essentiellement trois choix : démarrer une invite et utiliser la ligne de commande Git, Libgit2 et JGit.
Git en ligne de commande
Une possibilité consiste à démarrer un processus d’invite de commande et à utiliser la ligne de commande Git pour agir. Cette méthode a le bénéfice d’être canonique et toutes les fonctionnalités de Git sont supportées. Cela s’avère aussi assez facile, du fait que la plupart des environnements d’exécution disposent d’une interface relativement simple permettant d’invoquer un processus avec des arguments en ligne de commande. Cependant, cette approche a quelques inconvénients.
L’un est que toutes les sorties sont en pur texte. Cela signifie que vous aurez à analyser le format de sortie de Git qui peut occasionnellement changer pour lire l’information d’avancée et de résultat, ce qui peut être inefficace et introduire des erreurs.
Un autre est l’absence de récupération sur erreur. Si le dépôt est corrompu d’une manière quelconque ou si l’utilisateur a une valeur de configuration malformée, Git va simplement refuser d’opérer beaucoup d’opérations.
Un autre encore est la gestion de processus. Git vous oblige à maintenir un environnement de ligne de commande dans un processus séparé, ce qui peut ajouter une complexité indésirable. Essayer de coordonner un certain nombre de tels processus est un problème épineux (spécialement quand on accède au même dépôt depuis plusieurs processus).