Uso git bash su una macchina Windows: versione 2.7.2 (versione a 32 bit) di Git per Windows costruita il 23-02-2016 disponibile da https://git-scm.com .
All'interno di bash posso copiare una directory da /c/
a /e/
(una chiavetta USB). Tuttavia, ricevo errori quando provo a utilizzare rsync
. Ho provato ad aggiungere cygdrive
ai nomi delle directory, ma non ha funzionato. Ho anche provato ad aggiungere -e
(solo per vedere cosa sarebbe successo) che non ha funzionato neanche.
Dico che il comando copia funziona perché è strano che io possa vedere l'unità in un modo, ma non vederlo in un altro modo.
Grazie e per favore commenta se hai votato per aiutarmi a migliorare la domanda.
Ulteriori background e ricerche:
Errore 255
Ad un certo punto credo che stavo ottenendo lo stesso errore esatto (255), che mi ha portato a questo post. Tuttavia, la soluzione qui è correlata cygwin
, non git bash.
/programming/16969119/dotcloud-push-on-cygwin-fails-with-rsync-error-unexplained-error-code-255
Vagabondo e rsync
Ci sono molte buone notizie sulla meccanica di rsync
, specialmente da mitchellh
. Tuttavia, non ero sicuro di quali componenti facciano riferimento nella mia installazione o di come dire. Ho fatto una domanda separata su questo sito su questo problema. fonte: https://github.com/mitchellh/vagrant/issues/3236
Elencazione delle unità in ambienti Linux emulati
fonte: http://mingw-users.1079350.n2.nabble.com/Windows-c-drive-td6555321.html
Quando lo faccio cat /etc/fstab
ottengo quanto segue:
$ cat /etc/fstab
# For a description of the file format, see the Users Guide
# http://cygwin.com/cygwin-ug-net/using.html#mount-table
# DO NOT REMOVE NEXT LINE. It remove cygdrive prefix from path
none / cygdrive binary,posix=0,noacl,user 0 0
none /tmp usertemp binary,posix=0,noacl 0 0
Il che a mio avviso indica che esiste un volume denominato cygdrive
, tuttavia non ho trovato alcun comando che acceda correttamente a quel nome.
Possibile domanda duplicata:
@kenorb ha suggerito che questa domanda è un duplicato di Perché cwRsync non funziona su Windows? .
Non ricordo di aver visto questo post ieri, ma questo sembra il più simile al mio. Penso ancora che sia diverso perché questa domanda è stata pubblicata nel 2011 e questa versione rsync
è del 2016. La versione precedente che stavo usando ieri mattina (che è stata installata nel 2015) ha dato un errore diverso e mi ha spinto ad aggiornare la mia versione di git / git bash.
Se questa domanda è una copia duplicata, non esiste (per ora) una risposta accettata e la risposta migliore non funziona per me.
In generale, tutta questa ricerca mi ha portato a credere che ci siano stati diversi problemi con le rsync
porte di Windows e che questa sia solo la più recente.
Penso che il problema possa essere risolto da me specificando l'unità in modo diverso ... ma non so cosa funzionerebbe. Ho provato a usare il nome dell'unità, la lettera dell'unità, la sintassi della barra rovesciata di Windows Colon. Ovviamente non ha funzionato, e alla fine sto solo indovinando.
rsync in msysgit
Il 18/10/11 Werner BEROUX ha dichiarato
È possibile scappare in modo da passare "/ c / Folder" come argomento a un'applicazione? Git lo trasforma in "C: \ Cartella" per impostazione predefinita e sembra che non posso evitarlo nemmeno usando i metodi di escape comuni. https://groups.google.com/forum/#!topic/msysgit/J1hvt9Ave8g
Non sono sicuro che ciò sia correlato, penso che stiano cercando di usare rsync all'interno di un comando git, ma è interessante che abbiano problemi con i nomi dei percorsi. Mi chiedo se questi errori causati dal percorso tradotto per includere un :
?
Codici di errore 12 e 255 (modifica il 21 marzo 2016)
Poiché qualcun altro (@davidpostill) sta dicendo che anche questo è un duplicato, ho pensato di provare di nuovo le risposte / i commenti nell'altra domanda .
Le risposte e i commenti più votati dell'altra domanda non hanno ancora funzionato per me, il che mi riporta alla conclusione che si tratta di un problema diverso.
Ecco i risultati del tentativo di rsync dalla chiavetta USB, come suggerito nel commento finale della risposta più votata sull'altra domanda :
Per prima cosa ho provato a utilizzare /c/
, che è il modo di fare riferimento alle unità in altri comandi in Bash per Windows.
user@computer MINGW32 /e
$ rsync -trd /c/examp/ .
ssh: Could not resolve hostname c: Name or service not known
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: error in rsync protocol data stream (code 12) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [Receiver=3.0.9]
Ho avuto lo stesso errore con il /cygwin
prefisso:
user@computer MINGW32 /e
$ rsync -trd /cygwin/c/examp/ .
ssh: Could not resolve hostname c: Name or service not known
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: error in rsync protocol data stream (code 12) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [Receiver=3.0.9]
Ho provato vari tipi di aggiunta c:
, ma come è stato sottolineato in passato, i due punti fanno rsync
pensare che sia una connessione remota, e quindi fallisce con l'errore 255.
user@computer MINGW32 /e
$ rsync -trd /c:/examp/ .
ssh: Could not resolve hostname c: Name or service not known
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: unexplained error (code 255) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [Receiver=3.0.9]
rsync -trd c:/examp/ e:/
?
mysys2
potrebbe aiutare, ma sono titubante nel seguire questi passaggi. Posso vivere senza rsync
, ma non posso permettermi di interrompere git
github.com/git-for-windows/git/wiki/Building-msys2-runtime