Questions sur Git
1. **Qu'est-ce que Git ?**
- A) Un système de gestion de versions ✅
- B) Un langage de programmation
- C) Un éditeur de texte
2. **Quel fichier Git utilise pour suivre les modifications ?**
- A) .gitignore
- B) README.md
- C) .git ✅
3. **Quelle commande initialise un nouveau dépôt Git ?**
- A) git start
- B) git init ✅
- C) git create
4. **Comment ajouter tous les fichiers modifiés au stage ?**
- A) git add . ✅
- B) git stage *
- C) git include *
5. **Quelle commande enregistre les modifications dans l'historique ?**
- A) git commit ✅
- B) git save
- C) git push
6. **Quelle option permet d’écrire un message de commit ?**
- A) -m ✅
- B) -msg
- C) -message
7. **Comment voir l’historique des commits ?**
- A) git log ✅
- B) git history
- C) git commits
8. **Quelle commande permet de créer une nouvelle branche ?**
- A) git branch new-branch ✅
- B) git create branch new-branch
- C) git make branch new-branch
9. **Comment changer de branche ?**
- A) git switch
- B) git checkout ✅
- C) git branch
10. **Quelle commande fusionne une branche avec la branche courante ?**
- A) git merge ✅
- B) git combine
- C) git integrate
### Questions sur GitHub
11. **Qu'est-ce que GitHub ?**
- A) Un système d'exploitation
- B) Une plateforme de gestion de dépôts Git ✅
- C) Un éditeur de code
12. **Quel type de projet peut-on héberger sur GitHub ?**
- A) Seulement des projets open source
- B) Tout type de projet ✅
- C) Uniquement des projets privés
13. **Comment créer un nouveau dépôt sur GitHub ?**
- A) git create repository
- B) Utiliser l'interface web ✅
- C) git new repo
14. **Que signifie "fork" un projet sur GitHub ?**
- A) Créer une copie d’un dépôt ✅
- B) Supprimer un dépôt
- C) Fusionner deux dépôts
15. **Quelle est la commande pour cloner un dépôt GitHub ?**
- A) git clone [url] ✅
- B) git copy [url]
- C) git download [url]
16. **Comment envoyer des modifications locales sur GitHub ?**
- A) git push ✅
- B) git upload
- C) git send
17. **Qu'est-ce qu'une "pull request" ?**
- A) Une demande de téléchargement
- B) Une proposition de fusion de code ✅
- C) Une demande de suppression de dépôt
18. **Quel est le rôle du fichier README.md ?**
- A) Décrire le projet ✅
- B) Contenir les tests
- C) Gérer les dépendances
19. **Comment ajouter un collaborateur à un dépôt ?**
- A) Via les paramètres du dépôt ✅
- B) Avec la commande git add
- C) En envoyant un email
20. **Que fait la commande `git fetch` ?**
- A) Récupère les modifications sans les fusionner ✅
- B) Supprime les branches
- C) Fait un push
### Questions avancées
21. **Quelle est la différence entre `git pull` et `git fetch` ?**
- A) `git pull` fusionne les modifications, `git fetch` non ✅
- B) Ils sont identiques
- C) `git fetch` supprime les fichiers
22. **Qu'est-ce qu'un "remote" dans Git ?**
- A) Un fichier local
- B) Un dépôt distant ✅
- C) Une branche
23. **Comment renommer une branche ?**
- A) git rename [old] [new]
- B) git branch -m [new] ✅
- C) git branch rename [new]
24. **Quel est l'effet de la commande `git reset` ?**
- A) Supprime les commits
- B) Annule les modifications ✅
- C) Réinitialise l'état du dépôt
25. **Comment voir les différences entre les commits ?**
- A) git diff ✅
- B) git changes
- C) git status
26. **Qu’est-ce qu’un "tag" dans Git ?**
- A) Un commit marquant une version ✅
- B) Un fichier
- C) Une branche
27. **Quelle commande supprime un fichier du suivi Git ?**
- A) git remove
- B) git rm ✅
- C) git delete
28. **Comment ignorer des fichiers dans un dépôt ?**
- A) Avec .gitignore ✅
- B) Avec git ignore
- C) Avec ignore.txt
29. **Quelle est l'importance de `.gitignore` ?**
- A) Éviter de suivre certains fichiers ✅
- B) Stocker les secrets
- C) Gérer les branches
30. **Comment créer une branche à partir d'un commit spécifique ?**
- A) git branch [branch-name] [commit-id] ✅
- B) git create branch [branch-name]
- C) git new branch [branch-name] [commit-id]
### Questions sur les bonnes pratiques
31. **Pourquoi est-il important de faire des commits fréquents ?**
- A) Pour garder un historique clair ✅
- B) Pour ralentir le projet
- C) Pour éviter les conflits
32. **Quelle est la bonne pratique pour les messages de commit ?**
- A) Utiliser des phrases longues
- B) Être clair et concis ✅
- C) Écrire en majuscules
33. **Comment gérer les conflits de fusion ?**
- A) Ignorer les conflits
- B) Résoudre manuellement les conflits ✅
- C) Faire un nouveau commit
34. **Quelle commande permet de supprimer une branche ?**
- A) git branch -d [branch-name] ✅
- B) git remove branch [branch-name]
- C) git delete branch [branch-name]
35. **Quel est l'avantage d'utiliser des branches ?**
- A) Travailler sur plusieurs fonctionnalités sans interférer ✅
- B) Augmenter le poids du dépôt
- C) Rendre le code plus complexe
### Questions sur l'intégration continue
36. **Qu'est-ce que l'intégration continue ?**
- A) Une méthode de gestion de projet
- B) Un processus de test automatisé ✅
- C) Un type de commit
37. **Quels outils peuvent être utilisés pour l'intégration continue avec GitHub ?**
- A) Jenkins
- B) Travis CI
- C) Tous les deux ✅
38. **Comment configurer GitHub Actions ?**
- A) En créant un fichier YAML dans le répertoire .github/workflows ✅
- B) En utilisant l'interface de ligne de commande
- C) En ajoutant un fichier JSON
39. **Quel est le but des tests unitaires ?**
- A) Tester l'intégration des fonctionnalités
- B) Vérifier le fonctionnement des petites unités de code ✅
- C) Évaluer la performance du système
40. **Comment automatiser le déploiement avec GitHub ?**
- A) En écrivant des scripts dans le README
- B) En utilisant GitHub Actions ✅
- C) En exécutant des commandes manuelles
### Questions diverses
41. **Qu'est-ce qu'un "commit SHA" ?**
- A) Un identifiant unique d'un commit ✅
- B) Un type de branche
- C) Un fichier de configuration
42. **Quelle est la commande pour voir les fichiers suivis ?**
- A) git tracked
- B) git ls-files ✅
- C) git status
43. **Comment revenir à un commit précédent ?**
- A) git revert [commit-id] ✅
- B) git back [commit-id]
- C) git previous [commit-id]
44. **Que fait la commande `git stash` ?**
- A) Enregistre temporairement les modifications ✅
- B) Supprime les fichiers non suivis
- C) Clone un dépôt
45. **Quelle est la différence entre `git init` et `git clone` ?**
- A) `git init` crée un nouveau dépôt, `git clone` copie un dépôt existant ✅
- B) Ils sont identiques
- C) `git clone` supprime un dépôt
46. **Comment afficher la configuration de Git ?**
- A) git config --list ✅
- B) git show config
- C) git info
47. **Qu'est-ce qu'un "repository" ?**
- A) Un dossier contenant des fichiers
- B) Un dépôt Git ✅
- C) Un fichier de configuration
48. **Comment supprimer un dépôt local ?**
- A) En supprimant le dossier .git ✅
- B) Avec git remove
- C) En utilisant l'interface GitHub
49. **Quel est l'objectif principal d'une branche "main" ?**
- A) Contenir le code de production stable ✅
- B) Être une branche de développement
- C) Tester des fonctionnalités
50. **Pourquoi utiliser des "issues" sur GitHub ?**
- A) Pour suivre des bugs et des fonctionnalités ✅
- B) Pour gérer les commits
- C) Pour créer des branches
---
Ces questions et leurs réponses peuvent servir de base pour tester vos connaissances en Git et GitHub !