Git : parcours contrôle de version distribué pour DevOps (2026)

Comment utiliser ce hub. Parcours ordonné : Basics → Everyday → Advanced → Azure Git. 20 leçons live, gratuites. Remplace le thin EN /git-hub/. Versions cibles : Git ≥ 2.43 · remote GitHub ou Azure Repos.
Prérequis
- Terminal Linux / macOS / WSL (Git Bash OK sous Windows)
- Notions fichier / dossier / éditeur de texte
- Compte GitHub ou accès Azure DevOps Repos (lab)
- (Recommandé) bases SDLC / DevOps
Coût estimé : 0 € — Git, GitHub Free et Azure DevOps Free tier suffisent. Ce hub /git/ est la page pilier menu : carte du parcours, quick start, bonnes pratiques 2026, maillage Azure Git et liens vers les 20 leçons live.
Ce que vous allez apprendre
Parcours Git DevOps (20 leçons live)
├── 1. Basics
│ VCS distribué → install → compte GitHub → config → workflow
├── 2. Everyday
│ diff → .gitignore → tags → sync (pull / fetch / merge / push)
├── 3. Advanced
│ branches → remotes → rebase/merge → squash
│ → reset / revert / cherry-pick → stash → worktree → assignment
└── 4. Azure Git (maillage)
Azure Repos → Jenkins + Azure Repos → Pipeline YAML (GitHub)
Qu’est-ce que Git / pourquoi en DevOps
Git est un système de contrôle de version distribué (DVCS) : chaque clone contient l’historique complet. Vous committez et branchez hors ligne, puis synchronisez avec un remote (origin).
En DevOps, Git est le contrat d’équipe : code, IaC (Terraform, Bicep, Ansible), Dockerfiles et manifests Kubernetes partagent le même historique, les mêmes PR et le même trigger CI/CD.
| Usage DevOps | Rôle de Git |
|---|---|
| Code & IaC | source de vérité, revue PR, tags de release |
| Pipelines CI/CD | trigger sur push / PR vers main |
| Conteneurs & K8s | Dockerfiles, Helm, Kustomize versionnés |
| Collaboration | GitHub ou Azure Repos comme remote managé |
Sans Git solide, Jenkins, Azure Pipelines et Kubernetes deviennent fragiles. Entrée : Git — VCS distribué · systèmes de contrôle de version.
Quick start 10 minutes
Identité locale, premier dépôt, branche feature — aucun secret.
# 1) Identité (valeurs lab)
git config --global user.name "Lab DevOps"
git config --global user.email "lab@example.com"
git config --global init.defaultBranch main
git --version # viser ≥ 2.43
# 2) Premier dépôt
mkdir -p ~/lab-git-hub && cd ~/lab-git-hub
git init
echo "# lab-git-hub" > README.md
git add README.md
git commit -m "docs: bootstrap README"
# 3) Branche feature
git switch -c feature/hello
echo "hello devops" >> README.md
git add README.md
git commit -m "docs: add hello line"
# 4) Remote (exemple — adaptez GitHub ou Azure Repos)
# git remote add origin https://github.com/<ORG>/<REPO>.git
# git push -u origin main
git remote -v && git status && git log --oneline --graph --all
Détails : installation, configuration, workflow, compte GitHub.
Grille parcours
Titres FR · URL = slug live. Entrée menu DevOps : Git — VCS distribué.
Basics
- Git — contrôle de version distribué
- Systèmes de contrôle de version
- Installer Git
- Créer un compte GitHub
- Configuration Git
- Commandes du workflow Git
Everyday
git diff— lire les changements- Fichier
.gitignore - Tags de version
- Sync GitHub : pull / fetch / merge / push
Advanced
- Branches locales
- Branches distantes
- Rebase vs merge
- Squash de commits
git resetgit revertgit cherry-pickgit stashgit worktree- Assignment — workflow équipe
20 leçons live. Commencez : VCS distribué → Install → Workflow.
Azure Repos & Git dans Azure DevOps
Sur Azure DevOps Services, Repos héberge Git avec politiques de branche, PR et work items.
Enchaînement : modèle Git (série) → Azure Repo → Jenkins ou pipeline Azure. Hub voisin : Azure DevOps.
Note. Brouillon git-distributed-version (post 1038) — ne pas lier. Utilisez /git-distributed-version-control-system/ et /azure-repo/.
Git dans une pipeline DevOps
Developer → git push (feature) → PR → merge main
│
▼
CI (Jenkins / Azure Pipelines / Actions)
├── build image Docker
├── tests + scan
└── deploy → Kubernetes / App Service / ACA
Git fournit le trigger et le SHA de vérité. Hubs : Docker · Kubernetes · Jenkins · Terraform · Ansible · Azure DevOps.
# azure-pipelines.yml — trigger Git, zéro secret
trigger: [main]
pool: { vmImage: ubuntu-latest }
steps:
- checkout: self
- script: echo "Commit $(Build.SourceVersion)" && git --version
displayName: Vérifier le checkout Git
Bonnes pratiques 2026
- Branche
mainprotégée (PR + checks) ;init.defaultBranch=main. - Conventional commits light —
feat:,fix:,docs:,chore:. --force-with-leaseplutôt que--forceaprès rebase.- Commits signés (GPG/SSH) si la politique org l’exige.
- Jamais de secrets dans Git —
.gitignore, Variable groups / Key Vault / OIDC. - Rebase pour nettoyer une feature locale ; merge/squash pour intégrer sur
main— rebase vs merge · squash. revertsur historique partagé,reseten local — reset · revert.- Tags annotés pour les releases — tags.
FAQ
Git, GitHub et Azure Repos : quelle différence ?
Git = outil / modèle d’objets. GitHub et Azure Repos = hébergeurs de remotes + PR et policies. Vous apprenez Git une fois ; le remote change selon le lab.
Faut-il toujours rebase avant une PR ?
Sur une feature non partagée, souvent oui (historique linéaire). Branche déjà partagée : coordonnez puis --force-with-lease. Ne rebasez jamais main publique sans process.
reset ou revert pour annuler un commit sur main ?
Préférez git revert (nouveau commit d’annulation). reset --hard + force push sur main casse les clones. Voir reset · revert.
Par où commencer si je vise Azure DevOps ?
Hub Git → VCS distribué → workflow → Azure Repo → pipeline GitHub ou Jenkins + Azure Repos → hub Azure DevOps.
Quelle version de Git viser en 2026 ?
Git ≥ 2.43 (idéalement dernière stable de votre distro). switch / restore et la sécurité remote ont mûri ; GitHub / ADO gèrent le serveur.
Points clés
- Git = DVCS : historique local + sync remote
- 20 leçons live : Basics → Everyday → Advanced + assignment
- Entrée menu : /git-distributed-version-control-system/
- Azure Git : /azure-repo/ · Jenkins · pipeline GitHub
- 2026 :
main, conventional commits light,--force-with-lease, pas de secrets /git/= hub LIVE ; tutos déjà publiés — pas de republish individuel
CTA : Git — VCS distribué puis Installer Git. E-books : pricing.