2012-06-18 18 views
11

voglio solo aggiornare i miei file locali con git. ma ogni volta che provo a tirare ottengo e errore dicendo che ho bisogno di impegnare determinati file prima. qual è il modo di aggiornare il file locale senza usare commit ??git pull (solo aggiornamento file locale)

Ecco il messaggio di errore

$ git pull Inserisci la passphrase per la chiave '/c/Users/me/.ssh/id_rsa': Aggiornamento 4dsdSe6e..70fb5b6 errore: Le modifiche locali al seguente i file verrebbero sovrascritti dall'unione: grails-app/conf/DataSource.groovy Per favore, commetti le tue modifiche o mettile da parte prima di unirle. Aborting

risposta

19

Se non si desidera per eseguire il commit, è necessario memorizzare le modifiche. Questo suona come quello che stai cercando:

git stash save "Changes I don't want to commit yet" 
git pull 
git stash pop 

La prima linea immagazzina le modifiche su una pila e ritorna il codice per l'ultimo commesso. Da lì, puoi tirare normalmente. Una volta che hai tirato, inserisci le modifiche nella tua scorta sul tuo codice. Facciamo un tiro senza commettere il tuo codice. È possibile ottenere ulteriori informazioni sulla memorizzazione di here.

Spero che abbia aiutato!

+0

Grazie, questo è esattamente ciò di cui avevo bisogno. – LynAs

+2

Nessun problema. Tuttavia, tieni presente che l'accettazione delle modifiche non equivale a inviarle al repository remoto. È buona prassi impegnarsi presto e spesso in git. Se provieni da uno sfondo CVS, questo potrebbe sembrare strano, ma fa parte di ciò che rende git così potente e versatile. – bilalq

+0

Grazie che è stato utile – LynAs

3

Si sta tentando di estrarre alcuni file che elimineranno le modifiche. In primo luogo, confermare le modifiche con:

git commit -a -m "I have changed XXXX" 

poi tirare gli altri:

git pull 

Se non ci sono problemi da risolvere, si può spingere le modifiche:

git push