SVN 安装及常用命令

一、SVN 安装

1. Windows 系统安装

  1. 下载地址:Subversion 官方 binaries
  2. 推荐使用 SlikSVN 或 CollabNet 版本
  3. 安装步骤:
    • 双击安装包,勾选 "Add subversion to the system PATH"
    • 一路下一步完成安装
    • 验证:cmd 中输入svn --version,显示版本信息即成功

2. Linux 系统安装

# Ubuntu/Debian
sudo apt-get install subversion

# CentOS/RHEL
sudo yum install subversion

# 验证安装
svn --version

3. Mac 系统安装

# 使用Homebrew
brew install subversion

# 验证安装
svn --version

二、基本概念

  • 工作副本 (Working Copy):本地存放的项目文件
  • 仓库 (Repository):服务器上存储项目所有版本的数据库
  • 提交 (Commit):将本地修改上传到服务器
  • 更新 (Update):将服务器最新版本同步到本地
  • 检出 (Checkout):从服务器获取项目到本地

三、常用命令

1. 仓库操作

# 检出仓库到本地
svn checkout <仓库URL> [本地目录]
# 简写
svn co <仓库URL> [本地目录]

# 创建本地仓库
svnadmin create <仓库路径>

# 导入本地项目到仓库(首次)
svn import <本地项目路径> <仓库URL> -m "初始化导入"

2. 日常操作

# 查看工作副本状态
svn status
# 详细状态
svn status -v

# 查看文件修改内容
svn diff <文件名>

# 将文件添加到版本控制
svn add <文件名/目录>

# 删除文件
svn delete <文件名>
# 或直接删除文件后执行
svn rm <文件名>

# 提交修改到服务器
svn commit -m "提交说明"
# 简写
svn ci -m "提交说明"

# 更新本地副本到最新版本
svn update
# 简写
svn up

# 查看提交日志
svn log
# 查看指定文件日志
svn log <文件名>

3. 版本控制

# 查看文件的特定版本
svn cat <文件名>@<版本号>

# 查看版本差异
svn diff -r <版本号1>:<版本号2> <文件名>

# 回滚到指定版本
svn update -r <版本号> <文件名>

# 创建分支
svn copy <源路径> <目标路径> -m "创建分支说明"

# 合并分支到主干
svn merge <分支URL> <本地主干目录>

# 查看文件历史
svn log -v <文件名>

4. 其他常用命令

# 查看忽略列表
svn propget svn:ignore <目录>

# 设置忽略文件
svn propset svn:ignore "<忽略规则>" <目录>

# 清理工作副本(解决冲突等问题)
svn cleanup

# 解决冲突后标记为已解决
svn resolved <文件名>

# 锁定文件(防止多人同时修改)
svn lock <文件名> -m "锁定说明"

# 解锁文件
svn unlock <文件名>

四、冲突处理

  1. 发生冲突时,文件会被标记为冲突状态

  2. 冲突文件会生成三个额外文件:

    • filename.mine:自己修改的版本
    • filename.rOLDREV:更新前的版本
    • filename.rNEWREV:服务器最新版本
  3. 解决步骤:

    # 1. 编辑冲突文件,解决冲突
    # 2. 标记为已解决
    svn resolved <冲突文件>
    # 3. 提交解决后的版本
    svn ci -m "解决冲突"
    

五、实用技巧

  1. 配置别名:在~/.bashrc 或~/.bash_profile 中添加

    alias svnci='svn commit -m'
    alias svnup='svn update'
    alias svnst='svn status'
    
  2. 设置全局忽略

    # 编辑配置文件
    svn config --edit miscellany
    # 添加
    global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo __pycache__
    
  3. 使用图形化工具

    • TortoiseSVN (Windows)
    • Cornerstone (Mac)
    • RabbitVCS (Linux)

以上命令覆盖了 SVN 日常使用的 90% 场景,掌握这些足以应对大部分版本控制需求。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值