SVN ---文件加锁,执行clean up命令

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

一、SVN 中 clean up 的功能


     当Subversion改变你的工作拷贝(或是.svn中的任何信息),它会尽可能的小心,在修改任何事情之前,它把意图写到日志文件中去,然后执行 log文件中的命令,并且执行过程中在工作拷贝的相关部分保存一个锁,防止Subversion客户端在变更过程中访问工作拷贝。如果 Subversion的操作中断了(举个例子:进程被杀死了,机器死掉了),日志文件会保存在硬盘上,通过重新执行日志文件,Subversion可以完成上一次开始的操作,你的工作拷贝可以回到一致的状态。


       这就是svn clean up所作的:它查找工作拷贝中的所有遗留的日志文件,删除进程中工作拷贝的锁。如果Subversion告诉你工作拷贝中的一部分已经“锁定”了,你就需要运行这个命令了。


二、本地文件锁定,使用“清除”命令


    SVN本地更新时,由于一些操作中断,如磁盘空间不够,用户取消等,可能会造成本地文件被锁定的情况。这时候无论你在执行SVN的更新、上传、添加等子命令都会提示“**locked”的错误,如图:


    

    

一般出现这种情况的解决方法:

1、可以使用SVN clean up来清除锁定

2、如果不是本目录锁定,系统提示上一层目录锁定,需要到上一层或者根目录中清除。

3.如果在根目录下都无法 clean的话,一般采取的方法是另外找一个目录重新CHECKOUT。但有时有时SVN目录下可能有一些自己本地修改的文件,还未提交到SVN服务器, 这时重新CHECKOUT需要注意本地文件的备份,并且不要强制覆盖服务器上其它人修改的内容。

4.其实SVN加锁会在.SVN(隐藏文件)中生成一个名字叫lock的文件(无后缀),查找所有的,手工删除。然后再尝试更新,系统可能会提示某个.base文件无法访问。找到它,把相关的文件或其所在的目录删除,重新UPDATE。

5.在相应的目录中,比如我在 更新metasploit的“/opt/metasploit3/msf3/lib/active_support/core_ext”这个目录时就遇到 了类似的情况,把.SVN子目录里(注意,“.”目录是个隐藏目录,需要选择“文件夹选项”→“查看”→“显示隐藏文件”菜单项)面log文件删除,就可 以了。然后继续做svn cleanup命令。


第4种和第5种方式,未找到相关locked文件 和 log文件,不知道是不是SVN版本的问题。本地文件加锁,“清除命令clean up”很好使。



     本文转自yzy121403725 51CTO博客,原文链接:

http://blog.51cto.com/lookingdream/1838682

,如需转载请自行联系原作者




相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
6月前
|
数据可视化
在使用SVN的过程中,通过哪些执行查看某个文件的修改信息
在使用SVN的过程中,通过哪些执行查看某个文件的修改信息
1215 0
【IDEA用法】IDEA新建文件自动加入SVN,删除文件自动从SVN中删除
【IDEA用法】IDEA新建文件自动加入SVN,删除文件自动从SVN中删除
592 0
|
6月前
|
Apache 项目管理 数据安全/隐私保护
【cpolar】TortoiseSVN如何安装并实现公网提交文件到本地SVN服务器
【cpolar】TortoiseSVN如何安装并实现公网提交文件到本地SVN服务器
130 0
|
6月前
|
存储 算法 开发工具
git是什么?git的五个命令,git和svn的区别
git是什么?git的五个命令,git和svn的区别
93 0
|
2月前
|
缓存
SVN常用命令
本文汇总了SVN版本控制系统的常用命令,包括代码检出、提交、更新、添加、删除、查看日志、状态、差异比较、撤销修改、忽略设置、清理、查看信息、文件列表、文件内容查看、blame操作、地址重定向以及分支管理等,旨在帮助用户更高效地使用SVN进行代码版本控制。
|
6月前
|
Java Linux 数据安全/隐私保护
SVN魔法笔记:工作中不可或缺的命令宝典
SVN魔法笔记:工作中不可或缺的命令宝典
81 2
|
数据安全/隐私保护
svn命令的使用
svn命令的使用
66 0
清空文件夹下的SVN文件BAT脚本
清空文件夹下的SVN文件BAT脚本
136 0
|
6月前
|
存储 安全 开发工具
快速入门安装及使用&git与svn的区别&常用命令
快速入门安装及使用&git与svn的区别&常用命令
161 0
|
Java Linux PHP
svn在linux下的使用(svn命令)
svn在linux下的使用(svn命令)
163 0