2013-07-23 10 views
6

Abbiamo un repository su GitHub con diversi tag con le virgolette" nel nome. Occasionalmente, alcuni host Windows non riescono a recuperare con l'errore di seguito. Non so perché alcuni host di Windows non riescano a recuperare e altri no, se risolviamo che sarebbe grandioso.Tag Git con i nomi delle quote su Windows

fatale: impossibile creare 'C:/src/code/tag/some_tag_ "with_quotes" .lock': Invalid argument

Per aggirare il problema, abbiamo eliminato i tag su GitHub, ma inevitabilmente qualcuno che ha questo tag esegue localmente un git push e reinserisce il tag in GitHub. Avere tutti reclone sarà doloroso.

Queste etichette non possono essere eliminate localmente (su Windows), viene generato lo stesso errore.

+0

Si prega di specificare se vengono utilizzate ** singole ** o ** doppie virgolette **. Suggerisco di inviare un'e-mail dettagliata alla [mailing list Git] (http://git-scm.com/community). – JJD

+0

I problemi persistono? Cioè, se una finestra di Windows non funziona, funzionerà altre volte o no? – andyg0808

+0

Virgolette doppie, @JJD, grazie per il suggerimento sulla lista di mait git. – Dlongnecker

risposta

2

Nota: Questa risposta è stata lacerata e riscritto dalla sua versione originale

Mi domando se hai problemi con i caratteri consentiti del filesystem nei nomi dei file. Ad esempio, according to Wikipedia, la FAT non consente doppie virgolette ("). Secondo Wikipedia, NTFS accetterà le doppie virgolette solo se un nome file è nel namespace di Posix, ma non riesco a trovarlo in nessun altro posto. Inoltre, Microsoft sembra recommendevitando le virgolette nei nomi dei file. Posix sembra consentire solo A-Za-z_.- nei nomi di file "portatili" ¹. Vedi Wikipedia su filesystem limitations e filesystem capabilities per ulteriori informazioni.

Forse potresti provare la versione Cygwin di Git. Sembra che Cygwin riesca a supportare le virgolette nei nomi di file su Windows.

+0

Il problema è quasi certamente un'interazione tra il file system e git. Detto questo, sto lavorando su NTFS e non sono sicuro di come sia possibile creare un file con una virgola doppia nel nome. Ogni metodo che provo genera un errore di qualche tipo. – Dlongnecker

+0

Vedere la risposta modificata. Forse Cygwin avrebbe aiutato? – andyg0808

+0

Buona idea, darò un colpo in ~ 12 ore – Dlongnecker