BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanne

.svn-Verzeichnis und dessen Inhalt verbergen

Arbeitet man zum Beispiel mit ls oder find in einem Verzeichnisbaum, welcher mit subversion ausgecheckt wurde, so wird neben den eigentlichen Daten auch der Inhalt der .svn-Verzeichnisse dargestellt:

# ls -R
Makefile        main.c          pathnames.h     pkg_updating.1

./.svn/prop-base:
Makefile.svn-base        main.c.svn-base          pathnames.h.svn-base     pkg_u
pdating.1.svn-base

./.svn/props:

./.svn/text-base:
Makefile.svn-base        main.c.svn-base          pathnames.h.svn-base     pkg_u
pdating.1.svn-base

./.svn/tmp:
prop-base/ props/     text-base/

./.svn/tmp/prop-base:

./.svn/tmp/props:

./.svn/tmp/text-base:
# find . -name "*updating*"
./updating
./updating/.svn/text-base/pkg_updating.1.svn-base
./updating/.svn/prop-base/pkg_updating.1.svn-base
./updating/pkg_updating.

Möchte man dies verhindern, kann hidesvn verwendet werden. Im FreeBSD Portbaum findet man hidesvn unter sysutils/hidesvn:

# cd /usr/ports/sysutils/hidesvn/ && make install clean

Jetzt wird vor dem eigentlichen Befehl hidesvn aufgerufen, wobei die .svn-Verzeichnisse nicht mehr berücksichtigt werden:

# hidesvn ls -R
Makefile        main.c          pathnames.h     pkg_updating.1
# hidesvn find . -name "*updating*"
./updating
./updating/pkg_updating.1

Mehr Informationen zu hidesvn findet man in der Manpage hidesvn(1).

Comments (1)  Permalink

Comments

Andy @ 27.03.2009 16:01 UTC
Oder man freundet sich mit einem DVCS an, das keine solche Probleme aufweist und eine Subversion Bridge mitbringt (z.B. git-svn, hgsubversion, bzr-svn).

Nebenbei ist das Mergen auch noch einfacher...

~Andy
No new comments allowed (anymore) on this post.