2011-10-18 12 views
7

Dodałem pliki do mojego repozytorium git, które chcę teraz usunąć. Usunąłem go z rm XXX. Teraz git status pokazuje mi:Niemożliwe git rm ze specjalnymi znakami

Changed but not updated: 
    deleted: "Sche\314\201ma application + interface.graffle" 

Nieważne jak ja git rm go, mam jeszcze:

fatal: pathspec 'Schêma application + interface.graffle' did not match any files 

Próbowałem uciec spacje z \, aby uciec \ z \\, aby uciec " z \". Bez względu na to, co próbowałem, nie udało się.

Czy masz podpowiedzi?

+0

z tymi rodzajami pytań jest bardzo ważne, aby ludzie wiedzieli, jakiego systemu operacyjnego używasz .. –

+0

Jestem pewny, że jestem zbyt zaskoczony, żebym go nie napisał Darwin MacBook-de-XXX.local 10.8.0 Darwin Kernel Version 10.8.0 : Wt. 7 czerwca 16:33:36 PDT 2011; root: xnu-1504.15.3 ~ 1/RELEASE_I386 i386 = Mac Snow-Leopard – iwalktheline

Odpowiedz

24

ten wykryje usunięcia:

git add -u 
0

try git gui. Prawdopodobnie możesz uciec z niego właściwie, ale może to być zbyt trudne, niż jest warte. Powinien uciec to właściwie.

Jeśli problem polega na przeprowadzaniu usunięcia, wystarczy git add -A, aby dodać wszystkie zmiany do indeksu.

0

Zawiń w pojedyncze cudzysłowy.

git rm '"Sche\314\201ma application + interface.graffle"' 

Jeśli chcesz pominąć pojedyncze cudzysłowy w nazwie pliku, zawiń je w cudzysłowy. Więc jeśli z jakiegoś powodu nazwa pliku”(to apostrof, cudzysłów), użyj

git rm "'"'"' 

gdzie pierwszy zestaw cudzysłów jest owijanie apostrof oraz zestaw końcowy apostrofami jest owijanie . podwójne cytat

to dla Bash w ogóle, nie tylko git Więcej na cytując szaleństwa tutaj. How to escape single-quotes within single-quoted strings?

Powiązane problemy