订阅本站

在版本控制系统的选型上,是选择Git还是SVN?

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

但对于企业用户来说这个决心不太好下。部分原因是出于对Git的误解,部分原因是尚不了解 Git到底能给项目管理带来什么好处。希望本文能对您项目的版本控制系统选型提供帮助。

对SVN的迷信和对Git的误解

误解1:SVN只能检出(checkout)一个版本(revision)的代码,而Git却可以脱库!

这个误解是如此普遍,简直成了SVN在企业市场中封杀Git的尚方宝剑。其实稍微思考一下 这个谣言就很难传播。既然SVN能够读取授权访问的文件的每一个版本,那么就能够重组这些版本, 进而实现对版本库的完整复制。即SVN也可以脱库。

SVN脱库的工具SVN本身就提供:svnsync。这个工具主要用于SVN的版本库镜像。 例如将版本库http://host.name/svn/repo脱库到本地的dump目录,命令如下:

$ svnadmin create dump
$ printf '#!/bin/sh\nexit 0\n' > dump/hooks/pre-revprop-change
$ chmod a+x dump/hooks/pre-revprop-change
$ svnsync init file://$(pwd)/dump http://host.name/svn/repo
$ svnsync sync file://$(pwd)/dump

如果使用git-svn则为SVN“脱库”更简便。

$ git svn clone -s http://host.name/svn/repo dump

有人认为SVN可以对目录授权,从而阻止对整个版本库进行脱库操作。 下面就来看看SVN的授权究竟是否可靠。

查看全文

最近在做一个项目,抱着好奇心用了一下Spring MVC,用下来发现Spring MVC确实有很好的地方,首先,他的注解做的比Struts2好多了,@RequestMapping就能够直接指明需要处理的URL,并且@RequestMapping是方法级别的,且能够指定不同的请求参数,例如一个方法用来处理POST另一个用来处理GET,看上去就很直观明了。

导读:近日,whattofix.com刊登了一篇Daniel Markham的文章《What Level Programmer Are You?》,文内将参差不齐的程序员按照技术水平分为从“读写”到“上帝”,共十一个阶段,以帮助广大程序员找到自身定位并从中发现自己发展方向。以下是文章摘要:

随着技术发展,编程悄然融入了我们的生活。我们已然离不开那些程序和编程语言。很多人都在不同程度地谈论着如何编程,也诞生出很多编程语言排行,那么程序员到底应该如何分级呢?

首先要明白什么是程序员。设计自己的Apache Web服务器的家伙?制作一个复杂Excel的家伙?还是能自己开发RPG的家伙?Minecraft的玩家?这些都属于程序员的哪一个级别呢?当我们说:“每个人都需要了解编程”,这句话意味着什么?

所以,我们需要制定一个程序员的等级,以便让程序员们了解自己所处的环境和发展方向。

Level 1,读写——他们了解设置Web服务器的方法,在普通情况下能够通过配置方式获取工作所需要的东西。他们有使用文本编辑器和文件系统的基础知识,还拥有移动和操作文件的能力,如ZIP和FTP。也能在结构中使用抽象符号、解析方式以及系统技能。

查看全文

老外为何学不好中文

LICH 发表于 2012-2-11 分类 乱七八糟 | 发表评论

保护性拆除、休假式治疗、临时性强奸、轻度型追尾、和谐式维稳、幻想型自由、试探性自杀、合约式宰客、政策性调控、倒退性改革、疯狗式贪污、挽救性枪毙、正确性错误、保护性销毁、礼节性受贿、政策性提价、钓鱼式执法、确认性选举、临时性员工,普遍性无耻——中文太难理解了,我们都很难理解,何况老外。

维基解密今日公布了黑客从美国政亽府电脑中窃取到的一份文件,立刻轰动全球。

这是一份由美国NASA、FBI、FDA、EPA等机构共同调研撰写的报告,报告指出,日本大地震及海啸对福岛核电站造成的严重损坏被日本政亽府刻意隐瞒,其实,巨量的放射性物质早已泄漏,且根据人类目前的科技水平已经无法阻止和补救,核亽辐射会随季风和洋流迅速扩散至全球,使全人类都受到致命的辐射伤害,19个月内,人类及地球上的所有生物将遭受灭顶之灾,这也正是古老玛雅文明关于2012预言的真相。

查看全文

有时候想了解一下自己装的Linux系统到底更新到了什么版本以及是哪个分发版本,如CentOS、Debian、Ubuntu等等,有如下一些命令:

查看内核版本:uname -a;

查看分发版本:cat /etc/issue;

或者lsb_release -a;

Redhat系列(含CentOS)要安装下列的包:yum install redhat-lsb;


QR Code Business Card