核心命令速查表
1. 检出与更新
svn checkout <url> # 检出项目到本地
svn update # 更新到最新版本
svn update -r 200 file.c # 更新到指定版本
2. 文件操作
svn add file.txt # 添加文件到版本控制
svn delete file.txt # 删除文件
svn lock file.txt # 锁定文件
svn unlock file.txt # 解锁文件
3. 提交与撤销
svn commit -m "注释" # 提交更改
svn revert file.txt # 撤销本地修改
svn resolved file.txt # 标记冲突已解决
4. 查看与比较
svn status # 查看文件状态
svn diff # 比较差异
svn log # 查看提交历史
svn info # 查看详细信息
详细命令解析
项目初始化与更新
检出项目 (svn checkout)
# 基本用法
svn checkout svn://server/project/trunk
# 简写形式
svn co http://svn.example.com/project
更新工作副本 (svn update)
# 更新整个项目
svn update
# 更新特定文件
svn update file.txt
# 恢复到历史版本
svn update -r 150 file.txt
日常开发操作
添加新文件 (svn add)
# 添加单个文件
svn add newfile.txt
# 添加多个文件
svn add *.php
# 递归添加目录
svn add newdir/ --force
提交更改 (svn commit)
# 提交所有修改
svn commit -m "修复登录bug"
# 提交特定文件
svn commit file1.txt file2.txt -m "更新配置文件"
版本比较与历史
查看修改状态 (svn status)
# 查看当前状态
svn status
# 详细状态信息
svn status -v
# 状态标识说明:
# ? - 未版本控制
# M - 已修改
# C - 冲突
# A - 待添加
# D - 待删除
比较差异 (svn diff)
# 比较当前修改
svn diff
# 比较特定文件
svn diff file.txt
# 比较历史版本
svn diff -r 100:150 file.txt
冲突解决与撤销
解决冲突
# 标记冲突已解决
svn resolved file.txt
# 撤销本地修改
svn revert file.txt
# 撤销所有修改
svn revert -R .
分支与标签管理
创建分支
# 创建分支
svn copy trunk/ branches/my-branch -m "创建新分支"
# 切换分支
svn switch http://svn.example.com/branches/my-branch
创建标签
svn copy trunk/ tags/v1.0 -m "发布版本1.0"
实用技巧与示例
1. 忽略文件配置
# 设置忽略模式
svn propset svn:ignore "*.log
tmp/
*.tmp" .
2. 查看文件历史
# 查看完整历史
svn log file.txt
# 查看最近5条记录
svn log -l 5 file.txt
# 查看特定时间范围
svn log -r {2023-01-01}:{2023-12-31}
3. 文件锁定管理
# 锁定文件(防止他人修改)
svn lock file.txt -m "正在重构此文件"
# 查看锁信息
svn info --show-item lock
# 强制解锁(需要权限)
svn unlock --force file.txt
常见问题处理
1. 解决冲突
当文件出现冲突时:
# 1. 查看冲突文件
svn status
# 2. 手动解决冲突后标记
svn resolved file.txt
# 3. 提交解决结果
svn commit -m "解决合并冲突"
2. 恢复已删除文件
# 找回被删除的文件
svn copy -r 123 http://svn/path/to/file@123 file.txt
3. 清理工作副本
# 当工作副本出现问题时
svn cleanup
# 强制清理
svn cleanup --remove-ignored
高级用法
1. 属性管理
# 设置属性
svn propset svn:keywords "Date Rev Author" file.txt
# 查看属性
svn proplist file.txt
# 删除属性
svn propdel svn:keywords file.txt
2. 导出项目(不含.svn目录)
svn export http://svn.example.com/project/trunk
3. 查看仓库结构
svn list http://svn.example.com/project
svn list -R http://svn.example.com/project # 递归列出
命令速查表
|
命令 |
功能 |
简写 |
|
svn checkout |
检出项目 |
svn co |
|
svn update |
更新文件 |
svn up |
|
svn commit |
提交更改 |
svn ci |
|
svn status |
查看状态 |
svn st |
|
svn diff |
比较差异 |
svn di |
|
svn delete |
删除文件 |
svn del |
|
svn list |
列出文件 |
svn ls |
注意:使用 SVN+SSH 访问时的格式:
svn+ssh://username@
hostname/path/to/repository
掌握这些命令能够满足日常开发中99%的版本控制需求。提议收藏本文,遇到问题时快速查阅相关命令用法。
© 版权声明
文章版权归作者所有,未经允许请勿转载。如内容涉嫌侵权,请在本页底部进入<联系我们>进行举报投诉!
THE END
















暂无评论内容