Per il tuo caso, il modo migliore per farlo è copiare la cartella (copia, scp, cp, robocopy - qualsiasi) sul nuovo computer ed eliminare la vecchia cartella.
Sono completamente in disaccordo con @Pablo Santa Cruz che la clonazione è il paradigma per quello che stai facendo. No non lo è. Stai spostando un repository su un nuovo computer.
Perché non mi piace clone per questo scopo:
- Si crea filiali remote-tracking per ogni ramo nel repository clonato. Ti stai muovendo e il vecchio repository è in disuso.
- Eventuali diramazioni remote e altri riferimenti vengono completamente ignorati.
- Non hai i tuoi ganci se ne avessi e potresti dimenticarti di averli!
- Non è possibile ottenere commit "persi" ecc utilizzando git reflog o altri mezzi. Potrebbe non essere un grosso problema, specialmente se il repository fungesse da server ma qualcosa di cui essere a conoscenza.
Se si cercano modi per eseguire il backup di un repository git, clone git non sarebbe nelle risposte migliori. Quindi non dovrebbe essere usato per spostare un repository!Ritengo, inoltre, che solo un git clone
non può essere una risposta adeguata perché git clone
ha la possibilità --mirror
, che conserva repo, il che significa che un repo git clone
è diverso da git clone --mirror
pronti contro termine (oltre ad essere nudo, le differenze sono per lo più quelli che ho citato sopra). Vorrei fare una copia perché I sa quello che ottengo con il repository copiato - lo stesso repository!
Quando considerare git clone:
- È più veloce come git fa qualche ottimizzazione, mentre la clonazione
- Potrebbe essere diversa la versione git sulla nuova macchina e una copia potrebbe rendere il repo inutilizzabile nell'altra versione (non molto comune al giorno d'oggi). Ma in realtà questo può essere un altro pro per copiare, poiché questo ti informerebbe che il nuovo computer ha una versione git diversa.
Tutti gli altri lo stanno rendendo troppo complicato. Prendi l'intera directory del progetto e copiala nella nuova macchina. Fatto. – kubi
Sembra buono. Ricordo di dover generare una chiave o qualcosa del genere. Funzionerà correttamente se lo copierò e cancellerò il vecchio repository? –
Ho letto che puoi conservare i rami remoti usando qualcosa come '\ *: \ *' ma non sono sicuro della sintassi esatta e questa è una cagna di una parola chiave google - @manojlds sai qualcosa a riguardo o potresti elaborare? Mi sembra che se i rami fossero preservati, risolverebbe la maggior parte dei problemi importanti (ad eccezione degli ami) –