我想查看文件树而不克隆所有远程文件。可以使用git命令吗?
git版本2.21.0
我当前的命令如下:
- mkdir my-repo && cd my-repo
- git init
- git remote add origin https://remote-repo-url
- git fetch
- git checkout origin/master -- '*.html'
如何才能尽可能快地仅获取.html文件?我的仓库真的很大。我只需要.html文件。
答案 0 :(得分:1)
对于现有的my-repo
,您可以尝试sparse checkout
。
echo '*.html' > .git/info/sparse-checkout
git -c core.sparsecheckout=true checkout origin/master
仅会保留html文件及其父文件夹,而其他文件将被隐藏。
如果您需要从头开始,请使用git fetch --depth 1
以最大程度地减少时间和网络成本。
如果这是从头开始的例行任务,则可以预先进行镜像克隆,以节省时间和空间以用于将来的任务。
git clone --mirror https://remote-repo-url -- /path/to/mirror
对于例行任务,
git clone https://remote-repo-url --reference-if-able /path/to/mirror --depth 1 -- my-repo
cd my-repo
echo '*.html' > .git/info/sparse-checkout
git -c core.sparsecheckout=true checkout origin/master