多年的游戏项目开发工作经验中接触了P4Git等工具但使用最多的工程库管理软件还是SVN。在程序美术策划等不同开发工种的协作中是大家都比较能接受的。为什么需要用到命令行操作因为有这样一些场景比如无图形化界面的linux系统自动化流水线等。当然了在macOS也是合适的选择虽然有如Cornerstone和SmartSVN这些可视化工具的选择。svn checkoutsvn checkout svn://123.123.23.45/FolderA/FolderB这里更安全的方式是使用ip主机名可能会遇到无法解析的情况。比如局域网内的Mac电脑访问Win服务器svn info查看库的概要信息svn upsvn up 拉取最新远程版本当前目录下svn up folderAPath 更新指定文件目录svn up fileAPath 更新指定文件svn status显示本地文件修改状态常见的有U 文件已更新M 已修改? 未纳入版本控制 -- 需要add或delete或ignoreC 冲突 -- 需要解决冲突! 缺失 -- 需要delete或revertD 已删除A 已添加I 已忽略等等svn diff查看修改信息svn revertsvn revert fileAPath 还原fileA文件svn revert -R folderAPath/ 还原文件夹folderA下的所有修改(递归所有子目录)当前文件夹使用./svn deletesvn delete folderAPath 删除文件夹folderAsvn delete folderAPath --force 如果你已经手动删除了folderA仍需要输入此行命令svn ignoresvn propset svn:ignore folderAPath .svn propget svn:ignore . 验证结果是否有效svn commitsvn commit -m 提交说明 folderAPath folderBPath fileAPath 只提交指定文件夹/文件的修改内容多个提交项用空格隔开其他备注当文件夹目录或者文件本身名称中有空格时需要用双引号包裹