SVNPATH(1)
π SVNPATH(1) β the svn url glow-up π
okay bestie, welcome to svnpath(1), part of the Debian Utilities fam π«Ά. this little icon outputs svn urls and it gets tags and branches. let's go β¨
π NAME π
svnpath β output svn url with support for tags and branches π
πΈ SYNOPSIS πΈ
svnpath
svnpath tags
svnpath branches
svnpath trunk
π¦ DESCRIPTION π¦
so like. svnpath is literally designed to be run inside a Subversion working copy. that's its whole vibe, that's its home π β¨
in its simplest usage, running svnpath with no parameters just outputs the svn url for the repository associated with the working copy. one command, url delivered, no notes π
but if you give it a parameter, svnpath tries to instead output the url that would be used for the tags, branches, or trunk. spoiler alert though: this will only work if you run it in the top-level directory that is subject to tagging or branching. so like, run it in the right place or it's not gonna eat π
for example, if you want to tag what's checked into Subversion as version 1.0, you could use a command like this:
svn cp $(svnpath) $(svnpath tags)/1.0
and that is so much easier than using svn info to look up the repository url and manually modifying it to derive the url for the tag, and typing in something like this:
svn cp svn+ssh://my.server.example/svn/project/trunk svn+ssh://my.server.example/svn/project/tags/1.0
like, typing that whole thing by hand? not the move. the first one is the main character π π
so how does it do it? svnpath uses a simple heuristic to convert between the trunk, tags, and branches paths. it replaces the first occurrence of trunk, tags, or branches with the name of what you're looking for. and ngl, this will work ok for most typical Subversion repository layouts. lowkey iconic, highkey convenient β¨
BUT. if you have an atypical layout and it does not work, you can add a ~/.svnpath file π. this file is perl code, which can modify the path in $url. for example, the author uses this file:
#!/usr/bin/perl
# svnpath personal override file
# For d-i I sometimes work from a full d-i tree branch. Remove that from
# the path to get regular tags or branches directories.
$url=~s!d-i/(rc|beta)[0-9]+/!!;
$url=~s!d-i/sarge/!!;
1
custom perl override? it's giving hacker chic, we love that for you π§ββοΈ
β LICENSE β
GPL version 2 or later. slay, legally π«Ά
π AUTHOR π
Joey Hess <joey@kitenet.net> β respect the icon that wrote this π
aaaaand that's the whole page bestie π this was Debian Utilities, dated 2026-09-21, section 1 of the manual β go forth and tag ur stuff, no cap β¨ππ¦
π¦ where this page comes from
- ubuntu stonking: devscripts 2.26.11ubuntu1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms