源代码管理工具-GIT

源代码管理工具-GIT


一. git 概述

1. git 简介?

  1. 什么是git?

    > git是一款开源的分布式版本控制工具
    > 在世界上所有的分布式版本控制工具中,git是最快、最简单、最流行的         
    
  2. git的起源?

    > 作者是Linux之父:Linus Benedict Torvalds
    > 当初开发git仅仅是为了辅助Linux内核的开发(管理源代码)
    
  3. git的现状?

    > 在国外已经非常普及,国内并未普及(在慢慢普及)
    > 越来越多的开源项目已经转移到git
    

2. 常见的源代码管理工具有哪些?

> CVS
    - 开启版本控制之门
    - 1990年诞生,“远古时代”的主流源代码管理工具

> SVN
    - 全称是Subversion,集中式版本控制之王者
    - 是CVS的接班人,速度比CVS快,功能比CVS多且强大
    - 在国内软件企业中使用最为普遍(70%-90%)

> ClearCase
    - 收费的集中式版本控制工具,安装比Windows还大,运行比蜗牛还慢
    - 能用ClearCase的一般是世界500强,他们有个共同的特点是财大气粗或者人傻钱多

> VSS
    - 微软的集中式版本控制工具,集成在Visual Studio中

3. 集中式版本控制

所有的代码都集中在一块, 统一进行管理
image

4. 分布式版本控制

在每个客户端都有一份完整的代码仓库, 可以在每个客户端自行管理
image

5. git 和 svn的简单对比

> 速度
    在很多情况下,git的速度远远比SVN快
> 结构
    SVN是集中式管理,git是分布式管理
> 其他
    SVN使用分支比较笨拙,git可以轻松拥有无限个分支
    SVN必须联网才能正常工作,git支持本地版本控制工作
    旧版本的SVN会在每一个目录置放一个.svn,git只会在根目录拥有一个.git

6. SVN工作流程和GIT工作流程对比

- svn checkout —— git clone
    svn 只下载代码, git 会连同代码仓库一起下载下来

- svn commit —— git commit
    svn 是提交到服务器,git 中是提交到本地仓库,需要使用push才能提交到服务器

-  svn update - git pull
    都是从服务器下载最新被修改的代码

分布式和集中式最大的区别在于:在分布式下,本地有个代码仓库,开发者可以在本地提交; 而集中式版本控制, 只有在服务器才有一个代码仓库, 只能在服务器进行统一管理

7. git工作原理

  1. 概念理解

    - 工作区
        > 与.git文件夹同级的其他文件夹或者子文件夹
    
    - 版本控制库
        > 暂缓区
        > 分支(Git不像SVN那样有主干和分支的概念. 仅仅存在分支,其中master分支为默认被创建的分支,类似于SVN中的主干)
            切换分支:通过控制HEAD指针指向不同的分支,就可以切换*
    

* 操作原则: 所有新添加/删除/修改的文件 必须先添加到暂缓区,然后才能提交到HEAD指向的当前分支中*

8. git使用环境

  1. 单人开发只需要一个本地库

    原因:不需要与他人共享代码,只负责管理自己代码即可;例如提交代码,删除代码,版本控制等等
    
  2. 多人开发时需要一个共享版本库

    共享
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值