cClaude.rocks ☕ Le blog

[Nouvelles technologies, sciences et coups de gueule…]

Menu

La gestion du code source (« SCM » / « Source Code Management ») est utilisée pour suivre les modifications apportées à un référentiel de code source. Un « SCM » suit un historique des modifications apportées à une base de code et aide à résoudre les conflits lors de la fusion des mises à jour de plusieurs contributeurs. La notion de « SCM » est également synonyme de contrôle de version.

git est actuellement l’outil le plus utilisé pour ce type de tache. Les notions derrières la gestion de code source étant assez compliquée, git n’est pas un outil simple à appréhender.

Je vous propose les commandes de base pour vous permettre de faire le minimum avec cet outil.



Prérequis

Le client git est nécessaire, voir le billet 🌳 Installation de git.



Configuration du client git

Après l’installation du client git, vous devez le configurer à minima avec :

git config --global user.email "email@domain.com"
git config --global user.name "Votre Nom"

Noté que cette configuration est globale au sens de l’utilisateur du système et donc commune à tous les projets de l’utilisateur courant.



Création du projet

Le but de cet article n’étant pas de faire le tour de toutes les fonctionnalités de l’outil, on supposera que le projet existe déjà.

Par ailleurs, tous les serveurs git que je connais propose aujourd’hui d’initialiser les dépôts (généralement au moins avec un fichier README.md) ce qui permet d’ignorer l’initialisation depuis le client.



Récupérer un projet (qui existe et qui n’est pas vide)

Cette opération n’est à faire qu’une seule fois par projet.

git clone "URL_HTTPS_DONNÉE_PAR_LE_SERVEUR_GIT"

Sur le serveur vous trouverez deux types d’URLs :

  • L’une au format https plus simple à utiliser mais moins sécurisé,
  • et l’autre au format ssh (si vous avez déjà une clé ssh configurer votre clée publique dans le serveur et prenez cette solution).

La différence entre ces deux solutions étant la manière de vous authentifier auprès du serveur, dans ce billet nous utiliserons le mode https pour ne pas avoir à parler de clé ssh.

Vous devrez donc utiliser quelque chose comme :

git clone https://git.domain.org/une_organisation/un_projet.git

Cela téléchargera le dépôt associé dans le dossier un_projet et vous positionnera dans la branche principale du projet (généralement nommée main ou master).

Vous pouvez maintenant modifier le projet avec les outils de votre choix.



Prise en compte de vos modifications

Vous allez effectuer une série de modifications sur 1 ou plusieurs fichiers, à priori on considère que ce que vous allez mettre dans le dépôt est fonctionnel, vos modifications doivent donc être consistantes.

Cela se fait en deux opérations :

  • Vous devez dire a git quelles modifications vous souhaitez qu’il prenne en compte, cela se fait à l’aide de *git add …

  • Et enfin lui dire que c’est bon vous avez fini de lui donner la liste de modification et que là il doit prendre une photo de la situation.


Sélectionner les modifications à prendre en compte

(Cette opération peut se faire sans réseau)

Vous pouvez être amené à faire plusieurs fois cette opération de suite.

Pour ajouter un nouveau fichier ou un prendre en compte une modification d’un fichier existant:

git add chemin/nom-fichier

Pour ajouter tous les fichiers ayant changé :

git add .

Prendre la photo des modifications

(Cette opération peut se faire sans réseau)

Pour ajouter vos modifications dans le dépôt local, vous devez utiliser :

git commit -m "Un message utile !"

Vous aurez d’autres modifications à faire qu’il faudra sélectionner (git add …) et mettre sur la même photo (on parle de « commit ») (git commit …).
Et ainsi de suite…



Envoyer vers le serveur

(Cette opération nécessite un accès réseau)

Pour « pousser » vos modifications vers le serveur, afin de rendre votre travail visible aux autres personnes, utilisez :

git push


Récupérer version de quelqu’un d’autres

Pour récupérer les modifications sur le serveur et les ajouter au graphe des modifications connues localement (mais cela ne les rend pas visibles) :

git fetch -v # (cette opération nécessite un accès réseau)

Rendre visibles les modifs sur les fichiers locaux (de votre branche courante) :

git pull


La commande pour savoir où on en est :

git status


La commande permettant de voir ce que vous avez changé :

git diff


La commande permettant de voir l’histoire du dépôt :

git log


 Disclaimer

Ces commandes ne vous permettent pas d’utiliser git correctement, cela vous permet juste de l’utiliser à minima.

Il y a en particulier la notion de branche qui a été totalement ignorée ici et qui est pourtant fondamentale et un intérêt majeur de l’outil.



Liens

ᦿ


ℹ 2006 - 2023 | 🏠 Accueil du domaine | 🏡 Accueil du blog