18、Git 传输协议与远程助手全解析

Git 传输协议与远程助手全解析

1. Git 传输协议特性

Git 具有一项设计特性,能够自动将简单协议的 URL 升级为智能 URL。反之,支持 Git 的 HTTP 服务器也能降级为向后兼容的简单协议(至少在拉取操作时可行,智能 HTTP 服务器不支持基于 WebDAV 的简单 HTTP 推送操作)。这一特性使得同一 HTTP(S) URL 可用于简单和智能两种访问方式,其格式如下:

http[s]://[user@]host.example.com[:port]/path/to/repo.git/
2. 离线传输之捆绑包

当你的机器与想要拉取的 Git 仓库所在服务器之间没有直接连接时,或者服务器未运行但你仍想将更改复制到另一台机器,又或者网络中断、因安全原因无法访问本地网络、无线或以太网卡损坏等情况发生时, git bundle 命令就派上用场了。

该命令会将通常通过网络传输的所有内容打包,把对象和引用放入一个名为捆绑包(bundle)的特殊二进制存档文件中(类似于打包文件,只是包含分支等信息)。你需要指定要打包的提交,而在在线传输时,网络协议会自动为你完成这一操作。

以下是使用 git bundle 进行离线传输的步骤:
1. 创建捆绑包

user@machineA ~$ cd repo
user@machineA repo$ git bundle create ../repo.bund
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值