threads / discuss / 7434

git-svn, remote tracking branch question

Subject: git-svn, remote tracking branch question

## tl;dr

5 messages between Mar 27, 2007 and Mar 31, 2007.

replies: 4people: 2as markdown or json

Seth Falcon· Mar 27, 2007, 20:26 UTC · lore
Hi,

I've edited my <repos>/.git/config file so that git-svn is tracking the main devel line as well as a release branch of a project. This seems to work well.

So I have:
[svn-remote "svn"]
	url = https://svn.url.com/root
	fetch = branches/release-2-5:refs/remotes/2.5
	fetch = trunk:refs/remotes/git-svn
I can checkout the 2.5 release branch like this:
   git checkout -b 2.5 remotes/2.5

But at this point, how do I ask git-svn to update it? When working on the devel line, I can do 'git svn rebase' and I would like to do the same thing but relative to the branch.

Perhaps there is some config I can add so that I don't have to do:
   git svn fetch
   git rebase remotes/2.5
That isn't so bad except for having to remember where you are...
Thanks,
+ seth
-- 
Seth Falcon
Eric Wong· Mar 27, 2007, 22:00 UTC · re: Seth Falcon · lore

Re: git-svn, remote tracking branch question

Seth Falcon <sethfalcon@gmail.com> wrote:
Show 27 quoted lines
> Hi,
> 
> I've edited my <repos>/.git/config file so that git-svn is tracking
> the main devel line as well as a release branch of a project.  This
> seems to work well.
> 
> So I have:
> 
> [svn-remote "svn"]
> 	url = https://svn.url.com/root
> 	fetch = branches/release-2-5:refs/remotes/2.5
> 	fetch = trunk:refs/remotes/git-svn
> 
> I can checkout the 2.5 release branch like this:
> 
>    git checkout -b 2.5 remotes/2.5
> 
> But at this point, how do I ask git-svn to update it?  When working on
> the devel line, I can do 'git svn rebase' and I would like to do the
> same thing but relative to the branch.
> 
> Perhaps there is some config I can add so that I don't have to do:
> 
>    git svn fetch
>    git rebase remotes/2.5
> 
> That isn't so bad except for having to remember where you are...

'git svn rebase' should be capable auto-discovering the remote ref that you last branched from. I'm not sure if the '2.5' that's common in the remote ref and your local branch would cause ambiguity, however...

I'll look into this more when/if I have time tonight.
-- 
Eric Wong
Seth Falcon· Mar 28, 2007, 15:24 UTC · re: Eric Wong · lore

Re: git-svn, remote tracking branch question

Eric Wong <normalperson@yhbt.net> writes:
Show 5 quoted lines
> 'git svn rebase' should be capable auto-discovering the remote ref that
> you last branched from.  I'm not sure if the '2.5' that's common in the
> remote ref and your local branch would cause ambiguity, however...
>
> I'll look into this more when/if I have time tonight.

ok. In the meantime, I renamed my branch to avoid any potential name conflict and it seems to be working automagically as you described. That's really useful, thanks.

+ seth
-- 
Seth Falcon
Eric Wong· Mar 29, 2007, 20:58 UTC · re: Eric Wong · lore

Re: git-svn, remote tracking branch question

Eric Wong <normalperson@yhbt.net> wrote:
> I'll look into this more when/if I have time tonight.

Sorry, I tried to look into it this morning at 1-2am but wasn't successful in reproducing it. I'm glad the workaround I provided worked, but I'll take another stab at solving the problem tonight or this weekend.

-- 
Eric Wong
Eric Wong· Mar 31, 2007, 00:32 UTC · re: Eric Wong · lore

Re: git-svn, remote tracking branch question

Eric Wong <normalperson@yhbt.net> wrote:
Show 7 quoted lines
> Eric Wong <normalperson@yhbt.net> wrote:
> > I'll look into this more when/if I have time tonight.
> 
> Sorry, I tried to look into it this morning at 1-2am but wasn't
> successful in reproducing it.  I'm glad the workaround I provided
> worked, but I'll take another stab at solving the problem tonight
> or this weekend.

Alright, I'm still unable to figure it out. Here's a patch that should at least cause it to error out and tell you which URL it was trying to lookup.

>From 4bf0314f4665b612cbd735fdfae45f84c1e21c04 Mon Sep 17 00:00:00 2001
From: Eric Wong <normalperson@yhbt.net>
Date: Fri, 30 Mar 2007 17:30:30 -0700
Subject: [PATCH] git-svn: fail on rebase if we are unable to find a ref to rebase against

If we're on an invalid HEAD, we should detect this and avoid attempting to continue.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
---
 git-svn.perl |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/git-svn.perl b/git-svn.perl
index e0a48c2..adc976c 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -435,6 +435,9 @@ sub cmd_rebase {
 	}
 
 	my $gs = Git::SVN->find_by_url($url);
+	unless ($gs) {
+		die "Unable to determine remote information from URL: $url\n";
+	}
 	if (command(qw/diff-index HEAD --/)) {
 		print STDERR "Cannot rebase with uncommited changes:\n";
 		command_noisy('status');
-- 
Eric Wong

← back to recent threads