Git - Rivedi le modifiche
Dopo aver visualizzato i dettagli del commit, Jerry si rende conto che la lunghezza della stringa non può essere negativa, ecco perché decide di cambiare il tipo di ritorno della funzione my_strlen.
Jerry utilizza l'estensione git log comando per visualizzare i dettagli del registro.
[jerry@CentOS project]$ git log
Il comando precedente produrrà il seguente risultato.
commit cbe1249b140dad24b2c35b15cc7e26a6f02d2277
Author: Jerry Mouse <[email protected]>
Date: Wed Sep 11 08:05:26 2013 +0530
Implemented my_strlen function
Jerry utilizza l'estensione git showcomando per visualizzare i dettagli del commit. Il comando git show accettaSHA-1 commit ID come parametro.
[jerry@CentOS project]$ git show cbe1249b140dad24b2c35b15cc7e26a6f02d2277
Il comando precedente produrrà il seguente risultato:
commit cbe1249b140dad24b2c35b15cc7e26a6f02d2277
Author: Jerry Mouse <[email protected]>
Date: Wed Sep 11 08:05:26 2013 +0530
Implemented my_strlen function
diff --git a/string.c b/string.c
new file mode 100644
index 0000000..187afb9
--- /dev/null
+++ b/string.c
@@ -0,0 +1,24 @@
+#include <stdio.h>
+
+int my_strlen(char *s)
+{
+
char *p = s;
+
+
while (*p)
+ ++p;
+ return (p -s );
+
}
+
Cambia il tipo di ritorno della funzione da int a size_t. Dopo aver testato il codice, esamina le sue modifiche eseguendo ilgit diff comando.
[jerry@CentOS project]$ git diff
Il comando precedente produrrà il seguente risultato:
diff --git a/string.c b/string.c
index 187afb9..7da2992 100644
--- a/string.c
+++ b/string.c
@@ -1,6 +1,6 @@
#include <stdio.h>
-int my_strlen(char *s)
+size_t my_strlen(char *s)
{
char *p = s;
@@ -18,7 +18,7 @@ int main(void)
};
for (i = 0; i < 2; ++i)
{
- printf("string lenght of %s = %d\n", s[i], my_strlen(s[i]));
+ printf("string lenght of %s = %lu\n", s[i], my_strlen(s[i]));
return 0;
}
Git diff mostra '+' firmare prima delle righe, che sono state aggiunte di recente e '−' per le righe eliminate.