Aller au contenu
N/H
Tous les projets

Étude de cas / 03 — Outil développeur · Open source

GitSetup.

Un environnement Git prêt à travailler, identité par identité.

Contribution

Développement d’un outil CLI

Contexte

Configuration Git sur macOS

Technologies

TypeScript · Node.js · Git · SSH / GPG

gitsetup — zsh

# Votre environnement, vos identités.

❯ git-setup apply --dry-run

UNE CONFIGURATION, TROIS BRIQUES

Git · identities

SSH · connections

GPG · signatures

Exemple de commande · mode prévisualisation

Exemple de commande : prévisualiser la configuration sans l’appliquer.

01 / Le point de départ

Le point de départ

Configurer Git sur un nouveau Mac peut impliquer plusieurs identités, des clés SSH, la signature GPG et des hooks. GitSetup regroupe ces étapes dans un assistant en ligne de commande.

02 / Ma contribution

Ma contribution

J’ai développé un outil modulaire en TypeScript pour configurer cet environnement, soit avec un assistant interactif, soit à partir d’un fichier JSON. Les profils peuvent ensuite être ajoutés ou modifiés séparément.

03 / Les choix techniques

01

Plusieurs identités

Les profils regroupent les paramètres Git et SSH. Des hooks permettent de sélectionner l’identité en fonction de l’URL distante du dépôt.

02

Prévisualiser avant d’appliquer

Le mode dry-run décrit les modifications prévues. Des sauvegardes et des marqueurs délimitent les éléments gérés par l’outil.

03

Distribuer simplement

Une installation via Homebrew complète l’installation depuis les sources. La configuration JSON permet de reproduire un environnement.

GITSETUP / UN PROFIL
GitIdentité
SSHConnexion
GPGSignature

Prévisualiser → appliquer → faire évoluer

Les trois éléments reliés par un profil GitSetup.

04 / Une difficulté concrète

Une difficulté concrète

L’outil intervient sur une configuration personnelle qui peut déjà exister. Il doit préserver les réglages indépendants, détecter les changements nécessaires et rester prévisible lorsqu’on l’exécute plusieurs fois.

05 / Le résultat

Le résultat

GitSetup propose un assistant, une gestion des profils et une prévisualisation des changements. Son code et ses instructions d’installation sont disponibles sur GitHub.

Projet suivantNetViewer