Introduction a Git pour les developpeurs web

Credit : Illustration backtotheweb.fr

Introduction a Git pour les developpeurs web

Dylan D. — Agent Support Technique Serveur Web 685 mots 4 min

Introduction a Git pour les developpeurs web

Git est le systeme de controle de version le plus utilise au monde. Que vous travailliez seul ou en equipe, Git est un outil incontournable pour tout developpeur web. Ce guide couvre les commandes essentielles pour demarrer.

Installation

Sur Debian/Ubuntu :

apt install git -y

Configuration initiale :

git config --global user.name "Votre Nom"
git config --global user.email "votre@email.fr"
git config --global init.defaultBranch main
git config --global core.editor nano

Introduction a Git pour les developpeurs web

Creer un depot

Nouveau projet

mkdir mon-projet
cd mon-projet
git init

Cloner un projet existant

git clone https://github.com/utilisateur/projet.git
cd projet

Le cycle de base : add, commit, push

Git fonctionne avec trois zones : le repertoire de travail, la zone de staging et l'historique (commits).

# Voir l'etat des fichiers
git status

# Ajouter des fichiers au staging
git add index.html
git add src/
git add .    # Tout ajouter (attention aux fichiers sensibles)

# Creer un commit
git commit -m "Ajouter la page d'accueil"

# Voir l'historique
git log --oneline
git log --oneline --graph --all

Le fichier .gitignore

Creez un .gitignore a la racine pour exclure les fichiers qui ne doivent pas etre versionnes :

node_modules/
.env
*.log
dist/
.DS_Store
vendor/

Les branches

Les branches permettent de travailler sur des fonctionnalites sans affecter le code principal.

# Creer et basculer sur une nouvelle branche
git checkout -b feature/navbar

# Equivalent moderne
git switch -c feature/navbar

# Lister les branches
git branch
git branch -a  # Inclut les branches distantes

# Changer de branche
git switch main

# Supprimer une branche
git branch -d feature/navbar

Fusionner des branches (merge)

Une fois votre fonctionnalite terminee, fusionnez-la dans main :

git switch main
git merge feature/navbar

Gerer un conflit de merge

Quand deux branches modifient le meme fichier, Git signale un conflit :

<<<<<<< HEAD
<nav class="navbar navbar-dark">
=======
<nav class="navbar navbar-light">
>>>>>>> feature/navbar

Editez le fichier pour garder la version souhaitee, puis :

git add index.html
git commit -m "Resoudre le conflit de la navbar"

Introduction a Git pour les developpeurs web

Travailler avec un remote (GitHub)

Connecter un depot local a GitHub

git remote add origin https://github.com/utilisateur/mon-projet.git
git push -u origin main

Workflow quotidien

# Recuperer les modifications distantes
git fetch origin
git pull origin main

# Pousser vos commits
git push origin main

# Pousser une branche
git push origin feature/navbar

Commandes utiles au quotidien

# Voir les modifications non commitees
git diff
git diff --staged

# Annuler les modifications d'un fichier
git restore index.html

# Retirer un fichier du staging
git restore --staged index.html

# Modifier le dernier commit (avant push)
git commit --amend -m "Nouveau message"

# Stash : mettre de cote des modifications temporairement
git stash
git stash pop
git stash list

# Voir qui a modifie chaque ligne
git blame index.html

# Rechercher dans l'historique
git log --grep="navbar"
git log -p -- src/style.css

Workflow recommande

Pour un projet web, adoptez un workflow simple :

  1. main contient toujours du code fonctionnel
  2. Creez une branche par fonctionnalite (feature/...) ou par correctif (fix/...)
  3. Travaillez et commitez sur votre branche
  4. Ouvrez une Pull Request sur GitHub pour la revue de code
  5. Fusionnez dans main apres validation
  6. Deployez depuis main

Deployer avec Git sur votre serveur IONOS

Vous pouvez utiliser Git pour deployer votre site :

# Sur le serveur
cd /var/www/monsite.fr
git init --bare deploy.git

Creez un hook post-receive dans deploy.git/hooks/ :

#!/bin/bash
git --work-tree=/var/www/monsite.fr --git-dir=/var/www/monsite.fr/deploy.git checkout -f

Depuis votre machine locale :

git remote add production ssh://user@serveur/var/www/monsite.fr/deploy.git
git push production main

Git est un investissement en apprentissage qui se rentabilise des le premier jour. Commencez par les bases et explorez les fonctionnalites avancees au fur et a mesure de vos besoins.


Vous avez une astuce à ajouter ? Contactez-nous, on l'ajoutera avec plaisir.

# Articles similaires

// newsletter

Cet article vous a aide ? Recevez les prochains par email.