git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Found possible branch point, then "Use of uninitialized value $u in substitution/concatenation"

From
TSThierry Suzanne <thierry@yellownemo.com>
Date
May 5, 2016, 10:43 UTC
Message-ID
<CALZdSA_pDy=B-bgB-vjpi1yjgtse_-07ewXSX0_GsYhLfOUbzw@mail.gmail.com>
Hi,

I am converting my SVN repository to Git. git version 2.8.2.windows.1 Windows 8.1 Pro 64bits, running Git For Windows 32bits.

I have found this error mentioned here: http://stackoverflow.com/questions/15387812/git-svn-found-possible-branch-point and here: http://stackoverflow.com/questions/3009738/what-does-this-svn2git-error-mean

v1 causes 2 errors, trunk address is wrong, I set it by mistake to same as repository root:

C:\Windows\system32>git svn clone https://mycompany.svn.beanstalkapp.com/myproject --no-metadata -A c:\temp\svn_to_git_users.txt --trunk=https://mycompany.svn.beanstalkapp.com/myproject --tags=https://mycompany.svn.beanstalkapp.com/myproject/tags --branches=https://mycompany.svn.beanstalkapp.com/myproject/branches c:\code\Git_myproject

[...]
W: +empty_dir: branches/20080918_DBDEPLOY/vendor/src/csharp/MS WCSF
Contrib/src/Services
W: +empty_dir: branches/20080918_DBDEPLOY/vendor/src/csharp/RealWorldControls/References
r530 = c276e3b039d8e38759c6fb17443349732552d7a2 (refs/remotes/origin/trunk)
Found possible branch point:
https://mycompany.svn.beanstalkapp.com/myproject/trunk =>
https://mycompany.svn.beanstalkapp.com/myproject/branches/20080918_DBDEPLOY,
529
Use of uninitialized value $u in substitution (s///) at
/mingw32/share/perl5/site_perl/Git/SVN.pm line 101.
Use of uninitialized value $u in concatenation (.) or string at
/mingw32/share/perl5/site_perl/Git/SVN.pm line 101.
refs/remotes/origin/trunk:
'https://mycompany.svn.beanstalkapp.com/myproject' not found in ''
C:\Windows\system32>

v2 works: corrected the paths (and using relative instead of absolute to make line shorter)

C:\Windows\system32>git svn clone https://mycompany.svn.beanstalkapp.com/myproject --no-metadata -A c:\temp\svn_to_git_users.txt --trunk=trunk --tags=tags --branches=branches c:\code\Git_myproject

[...]
r529 = 40442d32486f4ca6f713e659b3785a446bd19de6 (refs/remotes/origin/trunk)
Found possible branch point:
https://mycompany.svn.beanstalkapp.com/myproject/trunk =>
https://mycompany.svn.beanstalkapp.com/myproject/branches/20080918_DBDEPLOY,
529
Found branch parent: (refs/remotes/origin/20080918_DBDEPLOY)
40442d32486f4ca6f713e659b3785a446bd19de6
Following parent with do_switch
Successfully followed parent
r530 = 9fefc1b3a892555e315d55c2024cdf3d3a05010f
(refs/remotes/origin/20080918_DBDEPLOY)
        A       src/database/sds.dbd
[...]

As suggested on stackoverfloow posts, I opened the config file (C:\code\Git_myproject\.git\config) and the first version (broken) was as follow. The fetch is probably the wrong thing comparing with v2 (branches and tags are duplicated too, some stackoverflow people say it might also cause problems).

[svn-remote "svn"] noMetadata = 1 url = https://mycompany.svn.beanstalkapp.com/myproject fetch = :refs/remotes/origin/trunk branches = branches/*:refs/remotes/origin/* tags = tags/*:refs/remotes/origin/tags/* branches = branches/*:refs/remotes/origin/* tags = tags/*:refs/remotes/origin/tags/*

and the 2nd version (working) was:

[svn-remote "svn"] noMetadata = 1 url = https://mycompany.svn.beanstalkapp.com/myproject fetch = trunk:refs/remotes/origin/trunk branches = branches/*:refs/remotes/origin/* tags = tags/*:refs/remotes/origin/tags/*

Looking at svn.pm, I can see we're in find_parent_branch() which outputs the message "Found possible branch point". It then calls other_gs($new_url, $url, $branch_from, $r, $self->{ref_id});

which itself calls: Git::SVN->find_by_url($new_url, $url, $branch_from);

which calls: resolve_local_globs($u, $fetch, $globspec);

and resolve_local_globs is where the error is thrown on line 100/101: my $u = (::cmt_metadata("$refname"))[0]; $u =~ s!^\Q$url\E(/|$)!! or die

I made a mistake in my command line for sure, so this might not be a bug, I'm just emailing all this if someone think it could be handled differently or a better error shown.

Thanks, T

Next: Christian Couder
Message 1 of 5 in “Found possible branch point, then "Use of uninitialized value $u in substitution/concatenation"”
  1. Thierry SuzanneMay 5, 2016
  2. Christian CouderMay 6, 2016
  3. Thierry SuzanneMay 6, 2016
  4. Christian CouderMay 7, 2016
  5. Thierry SuzanneMay 9, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.