【发布时间】:2012-11-13 22:30:59
【问题描述】:
我被要求解决因不正确使用 subversion 引起的问题(据我所知)。
这里是历史,它已经被一段时间的过去、用户的困惑等所破坏,但这是我能弄清楚的最好的。预期目标是在给定时间点归档文件集(主要是标记存储库,但用户不知道这一点)。
- 用户已签出工作目录
- 用户没有创建标签,而是通过 unix 复制命令(不是 SVN 移动或 SVN 复制)将文件复制到其工作副本中的子文件夹。
- 例如工作副本是 /var/tmp/working,他们将文件复制到 var/tmp/working/todays_date
- 用户注意到这个新目录中缺少一些 .svn 目录,因此他们将 .svn 文件夹从另一个目录(他们不确定在哪里)复制到带有“标签”的目录中。
这是最好的解决方法吗?
我想尝试以下方法:
- 递归删除错误子目录下的所有.svn文件夹
- 将目录从 repo 复制到本地
- 在最后一次提交之前检查工作目录
- 用“导出的”文件覆盖新工作目录的文件
- 完成正常的更新/提交过程
- 创建标签
这有意义吗?还是我对其他问题敞开心扉?
其他问题
- 教育此用户以使其不再这样做的最佳方式是什么?
更新:更多信息
从用户那里得到以下信息:
- 我完成了这项工作,然后尝试执行 svn add。
- 然后我做了 svn 提交,这给了我一些错误。
- 那时我移动了 .svn 文件,然后它终于完成了 svn 添加和提交,没有错误
- 但是 svn log 不显示提交的日志消息。
所以看起来用户复制了 .svn 文件夹以尝试进行提交,然后它显然确实添加并提交了,但我们不确定它是否这样做,因为我们在日志中找不到它.
【问题讨论】:
标签: svn version-control