This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 252360

Summary: Fail to clone a git repository from DCS with multibyte chars in URL
Product: versioncontrol Reporter: Tomas Pavek <tpavek>
Component: GitAssignee: Ondrej Vrabec <ovrabec>
Status: NEW ---    
Severity: normal CC: git
Priority: P4    
Version: 8.1   
Hardware: PC   
OS: Windows 7   
Issue Type: DEFECT Exception Reporter:

Description Tomas Pavek 2015-05-12 12:36:30 UTC
Login to Callahan Hub as french.tester, go to project test-French. There are several repositories, one of them named ようこそ.git.

Trying to clone this repository in NetBeans fails, either going through the team server support (for getting sources) or Git clone wizard and pasting the URL.

The exception is:

org.eclipse.jgit.errors.NoRemoteRepositoryException: http://french.tester@ucf2c-dcs-callahan-hub1.opcdeveloper.oracleinternalucf2c.oraclecorp.com/qa-dev/s/qa-dev_test-french/scm/????.git: http://french.tester@ucf2c-dcs-callahan-hub1.opcdeveloper.oracleinternalucf2c.oraclecorp.com/qa-dev/s/qa-dev_test-french/scm/????.git/info/refs?service=git-upload-pack not found
	at org.eclipse.jgit.transport.TransportHttp.connect(TransportHttp.java:488)
	at org.eclipse.jgit.transport.TransportHttp.openFetch(TransportHttp.java:309)
	at org.netbeans.libs.git.jgit.commands.ListRemoteObjectsCommand.runTransportCommand(ListRemoteObjectsCommand.java:74)
Caused: org.netbeans.libs.git.GitException: http://french.tester@ucf2c-dcs-callahan-hub1.opcdeveloper.oracleinternalucf2c.oraclecorp.com/qa-dev/s/qa-dev_test-french/scm/????.git: http://french.tester@ucf2c-dcs-callahan-hub1.opcdeveloper.oracleinternalucf2c.oraclecorp.com/qa-dev/s/qa-dev_test-french/scm/????.git/info/refs?service=git-upload-pack not found
	at org.netbeans.libs.git.jgit.commands.TransportCommand.handleException(TransportCommand.java:261)
	at org.netbeans.libs.git.jgit.commands.ListRemoteObjectsCommand.runTransportCommand(ListRemoteObjectsCommand.java:87)
	at org.netbeans.libs.git.jgit.commands.TransportCommand.run(TransportCommand.java:191)
	at org.netbeans.libs.git.jgit.commands.GitCommand$1.run(GitCommand.java:80)
	at org.netbeans.libs.git.jgit.commands.GitCommand$1.run(GitCommand.java:77)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.netbeans.libs.git.jgit.commands.GitCommand.execute(GitCommand.java:77)
	at org.netbeans.libs.git.GitClient.listRemoteBranches(GitClient.java:916)
	at org.netbeans.modules.git.client.GitClient$36.call(GitClient.java:605)
	at org.netbeans.modules.git.client.GitClient$36.call(GitClient.java:601)
	at org.openide.util.NetworkSettings.suppressAuthenticationDialog(NetworkSettings.java:140)
	at org.netbeans.modules.git.client.GitClient$CommandInvoker$1$1.call(GitClient.java:954)
	at org.netbeans.modules.git.client.GitClient$CommandInvoker$1.call(GitClient.java:977)
	at org.netbeans.modules.git.client.GitClient$CommandInvoker.runMethodIntern(GitClient.java:989)
	at org.netbeans.modules.git.client.GitClient$CommandInvoker.runMethod(GitClient.java:920)
	at org.netbeans.modules.git.client.GitClient$CommandInvoker.runMethod(GitClient.java:898)
	at org.netbeans.modules.git.client.GitClient$CommandInvoker.access$400(GitClient.java:892)
	at org.netbeans.modules.git.client.GitClient.listRemoteBranches(GitClient.java:601)
[catch] at org.netbeans.modules.git.ui.clone.RepositoryStep$RepositoryStepProgressSupport.perform(RepositoryStep.java:325)
	at org.netbeans.modules.git.client.GitProgressSupport.performIntern(GitProgressSupport.java:115)
	at org.netbeans.modules.git.client.GitProgressSupport.run(GitProgressSupport.java:108)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1425)
	at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:68)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:303)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2038)
Comment 1 Tomas Pavek 2015-05-12 12:44:46 UTC
This was reported on JDev, I can reproduce it in NetBeans as well. But only on Windows, I was able to get the repository cloned on Linux.

I've debugged it to org.netbeans.libs.git.GitClient.listRemoteBranches() where the repository URL set to the executed commend was still good.

Cloning the default test-french.git worked fine. BTW trying a non-existing repository name led to RemoteRepositoryException instead of the NoRemoteRepositoryException which happened when using the multibyte chars - and also when I tried to replace them with ???? (I guess that's what happens somewhere along the way).
Comment 2 Tomas Pavek 2015-05-12 12:50:55 UTC
Also the info/refs URL listed in the exception itself is good (the ???? appear only when printed to log) - I can get the refs file if pasting the URL to browser.
Comment 3 Ondrej Vrabec 2015-05-12 12:53:35 UTC
Kidding, right? Who names their repositories with non-ASCII chars?
Can you clone in commandline? How can i log in? I don't know the password.