2011-08-26 21 views
63

Ho appena iniziato a utilizzare git in Vista, con il mio repository sotto /path/to/project/git repo.Come rinominare la cartella git root?

Ora ho trovato che lo spazio nel nome della cartella è un'irritazione minore quando si lavora in git bash.

Posso semplicemente rinominare la cartella in /path/to/project/gitrepo? Tutto è all'interno del git config relativo, o c'è qualcosa che si riferisce esplicitamente alla cartella genitore?

Ho provato a prendere una copia di Windows della cartella principale, ed eseguire git bash su quello, e 'git log' mostra le modifiche che avevo fatto in precedenza. Quindi presumo di rinominare la cartella principale è OK, ma mi piacerebbe essere sicuro prima di andare oltre.

risposta

42

di modificare leggermente Greg s' answer, sì, tutto con un repo git è relativo alla directory .git genitore, ma:

(e questo non probabilmente vi interesserà direttamente, io cito solo queste ragioni qui per completezza):.

  • il percorso del pronti contro termine in sé potrebbe essere referenziato da altri servizi in esecuzione sul computer (Apache, SSH, un altro repo dichiarando il tuo repo come un telecomando, utilizzando il percorso completo del file, un Livello gitolite che dichiara i propri repository in un determinato percorso, ...)
  • alcune operazioni utilizzano il percorso completo del repository (ad esempio il GIT_INDEX_FILE utilizzando un comando filter-branch, ad esempio, vedere this thread), quindi, ovviamente, non rinominare la directory principale mentre si esegue un'operazione complessa sul repository.

più, un "finestre copia" (al posto di un git clone), copierà tutto compreso ganci, che possono includere percorso assoluto nella loro script se li avete modificato e reso questo tipo di modifica.

+2

quindi se qualcuno ha dei passaggi pratici ed espliciti per essere sicuri di farlo, sarebbe molto utile. – ahnbizcad

+0

@gwho quale passo, oltre a rinominare la cartella repo? – VonC

67

Sì, è possibile rinominare la cartella contenente un repository Git. Tutti i percorsi all'interno del repository Git sono relativi.

+0

Brillante, grazie. –

5

A mio parere, il migliore è quello di utilizzare il flusso di lavoro git, soprattutto quando si utilizza un server Git (repository padrone a distanza), il che significa:

  • ottenere il vecchio directory in sincronia con il git Server (git pull, git push e finalmente git status per vedere se tutto va bene)
  • git clone <former directory> <new directory>

(Dal momento che sono anche nuovi a GIT, questo potrebbe non essere la risposta completa e corretta. Ho avuto la stessa domanda di Mick e per motivi di apprendimento ho provato a farlo in modo git :) Grazie per l'indizio, vonC! Per favore correggimi, se necessario :)

+1

Se si 'git clone ', non è necessario prima creare ''. Il 'git clone' lo creerà per te. – VonC

+0

@VonC: thx, ho cambiato questo – PythoNic

+1

Non penso che questo faccia ciò che vuoi. Imposta l'origine di '' in ''. Quindi un 'git remote -v' in' 'mostrerebbe' origine C:/old/directory'. – kvu787

Problemi correlati