zoukankan      html  css  js  c++  java
  • git剖析

    GIT(分布式版本控制系统)

    Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

    1、特点

    分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
    下图是经典的git开发过程。
    Git的功能特性:
    从一般开发者的角度来看,git有以下功能:
    1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。
    2、在自己的机器上根据不同的开发目的,创建分支,修改代码。
    3、在单机上自己创建的分支上提交代码。
    4、在单机上合并分支。
    5、把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。
    6、生成补丁(patch),把补丁发送给主开发者。
    7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。
    8、一般开发者之间解决冲突的方法,开发者之间可以使用pull 命令解决冲突,解决完冲突之后再向主开发者提交补丁。
    从主开发者的角度(假设主开发者不用开发代码)看,git有以下功能:
    1、查看邮件或者通过其它方式查看一般开发者的提交状态。
    2、打上补丁,解决冲突(可以自己解决,也可以要求开发者之间解决以后再重新提交,如果是开源项目,还要决定哪些补丁有用,哪些不用)。
    3、向公共服务器提交结果,然后通知所有开发人员。
    优点:
    适合分布式开发,强调个体。
    公共服务器压力和数据量都不会太大。
    速度快、灵活。
    任意两个开发者之间可以很容易的解决冲突。
    离线工作。
    缺点:
    资料少(起码中文资料很少)。
    学习周期相对而言比较长。
    不符合常规思维。
    代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。
  • 相关阅读:
    Blank page instead of the SharePoint Central Administration site
    BizTalk 2010 BAM Configure
    Use ODBA with Visio 2007
    Handling SOAP Exceptions in BizTalk Orchestrations
    BizTalk与WebMethods之间的EDI交换
    Append messages in BizTalk
    FTP protocol commands
    Using Dynamic Maps in BizTalk(From CodeProject)
    Synchronous To Asynchronous Flows Without An Orchestration的简单实现
    WSE3 and "Action for ultimate recipient is required but not present in the message."
  • 原文地址:https://www.cnblogs.com/java0619/p/6802938.html
Copyright © 2011-2022 走看看