实习加毕业工作也一年多了,用过svn 也用过git,现在也是两种版本管理工具交替不同的项目再用。

趁年末放假之际,来梳理下。

对于SVN常用命令:

.svn cp svn-trunk地址  svn-branches地址  创建分支

.svn sw branch-name  切换分支

.svn merge branch-name 合并分支

.svn revert flie-name  忽略修改文件

.svn status  查看当前文件状态

.svn add flie-name  添加文件至版本库

.svn commit -m "备注信息"   提交代码至版本库

.svn up 从版本库更新代码

对于SVN使用中唯一觉得最大的优点就是我可以单文件独立,新建分支,其他文件依旧能够更新主干上的代码。

当然这也是导致不太喜欢SVN的一个原因之一,就是为了避免长时间开发最终合并分支出现冲突,所以常常在小范围内建分支,单文件分支较多,前后端分支在一起加起来,最多的时候能有20个分支,切分支和分支真的很浪费时间(因为我用命令行),所以这也是我觉得SVN优缺点的利与弊之一。

对于git的常用命令:

.git  clone  git@gitxxxxxx  从git仓库克隆代码至本地

.git  checkout -b  branch-name   新建分支并切换到分支

.git  push origin branch-name   把本地分支推送到远程仓库

.git  branch  -a  查看所有分支(包括远程仓库的分支)

.git  checkout   branch-name   切换分支

.git checkout   flie-name   忽略文件修改

.git  status    查看当前分支或master上文件修改状态

.git  add --a   添加所有修改文件至本地暂存工作区

.git  commit -m "备注信息"  -a   提交修改至工作区

.git  push    将本地修改推送至版本库

.git  pull    从版本库更新代码至本地

对于git的好感度一直远超于SVN(可能是因为一开始的先入为主),当然其中因为git 是分布式的,而svn是集中式的,只要我本地克隆了代码,哪怕我无网络的修改了代码,但我依然能提交至我的工作区,等有网络后再进行远程推送,而SVN就没有这一个特性。git的优点除了分布式,git的分支树也比SVN要好太多,但svn的权限控制确实要强大的多,不是root用户对于有些文件没有任何的操作权限,而git只要是你克隆下来的文件你都可以进行操作。

总而言之,git分布式版本控制更好,而svn代码权限控制更好。

这是我个人的想法,我还小,不喜勿喷哈~

年末整理git和svn的使用心得的更多相关文章

  1. 蒋鑫:为什么 Git 比 SVN 好

    在版本控制系统的选型上,是选择Git还是SVN? 对于开源项目来说这不算问题.使用Git极大地提高了开发效率.扩大了开源项目的参与度. 增强了版本控制系统的安全性,选择Git早已是大势所趋. 但对于企 ...

  2. 为什么说 Git 比 SVN 更好

    为什么说 Git 比 SVN 更好 在版本控制系统的选型上,是选择Git还是SVN? 对于开源项目来说这不算问题.使用Git极大地提高了开发效率.扩大了开源项目的参与度. 增强了版本控制系统的安全性, ...

  3. 为什么Git 比 SVN 好

    原文链接:http://www.worldhello.net/2012/04/12/why-git-is-better-than-svn.html Why Git is better than SVN ...

  4. 国内代码托管平台(Git和SVN)

        Github(Git和SVN)https://github.com/ 可以说GitHub的出现完全颠覆了以往大家对代码托管网站的认识.GitHub不但是一个代码托管网站,更是一个程序员的SNS ...

  5. GIT和SVN之间的区别及基本操作对比

    1)GIT是分布式的,SVN不是: 这是GIT和其它非分布式的版本控制系统,例如 SVN,CVS等,最核心的区别.如果你能理解这个概念,那么你就已经上手一半了.需要做一点声明,GIT并不是目前第一个或 ...

  6. GIT和SVN之间的五个基本区别

    GIT不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等.如果你是一个具有使用SVN背景的人,你需要做一定的思想转换,来适应GIT提供的一些概念和特征.所以,这篇文章的主要目的就是 ...

  7. iOS开发——源代码管理——git(分布式版本控制和集中式版本控制对比,git和SVN对比,git常用指令,搭建GitHub远程仓库,搭建oschina远程仓库 )

    一.git简介 什么是git? git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的   git的起源 作者是Linux之父:Linus Bened ...

  8. GIT与SVN的区别

    1.GIT是分布式的,SVN不是: 这是GIT和其它非分布式的版本控制系统,例如SVN,CVS等,最核心的区别.如果你能理解这个概念,那么你就已经上手一半了.需要做一点声明,GIT并不是目前第一个或唯 ...

  9. git vs svn

    http://www.tuicool.com/articles/e2MnAb Git与SVN的不同之处 svn为集中化的版本控制,svn获取最新的版本或者提交更新,历史记录等信息每次都要连接中央版本库 ...

随机推荐

  1. Android项目--XML解析

    对于xml文件,一般有两种解析方式: -----pull解析-------- -----Sax解析------- 如果xml文件是本地文件,那么就好说了 AssetManager assetManag ...

  2. PHP类

    类就是很多方法的集合这些方法是你在程序中经常会用到的一些逻辑或算法将他们包进类里面,可以提升程序的效率,减少代码的重复 比如你有一个类文件 web_common.class.php ,里面有一个类,名 ...

  3. SignalR + KnockoutJS + ASP.NET MVC 实现井字游戏

    SignalR + KnockoutJS + ASP.NET MVC 实现井字游戏   1.1.1 摘要 今天,我们将使用SignalR + KnockoutJS + ASP.NET MVC实现一个实 ...

  4. iOS基础 - iOS网络基础

    一.网络访问的四个步骤 l 第一步:确定地址URL l 第二步:建立请求 l 第三步:建立并启动连接 l 第四步:连接完成,处理结果 备注:URL,统一资源定位符(URL,英语Uniform Reso ...

  5. 实现 ready和bind事件

    Jquery揭秘系列:实现 ready和bind事件   讲这一节之前,先回顾之前的一篇<小谈Jquery>里面的代码: (function (win) { var _$ = functi ...

  6. 浅谈DevExpress<五>:TreeList简单的美化——自定义单元格,加注释以及行序号

    今天就以昨天的列表为例,实现以下效果:预算大于110万的单元格突出显示,加上行序号以及注释,如下图:

  7. 【IOS开发】如何画1像素的线

    最近在项目中画了一根1像素的线,我是通过直接花一个但是通过PS查看,画了不止1个像素. 原代码语句: label1 = [[UILabel alloc] initWithFrame:CGRectMak ...

  8. Day4:T1小技巧(类似于指针操作)T2搜索+小细节

    Day4:其中有很多小技巧get T1 一直没有听到过像这样的小技巧的略专业名词,有点类似于指针操作,之前有碰到过很多这样的题目 每次都是以不同的形式出现,但是感觉思想还是有点接近的吧(就比如某天有一 ...

  9. D12

    orz!=-=今天莫名爆人品..表示受到了惊吓.. 一下子从rank20-30+,突然间蹦到了rank3..=-=可怕.. 或许是因为T1有看过啊类似的啊..然后T3又被40指点了一下,T2打了个暴力 ...

  10. SSL协议的握手过程

    SSL握手的目的 第一,客户端与服务器需要就一组用于保护数据的算法达成一致. 第二,它们需要确立一组由那些算法所使用的加密密钥. 第三,握手还可以选择对客户端进行认证. SSL 握手概述 SSL 握手 ...