年末整理git和svn的使用心得
实习加毕业工作也一年多了,用过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的使用心得的更多相关文章
- 蒋鑫:为什么 Git 比 SVN 好
在版本控制系统的选型上,是选择Git还是SVN? 对于开源项目来说这不算问题.使用Git极大地提高了开发效率.扩大了开源项目的参与度. 增强了版本控制系统的安全性,选择Git早已是大势所趋. 但对于企 ...
- 为什么说 Git 比 SVN 更好
为什么说 Git 比 SVN 更好 在版本控制系统的选型上,是选择Git还是SVN? 对于开源项目来说这不算问题.使用Git极大地提高了开发效率.扩大了开源项目的参与度. 增强了版本控制系统的安全性, ...
- 为什么Git 比 SVN 好
原文链接:http://www.worldhello.net/2012/04/12/why-git-is-better-than-svn.html Why Git is better than SVN ...
- 国内代码托管平台(Git和SVN)
Github(Git和SVN)https://github.com/ 可以说GitHub的出现完全颠覆了以往大家对代码托管网站的认识.GitHub不但是一个代码托管网站,更是一个程序员的SNS ...
- GIT和SVN之间的区别及基本操作对比
1)GIT是分布式的,SVN不是: 这是GIT和其它非分布式的版本控制系统,例如 SVN,CVS等,最核心的区别.如果你能理解这个概念,那么你就已经上手一半了.需要做一点声明,GIT并不是目前第一个或 ...
- GIT和SVN之间的五个基本区别
GIT不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等.如果你是一个具有使用SVN背景的人,你需要做一定的思想转换,来适应GIT提供的一些概念和特征.所以,这篇文章的主要目的就是 ...
- iOS开发——源代码管理——git(分布式版本控制和集中式版本控制对比,git和SVN对比,git常用指令,搭建GitHub远程仓库,搭建oschina远程仓库 )
一.git简介 什么是git? git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的 git的起源 作者是Linux之父:Linus Bened ...
- GIT与SVN的区别
1.GIT是分布式的,SVN不是: 这是GIT和其它非分布式的版本控制系统,例如SVN,CVS等,最核心的区别.如果你能理解这个概念,那么你就已经上手一半了.需要做一点声明,GIT并不是目前第一个或唯 ...
- git vs svn
http://www.tuicool.com/articles/e2MnAb Git与SVN的不同之处 svn为集中化的版本控制,svn获取最新的版本或者提交更新,历史记录等信息每次都要连接中央版本库 ...
随机推荐
- Android正在使用Handler实现消息分发机制(两)
在开始这篇文章之前,.首先,我们在总结前两篇文章Handler, Looper和MessageQueue像一些关键点: 0)在创建线程Handler之前,你必须调用Looper.prepare(), ...
- SQL Server的链接服务器(MySQL、Oracle、Ms_sql、Access、SYBASE)
原文:SQL Server的链接服务器(MySQL.Oracle.Ms_sql.Access.SYBASE) 一.使用 Microsoft OLE DB Provider For ODBC 链接MyS ...
- 通过如何通过js实现复制粘贴功能
在ie中window.clipboardData(剪切板对象)是可以被获取,所以利用这个方法我们可以实现在IE当中复制粘贴的功能,demo如下! <html> <head> & ...
- 基于C# 语言的两个html解析器
基于C# 语言的两个html解析器 1)Html Agility Pack http://nsoup.codeplex.com/ 代码段示例: HtmlDocument doc = new HtmlD ...
- [翻译]初识SQL Server 2005 Reporting Services Part 2
原文:[翻译]初识SQL Server 2005 Reporting Services Part 2 在Part 1文章中我们对SQL Server Reporting Services 2005(S ...
- C#可扩展编程之MEF
C#可扩展编程之MEF学习笔记(四):见证奇迹的时刻 前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在 ...
- mysql基础之存储引擎
原文:mysql基础之存储引擎 数据库对同样的数据,有着不同的存储方式和管理方式,在mysql中,称为存储引擎 常用的表的引擎 Myisam ,批量插入速度快, 不支持事务,锁表 Innodb, 批量 ...
- NET开发面向对象2
面向对象 (2) 继续上一篇<ASP.NET开发,从二层至三层,至面向对象>http://www.cnblogs.com/insus/p/3822624.html .我们了解到怎样把自己的 ...
- OpenGl绘制螺旋线
/** * 缓冲区工具类 */public class BufferUtil { /** * 将浮点数组转换成字节缓冲区 */ public static ByteBuffer arr2ByteB ...
- Android调用本机应用市场,实现应用评分功能
原本以为应用评分是个很小的功能,但是一实现才发现真不是个小事.网上搜索资料没有找到答案,在很多开发群里面询问了很多人也没有解决问题,最后分析log,反编译看源码才终于有了些眉目,好吧,上代码: try ...