关于GitHub

基本信息

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

  作为开源代码库以及版本控制系统,Github拥有140多万开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。而且在Git中并不存在主库这样的概念,每一份复制出的库都可以独立使用,任何两个库之间的不一致之处都可以进行合并。

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

  在GitHub进行分支就像在QQ上进行交友一样,在社会关系图的节点中不断的连线。

  GitHub项目本身自然而然的也在GitHub上进行托管,只不过在一个私有的,公共视图不可见的库中。开源项目可以免费托管,但私有库则并不如此。

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

  在GitHub,用户可以十分轻易地找到海量的开源代码。

版本

  2012年12月24日,GitLab 4.0 RC2 发布,开源的 Github克隆。

内幕信息

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

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

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

Chris Wanstrath他们还在开发一些特性来帮助公司在使用Github时可以停留在sync之上。

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

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

Git和Windows

  GitHub 使用 git 分布式版本控制系统,而 git 最初是 Linus Torvalds 为帮助Linux开 发而创造的,它针对的是 Linux 平台,因此 git 和 Windows 从来不是最好的朋友,因为它一点也不像 Windows。GitHub 发布了GitHub for Windows,为 Windows 平台开发者提供了一个易于使用的 Git 图形客户端。

  GitHub for Windows 是一个 Metro 风格应用程序,集成了自包含版本的 Git,bash 命令行 shell,PowerShell 的 posh-git 扩展。GitHub 为 Windows 用户提供了一个基本的图形前端去处理大部分常用版本控制任务,可以创建版本库,向本地版本库递交补丁,在本地和远程版本库之间同步。微软也通过CodePlex向开发者提供 git 版本控制系统,而 GitHub 创造了一个更具有吸引力的Windows 版本。

配置管理

  GitHub上已自动配置的Mac笔记本电脑,一个工具,可以转换设置Linux或Windows机器。
  BOXEN是GitHub的自动化工具,设置和配置的Mac笔记本电脑软件开发或其他类型的工作,正在使用他们的开发人员,律师,设计师,付货人,等。我们的想法是准备系统以自动方式和作为无差错尽可能用最少的干预工作。根据GitHub上,与一个新的开发机器上,他的Mac系统成立,并准备在30分钟内提交代码。
   BOXEN的基础上收集了大量的几十个木偶模块,使设置的各种软件,如卡桑德拉,MongoDB中,Java软件中,Python和Ruby开发中,节 点,JS,nginx的,Skype公司,甚至MINECRAFT。虽然机器上配备了一个预配置,每个用户都可以调整它的配置应有的作用。

融资

  全球最大的社交编程及代码托管网站GitHub以其开创性的新型软件开发方式并且能高效利用有限的资源通过自力更生实现公司盈利和300%的年收入增长成功的吸引知名风投机构Andreessen Horowitz一亿美金的投资。新的资金注入将帮助GitHub平台得到进一步的改进和扩展。

  事实上,这不仅对首次接受外部投资的GitHub意义重大,同样对于投资方Andreessen Horowitz而言,这也是其迄今为止进行过的最大一次单笔投资案。作为投资案的一部分,Andreessen Horowitz的合伙人Peter Levine将入主GitHub董事会。

  根据GitHub官方解释,这笔资金除了用于扩充员工队伍,改进现有服务并移植到移动平台之外,还将服务对象从原来的编程爱好者和专业软件开发人员拓展至企业、设计师、文字工作者等更广泛的客户群体。

  GitHub有170万名软件开发人员的忠实用户,他们平均每天更新8万个并新建7千个软件库。对GitHub网站上托管的总计超过300万个软件库,其联合创始人Chris Wanstrath曾经形象地称其为“程序员的维基百科全书”。

时间: 2024-10-08 07:40:49

关于GitHub的相关文章

GitHub限制上传大于100M的单个大文件

工作中遇到这个问题,一些美术资源..unitypackage文件大于100M,Push到GitHub时被拒绝.意思是Push到GitHub的每个文件的大小都要求小于100M. 搜了一下,很多解决办法只是把这些超过100M的大文件从本地版本库中移除,使得Push可以成功.但这并没有解决如何上传大文件到GitHub的问题. 解决办法是使用Git LFS. 用法参考:http://blog.csdn.net/tyro_java/article/details/53440666 按照以上方法设置好后,就

git 把本地创建的项目放到github上

很早之前就注册了Github,但对其使用一直懵懵懂懂,很不熟练.直到昨天做完百度前端技术学院的task,想把代码托管到Github上的时候发现自己对于Git的操作是如此之愚钝,所以今天决定把Git好好学习一遍,好让自己以后能更好地使用Github,主要还是通过Git教程 - 廖雪峰的官方网站来学习.简要步骤可以直接看最后的总结. Git的安装就不说了. 第一步:我们需要先创建一个本地的版本库(其实也就是一个文件夹). 你可以直接右击新建文件夹,也可以右击打开Git bash命令行窗口通过命令来创

如何上传代码到github?

如何上传代码到github? 首先你需要一个github账号,所有还没有的话先去注册吧! https://github.com/ 我们使用git需要先安装git工具,这里给出下载地址,下载后一路直接安装即可: https://git-for-windows.github.io/ 1.进入Github首页,点击New repository新建一个项目  2.填写相应信息后点击create即可 Repository name: 仓库名称 Description(可选): 仓库描述介绍 Public,

GitHub中的html文件如何直接显示成网页形式

可以通过http://htmlpreview.github.io/这个网站实现 在地址栏中直接输入http://htmlpreview.github.io/+***.html

Windows下使用Git Bash提交代码到GitHub

以前上传代码到Github主要是通过客户端Github Desktop或者网页,换电脑后感觉安装客户端太麻烦,了解命令行的方式就很有必要了. 这里的实验是把一些代码更改提交到Json.git仓库里. "ls" 为Linux命令,用于查看当前目录下的文件及文件夹. "git init" 命令用于对当前目录进行初始化,使当前的project-name目录交由Git进行管理. "git add" 命令可以对指定文件添加跟踪.如果后面跟空格加点号&quo

Ubuntu Linux下通过代理(proxy)使用git上github.com

github.com,作为程序员的代码仓库,我们经常会用到.但有时候我们不能直接通过网络链接它,只能通过代理. 这里我有一台代理服务器,起初我以为在终端设置了代理环境就行了,其设置为在你的~/.bashrc里增加以下几行: export http_proxy="http://proxy-server:3128/" export https_proxy="http://proxy-server:3128/" export ftp_proxy="http://

工作室成员 GitHub 地址集中贴(按发布时间先后排序)

金质行 https://github.com/jinxiaohang/ 金林超 https://github.com/jinlinchao/ 王贤国 https://github.com/ErhuoHome/

git上传文件到github与gulp的简单使用

git有两种方式提交源代码到github 第一种方式通过地址提交下面介绍的是通过ssh方式上传 git使用ssh方式上传代码到githubgit首先要生成公钥和私钥 将公钥添加到github中将私钥保存在本地 + 命令:`ssh-keygen -t rsa`生成的公钥与私钥文件会在当用户目录的.ssh目录下. 把代码push到服务器时需要先pull一下(pull的作用是从远程下载git项目里的文件,然后将文件与本地的分支进行merge) git pull和gitclone区别:git pull

GitHub vs GitLab:它们有什么区别?

查看原文GitLab vs. GitHub: How Are They Different? 两者都是基于web的Git repositories(仓库),拥有流水线型的web开发流程,它们为开发团队存储.分享.发布.测试和合作web开发项目提供了中心化的.云存储的场所.Git版本控制--对于多人共同开发一个project来说非常重要--它提供了分享开源项目的平台. GitLab拥有更多的特性,它可以让开发团队拥有更多的安全性和灵活性的选择. GitLab的优势 GitLab拥有GitHub拥有

国内及Github优秀开发人员列表

自从入了Android软件开发的行道,解决问题和学习过程中免不了会参考别人的思路,浏览博文和门户网站成了最大的入口.下面这些列表取名为:国内及Github优秀开发人员列表,就是浏览后的成果. 虽然下述列表出自Android软件开发,文章定为不断更新并涉及更多领域. 谓之优秀,唯坚持也. 1. _区长 专注Android开发,专栏有:Android React Native/Android中的设计模式/Android开发最佳实践/Android ORM/Android插件化开发 https://g