Menu
Coddy logo textTech

Git Playground

Écrivez, exécutez et partagez des extraits de code - sans installation.

Terminal Git
user$ git init
user$ echo "hello" > app.txt
user$ git add app.txt
user$ git commit -m "Add app.txt"
user$ git checkout -b feature
user$ echo "new feature" >> app.txt
user$ git commit -am "Work on feature"
user$ git checkout main
user$ echo "fix" > fix.txt
user$ git add fix.txt
user$ git commit -m "Hotfix on main"
user$ git merge feature
user$
DépôtSur la branche main
git log --oneline --graph --all

Commits après cette étape

  • ea85bd9 Merge branch 'feature' (HEAD -> main) <- f5363c6, 47b6cfb
  • 47b6cfb Work on feature (feature) <- b2134da
  • f5363c6 Hotfix on main <- b2134da
  • b2134da Add app.txt
  • Arbre de travail propre

Chaque exécution rejoue tout le script et capture le dépôt après chaque ligne. Cliquez sur une étape pour voir le graphe à cet instant.

Essayez les commandes Git courantes

Git fonctionne aussi dans ce terminal. Chargez un flux de travail prêt à l'emploi dans l'invite, cliquez sur Exécuter pour voir chaque commande s'exécuter, puis ouvrez le guide complet de n'importe quelle commande que vous souhaitez comprendre.

Créez un dépôt et faites votre premier commitInitialisez un dépôt, indexez un fichier, faites un commit et vérifiez l'état.
  1. git init
  2. git config user.name "You"
  3. git config user.email "you@example.com"
  4. echo "# My Project" > README.md
  5. git add README.md
  6. git commit -m "Initial commit"
  7. git status
  8. git log --oneline
Créez une branche et fusionnez-laCréez une branche, faites une modification, un commit, puis fusionnez la branche dans main.
  1. git init
  2. echo "hello" > app.txt
  3. git add app.txt
  4. git commit -m "Add app.txt"
  5. git checkout -b feature
  6. echo "new feature" >> app.txt
  7. git commit -am "Work on feature"
  8. git checkout -
  9. git merge feature
  10. git log --oneline --graph
Annuler le dernier commitFaites un commit que vous regrettez, puis annulez-le tout en conservant vos modifications.
  1. git init
  2. echo "v1" > notes.txt
  3. git add notes.txt
  4. git commit -m "Add notes.txt"
  5. echo "v2" >> notes.txt
  6. git commit -am "Oops, wrong message"
  7. git reset --soft HEAD~1
  8. git status
  9. git commit -m "Update notes.txt"
  10. git log --oneline

Un Git playground en ligne avec un graphe de commits en direct

Un Git playground gratuit qui exécute le vrai git dans un terminal Linux isolé, pas une imitation en JavaScript. Tape tes commandes à gauche - git init, git add, git commit, git branch, git merge, git rebase, git reset -, appuie sur Exécuter, et le panneau du dépôt à droite redessine le graphe de commits, les branches, HEAD et l'arbre de travail après chaque ligne de ton script. C'est la façon la plus rapide de pratiquer Git en ligne et de voir vraiment ce que chaque commande a fait.

Chaque exécution rejoue tout ton script depuis un dossier vide et prend un instantané du dépôt après chaque instruction : tu peux donc cliquer sur n'importe quelle étape et voir le graphe à cet instant précis. Un commit qu'un git reset a laissé derrière reste sur l'image, estompé, pour qu'une annulation montre ce qu'elle a annulé. Rien à installer, pas de compte, et aucun de tes dépôts n'est jamais touché.

Ce qui rend ce Git playground différent

  • Du vrai Git, une vraie sortie : le sandbox exécute le binaire git authentique sous Linux, donc les messages d'erreur, git log --graph, git status et les flags se comportent comme sur ta machine - contrairement à un simulateur Git qui ne connaît que les commandes modélisées par ses auteurs. La seule différence volontaire : l'identité de l'auteur et les dates des commits sont figées, donc les hashes restent identiques d'une exécution à l'autre.
  • Un graphe de commits qui se met à jour après chaque ligne : les branches en couloirs, les merges en courbes, HEAD et chaque ref en étiquette sur son commit, plus les fichiers indexés, modifiés, non suivis et en conflit lus depuis git status. Clique sur une étape pour remonter l'historique de ta session.
  • Pratique les commandes les plus recherchées : annuler un commit, faire un squash, rebaser sur main, cherry-pick, stash, résoudre un conflit de merge, forcer un push sans risque. Charge un workflow tout prêt ci-dessous, ou ouvre n'importe quelle page de la référence des commandes Git et appuie sur "Essayez-le en direct".
  • Des dépôts distants sans réseau : crée un dépôt bare local, ajoute-le comme origin et pratique git push, git fetch, git pull et git clone dessus. Le graphe montre origin/main avancer à côté de main.
  • Des exécutions déterministes : les dates et l'identité sont figées, donc le même script produit toujours les mêmes hashes de commit. Partage un script avec un camarade et vous verrez tous les deux le même graphe.

