da página man bash:
${parameter:-word}
Use Default Values. If parameter is unset or null, the expansion of word is substituted. Otherwise, the value of parameter is substituted.
no seu caso, você usaria
$ function svcp() {
def_msg="dev branch for $2"
echo svn copy "repoaddress/branch/$1.0.x" "repoaddress/branch/dev/$2" -m \"${3:-$def_msg}\";
}
$ svcp 2 exciting_new_stuff
svn copy repoaddress/branch/2.0.x repoaddress/branch/dev/exciting_new_stuff -m "dev branch for exciting_new_stuff"
$ svcp 2 exciting_new_stuff "secret recipe for world domination"
svn copy repoaddress/branch/2.0.x repoaddress/branch/dev/exciting_new_stuff -m "secret recipe for world domination"
$
você pode remover o comando echo se estiver satisfeito com os comandos svn que são gerados