【发布时间】:2018-07-15 03:25:58
【问题描述】:
我正在使用 Java 中的 jGit,并且我设法克隆了整个存储库。但是我找不到在存储库中下载单个文件的方法。我试过了:
- 更改指定文件路径的 URL。
- 通过指定子目录更改 URL。
他们都没有工作。
我的代码(克隆整个仓库)如下:
public File cloneRepository(String url, String path) throws GitAPIException {
File download = new File (path);
if (download.exists()){
System.out.println("Error");
return null;
}
else{
CloneCommand clone = Git.cloneRepository()
.setURI(url)
.setDirectory(download);
try (Git repositorio = clone.call()) {
return repositorio.getRepository().getWorkTree();
}
}
}
如何更改为下载单个文件?
【问题讨论】:
-
您用“github”标记了您的问题,这是否意味着您想知道 github 上的存储库?因为您不需要 jgit,所以 URL/URLConnection 可以为您处理它。否则,如果存储库上没有 Web 界面,那就很难了。查看stackoverflow.com/questions/1125476/…
-
我知道存储库。但我想用 jGit 来做
-
@user5872256 Erwin 在问你为什么你放了 github 标签。仅使用对您的问题真正重要的标签。记录一下:您了解克隆存储库基本上意味着下载完整内容吗? git not 像 SVN 一样,您可以(轻松地)进行稀疏检出并最终只得到 一个 单个文件(总是有一个 .git 目录,其中包含您的 完整存储库)。
-
您接受了一个看起来像(在我的手机上,因此无法验证)的答案,它克隆并下载了整个存储库,然后为您提供了其中单个文件的内容 - 让我知道是否我错了。如果这是真的,那并不能回答您关于仅下载单个文件的问题。