Git - Effectuer des modifications

Jerry clone le référentiel et décide d'implémenter des opérations de base sur les chaînes. Il crée donc un fichier string.c. Après avoir ajouté le contenu, string.c ressemblera à ceci -

#include <stdio.h>

int my_strlen(char *s)
{
   char *p = s;

   while (*p)
      ++p;

   return (p - s);
}

int main(void)
{
   int i;
   char *s[] = 
   {
      "Git tutorials",
      "Tutorials Point"
   };

   for (i = 0; i < 2; ++i)
      
   printf("string lenght of %s = %d\n", s[i], my_strlen(s[i]));

   return 0;
}

Il a compilé et testé son code et tout fonctionne bien. Maintenant, il peut ajouter en toute sécurité ces modifications au référentiel.

L'opération d'ajout de Git ajoute un fichier à la zone de préparation.

[jerry@CentOS project]$ git status -s
?? string
?? string.c

[jerry@CentOS project]$ git add string.c

Git affiche un point d'interrogation avant les noms de fichiers. Évidemment, ces fichiers ne font pas partie de Git, et c'est pourquoi Git ne sait pas quoi faire avec ces fichiers. C'est pourquoi, Git affiche un point d'interrogation avant les noms de fichiers.

Jerry a ajouté le fichier dans la zone de stash, la commande git status affichera les fichiers présents dans la zone de staging.

[jerry@CentOS project]$ git status -s
A string.c
?? string

Pour valider les modifications, il a utilisé la commande git commit suivie de l'option –m. Si nous omettons l'option –m. Git ouvrira un éditeur de texte dans lequel nous pouvons écrire un message de validation multiligne.

[jerry@CentOS project]$ git commit -m 'Implemented my_strlen function'

La commande ci-dessus produira le résultat suivant -

[master cbe1249] Implemented my_strlen function
1 files changed, 24 insertions(+), 0 deletions(-)
create mode 100644 string.c

Après la validation pour afficher les détails du journal, il exécute la commande git log. Il affichera les informations de tous les commits avec leur ID de commit, l'auteur du commit, la date de commit etSHA-1 hachage de commit.

[jerry@CentOS project]$ git log

La commande ci-dessus produira le résultat suivant -

commit cbe1249b140dad24b2c35b15cc7e26a6f02d2277
Author: Jerry Mouse <[email protected]>
Date: Wed Sep 11 08:05:26 2013 +0530

Implemented my_strlen function


commit 19ae20683fc460db7d127cf201a1429523b0e319
Author: Tom Cat <[email protected]>
Date: Wed Sep 11 07:32:56 2013 +0530

Initial commit