¿Cuándo se puede usar git svn dcommit?

Quiero aprender a usar git con el repository svn.

Sigo este manual: http://git-scm.com/book/es/Git-and-Other-Systems-Git-and-Subversion

Realizo algunos cambios en mi file. Algunos de ellos escenificados, algunos de ellos no:

# On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # modified: CHANGES.txt # # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: CHANGES.txt # 

De acuerdo con el manual, primero realizo cambios por etapas en mi repository local:

 $ git commit -m "new" [master 21bf2bd] new 1 file changed, 1 insertion(+) 

ahora solo tengo cambios en las etapas, y quiero vivir así para futuros compromisos:

 $ git status # On branch master # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: CHANGES.txt # no changes added to commit (use "git add" and/or "git commit -a") 

Y quiero enviar confirmaciones locales aguas arriba a svn:

 $ git svn dcommit CHANGES.txt: needs update update-index --refresh: command returned error: 1 

¿Por qué no puedo hacerlo?

¿Cuándo puedo usar "dcommit" y cuándo no puedo? Claramente carezco de esta información, y no pude encontrar más descripción en las páginas de Google o Man .

No puedes tener ningún cambio no comprometido cuando lo haces.

Para ocultar temporalmente sus modificaciones, use git stash . Luego comprométase con git svn dcommit , y finalmente git svn dcommit el alijo con git stash pop para habilitar sus modificaciones una vez más.