在 JGit 获取异常 "org.eclipse.jgit.api.errors.InvalidConfigurationException: No value for key remote"
Getting exception "org.eclipse.jgit.api.errors.InvalidConfigurationException: No value for key remote" at JGit
我正在尝试从托管在 bitbucket 上的远程存储库中提取数据。为此,我正在使用 JGit。我的代码如下;
Git git = Git.open( new File( localPath+"/.git" ) );
PullCommand pullCmd = git.pull();
pullCmd.setCredentialsProvider(this.credentialsProvider);
pullCmd.setRemoteBranchName(branch);
//pullCmd.setRemote("origin");
pullCmd.setRemote(remoteUrl);
PullResult result = pullCmd.call();
//FetchResult fetchResult = result.getFetchResult();
//MergeResult mergeResult = result.getMergeResult();
//mergeResult.getMergeStatus();
但我总是遇到异常,
org.eclipse.jgit.api.errors.InvalidConfigurationException: No value for key remote.https://xyz@bitbucket.org/xyz/testproject.git.url found in configuration
at org.eclipse.jgit.api.PullCommand.call(PullCommand.java:266)
at git.GitPullOperation.execute(GitPullOperation.java:37)
at ui.MainScreen.invokeGitOperation(MainScreen.java:214)
尝试了 Whosebug 中的所有答案,对我来说没有任何效果。
任何帮助对我来说都是很好的。
您看到的错误表明它正在尝试读取不存在的配置键。此特定密钥使用远程 name,而不是 URL.
pullCmd.setRemote(remoteUrl);
行似乎需要远程名称而不是 URL。如果您已经克隆了存储库,则默认情况下您将拥有一个名为 origin
的远程,因此而不是:
pullCmd.setRemote(remoteUrl);
尝试将值设置为 origin
:
pullCmd.setRemote("origin");
我正在尝试从托管在 bitbucket 上的远程存储库中提取数据。为此,我正在使用 JGit。我的代码如下;
Git git = Git.open( new File( localPath+"/.git" ) );
PullCommand pullCmd = git.pull();
pullCmd.setCredentialsProvider(this.credentialsProvider);
pullCmd.setRemoteBranchName(branch);
//pullCmd.setRemote("origin");
pullCmd.setRemote(remoteUrl);
PullResult result = pullCmd.call();
//FetchResult fetchResult = result.getFetchResult();
//MergeResult mergeResult = result.getMergeResult();
//mergeResult.getMergeStatus();
但我总是遇到异常,
org.eclipse.jgit.api.errors.InvalidConfigurationException: No value for key remote.https://xyz@bitbucket.org/xyz/testproject.git.url found in configuration
at org.eclipse.jgit.api.PullCommand.call(PullCommand.java:266)
at git.GitPullOperation.execute(GitPullOperation.java:37)
at ui.MainScreen.invokeGitOperation(MainScreen.java:214)
尝试了 Whosebug 中的所有答案,对我来说没有任何效果。
任何帮助对我来说都是很好的。
您看到的错误表明它正在尝试读取不存在的配置键。此特定密钥使用远程 name,而不是 URL.
pullCmd.setRemote(remoteUrl);
行似乎需要远程名称而不是 URL。如果您已经克隆了存储库,则默认情况下您将拥有一个名为 origin
的远程,因此而不是:
pullCmd.setRemote(remoteUrl);
尝试将值设置为 origin
:
pullCmd.setRemote("origin");