views:

167

answers:

3

When I commit changes with Emacs' built-in VCS interface (I use it with Bazaar) it commits only one file - that's open in current buffer. So when I press C-c v v, enter message and C-c C-c, it does something like

bzr commit -m "my message" file/open/in.buffer

instead of

bzr commit -m "my message"

How to commit all changes with Emacs?

+3  A: 

Got an answer from identi.ca user https://identi.ca/mjog.

http://www.xsteve.at/prg/emacs_dvc/dvc.html - better frontend for DVCS.

myfreeweb
just FYI - http://xtalk.msk.su/~ott/en/writings/emacs-vcs/EmacsDVC.html - article about DVC
Alex Ott
A: 

As far as I know, the emacs VCS interface has always been file-based, i.e. it works per file rather than per change set. Therefore VCS is a poor fit for version control systems like SVN, GIT, ... where a revision is per repository rather than per file. Magit is a great git mode for emacs that works on change sets. There also seems to be a dedicated bazaar mode available, which I assume also works per change set rather than per file.

liwp
already found DVC - best DVCS frontend
myfreeweb
+3  A: 

If you commit from a vc-dir buffer rather than an individual file, then it will commit all changes (assuming the cursor is NOT pointing at a specific file), not just the single file. Use 'v' for vc-next-action on the directory buffer. Actions in a vc-dir buffer are related to the repository, rather than tied to a specific file.

Using an alternate front-end is also an option, as you've discovered, but sometimes it is still important to know how to do things with the base emacs distribution :)

NikkiA