svn恢复中止结账

时间:2010-10-27 09:48:07

标签: svn

情况 - 拥有庞大的存储库,缓慢且不可靠的链接(读取 - vpn不时中断)。

我们经常进行分支,移动事物,因此应该从存储库(结帐)中不时地采用全新的分支。

有没有办法'恢复'破损的结账?使用相同的参数进行svn checkout是否安全并期望它跳过下载的内容并下载不是的内容?

6 个答案:

答案 0 :(得分:73)

刚遇到同样的问题。我不得不打断结账,因为这花了很长时间。当我“恢复”结帐时,我不清楚是否应该重新启动结帐或只是执行 svn update

在尝试执行svn update以恢复结帐后,我收到一条精彩的错误消息,指出目录已“锁定”。我尝试从Tortoise SVN发布“释放锁定”,但这没有帮助。

最终,我最终要做的是发出一个 svn cleanup 来释放Subversion所带来的任何束缚。之后,通过从Tortoise SVN上下文菜单中执行另一次更新(svn update或“SVN Update”),我能够继续我之前发起的结账。

答案 1 :(得分:27)

来自Subversion documentation

  

如果您中断结账(或   别的东西打断你的   结账,如失去   连接等),你可以重新启动   它要么通过发出相同的   checkout命令再次或通过更新   不完整的工作副本。

答案 2 :(得分:13)

svn update

为你做的工作。

答案 3 :(得分:1)

我看到的方式有三种可能性:

  • 它可以正确,完整地结账,没有任何问题。问题解决了。

  • 它会检查上次未检出的所有内容。你做'svn update'而且你是金色的。

  • 它发现自从签出,抱怨和中止以来,某些内容已被修改。你只需要删除有冲突的东西。

无论如何,任何已成功检出存储库的文件都在本地树中关联了元数据,这将确保'svn update'能够获得最新版本。

答案 4 :(得分:1)

我也有同样的问题,最后对我有用的事情是: - 步骤1.在根文件夹中右键单击空白区域并选择“TortoiseSVN>清理...”然后选中弹出窗口中的所有选项并运行此 步骤2.右键单击空白区域,然后单击“SVN Update ..”

现在开始恢复。

答案 5 :(得分:1)

进入复制目录

class BaseLogFileManager : DDLogFileManagerDefault
{
    override var newLogFileName: String! { get {
        return K.LogFileName
        }}
    override func isLogFile(fileName: String!) -> Bool
    {
        return true
    }
}