社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

如何从GitHub复制文件而不进行克隆?

Darien Marks • 3 年前 • 1220 次点击  

GitHub上有一个公共存储库。我在自己的机器上有一个打开到空目录的终端,我想用这个存储库的一个特定分支表示的一组文件填充这个目录。

我想要的只是构成对给定分支的最新提交的文件集。我不需要任何历史记录或修订元数据。这将是对带宽、计算和存储的浪费 git clone repo或以其他方式在本地创建Git存储库。似乎很直观,我会有一个命令来下载这组文件:

$ git {something} https://github.com/OrgName/RepoName.git branchname

将这些文件复制到当前目录。我已经找了好几个小时了,什么也找不到。“太多了” git克隆 “我尝试过的每一次网络搜索都充满了噪音。

这有可能吗?怎么可能?如果可能的话,可以在不向GitHub进行身份验证的情况下完成吗?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/130411
 
1220 次点击  
文章 [ 2 ]  |  最新文章 3 年前
bk2204
Reply   •   1 楼
bk2204    4 年前

有几种方法可以让你进行一次修订。

首先,在GitHub上,有可供下载的API端点 a tarball a zip file 一个特定的修订。它们可以使用curl下载,只有在存储库是私有的情况下才需要身份验证。

如果存储库中有包含特定tarball或其他要下载的归档文件的发布资产,则可以先下载 look up the release 然后 download the asset 你想要的。如果发行版包含生成的文件或其他不在自动生成的tarball中的内容,这将非常有用。

你也可以选择进行浅层克隆。也就是说,你可以通过考试 --depth 1 选择 git clone 要仅下载一个修订版的数据,可以使用 -b BRANCH 选项最终会有一个 .git 目录,如果需要可以删除,也可以使用 git archive HEAD 从中生成存档。

Antonio Petricca
Reply   •   2 楼
Antonio Petricca    4 年前

我认为只有以下解决方案:

   git clone -b branchname --depth 1 --single-branch https://github.com/OrgName/RepoName.git \
&& rm -rf RepoName/.git/

它克隆了一个分支( -b branchname --single-branch )只拿最后一个佣金( --depth = 1 ),然后它会移除 .git 文件夹