Package: devscripts
Version: 2.9.9
Severity: wishlist
Tags: patch
Yeah, I know, yet another revision control system ... anyway, patch
attached. At the moment --release just does a commit and not a (useful)
tag because there's no symbolic tag support in bzr yet.
Thanks,
--
Colin Watson [EMAIL PROTECTED]
Index: debcommit.pl
===================================================================
--- debcommit.pl (revision 274)
+++ debcommit.pl (working copy)
@@ -11,8 +11,9 @@
=head1 DESCRIPTION
debcommit generates a commit message based on new text in debian/changelog,
-and commits the change to a package's cvs, svn, svk, or arch repository. It
-must be run in a cvs, svn, svk, or arch working copy for the package.
+and commits the change to a package's cvs, svn, svk, arch, or bzr
+repository. It must be run in a cvs, svn, svk, arch, or bzr working copy for
+the package.
=head1 OPTIONS
@@ -22,6 +23,8 @@
Commit a release of the package. The version number is determined from
debian/changelog, and is used to tag the package in cvs, svn, svk, or arch.
+bzr does not yet support symbolic tags, so you will only get a normal
+commit.
Note that svn/svk tagging conventions vary, so debcommit uses
L<svnpath(1)> to determine where the tag should be placed in the
@@ -100,6 +103,9 @@
return "tla";
}
}
+ elsif (-d ".bzr") {
+ return "bzr";
+ }
else {
# svk has no useful directories so try to run it.
my $svkpath=`svk info . 2>/dev/null| grep -i '^Depot Path:' |
cut -d ' ' -f 2`;
@@ -107,7 +113,7 @@
return "svk";
}
- die "not in a cvs, subversion, arch, or svk working copy\n";
+ die "not in a cvs, subversion, arch, bzr, or svk working
copy\n";
}
}
@@ -126,7 +132,7 @@
sub commit {
my $message=shift;
- if ($prog eq 'cvs' || $prog eq 'svn' || $prog eq 'svk') {
+ if ($prog eq 'cvs' || $prog eq 'svn' || $prog eq 'svk' || $prog eq
'bzr') {
if (! action($prog, "commit", "-m", $message)) {
die "commit failed\n";
}
@@ -191,16 +197,19 @@
die "failed tagging with $tag\n";
}
}
+ elsif ($prog eq 'bzr') {
+ warn "No support for symbolic tags in bzr yet.\n";
+ }
}
sub getmessage {
my $ret;
if ($prog eq 'cvs' || $prog eq 'svn' || $prog eq 'svk' ||
- $prog eq 'tla' || $prog eq 'baz') {
+ $prog eq 'tla' || $prog eq 'baz' || $prog eq 'bzr') {
$ret='';
my $subcommand;
- if ($prog eq 'cvs' || $prog eq 'svn' || $prog eq 'svk') {
+ if ($prog eq 'cvs' || $prog eq 'svn' || $prog eq 'svk' || $prog
eq 'bzr') {
$subcommand = 'diff';
} else {
$subcommand = 'file-diff';