The branch, master has been updated via e5e6d3c Get the branch set right before listing names and handling --delete. via 016ce71 Make it possible to create a new patch file while on a patch branch. from 2792a83 Don't send user/group names for ACLs with --numeric-ids. Fixes bug 8020.
;a=shortlog;h=master - Log ----------------------------------------------------------------- commit e5e6d3c410e4ca2d9b70def299c21a90245b41b8 Author: Wayne Davison <way...@samba.org> Date: Sat Mar 19 16:34:37 2011 -0700 Get the branch set right before listing names and handling --delete. commit 016ce7156881c1ea292ff115e5a0cc26e05b2ced Author: Wayne Davison <way...@samba.org> Date: Sat Mar 19 16:29:47 2011 -0700 Make it possible to create a new patch file while on a patch branch. ----------------------------------------------------------------------- Summary of changes: packaging/branch-from-patch | 6 +++--- packaging/git-status.pl | 15 +++++++++------ packaging/patch-update | 4 ++-- 3 files changed, 14 insertions(+), 11 deletions(-) Changeset truncated at 500 lines: diff --git a/packaging/branch-from-patch b/packaging/branch-from-patch index e555f00..469f3d6 100755 --- a/packaging/branch-from-patch +++ b/packaging/branch-from-patch @@ -13,6 +13,9 @@ use Getopt::Long; ); &usage if $help_opt; +require 'packaging/git-status.pl'; +check_git_state($master_branch, !$skip_branch_check, 1); + my %local_branch; open PIPE, '-|', 'git branch -l' or die "Unable to fork: $!\n"; while (<PIPE>) { @@ -30,9 +33,6 @@ if ($delete_local_branches) { %local_branch = ( ); } -require 'packaging/git-status.pl'; -check_git_state($master_branch, !$skip_branch_check, 1); - my @patch_list; foreach (@ARGV) { if (!-f $_) { diff --git a/packaging/git-status.pl b/packaging/git-status.pl index 295018c..32cd437 100644 --- a/packaging/git-status.pl +++ b/packaging/git-status.pl @@ -6,25 +6,28 @@ sub check_git_state my($master_branch, $fatal_unless_clean, $check_patches_dir) = @_; my($cur_branch) = check_git_status($fatal_unless_clean); - if ($cur_branch ne $master_branch) { + (my $branch = $cur_branch) =~ s{^patch/([^/]+)/[^/]+$}{$1}; # change patch/BRANCH/PATCH_NAME into BRANCH + if ($branch ne $master_branch) { print "The checkout is not on the $master_branch branch.\n"; exit 1 if $master_branch ne 'master'; - print "Do you want me to continue with --branch=$cur_branch? [n] "; + print "Do you want me to continue with --branch=$branch? [n] "; $_ = <STDIN>; exit 1 unless /^y/i; - $_[0] = $master_branch = $cur_branch; # Updates caller's $master_branch too. + $_[0] = $master_branch = $branch; # Updates caller's $master_branch too. } if ($check_patches_dir && -d 'patches/.git') { - ($cur_branch) = check_git_status($fatal_unless_clean, 'patches'); - if ($cur_branch ne $master_branch) { - print "The *patches* checkout is on branch $cur_branch, not branch $master_branch.\n"; + ($branch) = check_git_status($fatal_unless_clean, 'patches'); + if ($branch ne $master_branch) { + print "The *patches* checkout is on branch $branch, not branch $master_branch.\n"; print "Do you want to change it to branch $master_branch? [n] "; $_ = <STDIN>; exit 1 unless /^y/i; system "cd patches && git checkout '$master_branch'"; } } + + return $cur_branch; } sub check_git_status diff --git a/packaging/patch-update b/packaging/patch-update index dba8e47..4ac01eb 100755 --- a/packaging/patch-update +++ b/packaging/patch-update @@ -32,7 +32,7 @@ die "No '$patches_dir' directory was found.\n" unless -d $patches_dir; die "No '.git' directory present in the current dir.\n" unless -d '.git'; require 'packaging/git-status.pl'; -check_git_state($master_branch, !$skip_branch_check, 1); +my $starting_branch = check_git_state($master_branch, !$skip_branch_check, 1); my $master_commit; open PIPE, '-|', "git log -1 --no-color $master_branch" or die $!; @@ -124,7 +124,7 @@ if ($incl_generated_files) { } sleep 1 while $last_touch >= time; -system "git checkout $master_branch" and exit 1; +system "git checkout $starting_branch" and exit 1; exit; -- The rsync repository. _______________________________________________ rsync-cvs mailing list rsync-cvs@lists.samba.org https://lists.samba.org/mailman/listinfo/rsync-cvs