[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: commit failed due to "backwards-sliding source views" - what do I do?

From: Daniel Shahaf <d.s_at_daniel.shahaf.name>
Date: Wed, 29 Apr 2020 10:11:27 +0000

Johan Corveleyn wrote on Wed, 29 Apr 2020 11:04 +0200:
> On Wed, Apr 29, 2020 at 7:14 AM Chaya <chaya.s1010_at_gmail.com> wrote:
> >
> > 1. Unfortunately, it's not a public repository.
> > 2. The SVN project repo is actually file based. So I had to convert it to
> > svn protocol before cloning to git.
> > 3. Using latest version of svn (version 1.13.0 (r1867053)) and git ( version
> > 1.13.0 (r1867053))
> >
> > --
> > Sent from: http://subversion.1072662.n5.nabble.com/Subversion-Users-f84423.html
>
> You're using "git svn", which is part of git (sorry, I thought git-svn
> was a separate project, but it seems to be simply part of git itself
> now, as a subcommand):
> https://git-scm.com/docs/git-svn
>
> From what I understand 2.26.2 is the latest release of git currently
> (see https://git-scm.com/).
>
> IMHO you'll need to ask the git community for support on the "git svn"
> command. I have no idea what kind of svn-like operations the "git svn"
> tool really performs under the hood. Maybe there are certain
> pre-conditions you need to make sure of, before running "git svn" on a
> repository (those should be documented at
> https://git-scm.com/docs/git-svn, or if not you should ask the git
> community).
>
> Maybe one more suggestion: you say in (2) that you "had to convert it
> to svn protocol before cloning to git". What do you mean with "convert
> it to svn protocol"? Did you first use it as a file-based repository
> (in SVN with a file:// URL), and before using "git svn" you had to set
> up and "svnserve" process to serve it? Perhaps the (file-based)
> repository you started from is in a very old format which isn't
> supported well by "git svn". In that case, perhaps you should first
> try to "svnadmin upgrade $REPO" with your svn tools, before trying to
> run "git svn" on it. It's worth a try...

Johan, what do you mean by 'a very old format which isn't supported well
by "git svn"'? How would you tell, over the svn:// protocol, whether
a repository is of a 'very old format'? I'd expect the server to hide
these details from the client — assuming the version of svnserve is new
enough, at least. [Well, one thing the server won't hide is the
"mergeinfo" capability, which depends on the backend format number, but
that's probably not related to the case at hand.]

In any case, Chaya, could you run `svnserve --version -q` and `svnadmin
info /path/to/repos` and post the output here? In addition to Johan's
direction, there's a svn_txdelta_parse_svndiff() call in BDB that I'd
like to rule out. In fact, I wish I had a backtrace of the error (it's
generated by us: see subversion/libsvn_delta/svndiff.c:write_handler),
but I don't even know whether to ask you to debug svnserve(8) on the
server or svn(1) or git-svn(1) on the client… as Johan said, we really
need the git-svn folks to look into this first and come back to us with
a reproduction recipe in terms of our APIs.

Also, could you try creating an svnsync mirror of the repository, and
let us know whether that succeeded or errored?

Cheers,

Daniel
Received on 2020-04-29 12:11:37 CEST

This is an archived mail posted to the Subversion Users mailing list.