sadly requesting help

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

sadly requesting help

From: Raymond Auge <hidden>
Date: 2016-06-15 22:48:31

Hello,

My name is Raymond Augé. I'm a senior developer on the Liferay Portal project.

We had a colo failure over the last day or so and lost the last 50-60
commits on our subversion repository (apparently, our backup strategy
was not granular enough).

Luckily I use Git locally using the git-svn conduit.

I need to rewind my repository to an earlier revision and I'm hoping
not to have to rebuild my local repo as the project is huge and takes
me at least 16 hours to checkout using git-svn.

I tried using:

git svn reset --revision 49343

where 49343 is the last revision before the failure.

But I'm at git version 1.6.3.3 which doesn't support the "reset" operation.

I tried various incantations of

git reset --hard <hash>

where <hash> matched the subversion revision obtained

git svn find-rev 49343

But that didn't clear the svn indexes which still think it's at the
much later revision.

Does anyone know if there is an alternate way to rewind the "svn"
portion of my repo to "forget" about the revs since 49343 so that I
can restart the fetch process and catch up with the new stream (the
git side seems to be more than ok with it)?


Sincerely,

Raymond Augé
Liferay Inc.

Re: sadly requesting help

From: Avery Pennarun <hidden>
Date: 2016-06-15 22:48:31

On Tue, Mar 30, 2010 at 6:43 PM, Raymond Auge [off-list ref] wrote:
I tried using:

git svn reset --revision 49343

where 49343 is the last revision before the failure.

But I'm at git version 1.6.3.3 which doesn't support the "reset" operation.
I don't know about this option, but if it sounds like it would work,
why not just upgrade your git?  It's very easy (easier than most
programs) to compile it from source.
I tried various incantations of

git reset --hard <hash>

where <hash> matched the subversion revision obtained
You probably need something like:

    git update-ref refs/remotes/git-svn <commitid>

Where "refs/remotes/git-svn" is the ref that git-svn is using (you can
usually find this with "git branch -r" and then prepend refs/remotes/
to the name it gives you).  And <commitid> is the commit you want to
be the "most recent" one from svn.

You may or may not also need to delete your svn cache dir (.git/svn).
This should be harmless since git-svn can regenerate it later by
reading through your local commits.

MAKE SURE YOU BACKUP YOUR REPO BEFORE TRYING ANY OF THIS ADVICE.

Good luck,

Avery
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help