先来看 SVN Trunk/Tags/Branches 目录 的 架构 和 用途:(英文说明转载自 SubTrain PPT)
• trunk: Main line of development(主干, 主要开发都由在 trunk)
• tags: Releases (想要 Release 的时后, 就标个 Tag, 以后可以依 Tag 来找回之前版本的数据)
• branches: Preparation of release, bug fixing(分支, 可以将某些功能切出来, 或者 bug fix 等切成分支, 等做完后再用 Merge 合并回来)
SVN 基本功能:
Import: 将整个 project_directory 的数据 import 进 svn 里面
• svn import project_directory http://DOMAIN/svn_project
• svn import project_directory file:///SVN_PATH/svn_project
Checkout: (checkout 可简写成 co), 将资料 checkout 回来
• svn co http://SVN_PATH/svn_project
• svn co file:///SVN_PATH/svn_project
• svn co -r 12 file:///var/lib/svn/dev/projects # 出第12版的 projcets code
List: (list 可简写成 ls), 看上面有哪些档案/数据
• svn ls http://SVN_PATH/svn_project
• svn ls file:///SVN_PATH/svn_project
Update: (update 可简写成 up), 将目前信息更新成 SVN 在线最新版本.
• SVN_CHECKOUT_DIR$ svn up
Commit: (commit 可简写成 ci), 将目前所做的修改 commit 回 svn
• SVN_CHECKOUT_DIR$ svn ci
Status: (status 可简写成 st), 看目前档案/结构 跟 SVN 在线的版本有哪些不同
• SVN_CHECKOUT_DIR$ svn st
Add: 将此 档案/目录 新增进 svn
• SVN_CHECKOUT_DIR$ svn add filename 或 svn add directory
MV: 改文件名, 并且此档案之前纪录还要继续留下
• SVN_CHECKOUT_DIR$ svn mv filename new_filename
Revert: 还原这次的修改, 回到前一版的档案状态(未 commit 前可用)
• SVN_CHECKOUT_DIR$ svn revert [file | directory]
SVN 档案状态信息:
• ?: 此档案不存在 SVN 里面
• A: 此次新增的档案
• C: 此档案已经有人改过, 合并不成功, 需要人工介入
• D: 此次移除的档案
• M: 此档案有修改过
• U: 此档案有被更新过
再来是比较进阶一点点, 下述范例转载自 SubTrain 的教学 PPT:
建立一个 branch
• svn copy http://svnserver/calc/trunk http://svnserver/calc/branches/my-calc-branch -m 'create a branch'
建立 Release Tags:
• svn copy http://svnserver/calc/trunk http://svnserver/calc/tags/Release-1.0.0 -m 'create Release tags for Release 1.0.0'
合并两个版本的档案 # 参考自: 用 Subversion 的 Merge 来 Undo
• svn merge -r REV1:REV2 {path/to/workingcopy}
• (UNDO) svn merge -r 1234:1233 ...
• (MERGE)svn merge -r 1233:1234 ...
• svn merge --dry-run -r 343:344 http://svn.example.com/repos/calc/trunk
有 "C" 状态处理完后, 用 resolved 将自动产生的档案删除, 才能正常 commit:
• svn resolved filename # 这样子下就会把自动产生 diff 等的档案删除
找版本间有什么不同 diff:
• svn diff # 自动以现在档案跟 SVN 内最新版做 diff
• svn diff -r9237:9238
Info: 列出现在路径, 版本编号, 最后一次修改日期 ... 等信息
• svn info
Log: 如果没输入参数, 预设会把所有 commit log 都列出来
• svn log
• svn log -l 10 # 显示 10 笔(最新 10笔 Log)
• svn log -c 100 # 显示 revision 100 的 Log
• svn log -v -c 100 # 显示 revision 100 的详细 Log
Propset (propset, pset, ps): 版本控制都有些特殊 Keyword 设定, 如 Id 就是最常用的, 设定方法如下:
1. 在档案内找地方加入 $Id$
2. 设定此档案要能吃 Id 的 Keyword: svn ps svn:keywords 'Id' filename (只需设一次即可, 之后就不用再设)
3. svn ci 后, $Id$ 会自动代换成 $Id:filename 编号 年月日时分秒 username $ 的信息
4. svn help ps 可以看到有哪些 Keyword 可以用, 即 Keyword 的说明.(ex: URL, Author, Date, Rev, Id 等.)
分享到:
相关推荐
Linux 下 SVN 基本命令 Linux 下 SVN 基本命令是版本控制系统中的一组基本命令,用于管理和维护软件开发的源代码。下面将详细介绍这些基本命令的使用。 1. 检出文件到本地目录 svn checkout path (path 是服务器...
#### 二、SVN基本命令操作 SVN提供了一系列命令,用于执行日常的版本控制任务,包括检出、提交、更新、合并等。以下是一些常用的SVN命令: **1. 检出(Checkout)** 检出是将远程仓库的某个目录复制到本地的过程...
svn 在 Linux 下的使用(svn 命令) svn 是一个版本控制系统,允许多人合作开发项目,追踪文件的变化...这些命令是 svn 在 Linux 下的基本使用和常用命令,通过这些命令可以实现版本控制、文件管理和协作开发等功能。
SVN基本命令 #### 初始化仓库 使用`svnadmin create <仓库路径>`创建一个新的SVN仓库。 #### 检出(Checkout) 使用`svn checkout <URL>`从服务器检出一份工作副本。URL是仓库的网络地址。 #### 更新(Update) ...
### Linux下SVN常用命令详解 #### 一、SVN Checkout **命令格式:** ```shell svn checkout [URL] [本地路径] ...以上是Linux环境下SVN的基本命令操作,熟练掌握这些命令对于日常的代码管理和版本控制非常重要。
该命令的基本语法为:svn checkout <路径>,其中 <路径> 是服务器上的目录。例如:svn checkout svn://192.168.1.1/pro/domain。 2. 往版本库中添加新的文件 svn add 命令用于将文件添加到版本库中。该命令的基本...
以上命令是svn的基本操作,掌握了这些,你就能进行日常的版本控制活动。在实际使用中,可能还需要结合分支、标签等高级特性,以适应团队协作和项目管理的需求。 此外,对于开发者来说,了解并熟练使用版本控制系统...
首先,了解SVN的基本命令结构是必要的。MAC终端下的SVN命令多数都以svn开头,紧跟着的子命令来指定操作,如检出(checkout)、更新(update)、提交(commit)、添加(add)等。 1. 查看SVN服务器的目录结构 使用...
这些命令构成了`svn`客户端的基本操作集,帮助开发者有效地管理和协同编辑代码。掌握这些命令能大大提高你在版本控制中的效率。在实际工作中,根据需求灵活运用这些命令,可以确保代码版本的整洁和团队协作的顺畅。
在Linux环境下,Subversion(简称SVN)是...掌握这些基本的SVN命令对于在Linux环境中高效地进行版本控制和协作开发至关重要。通过熟练运用这些命令,你可以轻松地管理代码变更、解决冲突、切换分支和维护项目的完整性。
在了解了打基线的基本概念之后,接下来详细介绍一些常用的SVN命令,这些命令可以帮助我们在SVN中有效地进行打基线操作。 ##### 1. 创建标签(tag) 创建标签是一种非常简单的方式,可以用来记录项目的一个快照。...
通过了解并熟练掌握这些基本的SVN命令,开发者可以在团队中高效地进行版本控制操作,确保项目文件的安全和有序管理。在实际工作中,根据项目需求,可能还需要学习更高级的SVN策略和技巧,例如分支管理策略、冲突处理...
以上就是SVN中最常用的命令,它们涵盖了日常开发中的基本操作。通过熟练掌握这些命令,你可以高效地管理代码版本,与团队成员无缝协作。在实际使用中,还可能需要结合其他命令和选项,以满足特定的需求。记住,实践...
- **基本用法**:`svn update [PATH]` - 如果没有指定版本号,则默认更新到`HEAD`版本。 - 否则,会同步到由`-r`选项指定的版本。 - **动作报告**:每更新一项就会输出一行信息,用首字母来表示执行的动作。 - A...
以上是SVN的一些基本操作,熟练掌握这些命令,可以有效地进行团队协作和项目管理。在实际工作中,还可能需要结合SVN的分支和合并策略来优化团队的工作流程。务必记住,良好的版本控制实践对于任何项目都是至关重要的...
本文档将详细介绍在Linux环境中如何使用SVN的基本命令,包括但不限于文件检查出、添加、提交、更新、锁定、状态查询等操作。 #### 二、基本命令介绍及示例 ##### 1. 将文件Checkout到本地目录 **命令格式**: ``` ...
### SVN命令大全详解 #### 一、将文件Checkout到本地目录 **命令**: `svn checkout path` (其中`path`是服务器上的目录) **示例**: `svn checkout svn://192.168.1.1/pro/domain` **简写**: `svn co` **解释**: 这...
Linux Fedora下的Subversion(简称svn)是一个版本控制系统,用于跟踪文件和目录的...在实际工作中,根据团队的需求和工作流程,可能会有更复杂的用法,比如解决冲突、分支管理等,但这些基本命令构成了svn操作的基础。