Salve a tutto il forum,
Ogni tanto vi frequento qui per capire meglio un po’ sulla tecnologia
Git, jQuery, HTML5/CSS e Rails (cose del tutto sconosciute per persone
che hanno fatto studi con indirizzo NON informatico come me)
Questo post vuole soltanto mettere in luce la difficoltà’ di trovare le
informazioni relativamente a certi semplici problemi (come quelli che io
ho al momento e che pero’ se non riesci a soluzionarli difficile e’
poter continuare)
**** AVEVO UN PROBLEMA ****
A volte la sovrabbondanza di informazioni può’ causare confusione,
scoramento, stenti e alla fine molta sfiducia in se stessi (tranquilli
non spero che siate voi a farmela ritornare)
Allora il mio problema era molto semplice io dopo la mia creazione della
APP in Rails facevo il mio primo commit
$ git init
perfetto! comincio a lavorare e lancio diversi commit dopo ovviamente
modifiche del codice
$ git add .
…
$ git commit -m “primo commit”
$ git commit -m “secondo commit”
$ git commit -m “terzo commit”
$ git commit -m “quarto commit”
usando sempre lo stesso branch ovvero il branch *master (so
dell’esistenza del comando “git branch nuovo_branch” ma quando sei
all’inizio della scrittura di una app questo tipo di comando lo
considero eccessivo) e mi accorgo pero’ arrivato a un certo punto che ho
commesso una “corbelleria” con il “quarto commit” quindi tutte le
modifiche fatte con il “quarto commit” le vorrei completamente eliminare
e ritornare alla versione del repository “terzo commit”
Facendo una ricerca con il solito Google mi sono imbattuto sui seguenti
link (le parole chiavi inserite erano del tipo: “delete a commit git”,
“return your previous commit” che ho ottenuto smussando le vecchie
precedenti parole chiave in quanto all’inizio ero proprio fuori strada):
http://www.importahmedeid.com/2012/02/01/how-to-revert-to-a-previous-commit-made-in-xcode-using-git/
ma devo dirvi che stavo cercando una soluzione del tipo “quando
vuoi eliminare un commit e ritornare al precedente devi usare il
seguente comando” (il terzo link fra quelli suindicati era il più’
chiaro sulla soluzione anche se faceva riferimento a XCode una
piattaforma che non uso e non capivo perché’ Google me lo stava
mostrando). Sara’ anche dovuto al fatto che la maggior parte delle
informazioni su questo argomento e’ in inglese? Che dire siamo nati nel
posto sbagliato?
**** ALLA FINE HO TROVATO LA SOLUZIONE ****
dopo aver letto svariate cose ho utilizzato la seguente soluzione
- fare un bel $ git log
commit ce5bc9dc8c184f6f85159959564a1f112e32578
Author: Cluter V. [email protected]
Date: Sat Jul 7 13:06:58 2012 -0700
quarto commit
commit xe5bc9dc8c184f6f85159959564a1f112e32578
Author: Cluter V. [email protected]
Date: Sat Jul 7 13:05:58 2012 -0700
terzo commit
commit 45b0e7762132ebaabfa6226eb1a72556ef91cbe0
Author: Cluter V. [email protected]
Date: Sat Jul 7 13:04:58 2012 -0700
secondo commit
commit 12b0e7762132ebaabfa6226eb1a72556ef91cbe0
Author: Cluter V. [email protected]
Date: Sat Jul 7 13:03:58 2012 -0700
primo commit
**** GIT RESET ****
quindi in questo caso il comando da usare per eliminare il ‘quarto
commit’ e’ il seguente
“git reset –hard ce5bc9dc8c184f6f85159959564a1f112e32578″
quindi successivamente se lanceremo di nuovo il comando $ git log ,
avremo:
commit xe5bc9dc8c184f6f85159959564a1f112e32578
Author: Cluter V. [email protected]
Date: Sat Jul 7 13:05:58 2012 -0700
terzo commit
commit 45b0e7762132ebaabfa6226eb1a72556ef91cbe0
Author: Cluter V. [email protected]
Date: Sat Jul 7 13:04:58 2012 -0700
secondo commit
commit 12b0e7762132ebaabfa6226eb1a72556ef91cbe0
Author: Cluter V. [email protected]
Date: Sat Jul 7 13:03:58 2012 -0700
primo commit
trovare una soluzione del genere non e’ stato facile ho impiegato più’
di 1 ora che per il tipo di problema mi sembra eccessivo ad ogni modo
grazie per l’attenzione e scusate lo sfogo
a presto,
C