实习加毕业工作也一年多了,用过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. sqlserver大容量日志文件处理

    原文:sqlserver大容量日志文件处理 针对SqlServer2000 .SqlServer2005.SqlServer2008.SqlServer2012.SqlServer2014库日志文件优 ...

  2. StringTokenizer使用类

    StringTokenizer它被用来分离String应用类别.当量VB的split功能. 1.构造函数 public StringTokenizer(String str) public Strin ...

  3. {{angular.js 使用技巧}} - 基于验证框架的扩展(w5cValidator)

    开场白: angular.js 是谷歌出的前端js MV*框架,我也是今年做 worktile 的时候才开始接触的,起初技术选型的时候还准备使用 backbone(毕竟很多大公司在使用他,而且也是比较 ...

  4. 捣鼓一个Ajax请求管理器

    随着前端技术的不断发展,现在做的项目里很多页面里都会有大量的ajax请求,随之而来就有了一些问题: 1.没必要的ajax请求怎么处理? 2.ajax链式调用怎么维护? ajax链式调用最原始的写法: ...

  5. iOS基础 - 文本属性Attributes

    NSKernAttributeName: 调整字句 kerning 字句调整 NSFontAttributeName : [UIFont systemFontOfSize:_fontSize] 设置字 ...

  6. CGI杂谈

    CGI是一个连接外部应用程序到信息服务器(比如HTTP或者网络服务器)的标准.一个简单的HTML文档是无交互后台程序,它是静态的,也就是说它处于一个不可变的状态,即文本文件不可以变化.相反地,CGI程 ...

  7. C语言与linux的故事

    声明:本文是作者读完http://www.aqee.net/proof-that-linux-is-always-number-1/这篇文章后的随想. 凌晨2点,电脑前,程序员还在不断修改着自己的代码 ...

  8. HttpClient的使用-爬虫学习1

    HttpClient的使用-爬虫学习(一) Apache真是伟大,为我们提供了HttpClient.jar,这个HttpClient是客户端的http通信实现库,这个类库的作用是接受和发送http报文 ...

  9. [转]Top 10 DTrace scripts for Mac OS X

    org link: http://dtrace.org/blogs/brendan/2011/10/10/top-10-dtrace-scripts-for-mac-os-x/ Top 10 DTra ...

  10. [转]Inspecting Obj-C parameters in gdb

    Since the addition of i386 and x86_64 to the Mac OS’s repertoire several years back, remembering whi ...