git - 获取远程 git 存储库上的文件/文件树列表

标签 git github

我在没有 checkout 的情况下克隆了一个 Remote :

git clone -n <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="bcdbd5c8fcdbd5c8d4c9de92dfd3d1" rel="noreferrer noopener nofollow">[email protected]</a>:RobKohr/awesome-repo.git

并且可以克隆单个文件:

git checkout HEAD README.md

但我想获取存储库中所有文件的列表,而不需要获取文件本身。

有办法做到这一点吗?

这是一个相当大的私有(private) github 存储库,我只有 ssh 部署访问权限(没有 Web 访问权限),而且我不想查看整个内容。我想获取文件列表,以便我可以选择。

最佳答案

只有两种方法可以做到这一点 - 使用克隆或通过 Github API。如果您无权访问 API,克隆是唯一的解决方案。

您可以使用浅克隆来加快速度。不要克隆整个存储库 - 仅将最后一次提交克隆到裸存储库中并运行 git ls-tree:

git clone --bare --depth=1 <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="0a6d637e4a6d637e627f6824696567" rel="noreferrer noopener nofollow">[email protected]</a>:RobKohr/awesome-repo.git
cd awesome-repo.git
git ls-tree --name-only -r HEAD

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

相关文章:

node.js - 我应该使用 GitHub OAuth 还是 GitHub 应用程序?

linux - 如何在github上上传Python脚本

git - 分离的节点如何 merge 到 git 分支中?

git - 为什么在 exFAT 上复制的 git 文件夹的大小比在 ext4 上的原始文件夹大?

java - JGit 将 Repo A merge 到 fork 版本 repo B 中,其中 A 领先于 B

git - 从 Git 中删除代码是否可以在需要时轻松将其恢复?

GitHub - 如何从一个分支创建两个 pull 请求

在不同的 IDE 中使用 Git 进行 C++ 协作

git - 如何让 git diff 写入标准输出?

c++ - git 和 visual studio 2010 Express