惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
J
Java Code Geeks
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
腾讯CDC
IT之家
IT之家
罗磊的独立博客
酷 壳 – CoolShell
酷 壳 – CoolShell
U
Unit 42
爱范儿
爱范儿
博客园 - 聂微东
F
Fortinet All Blogs
V
Visual Studio Blog
Blog — PlanetScale
Blog — PlanetScale
G
Google Developers Blog
aimingoo的专栏
aimingoo的专栏
L
LangChain Blog
雷峰网
雷峰网
B
Blog RSS Feed
宝玉的分享
宝玉的分享
T
Tailwind CSS Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Engineering at Meta
Engineering at Meta
H
Hackread – Cybersecurity News, Data Breaches, AI and More

博客园 - YD

如何查找某一函数的定义 Ruby 线程--生产者、消费者 Ruby的函数指针 Rails2.0学习--真困难 加班赶工,得不偿失——历史给你上六课 7. 创建Subversion服务之补充 Task Manager 1.1 开源软件:(Task Manager)任务管理-找出自己最需要完成的任务 小说阅读器 2.0 6. 创建 Subversion 服务 小说阅读器,有兴趣的同志可以试一下 不规则窗体的制作 播放 wave 文件 简单 Socket 通信 CRC 校验 C# 实现法 5. 多人协作 C# 中信号量的使用 4. 不要把不必要的文件版本化 3. 从 Repository 中恢复
2. 创建你的 Repository
YD · 2006-05-01 · via 博客园 - YD

随着自已写的软件越来越大,阅读、修改项目的代码的时间越来越多。不幸的是,自己做的修改有时候后来证明是非常不明智的,这时候怎么找回原来的代码?当代码几有不到一千行时,也许你只需要用几个小时就能重新写完自己要修改的部分。不管你是向前改还是凭记忆对代码回滚。但是我现在每个项目已经达到至少二千行,源文件要几十个了。如果我对其中超过五个子程序或类的设计进行了更改,那我再要回滚就只有哭了!版本控制就可以解决这个问题。

版本控制软件的数据是独立于源文件的。它单独组成一个数据库 (Repository)。Subversion 的 Repository 分为传统的 Berkerly database(BDB), Native Filesystem(FSFS)。根据 Subversion 的官方资料,FSFS 可以保证网络传输上的正确性,程序员可以组建一个 Server。而如果用 BDB 的 Repository 来组建一个 Server 的话,这结果是不可预料的。错误可能当时就发生,也可能在数月后突然爆发。

由于我是自己做小软件开发,所以这里不会叙述有关组建服务器相关的内容,只介绍有关单机开发的事项。首先,你需要在本地磁盘上新建一个空的文件夹,把它设成 Subversion 的 Repository。我的文件夹设成 D:\SvnRpos\。在其下,新建文件夹与你的各个项目对应的文件夹,分别存储版本控制信息。例如,我在 D:\MyProjects\Calc 下有一个计算器的项目。那我会在 D:\SvnRpos\ 下新建一个 Calc 文件夹,在其下创建 Calc 项目的版本控制信息。Repository 文件夹的名字不一定要与你的项目名称一致。创建的方法:

1. 右键点 D:\SvnRpos\Calc 文件夹,点击 TortoiseSVN -> Create Repository here。这样,你就会发现这个文件夹下会创建很多的文件夹和文件。它已经变成一个最基本的 Repository 了。现在你再点击这个文件夹,它的 TortoiseSVN 关联的命令已经发生了变化。

2. 新建一个空文件夹 D:\MyProjects\Calculator。右键点击 SVN Checkout。会出现这个对话框:

注意 URL of repository 的分隔符是 forward slash,而不是 back slash。而你的 Checkout directory 的分隔符是 back slash。这两个不能错!
点击 OK 后你的 Calculator 文件夹就会被导入 D:\SvnRepos\Calc 下的信息。Checkout 相当于你把项目置于版本控制之下。这是必须的。
把 D:\MyProjects\Calc 下的所有的项目文件(包括隐藏的)拷贝到 Calculator 下。现在你更新 Repository 的信息。这样,Subversion 就知道你的文件更新了。方法是,右键点击 Calculator,SVN Commit。Commit 的意思是提交更改并确认的意思。

现在,你的 Repository 里就是最新的了。以后每次你做了更改,确认后就 Commit 一下。(不需要过分频繁地 Commit,那样没有意义,反而会使你的 repository 无意义地增大)