代码托管

GIT 传输协议实现

微笑、不失礼 提交于 2019-12-07 15:59:58
GIT 传输协议实现 在 GIT 的三种主流传输协议 HTTP SSH GIT 中,GIT 协议是最少被使用的协议(也就是 URL 以 git:// 开始的协议)。 这是由于 git 协议的权限控制几乎没有,要么全部可读,要么全部可写,要么全部可读写。所以对于代码托管平台来说, git 协议的目的仅仅是为了支持 公开项目的只读访问。 在 git 的各种传输协议中,git 协议无疑是最高效的,HTTP 受限于 HTTP 的特性,传输过程需要构造 HTTP 请求和响应。 如果是 HTTPS 还涉及到加密解密。另外 HTTP 的超时设置,以及包体大小限制都会影响用户体验。 而 SSH 协议的性能问题主要集中在加密解密上。当然相对于用户的信息安全来说,这些代价都是可以接受。 git 协议实际上相当于 SSH 无加密无验证,也就无从谈起权限控制,但实际上代码托管平台内部的一些同步服务,如果使用 git 协议实现,将会得到很大的性能提升。 传输协议规范 git 协议的技术文档可以从 git 源码目录的 Documentation/technical 找到,即 Packfile transfer protocols 创建 TCP 连接后,git 客户端率先发送请求体,请求格式基于 BNF 的描述如下: git-proto-request = request-command SP pathname

windows下使用TortoiseGit在Git@OSC代码托管

瘦欲@ 提交于 2019-12-04 22:11:29
TortoiseGit是一个免费开放的,为git版本控制系统服务的图形界面客户端。TortoiseGit没有集成Git。如果你没有安装过Git,那么需要先安装Git。 工具 windows Git TortoiseGit Git@OSC 方法/步骤 一、下载安装Git 1、下载Git 从下载地址选择合适自己的版本,这里是Windows下安装,因此选择Windows, http://git-scm.com/download 2、安装Git 下载完成后,双击安装。Wdindows安装软件,这里不再细说。 使用TortoiseGit在Git@OSC代码托管的简单操作。 二、下载安装TortoiseGit 1、下载TortoiseGit 从下载地址选择合适自己的版本, http://tortoisegit.org/ 下载页面也有中文语言包(如果需要) 2、安装TortoiseGit 下载完成后,双击安装。Wdindows安装软件,这里不再细说。 中文安装包在TortoiseGit安装完成后双击安装。 安装完成后在桌面右击鼠标查看新增功能项,我这里显示的图片是已经设置好中文了。 三、配置TortoiseGit 1、在你的要建的git目录下,右键TortoiseGit->设置,设置git安装路径并检查,应用; 2、设置用户信息,右键TortioseGit->设置->Git->全局; 3

git@oschina使用入门(图形界面版)

▼魔方 西西 提交于 2019-12-02 04:13:32
首先,如果你想使用git @oschina ,你的电脑上必须先有git工具:你可以从这里获取谷歌提供的git.exe http://git-scm.com/ 当然,如果你能熟练通过命令行操作git,那么这一个工具完全够你使用了。当然,如果那样,大神也不用再看这篇博客。所以,我推荐再下载一个tortoisegit http://code.google.com/p/tortoisegit/ (需要先安装git,在安装tortoisegit)。 接下来我们就开始搭建本地与Git@OSC的桥梁了。 首先,在开始菜单找到 运行后点击generate,创建密钥(会等一段时间)得到后保存公钥和私钥。 这时候就可以进入http://git.oschina.net/keys/new,添加自己的公钥, 此时就可以在git@oschina创建一个项目了,复制项目地址,在电脑本地选择一个同步项目的目录,最好是空的,然后右键:在这里创建版本库,不要勾选,确定。 然后右键,tortoisegit-->setting 远端是自动生成的,URL就是复制的git @oschina putty密钥是本地的私钥 设置完成后,回到同步项目的目录,右键,pull,就可以把远端代码拉去到本地了 然后右键菜单:Git提交->master,写注释,点确定 最后右键菜单:TortoiseGit->推送,直接点确定 ////////

Subversion 和 GIT 开发者演进

牧云@^-^@ 提交于 2019-12-02 00:51:15
##前言 在开发软件的过程中,往往是需要多个人参与,版本控制系统的协同工作的重要性不言而喻,除此之外, 版本控制软件对整个开发流程的记录对于缺陷追踪也是非常重要的。版本控制系统也是软件开发的基础设施。 笔者开始接触版本控制系统是大学的时候,最开始安装了 TortoiseSVN ,然而 TortoiseSVN 仅仅是占据了硬盘空间而没有发挥作用,很多开发者在接触新事物的时候,并不一定会有极大的热情去了解, 有的走了很多弯路后返回到了原地,只有当深入了解以后,才觉得其中异常的精彩。当我在 Windows 下编译 LLVM 的时候, Subversion 开始发挥作用,彼时,几乎所有开源的大型软件都是使用 Subversion 进行托管,当然还有部分 CVS。 GIT 远远没有目前流行。后来参加工作后,就是代码托管的工作,对 Subversion 和 Git 有了一定程度的了解, 逐渐有了自己的思考。 大多数人对版本控制系统的解读都是站在使用者的角度,而本文是站在一个代码托管的开发者立场。 ##版本控制系统见闻 版本控制系统的历史可以追溯到20世纪70年代,这是一个军方开发的 CCC (变更和配置控制)系统,名字叫做 CA Software Change Manager 随后,版本控制系统开始发展起来。 CVS 一度曾经是开源软件的第一选择,比如 GNOME、KDE、THE GIMP 和

上传本地项目到git.oschina

拈花ヽ惹草 提交于 2019-11-29 18:42:14
参照 http://my.oschina.net/158/blog/530112 ,后面添加一些自己的使用笔记。 1、创建公钥: 如下命令生成sshkey: ssh-keygen -t rsa -C "529017946@qq.com" 查看你的public key,并把他添加到 Git @ OSC http://git.oschina.net/keys cat ~/.ssh/id_rsa.pub 添加后,在终端(Terminal)中输入 ssh -T git@git.oschina.net 若返回 Welcome to Git@OSC, yourname! 证明添加成功! 2、到Git @ OSC 上面创建一个新的项目,并拷贝项目的ssh地址,这里假设地址为ssh_address 3、上传本地项目到新建的仓库中: 打开Git Bash,将目录切换到你的项目所在的文件夹 例如你有一个项目Demo,你就切换到.../Demo目录下 运行命令 git init . 注意后面有一个点 运行命令 git pull ssh_address 运行命令 git add -A . 注意后面有一个点 运行命令 git commit -am "对代码的有关说明" 运行命令 git push ssh_address master 最后出现进度,上传速度,done,证明上传成功。 后记: 今天换了台电脑

作为一名程序员这些代码托管工具你都知道吗?

纵然是瞬间 提交于 2019-11-27 09:58:20
  作为一名优秀的开发者,大家都会用到代码托管,我本人用的是github,确实github里面有很多很多开源的项目,所以我们目前的创业项目程序员客栈www.proginn.com都会给开发者展示自己的github账号,个人一直觉得代码虽然不能直接代表什么,但是那个程序艺术的体现,也是所有开发者个人的心血,这里致敬所有的优秀开发者,下面分享一下一些常用的代码托管工具。    1 、GitHub   这个我相信百分之九十的开发者都知道,大家说才是真的好。    2 、Gitlab   Gitlab好像是Github的弟弟,哈哈,开玩笑,不过支持一切公开和非公开的代码托管。    3 、Bitbucket   免费提供团队成员创建无限量的私有代码管理库。但是仅仅支持团队只有五人,个人感觉这个代码托管工具适合核心开发的五人团队进行开发流程化管理以及代码的复查。    4 、开源中国代码托管   上面提到的都是国外的代码托管工具,开源中国我相信大家都知道,可以创建很多个项目代码可以公开化也可以私有化。    5 、coding.net   Coding一直是国内首屈一指的代码托管工具,功能和开源中国的差不多,口碑方面都做的不错,很多开发者在用。    6 、CSDN代码托管   老牌程序员门户CSDN推出的代码托管。    7 、京东代码托管平台   京东代码托管平台,开发者用的不是很多