首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

git: 四种git协议 (本地协议、HTTP 协议、SSH协议Git 协议)

转载自 服务器上的 Git - 协议 : ---- 到目前为止,你应该已经有办法使用 Git 来完成日常工作。 然而,为了使用 Git 协作功能,你还需要有远程的 Git 仓库。...---- 协议 Git 可以使用四种主要的协议来传输资料:本地协议(Local),HTTP 协议,SSH(Secure Shell)协议Git 协议。...智能 HTTP 协议或许已经是最流行的使用 Git 的方式了,它即支持像 git:// 协议一样设置匿名服务,也可以像 SSH 协议一样提供传输时的授权和加密。...如果你要同时提供匿名只读访问和 SSH 协议,那么你除了为自己推送架设 SSH 服务以外,还得架设一个可以让其他人访问的服务。 Git 协议 接下来是 Git 协议。...缺点 Git 协议缺点是缺乏授权机制。 把 Git 协议作为访问项目版本库的唯一手段是不可取的。

16.2K20
您找到你想要的搜索结果了吗?
是的
没有找到

10.6 Git 内部原理 - 传输协议

传输协议 Git 可以通过两种主要的方式在版本库之间传输数据:“哑(dumb)”协议和“智能(smart)”协议。 本节将会带你快速浏览这两种协议的运作方式。...这个协议之所以被称为“哑”协议,是因为在传输过程中,服务端不需要有针对 Git 特有的代码;抓取过程是一系列 HTTP 的 GET 请求,这种情况下,客户端可以推断出服务端 Git 仓库的布局。...NOTE 现在已经很少使用哑协议了。 使用哑协议的版本库很难保证安全性和私有化,所以大多数 Git 服务器宿主(包括云端和本地)都会拒绝使用它。...Git 会将开始时下载的 HEAD 引用所指向的 master 分支检出到工作目录。 智能协议协议虽然很简单但效率略低,且它不能从客户端向服务端发送数据。...第一个是向和哑协议中相同的端点发送 GET 请求: => GET $GIT_URL/info/refs?

77810

Git的基础概念。Git文件的四种传输协议

Git有四种不同的协议用来传输资料,分别是: 本地协议Local HTTP协议 SSH协议(Secure Shell) Git协议 下面就针对这四种协议进行一个介绍。并标注相关的优缺点。...2.2 HTTP协议 我们主要讨论Git 1.6.6版本后的智能HTTP协议。老版本的Http协议就不做太多讨论了,毕竟现在Git都已经更新到2.35.1了。...最后,与 HTTPS 协议Git 协议及本地协议一样,SSH 协议很高效,在传输前也会尽量压缩数据。 缺点 它不支持匿名访问 Git 仓库。...要让版本库支持 Git 协议,需要先创建一个 git-daemon-export-ok 文件 —— 它是 Git 协议守护进程为这个版本库提供服务的必要条件 —— 但是除此之外没有任何安全措施。...很少有人会这样使用 优点 目前,Git 协议Git 使用的网络传输协议里最快的。

41910

4.1 服务器上的 Git - 协议

协议 Git 可以使用四种主要的协议来传输资料:本地协议(Local),HTTP 协议,SSH(Secure Shell)协议Git 协议。...智能 HTTP 协议或许已经是最流行的使用 Git 的方式了,它即支持像 git:// 协议一样设置匿名服务,也可以像 SSH 协议一样提供传输时的授权和加密。...如果你要同时提供匿名只读访问和 SSH 协议,那么你除了为自己推送架设 SSH 服务以外,还得架设一个可以让其他人访问的服务。 Git 协议 接下来是 Git 协议。...优点 目前,Git 协议Git 使用的网络传输协议里最快的。 如果你的项目有很大的访问量,或者你的项目很庞大并且不需要为写进行用户授权,架设 Git 守护进程来提供服务是不错的选择。...缺点 Git 协议缺点是缺乏授权机制。 把 Git 协议作为访问项目版本库的唯一手段是不可取的。

1.3K40

Git - Git Merge VS Git Rebase

---- 概述 Git merge和Git rebase是两种不同的版本控制工作流程,它们用于将一个分支的更改合并到另一个分支。...历史记录的清晰度: Git Merge:合并提交保留了分支的完整历史记录,但可能会在分支历史中引入多余的合并提交,使得历史记录变得复杂。...合并冲突的处理: Git Merge:如果合并过程中出现冲突,Git会创建合并冲突并等待用户手动解决。解决后,用户提交合并冲突的更改并继续合并。...Git Rebase:如果在重写历史时出现冲突,Git会在每个冲突点暂停,等待用户解决冲突。然后用户提交冲突的解决方案,并继续重写历史。这可能需要更多的交互。...---- Flow View 小结 总之,Git Merge和Git Rebase都有其用途,取决于项目的需求和团队的工作流程。

20630

Git秘籍: Git and Git Flow Cheat Sheet

