首 页 | 新 闻 | 技术中心 | 第二书店 | 《程序员》 | 《开发高手》 | 社 区 | 黄 页 | 人 才
移 动专 题SUNIBM微 软微 创精 华Donews人 邮
我的技术中心 
我的分类 我的文档
全部文章 发表文章
专栏管理 使用说明



 RSS 订阅 
最新文档列表
Windows/.NET
.NET  (rss)    
Visual C++  (rss)    
Delphi  (rss)    
Visual Basic  (rss)    
ASP  (rss)    
JavaScript  (rss)    
Java/Linux
Java  (rss)    
Perl  (rss)    
综合
其他开发语言  (rss)    
文件格式  (rss)    
企业开发
游戏开发  (rss)    
网站制作技术  (rss)    
数据库
数据库开发  (rss)    
软件工程
其他  (rss)    

积极原创作者 
coofucoo (105)
Drate (69)
lphpc (30)
smallnest (61)
iiprogram (64)
downmoon (32)
danny_xcz (49)
btbtd (81)
qingrun (66)
tyrone1979 (21)
CSDN - 文档中心 - Java 阅读:26   评论: 0    参与评论
标题   Subversion入门(经典)     选择自 xujianhua815926 的 Blog
关键字   Subversion入门(经典)
出处  

Subversion入门

前言

和安装

做成

初始化

新模做成,import

check out 始作

追加新文件

追加新目

一般作流程

篇文章没有覆盖的内容

参考Link

 

前言

    Windows XP操作系统的命令行里,练习使用版本管理工具Subversion

    关于版本管理工具Subversion的介绍,本文没有涉及。

 

下载和安装

Subversion (subversion.tigris.org)下载页面中,找到WindowsNT,2000,XP and 2003,有以下一段文字:

The latest command-line binaries and libraries for Windows can be found in this directory of the file-sharing area.

 

点击this directory这个链接,就到了文件一览页面,选择最新的版本下载。

俺使用的是svn-1.1.4-setup.exe

  下载之后安装,默认的目录是C:\Program Files\Subversion

 

存储目录做成

   文件存储目录C:\home\repos做成

C:\> mkdir C:\home\repos

 

存储目录初始化

新做成的目录必须要经过Subversion初始化之后才能使用。

C:\> svnadmin create C:\home\repos

 

新模块做成,import

新做成一个模块,importSubversion里。

1 新做成目录和文件

建立一个目录,创建名为readme.txt的文件。

 

C:\> mkdir work

C:\> cd work

C:\work> mkdir myproject

C:\work> cd myproject

C:\work\myproject> echo This is readme file. > readme.txt

C:\work\myproject> type readme.txt

This is readme file.

 

2 把当前目录下的新模块myproject ImportSubversion的存储目录里。

注意Import的存储目录用file:///C:/home/repos来指定。

C:\work\myproject> svn import file:///C:/home/repos -m "Initial import."

Adding         readme.txt

 

Committed revision 1.

 

3 把练习用得作业目录删除

   C:\work\myproject> cd ..

C:\work> del myproject

C:\work> rmdir myproject

 

 现在为止,myproject目录里的内容都删掉了。在Subversion的存储目录里,登陆了名为myproject的模块。

 

check out 开始作业

1.把myproject模块check out

C:\work> svn checkout file:///C:/home/repos myproject

A  myproject\readme.txt

Checked out revision 1.

 

C:\work> cd myproject

C:\work\myproject> dir /b

readme.txt

 

C:\work\myproject> type readme.txt

This is readme file.

 

可以看到确实把文件从Subversion的存储空间取过来了。

其实取过来的并不仅仅是你做成的文件,还有.svn,这是Subversion版本管理用的隐藏文件。就像CVS里面每个文件夹下都有个CVS一样。用/a就能看到了

 

C:\work\myproject> dir /b/a

.svn                           

readme.txt

 

 

2.文件比较,确认两个版本的区别

 readme.txt文件里追加一行,跟存储空间里的readme.txt文件比较

 

C:\work\myproject> echo Nice to meet you. >> readme.txt

C:\work\myproject> type readme.txt

This is readme file.

Nice to meet you.

 

C:\work\myproject> svn diff

Index: readme.txt

--- readme.txt  (revision 1)

+++ readme.txt  (working copy)

@@ -1 +1,2 @@

This is readme file.

+Nice to meet you

 

4 Commit,把修正好的文件保存到Subversion的存储空间里

C:\work\myproject> svn commit -m "Add a greeting."

Sending        readme.txt

Transmitting file data.

Committed revision 2.

 

追加新文件

1 确认文件没有正在被修正

C:\work\myproject> svn update

At revision 2.

 

2 作成新文件hello.txt

  C:\work\myproject> echo Hello. > hello.txt

C:\work\myproject> type hello..txt

Hello.

 

3 追加hello.txt

C:\work\myproject> svn add hello.txt

A         hello.txt

 

4 把新追加的文件commitSubversion存储空间去。

  C:\work\myproject> svn commit -m "Add hello.txt."

Adding         hello.txt

Transmitting file data.

Committed revision 3.

 

追加新目录

新目录的追加同文件的追加基本上是一样的。

C:\work\myproject> mkdir src

C:\work\myproject> svn add src

A         src

 

1.      在目录里作成文件并追加

C:\work\myproject> cd src

C:\work\myproject\src> 在这里用记事本作成新文件Good.java

C:\work\myproject\src> type Good.java

public class Good {

    public static void main(String[] args) {

        System.out.println("Good");

}

}

C:\work\myproject\src> svn add Good.java

A         Good.java

 

C:\work\myproject\src> svn commit -m "Add a Java source file."

Adding         src

Adding         src\Good.java

Transmitting file data .

Committed revision 4.

 

C:\work\myproject\src> cd ..

 

一般作业流程

C:\work\myproject> svn update

At revision 4.

C:\work\myproject> cd src

C:\work\myproject\src>

C:\work\myproject\src> type Good.java

public class Good {

    public static void main(String[] args) {

        System.out.println("Good!!");

    }

}

 

C:\work\myproject\src> svn diff

Index: Good.java

--- Good.java   (revision 4)

+++ Good.java   (working copy)

@@ -1,5 +1,5 @@

public class Good {

     public static void main(String[] args) {

-        System.out.println("Good");

+        System.out.println("Good!!");

     }

}

 

C:\work\myproject\src> svn commit -m "Add exclamations."

Sending        src\Good.java

Transmitting file data .

Committed revision 5.

 

C:\work\myproject\src> cd ..

 

Subversion的基本使用练习到此结束,呵呵。

 

这篇文章没有覆盖的内容

1 使用svn move移动文件(cvs不能移动)

2 网络上的使用方法

3 多个人同时使用的方法

4 Unix上的使用方法

5 其他Subversion的特性

6 文件修正之后状态察看时,不使用svn update而是svn status