gpt4 book ai didi

java - 从远程 git 存储库获取单个文件

转载 作者:搜寻专家 更新时间:2023-10-31 08:24:38 25 4
gpt4 key购买 nike

有没有办法用 Java 以编程方式从远程 git 存储库下载单个文件?

  1. 我更喜欢使用尽可能少的带宽的解决方案,最好只下载单个文件。我不需要浏览存储库,我已经有了文件的路径。
  2. 我更喜欢不依赖于其他应用程序的解决方案(例如,在机器上安装另一个 git 客户端)。包含 git 客户端实现本身的 Java 库将是最佳选择。

我能够使用 SVNKit 对 Subversion 做类似的事情我已经看到有一个纯 java 的 git ( eclipse's JGit) 实现,它可以做类似的事情,所以我希望有一个肯定的答案;尽管根据我对 git 工作原理的理解——只允许从本地存储库更新——这可能会证明是有问题的。

最佳答案

git 并不是真正为从远程存储库访问单个文件而设计的,但您可以为此滥用 git archive。缺点是您必须下载“树”,而不仅仅是您需要的 blob。

例如

git archive --remote=url://to.git.repo branch path/to/dir | tar -x file

作为替代方案,如果您在远程存储库上设置了 gitweb,则可以使用简单的 curl 或 wget 命令以“原始”格式下载任何文件。

关于java - 从远程 git 存储库获取单个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3642143/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com