关于git的发展和历史介绍网上有很多资料,大家可以自行去了解,这里给大家一个传送门git介绍在这里我就不多说了。我们今天本篇文章的定位就是帮助大家来了解一下关于git和svn之间的区别及git的安装。仅此而已,而关于git的更多用法在后面的文章中会有陆续的介绍,请大家耐心等待哈!好,咱们步入正题~~

 说实话,我本人使用比较多的是SVN,因为简单。但是对比Git以后,我更偏爱Git,但是git的学习成本比svn大,而且在实际项目开发过程中,也要看团队的选型,两者工具都属于同类型属性的,一个是收费(可以破解)、一个是免费开源。

相信很多测试和开发的小伙伴都用过svn,那么svn作为入门级的版本管理工具应用的企业也是比较多的。那么我们先来介绍一下关于svn的一些特点吧,在给大家回顾一下。说的简单点就是svn需要一台svn服务器,建立N个子账号。不同用户可以通过账号登录客户端向svn服务器提交资料代码等等。而且日常使用最多的功能就是提交、更新、下载、提交、版本回退。其实,SVN的功能有很多,但是在实际工作中使用最频繁的翻来覆去就是那么几个。这个规律在任何一门工具使用过程中都复用。好,我们来看一下关于SVN有哪些优缺点:

优点: 
1、管理方便,逻辑明确,符合一般人思维习惯。

2、易于管理,集中式服务器更能保证安全性。 
3、代码一致性非常高。 
4、适合开发人数不多的项目开发。

5、简单、易用、

缺点: 
1、 服务器压力太大,数据库容量暴增。 
2、 如果不能连接到服务器上,基本上不可以工作。看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等。

那我们再来看看关于git方面的介绍。我接触git的时候是在2015年年末,因为那时候的项目就是用git来管理的,最开始使用git有点不适应,因为git和svn的使用方式上基本属于跨界的,但是原理是类似的。可以这么说,如果你会Linux命令或者说对Linux操作系统有了解,那么恭喜你学习git我想将会很快,因为git源于Linux,这句话说完可能很多看文章的大牛会有些不同意把,关于git的前前后后,可以给打家推荐一个传送门,感兴趣的可以去了解一下git介绍。我们来看一下关于git的优缺点:

优点: 
1、适合分布式开发,强调个体。 
2、公共服务器压力和数据量都不会太大。 
3、速度快、灵活。 
4、任意两个开发者之间可以很容易的解决冲突。 
5、离线工作。 
缺点: 
1、学习周期相对而言比较长。 
2、不符合常规思维。 
3、代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

所以,看完git和svn的介绍,我们应该就知道两者在使用方式上区别还是蛮大的,但是在原理上都基本一样,同属于版本控制工具。不管是作为开发人员还是测试人员都需要对这两者工具的使用要了解和掌握。我们接下来就看一下如何在windows下面安装git这款开源的分布式管理工具。

Windows 平台上安装

我认为git的安装还是比较简单的,这里面我们主要介绍在windows下面的安装方法,关于如何在Linux下面部署git还请小伙伴去***找一下答案哈。在 Windows 平台上安装 Git 同样轻松,有个叫做 msysGit 的项目提供了安装包,可以到 GitHub 的页面上下载 exe 安装文件并运行。安装包下载地址:http://msysgit.github.io/   我们点击下载,根据自己的操作系统的类型选择对应的win32或者win64位。

完成安装之后,就可以使用命令行的 git 工具(已经自带了 ssh 客户端)了,另外还有一个图形界面的 Git 项目管理工具。在开始菜单里找到"Git"->"Git Bash",会弹出 Git 命令窗口,你可以在该窗口进行 Git 操作。如下图所示:

你也可以win+r键进入到命令行,输入git,如果出现下面的界面,说明你已经安装成功了!

ok 关于git的介绍和安装就到这里了,我们写一篇学习git的基本使用。

