I would like to request an enhancement for subversion: adding an
'--ignore-externals' or '--local' option to svn status and svn update.
It would do what the name suggests: ignore subdirectories that come from
a different svn repository via svn:externals. A short single letter
option would be nice too.
Use case: the development version of SchoolTool depends on the
development version of Zope 3. To make developer's life easier,
SchoolTool pulls in Zope 3 via svn:externals so you only need a single
svn checkout. However, running svn status or svn update in the working
tree takes a long time, because Zope 3 is rather big.
Another use case: I have added my home directory into Subversion (so
that I could easily replicate it -- or bits of it -- between my laptop
and desktop, plus I get backups). Some larger subdirectories are added
into their own separate subversion repositories and included via
svn:externals. Running svn update or svn status at the root directory
takes a lot of time and produces a lot of output, even when I only want
to see what dotfiles were changed in my topmost repository.
For example, currently when I do svn status, I get this:
mg@perlas:~ $ svn st
X .mutt
X .vim
X sigs
M .bashrc
M .gtimelog/timelog.txt
? notes/PreciousFiles
X .xchat2/xchatlogs
? Desktop/savaiminis-pabaigimas.png
? Desktop/isimamos-laikmenos.png
? Desktop/jautri-narsykle.png
? Desktop/iprastas-laisvas-uzsiemes-serveris.png
? Desktop/spausk-tolyn.png
? Desktop/rodyti-meniu-ikonose.png
M .ssh/config
Performing status on external item at '.mutt'
M .mutt/muttrc.local.perlas
M .mutt/muttrc
Performing status on external item at '.vim'
M .vim/vimrc
Performing status on external item at 'sigs'
Performing status on external item at '.xchat2/xchatlogs'
M .xchat2/xchatlogs/FreeNode-#zope3-dev.log
M .xchat2/xchatlogs/FreeNode-#pov.log
M .xchat2/xchatlogs/FreeNode-freenode.log
M .xchat2/xchatlogs/FreeNode-#schooltool.log
M .xchat2/xchatlogs/FreeNode-#svn.log
I would like to be able to do (assuming the new option is -l or --local)
mg@perlas:~ $ svn st -l
X .mutt
X .vim
X sigs
M .bashrc
M .gtimelog/timelog.txt
? notes/PreciousFiles
X .xchat2/xchatlogs
? Desktop/savaiminis-pabaigimas.png
? Desktop/isimamos-laikmenos.png
? Desktop/jautri-narsykle.png
? Desktop/iprastas-laisvas-uzsiemes-serveris.png
? Desktop/spausk-tolyn.png
? Desktop/rodyti-meniu-ikonose.png
M .ssh/config
It would be nice if I also could suppress the X'es, but that's an orthogonal
issue that already has an entry:
http://subversion.tigris.org/issues/show_bug.cgi?id=1935
Marius Gedminas
--
You can't spell evil without vi.
Received on Fri Jan 14 17:42:41 2005