You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

GitHub master分支最短下载方案:脚本精简与目录命名优化咨询

一行命令搞定GitHub Master分支下载,无需额外移动文件

没问题,我帮你把GitHub主分支的下载流程精简成高效的一行命令,还能直接指定解压到主目录的目标文件夹,完全不用mv命令!

核心一行命令(直接解压到主目录根级)

如果想把仓库的master分支内容直接解压到~/下(不保留默认的<仓库名>-master文件夹,直接把文件放到主目录),用这条命令:

curl -L https://github.com/<你的用户名>/<你的仓库名>/archive/refs/heads/master.tar.gz | tar -xz -C ~/ --transform 's/^[^/]*//'

指定自定义目录名(无需mv)

要是想直接放到~/下的某个指定文件夹(比如~/my-awesome-project),只需要调整--transform的规则就行,全程不用额外移动文件:

curl -L https://github.com/<你的用户名>/<你的仓库名>/archive/refs/heads/master.tar.gz | tar -xz -C ~/ --transform 's/^[^/]*/my-awesome-project/'

命令细节拆解

  • curl -L:跟随GitHub的重定向链接,确保能正确获取tar包;
  • tar -xzx是解压操作,z是处理gzip压缩的tar包;
  • -C ~/:指定解压的根路径为主目录;
  • --transform:用sed风格的替换规则修改解压后的目录结构——把默认的顶层文件夹(比如repo-name-master)直接替换成你想要的名字,或者清空规则(直接把文件放到主目录)。

额外注意事项

  • 如果仓库的默认分支不是master(现在很多仓库用main),把命令里的master改成对应分支名就行;
  • 这个方式不需要安装Git客户端,适合只需要获取代码文件、不需要版本控制信息的场景;
  • 对比传统的下载zip再解压、或者git clone后清理的方式,这条命令全程无中间临时文件,更高效简洁。

内容的提问来源于stack exchange,提问作者Arcticooling

火山引擎 最新活动