博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
以git对照看svn
阅读量:5845 次
发布时间:2019-06-18

本文共 1219 字,大约阅读时间需要 4 分钟。

hot3.png

  1. 前言

    这篇博文并不是要排挤哪个工具,但出于第一印象和本人对于Linus的崇拜,难免带有感情色彩。

  2. 命令对照

    svnadmin create  ------------------------------> git init            

    svn co                 ------------------------------> git clone        

    svn update          ------------------------------> git pull        

    svn add              ------------------------------> git add        

    svn commit        ------------------------------>  git add, git commit        

    svn status          ------------------------------>  git status        

    svn switch                 ------------------------>  git checkout

    svn merge                ------------------------>  git merge

    svn revert        ------------------------------> git checkout

  3. 分支管理

    git是把内容按元数据方式存储,简单么来说你写代码的所有分支和记录都放在.git文件夹内,所以git的仓库比较大;而svn是按文件的形式来组织的,一个分支一个文件夹。这种不懂直接导致了对于分支管理的不同。svn的branch和tag其实就是从trunk上copy出来的代码,以文件夹的形式存在,你能很直观的在branches文件夹下看到;而git的话因为信息存在.get文件夹下,要看分支信息就只能用git branch命令看了。svn的switch命令我感到很不好用,相对git checkout就简单很多,反正我们只关心当前工作目录。对此,写一个小脚本来切换在nginx下的root目录。

  4. 分布式

    众所周知git是分布式的,其好处很明显,commit不用连网,本地的管理和仓库相对独立,自由度很大(特别是stash的应用);svn commit需要连网。

  5. 易用性

    由于设计理念和历史原因,svn的可视化支持非常好;git的话用过一些可视化版本或者编辑器、ide插件,但都不及直接命令行好用。

  6. 代码管理过程

    一下以RabbitVCS为例说一下svn管理流程。

    checkout到本地

    如果修改的幅度很小,可以选择把要修改的文件或者分支上锁,修改,合并到trunk,提交

    如果修改比较大,可以不要请求锁,当修改完代码后要检查(diff)一下本地文件是否和远程的相适应(可能别人也提交了代码,但不影响自己的修改),如果适应就可以提交了,如果不适应(冲突)就要做排除冲突的工作再提交

    144003_NdtC_1431514.png

    144004_BxxH_1431514.png

      

转载于:https://my.oschina.net/xjchan/blog/389049

你可能感兴趣的文章
C#中的Dictionary简介
查看>>
css09浮动属性
查看>>
软考 2015年下半年卷 错题知识点记录
查看>>
强制卸载kernel
查看>>
js 杂项(一)函数篇
查看>>
自适应辛普森法
查看>>
pythonGUI-wxpython
查看>>
精妙SQL语句集合
查看>>
最小生成树模板 加 例题分析 (最小生成树类型汇总)
查看>>
KitKat带来短信应用的改变
查看>>
web渗透测试中WAF绕过讲解(二)基于HTTP协议绕过
查看>>
【CSON原创】CSS的障眼法:利用border实现图片的翻转
查看>>
oracle:plsql学习总结(oracle database 10g sql 开发指南)
查看>>
〔转〕Word域的应用和详解2_等式和公式域
查看>>
FZU 1502 Letter Deletion
查看>>
javascript写的ajax请求
查看>>
寄存器是什么 有什么作用
查看>>
转载 《Python爬虫学习系列教程》学习笔记
查看>>
Android中实现两次点击返回键退出本程序
查看>>
Flex组件的项目渲染器(ItemRenderer)使用总结
查看>>