版本控制器SVN与Git

来源:互联网 发布:手机量尺寸软件 编辑:程序博客网 时间:2024/05/17 04:01

       谈到做开发,那么一定离不开版本控制器。那么什么叫做版本控制器呢?版本控制(Revision control)就是是维护工程蓝图的标准做法,它能够追踪工程蓝图从诞生一直到定案的过程。是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。 Svn(Subversion)是近年来崛起的版本管理工具,Subversion最初是为了替换当年开源社区版本控制器CVS而产生的,相对CVS来说在很多方面都有很大提升。如下是SVN基本交流图。

                                           

        如果我们在开发过程中不适用版本控制将可能在开发过程中会遇到以下问题。相反,如果我们在开发过程中使用版本控制器,将会在开发过程中解决以下问题,提高开发时的工作效率。

1.备份多个版本,费空间,费时间
2.难于恢复至以前正确版本
3.容易引发BUG
4.解决代码冲突困难
5.代码管理混乱
6.难于追溯问题代码的修改人和修改时间
7.无法进行权限控制
8.项目版本发布困难


  subversion版本控制器当前已经淘汰,我们现在使用的是visualSVN。

  建立svn仓库的命令

1.svnadmin create 仓库名称

  仓库目录说明:
1.db目录:就是所有版本控制的数据存放文件。
2.hooks目录:脚本文件的目录。
3.locks目录:用放置hook来放置Subversion文件库锁定数据的目录,用来追踪存取文件库的客户端。
4.format文件是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号。
5.conf目录:是这个仓库的配置文件(仓库的用户访问帐号、权限等)。

在使用eclipse开发过程中我们应当先下载SVN插件。之后再进入 eclipse 安装目录中 dropins 目录并创建一个 subclipse.link 的文本文件(文件名任意)。内容为:path=eclipse_svn_site-1.6.5.zip解压路径(注意:路径中需要把‘\’替换成‘/’)。


      现在常用的另外一款版本控制软件是GIT。先对Git做一个简单的介绍。Git是Linus的第二个伟大作品。2005年由于BitKeeper软件公司对Linux社区停止了免费使用权。Linus迫不得己自己开发了一个分布式版本控制工具,从而Git诞生了。

     Git 是用于 Linux内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。下面我们对使用Git的好处做一个总结:

1.分布式,强调个体
2.公共服务器压力和数据量都不会太大
3.速度快、灵活
4.任意两个开发者之间可以很容易的解决冲突
5.离线工作
每日工作备份
可以吃后悔药

 如下是Git基本交互流程图。

                                                                                          


      开源项目使用Git时的工作流程图。

                                            

下面是Git中的一些常用命令:

1. 创建git资源库
git init --bare 库名称

2. 在用户文件夹下把资源clone下来
git clone <仓库目录> /g/software/repository/git/itandroid<用户目录> .
注意:clone时候用户目录必须为空


3. 创建一个文件,纳入到版本控制中。
git add <文件名>
第一次执行会出警告:warning: LF will be replaced by CRLF in readme.txt.
The file will have its original line endings in your working directory.
警告处理:需要配置用户信息
git config user.name = "zhangsan"
git config user.email = "itandroid@gmail.com"

4. 提交到本地版本库里。
git commit <文件名>

5. 推送到远程共享版本库中
git push origin master

6. 切换用户,拉取最新的文件
git pull

1 0
原创粉丝点击