So, please have a look at the second block: if [ "$1" != "" ]; then svn commit -m "upgpkg: $pkgbase $pkgver-$pkgrel $1" > /dev/null if [ $? -ne 0 ]; then echo "Cancelled" exit 1 fi echo "===> Commited with \"upgpkg: $pkgbase $pkgver-$pkgrel $1\" message" else svn commit >/dev/null if [ $? -ne 0 ]; then echo "Cancelled" exit 1 fi echo "===> Commited with \"upgpkg: $pkgbase $pkgver-$pkgrel\" message" fi 1) Redirecting the commit command to /dev/null if an editor is going to be called is fail. extrapkg was hanging indefinitely and I was really wondering why. 2) The above is easy to fix, however, the "Commited with ..." message is incorrect. Furthermore, we should still include "upgpkg: ..." in the default commit message, that is missing in the second code path.