SVN相关:
svn --version 查看svn版本
whereis svn 查询文件安装路径
which svn 查询运行文件所在路径
svn help svn帮助
svn help commit svn的commit命令帮助
svn cleanup 本地缓存清除
find path -iname "*svn*" path路径下查找svn相关文件(i忽略大小写)
版本信息:
svn list (pathdir) 显示当前(pathdir)目录下的属于版本库的子目录和文件
svn status (pathdir) 显示当前(pathdir)目录下的新修改子目录和文件状态
//?:不在版本控制中;A:预定加入到版本库;C:发生冲突;D:预定要删除;M:本地内容被修改;!:项目已遗失(被非svn命令删除)
svn status -v (pathdir) 显示当前(pathdir)目录下的所有子目录和文件详细状态
//第一列相同/第二列显示工作版本号/第三显示最后修改人/第四列显示文件
文件信息:
svn info pathdir/pathfile 显示文件夹/文件的详细版本信息
svn log pathdir/pathfile 显示文件夹/文件的版本日志信息(提交时提交了信息)
svn log -r 200 pathfile 显示版本号200的文件的日志信息
svn diff -r m:n pathfile 显示版本m和版本n文件的差异
svn diff pathfile 显示本地文件与版本库文件的差异
文件下载:
svn checkout svn://IP/pathdir 复制文件到本地
//svn checkout svn://192.168.1.1/pathdir
svn checkout svn://IP:端口/pathdir 复制文件到本地
//svn checkout svn://127.0.0.1:6534/pathdir
添加撤回删除:
svn add pathdir 添加pathdir文件夹(添加时须包含其下的子文件夹及文件)
svn revert pathdir 还原pathdir文件夹(未添加版本库文件夹撤回/添加则恢复)
svn commit pathdir -m “xx” 提交目录下pathdir文件夹(先添加文件夹再提交)
svn add pathfile 添加pathfile文件
svn revert pathfile 还原pathfile文件(未添加版本库文件撤回/添加则恢复)
svn commit pathfile -m “xx” 提交目录下pathfile文件(先添加文件再提交)
svn commit -m “xx” 提交目录下所有文件(先添加文件夹或文件再提交)
svn delete pathdir/pathfile 先本地删除再提交(版本库删除步骤一)
svn commit pathdir/file -m “xx” 先本地删除再提交(版本库删除步骤二)
svn delete svnpathfile -m “xx” 直接删除svn路径下的pathfile文件(版本库删除)
//svn delete svn://192.168.1.1/pathdir/test.php -m “delete test file”
更新冲突:
svn update 更新当前目录下所有文件
svn update pathdir/pathfile 更新pathdir文件夹/pathfile文件
svn update -r 200 test.php 将文件test.php还原到版本200(版本200无则删除)
svn update更新时冲突选项:
(p) postpone – mark the conflict to be resolved later //让文件在更新完成之后保持冲突状态。
(df) diff-full – show all changes made to merged file //使用标准区别格式显示base修订版本和冲突文件本身的区别。
(e) edit – change merged file in an editor //用你喜欢的编辑器打开冲突的文件,编辑器是环境变量EDITOR设置的。
(r) resolved – accept merged version of file //完成文件编辑之后,通知svn你已经解决了文件的冲突,它必须接受当前的内容—从本质上讲就是你已经“解决了”冲突。
(mf) mine-full – accept my version of entire file (ignore their change)//丢弃新从服务器接收的变更,并只使用你查看文件的本地修改。
(tf) theirs-full – accept their version of entire file (lose my changes)//丢弃你对查看文件的本地修改,只使用从服务器新接收的变更。
svn resolved pathdir/pathfile 通知svn你已经解决了pathdir/pathfile的冲突
svn merge -r m:n pathfile 将两版本间的差异合并到文件