Quoi essayer dans le Git playground

  • Brancher et fusionner : git checkout -b feature, commite dessus, reviens sur main, commite là aussi, puis git merge feature et regarde le commit de merge réunir les deux couloirs.
  • Annuler sans risque : fais un commit que tu regrettes, lance git reset --soft HEAD~1 et vois le commit s'estomper du graphe pendant que tes modifications réapparaissent en fichiers indexés. Essaie ensuite git revert et compare.
  • Rebase contre merge : construis deux fois le même historique à deux branches, termine l'un par git merge et l'autre par git rebase main, et compare la forme des deux graphes côte à côte.
  • Un conflit de merge exprès : modifie la même ligne sur deux branches, fusionne, et regarde le fichier atterrir dans la ligne Conflits. Corrige-le, git add, git commit, et vois le conflit disparaître.

FAQ du Git playground

Ce Git playground est-il gratuit ?
Oui. Le Git playground est gratuit, sans inscription ni installation. Ouvre la page, tape une commande, appuie sur Exécuter.
Est-ce du vrai Git ou une simulation ?
Du vrai Git. Chaque exécution lance ton script avec le binaire git authentique dans un conteneur Linux isolé, donc les commandes, les flags, la sortie et les messages d'erreur correspondent à ce que tu vois en local. Deux choses sont ajoutées volontairement : une identité d'auteur par défaut (que ton propre git config user.name remplace, comme il le ferait en local) et des dates de commit figées, pour que les hashes de commit soient identiques à chaque exécution. Rien ne peut te demander quoi que ce soit en cours d'exécution : une commande interactive comme git rebase -i a donc besoin d'un éditeur scripté - les exemples montrent comment faire.
Comment fonctionne le graphe de commits ?
Après chaque instruction de ton script, le sandbox enregistre les commits du dépôt, ses refs, HEAD, la liste des stashes et git status. La page dessine le graphe à partir de ces instantanés : un couloir par branche, les merges en courbes et chaque ref en étiquette. Clique sur le numéro d'une étape pour voir le dépôt tel qu'il était juste après cette ligne. Dans une session très longue, les prompts précédents ne sont capturés qu'à leur fin, et la bande d'étapes n'affiche que les états réellement enregistrés.
Puis-je pratiquer le branching, le merge et le rebase ici ?
Oui - c'est à cela que sert le graphe. Crée des branches, commite dessus, fusionne, rebase, fais du cherry-pick, du reset et du revert, et vois chaque opération changer l'image. C'est une alternative pratique à un jeu de branches, avec du vrai Git dessous.
Puis-je utiliser git push, pull, fetch et clone ?
Contre un dépôt distant local, oui. Le sandbox n'a pas d'accès réseau, donc git clone https://… ne peut pas atteindre internet. Crée un dépôt bare dans un sous-dossier (git init --bare remote.git), ajoute-le comme origin, puis push, fetch, pull et clone depuis celui-ci - les branches de suivi distant apparaissent dans le graphe comme elles le feraient pour GitHub.
Mon travail est-il conservé entre les exécutions ?
Non. Chaque exécution repart d'un dossier vide et rejoue tout le script, ce qui est précisément ce qui rend la chronologie possible. Garde tes commandes dans l'invite (Maj+Entrée ajoute une ligne) et utilise Réinitialiser pour revenir au script de départ.
En quoi est-ce différent du terminal Linux en ligne ?
C'est le même terminal en sandbox - Git y tourne aussi - avec un panneau de dépôt en plus. La page du terminal Linux sert aux commandes et scripts shell ; cette page compose ta session pour que le graphe de commits et l'état de l'arbre de travail soient capturés après chaque ligne.
Existe-t-il un cours qui enseigne Git depuis zéro ?
Oui. Le cours Git gratuit de Coddy va de git init aux branches, merges, rebases et dépôts distants avec des exercices corrigés, et chaque page de commande de la référence Git possède un bouton "Essayez-le en direct" qui ouvre ce playground avec un exemple exécutable.