zoukankan      html  css  js  c++  java
  • github的开源性

      github,已经不是什么新东西了,许多人都在预言它将成为新时代的版本控制器.如果,你还不知道,你可以通过这个网址:https://github.com/ 来认识它.

         刚开始接触它的时候,觉得它总体版面有些乱,可能是全英的关系,对这些字符有些抵触.后来从注册,到使用,发现原来是这样的简便.just follow it...you can see the details in the GitHub Bootcamp.

      

    跟着它一步步走下去,相信你开始github并不难.

    最近看了《鸟哥的私房菜》,里面讲了linux的历史。里面比较有意思的是,史托曼开发出Emace,gcc,并把它们放在了GPL(通用公共许可证)的保护下,从而避免了它们沦为收费软件,到后来的GNU计划,托瓦兹开发出linux。。。一切的一切都是离不开一个美好的想法。一个开源的软件将会有许多人下载查阅,软件的漏洞和程序的优化会进展很快。在安全性和效能上面就会比较有保障。这无形中就会有一票子人帮你查错了,不仅壮大了团队,还有程序。

    我不知道github是不是延续这样的想法。只是github里的代码大多是开源的,让我觉得或许有一天,也会有像linux这样优秀的程序会在这里出现,有很多人follow;很多人查看它的sources;很多人会提出自己的建议给开发者;有自己想法的人提交自己开发出的新功能;会有人去fork它回来,然后自己进行新的修改,成为更适合自己使用的产品;当然,你还可以成为项目的一员,和团队共同努力,而你们可能相距万里之远。

    github让这一切成为可能。

    下面说一下它的新特性,或者说它和其它版本控制器不同的地方吧。

    1)快照,非比较差异

    像SVN这些版本控制器,它们仔细记录着,你改变了哪些文件,哪些地方。而github只关注你的整体是否发生变化,它用快照记录着你文件的样子。每次更新,它就会新建一个快照,并把索引指向它。为了节省空间,当你的文件并没有发生变化的时候,它不会建立新的快照,而是指向先前的快照。

    2)本地执行

    不同于把数据库放在网上的其它版本控制器,在github,你可以很轻松的不断update,而不用担心没有网络这个问题,而你也可以在你的客户端看到自己的更新信息。等到有网络的时候,你只要把你更改的内容push到远程的镜像仓库中。这是因为绝大多数操作都只需要访问本地文件和资源,git在本地磁盘中保存在所有有关当前项目的历史更新。

    3)数据完整性

    保存到git之前,所有数据都要进行行内校验和计算,使用SHA-1的哈希值作索引。

    4)clone

    git收取的历史项目的所有数据(每一个文件的每一个版本)。所以就算服务器上面挂了。你还是可以通过从客户端克隆来的版本重建仓库。

    5)分支

    git鼓励在工作流程中频繁使用分支与合并。

    对哦,说说它的盈利模式吧。它目前对个人开源项目是免费,但是有空间大小限制。它对不开源的项目进行收费,提供代码托管服务,目前其个人代码托管服务为每月7美元,带有防火墙的企业托管服务则需要每月至少5000美元。

  • 相关阅读:
    Vue框架(三)——Vue项目搭建和项目目录介绍、组件、路由
    Vue框架(二)——Vue指令(v-once指令、v-cloak指令、条件指令、v-pre指令、循环指令)、todolist案例、Vue实例(计算、监听)、组件、组件数据交互
    Vue框架(一)——Vue导读、Vue实例(挂载点el、数据data、过滤器filters)、Vue指令(文本指令v-text、事件指令v-on、属性指令v-bind、表单指令v-model)
    异步调用与回调机制
    进程池与线程池
    多线程实现并发的套接字通信
    线程queue
    定时器
    Event事件
    信号量
  • 原文地址:https://www.cnblogs.com/cc11cc/p/2646251.html
Copyright © 2011-2022 走看看