从github仓库下载项目的zip文件,建立本地和远程的分支跟踪

业务需求

由于git仓库的项目文件太多,无法通过git clone下载到本地,可以手动下载仓库压缩包到本地。

访问仓库地址,点击右上角的 Code 按钮 → 选择 Download ZIP。
下载后解压到本地,即可获取代码(缺点是不含 Git 版本信息,后续需手动初始化仓库关联远程)。

下载并解压以后,本地的 main 分支目前还是一个“空分支”(没有任何提交记录),因此无法直接与远程分支建立跟踪关系。

需要先让本地分支有至少一次提交,再关联远程分支,步骤如下:

确保本地仓库已关联远程仓库

先确认是否已添加远程仓库(origin):

git remote -v

如果没有输出远程仓库地址,先添加远程仓库(替换为你的仓库地址):

git remote add origin git@github.com:用户名/项目名.git

拉取远程分支到本地(初始化本地分支)

由于本地 main 分支为空,直接拉取远程 main 分支的代码来初始化本地分支:

git pull origin main --allow-unrelated-histories
  • --allow-unrelated-histories:允许拉取与本地空分支“无关联历史”的远程分支(因为本地分支没有任何提交,默认会被视为“无关历史”)。

再次建立分支跟踪关系

拉取成功后,本地 main 分支就有了提交记录,此时再执行关联命令:

git branch --set-upstream-to=origin/main main

验证关联

执行以下命令确认跟踪关系已建立:

git branch -vv

输出中会显示 main 分支关联到 origin/main,例如:

* main  6d6a061 [origin/main] 提交信息

之后就可以正常使用 git pullgit pull --tags 与远程仓库同步了。核心是先通过拉取远程分支让本地分支有提交记录,再建立跟踪关系。

file

减少传输数据量(针对大仓库)

如果仓库包含大量标签或历史数据,可限制拉取范围:

# 只拉取最新的标签和提交(浅拉取)
git pull --depth 1 --tags
  • --depth 1 会只拉取最近 1 次提交相关的标签,减少数据传输量,降低网络压力。

调整 Git 网络配置(增加超时和缓冲区)

通过配置让 Git 更容忍网络延迟或低速连接:

# 增大网络缓冲区(单位:字节,500MB)
git config --global http.postBuffer 524288000

# 设置低速传输容忍时间(999999 秒,约 11 天,避免因速度慢被断开)
git config --global http.lowSpeedTime 999999
git config --global http.lowSpeedLimit 0  # 不限制最低速度

# 设置 SSH 连接超时(针对 SSH 协议)
git config --global core.sshCommand "ssh -o ConnectTimeout=30 -o ServerAliveInterval=30 -o ServerAliveCountMax=5"
  • 上述配置会让 Git 在网络不稳定时更“有耐心”,减少因超时或低速导致的断开。

相关内容

使用宝塔面板的WebHook同步gitee远程仓库里的git代码

1. 官方交流QQ群,添加多个不批。建议使用安卓手机或电脑申请。
飞云脚本圈: 586333520飞云脚本圈
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » 从github仓库下载项目的zip文件,建立本地和远程的分支跟踪

企业级大数据智能营销管理系统

源码转让