"[valid-email]" 设置 git 命令行输出为彩色: $ git config --global color.ui auto 设置 git 使用的文本编辑器: $ git config -...git init 在指定目录创建一个新的本地仓库: $ git init ---- 本地修改 显示工作路径下已修改的文件: $ git status 显示提交文件的变化: $ git diff 显示指定文件的变化...date: $ git commit --amend --date="date" 把当前分支中未提交的修改移动到其他分支: $ git stash $ git checkout branch2 $ git...$ git branch -D 给当前分支打标签: $ git tag 给当前分支打标签并打开编辑器附加消息: $ git tag -a 给当前分支打标签并附加消息: $ git tag -am...: $ git push : (since Git v1.5.0) 或 $ git push --delete (since Git v1.7.0) 发布标签: $ git push --tags

1.6K20

SSDP协议_sntp协议

近来在研究SSDP,Simple Service Discovery Protocol (简单服务发现协议)。 这是用来实现无配置,自发现局域网内部服务的协议。...其实SSDP协议的请求就三种: byebye, alive, discovery byebye请求 NOTIFY * HTTP/1.1 Host: 239.255.255.250:1900 NT: someunique...:idscheme3 NTS: ssdp:byebye USN: someunique:idscheme3 NOTIFY 通知所有广播域的机器 HOST 值是固定的(IPv4),算是协议的一部分 NT...这个是GENA的定义,即通知类型,值一般是当前设备的类型 NTS (Notification Sub-Type)通知子类型,如果要遵守SSDP,这个值就代表了请求的类型,但是为什么NTS和NT搞混了呢……协议中写得非常明白...| | | Here is Server | |< ------------------------------------| | | | 好了,这个协议就这么

1.5K30

Git IDEA集成Git

配置Git忽略文件 配置原因 忽略掉与项目实际功能无关,不参与服务器部署运行的文件,能屏蔽IDE工具之间的差异 0-配置忽略文件.jpg 配置方法 创建忽略规则文件 .ignore文件 推荐命名git.ignore...存放位置 可以存放在任何位置 为了便于~/.gitconfig文件引用,推荐放在家目录下 1-存放位置.jpg git.inore文件 # Compiled class file *.class #...4-设置.jpg 配置Git安装目录 5-安装目录.jpg 点击Test后,显示版本信息 6-版本信息.jpg 初始化本地库 创建Git本地库,菜单栏VCS->Create Git Repository...7-创建Git本地库.jpg 8-创建.jpg 当文件目录中出现git文件就说明创建成功了 9-创建成功.jpg 同时pom.xml文件名会变成红色,说明git已经检测到了该项目,且pom.xml文件未被添加到暂存区中...10-创建成功.jpg 添加文件到暂存区 创建一个测试文件 12-新建测试文件.jpg 方法一 右击pom.xml文件,选择Git->Add 11-添加暂存区.jpg 方法二 右击项目目录,选择Git

1.3K20

网络协议——RPC协议

网络协议——RPC协议 远程调用协议,用于定义服务之间的接口调用规范标准 1、RPC调用标准 1.1、RPC结构 客户端(服务端):执行逻辑进行本地调用 Stub:对参数进行封装/解封装 RPCRuntime...(SOAP) 与古老的RPC协议相比,双方的SOAP协议没必要完全一致(参数顺序、参数个数等),更加灵活 2.1、Web服务描述语言(WSDL) 也是一个XML,描述了方法名、服务名、端口、请求参数等信息...wsdl”查看 2.2、统一描述、发现和集成协议(UDDI) 以SOAP协议为基础的RPC服务,将自己的wsdl文件放到UDDI中,供服务调用方封装成本地调用 3、RESTful格式的API 全称叫表述性状态转移...,基于HTTP协议的请求通过方法类型(GET、POST等)确定请求动作,数据以JSON文本格式传输 4、二进制类RPC协议 将数据压缩成二进制,减少带宽占用 Hessian2 Dubbo中默认的序列化协议...协议的统一规则,对接受的二进制流进行解析,获得真正的请求 5、跨语言类RPC协议 不同的需求使用不同的编程语言,主要为了适应跨语言调用 Protocal Buffers 使用TLV(Tag,Length

1.4K30

GitGit初体验——Git安装配置

安装的时候会提示选择安装Git UI,因为默认是使用Git Bash,也就是Git的命令行。...Git UI是给windows用户的一个Git图形界面,虽说是为了方便,但是程序员还是应该用最纯朴的方式,命令行来完成这项工作,所以我还是强烈建议使用Git Bash。   ...git add README.md git commit -m "first commit" git remote add origin https://github.com/McBye/Test.git...一目了然,这就是Git的最基本的操作了,向Git上传项目文件。   第六,上传文件的时候易出现的错误解决: 创建完README.md后,就可以push了,代码类似。   git add .   ...init git add README.md git commit -m "first commit" git remote add origin https://github.com/McBye/Test.git

1.3K20
领券