写点什么

GitHub - 基于 Rails 的 Git 库托管

2008 年 3 月 24 日

Git 是一个分布式的版本控制系统,最初由 Linus Torvalds 编写,用作 Linux 内核代码的管理。在推出后,Git 在其它项目中也取得了很大成功,尤其是在 Ruby 社区中。目前,包括 Rubinius Merb 在内的很多知名项目都使用了 Git。Git 同样可以被诸如 Capistrano Vlad the Deployer 这样的部署工具所使用。

如前所述,作为一个分布式的版本控制系统,在 Git 中并不存在主库这样的概念,每一份复制出的库都可以独立使用,任何两个库之间的不一致之处都可以进行合并。

GitHub 可以托管各种 git 库,并提供一个 web 界面,但与其它像 SourceForge 或 Google Code 这样的服务不同,GitHub 的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“fork”的按 钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。已经有人将 GitHub 称为代码玩家的 MySpace

在 GitHub 进行分支就像在 Myspace(或 Facebook […])进行交友一样,在社会关系图的节点中不断的连线。

GitHub 项目本身自然而然的也在 GitHub 上就行托管,只不过在一个私有的,公共视图不可见的库中。开源项目可以免费托管,但私有库则并不如此。Chris Wanstrath,GitHub 的开发者之一,肯定了通过付费的私有库来在财务上支持免费库的托管这一计划。

是的,我们正是这么计划的。通过与客户的接洽,开发 FamSpam ,甚至是开发 GitHub 本身,GitHub 的私有库已经被证明了物有所值。任何希望节省时间并希望和团队其它成员一样远离页面频繁转换之苦的人士都会从 GitHub 中获得他们真正想要的价值。

Chris Wanstrath 还向 InfoQ 分享了关于 GitHub 的一些内幕信息:

GitHub 主要用 Rails 实现。我们目前在进行的 post-commit 集成小应用完全使用 Merb 编写。我们使用了 Python 的 Pygments 来做格式高亮显示,另外还用了 Ara T. Howard’s Bj 加上一些 Ruby 脚本来做我们的排队系统。当然,我们用了 Ruby Grit 库来和 Git 进行交互。

GitHub 已经有了一组引人注目的特性,除了命令式的库浏览器和一个项目 Wik,GitHub 甚至还包括了一个 GitHub gem ,以使通过 shell 方式使用 GitHub 更为方便。更多的未来特性已经在计划中:

许多人都希望能有一个条目系统,因此一个简单的条目系统已经在开发中。此外,正如我前面所言,我们尚在进行 RubyGems 服务器和一些之前留出的 post-commit 钩子方面的工作。如果你不能或就是不想托管一个你自己的守护进程,你可以使用我们所提供的。我们还在开发一些特性来帮助公司在使用 Github 时可以停留在 sync 之上。

最后,我们也在进行 API 发布方面的工作。我们很快就会发布一些只读性的 API,随后是一些很强大的“写”集成。你可以使用 API 将新的事件发布到新闻 feed 中,发消息和做其他许多很酷的事情。

目前 GitHub 尚未设定官方版本的发布日期,不过估计在三月底(现在 GitHub 已经上线,但只能通过邀请注册)。更多关于 GitHub 的信息可以参见 GitHub 官方网站 GitHub 博客。目前通过GitHub 进行代码管理的开源项目列表也已经可以查阅。

查看英文原文: GitHub - Rails-based Git repository hosting

2008 年 3 月 24 日 01:226278
用户头像

发布了 24 篇内容, 共 19982 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

阿里巴巴内部发行的“Java技术成长笔记”,清晰的标注着Java程序员应该按照怎样的路线来提升自己,需要去学习哪些技术点。

Java成神之路

Java 程序员 架构 面试 编程语言

工作日志:一文总结HBase从搭建到实操,大家一起进步

小Q

大数据 学习 编程 面试 HBase

Sentinel 是如何做限流的

vivo互联网技术

高可用 限流 底层

一鼓作气学会“一致性哈希”,就靠这 18 张图了

四猿外

分布式 算法 一致性哈希 一致性Hash算法 哈希算法

Mybatis是如何解析配置文件的?

田维常

mybatis

终于有人通过笔记+脑图+视频的模式把Spring源码讲明白了

Java架构追梦

Java 学习 架构 面试 spring源码

求求你,别再用wait和notify了!

王磊

Java

京东智联云与CDA携手 共同打造电商领域数字化人才认证标准

京东智联云开发者

大数据 数据分析 数据分析师

这份在阿里内部广受大家喜爱的“Java 突击宝典”简直太牛了!阿里的大佬们原来是这么学习的!

Java成神之路

Java 程序员 架构 面试 编程语言

Athena雅典娜交易所系统开发|Athena雅典娜交易所软件APP开发

开發I852946OIIO

系统开发

区块链发展前景广阔,要紧跟时代步伐

13828808769

区块链发展 时代发展

以理性不断的崇敬 - 对DDD之后复杂业务软件系统设计的思考

Winfield

领域驱动设计 DDD 架构设计

领域驱动设计(DDD)实践之路(四):领域驱动在微服务设计中的应用

vivo互联网技术

架构 领域驱动设计 DDD 领域驱动设计DDD

公安一体化警务系统搭建,微警务APP开发

t13823115967

App 智慧公安

FORSAGE智能合约矩阵系统软件APP开发

开發I852946OIIO

系统开发

如何搭积木式的快速开发H5页面?

徐小夕

Java 前端 前端工程 React 数据可视化

喜大普奔,FL Studio终于出官方中文版了!

懒得勤快

编曲 编曲宿主 mid flstudio 汉化

3年Java开发经验四面阿里成功定级P6年薪45w+,分享我的阿里面经(含面试题答案)希望对你有所启发!

Java成神之路

Java 程序员 架构 面试 编程语言

ReactNative | 项目复盘,涉及环境、RN版本升级、安全等方案

梁龙先森

前端 混合应用开发 React Native

时序数据库DolphinDB和TimescaleDB 性能对比测试报告

DolphinDB

大数据处理 分布式系统 时序数据库 DolphinDB 数据库开发

社区团购大战升级:零售行业再次面临挑战

石头IT视角

从面试角度分析ArrayList源码

Java旅途

Java List 面试 ArrayList

《构建高性能WEB站点》.pdf

田维常

架构

我国一项物联网安全测试技术成为国际标准;Windows 10将支持安卓应用

京东智联云开发者

架构师训练营第四周总结

Geek_xq

智慧公安微警务110报警系统开发,警务系统建设方案

WX13823153201

警务系统建设方案

数据上链,区块链技术平台搭建

t13823115967

数据上链 区块链应用

浅谈产品与项目之间的爱恨情仇

关于敏捷开发的最佳实践和工具

PingCode

程序人生 敏捷开发 研发管理 管理工具 开发平台

快来!开源一份阿里微服务指导手册:springBoot+springCloud+MQ

小Q

学习 面试 微服务 MQ SpringCloud

4年Java开发经验面试阿里被面试官用Spring Cloud吊打了一顿!离开前面试官甩给我一份《SpringCloud学习笔记》。

Java成神之路

Java 程序员 架构 面试 编程语言

InfoQ 极客传媒开发者生态共创计划线上发布会

InfoQ 极客传媒开发者生态共创计划线上发布会

GitHub - 基于Rails的Git库托管-InfoQ