git之对比svn的更多相关文章

  1. git实践:对比svn

    先前只用过svn,自然也没有去对比什么好坏,亲自上手之后发现svn和git实在是有很多不同 svn优点: 学习成本对比非常低 服务器公司统一控制管理 安全机制, 不会每个人都拷贝一份, 可以对组员限制 ...

  2. 【转载】git命令和svn的对比

    首先,要明确的是,git和svn是完全不同的两种管理方式.他们的命令不是完全对等的. 下面只是一些相似方法的参考,而已. 参考 http://blog.csdn.net/chen198746/arti ...

  3. svn与git操作对比 (未来有空做一个 svn与git实战对比 )

    svn是集中式的,git是分布式的,但是我们日常使用的都是按照集中式唯一服务器仓库的方式来去做的,最终我们的代码都要提交到一个唯一仓库中. 他们最大的区别是本地工作拷贝的工作方式不同, 一.svn本地 ...

  4. git设置对比工具

    windows下设置 beyond compare 3 为 git  的对比工具. 首先需要先安装 beyond compare 3 工具,切记需要安装安装版的,不要搞绿色版的. mac下使用 Kal ...

  5. Git迁移 从SVN到Git

    Migrating from SVN to Git 首先我们需要在Stach或者GitHub上新建一个Repository, 拿到它的URL. 接下来参照如下步骤 : At first we shou ...

  6. 【转】SVN 与 GIT 详细对比

    git和svn的详细对比   近期就[版本管理工具是否进行切换SVN->Git]的问题进行了讨论,于是对svn和Git进行了相关研究,进而梳理出Git的特点(优.缺点),最后将Git与SVN进行 ...

  7. Git 对比 SVN

    转自:http://www.aqee.net/5-fundamental-differences-between-git-svn/ 我是一开始就用Mercurial, Git这类的系统.(现在已经百分 ...

  8. git-svn:通过git来管理svn代码

    简介 svn和git都是常用的版本管理软件,但是git无论在理念或是功能上都比svn更为先进.但是有的公司是以svn作为中央仓库,这时git与svn代码的同步就可以通过 git-svn这个软件进行,从 ...

  9. git如何使用 svn如何使用

    git和svn是2款常用的版本控制系统. git 的功能: 1.从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上. 也就是说自己机器上有一个git仓库. 这和svn是不同的,svn是没有本 ...

随机推荐

  1. Python学习系列(六)(模块)

    Python学习系列(六)(模块) Python学习系列(五)(文件操作及其字典) 一,模块的基本介绍 1,import引入其他标准模块 标准库:Python标准安装包里的模块. 引入模块的几种方式: ...

  2. Java 虚拟机-垃圾收集算法

    本文主要介绍Java虚拟机的垃圾回收算法. 一.概述 二.标记-清除算法 Mark-Sweep.如同名字,该算法分两步: 标记:标记处需要回收的对象 清除:标记完成后统一回收被标记的对象. 缺点: 效 ...

  3. BufferedInputStream与BufferedOutputStream

    BufferedInputStream是带缓冲区的输入流,默认缓冲区大小是8M,能够减少访问磁盘的次数,提高文件读取性能:BufferedOutputStream是带缓冲区的输出流,能够提高文件的写入 ...

  4. Terracotta设计原理分析--(部分内容来自官方描述)

    因为工作中历史产品采用了terracotta作为分布式缓存线性扩展平台,因此不得不提前对其原理做了相关了解,当然其中很多的设计思想和oracle.memcached的设计相似,但也有自己的亮点,那就是 ...

  5. asp.net数据分页方法

    /// <summary> /// 数据分页方法 /// </summary> /// <param name="PageIndex">当前页& ...

  6. nginx安装及编译参数详解

    1.centos下Yum安装 Nginx yum list|grep nginx 发现没有可用的结果通过创建下面的文件在系统中添加nginx仓库的yum配置vi /etc/yum.repos.d/ng ...

  7. Go基本语句

    递增递减语句 在GO中,++与--是作为语句而并不是作为表达式 package main import "fmt" func main() { a:= //a=a++ //语句而非 ...

  8. 基于ASIHTTPRequest封装的HttpClient

    ASIHTTPRequest作为一个比较知名的http访问库本身功能比较强大,在项目开发过程中,如果每个请求,都要使用ASIHTTPRequest来写,有以下几个弊端: (1)繁琐,无封装性. (2) ...

  9. juc线程池原理(六):jdk线程池中的设计模式

    一.jdk中默认线程池中的代理模式 单例类线程池只有一个线程,无边界队列,适合cpu密集的运算.jdk中创建线程池是通过Executors类中提供的静态的方法来创建的,其中的单例类线程池的方法如下: ...

  10. 011. Python中*args, **kwargs 和 pass 和self 解释

    *args, **kwargs →在python都表示可变参数, *args表示任意多个任意类型无名参数, 是一个元组; **kwargs表示关键字参数(key/value参数), 是一个字典,接收的 ...