【问题标题】:SVNKIT commit file failedSVNKIT 提交文件失败
【发布时间】:2013-10-24 11:02:12
【问题描述】:

我用SVNKIT checkout一个文件夹.svn信息用这个

    if (!SVNUtil.isWorkingCopy(ws)) {
      updateClient.checkout(clientManager, repositoryURL, SVNRevision.HEAD,ws,SVNDepth.EMPTY);
    }

然后我使用 IO 流在这个 SVN 中创建一个具有相同文件名的新文件;然后我尝试“commitClient.doCommit”提交它但失败了,失败的信息是“文件不是工作副本”。我怎样才能正确地做到这一点?

【问题讨论】:

  • 能否提供调用doCommit的代码和异常的完整堆栈跟踪?

标签: svn commit svnkit


【解决方案1】:

如果我理解正确,您正在执行以下步骤: 1.签出一个文件(文件名a.java) 2. 使用 IO 流创建一个与之前同名的新文件(a.java) 3. 您尝试提交文件 - 并且收到“文件不是工作副本”错误。

问题出在第 2 步 当您创建一个新文件(a.java)时,它会在默认项目路径中创建。但是,文件路径必须是相同的路径(如在您使用步骤 #1 拉取的 SVN 中)。

正如我上面提到的(步骤#2)文件是在默认项目结构中创建的,.svn 对这个新文件没有任何线索并抛出错误“文件不是工作副本”强>

注意:首先您必须在 SVN 中添加新文件,然后才能将其提交到存储库。所以这是一个两步过程。

【讨论】:

    【解决方案2】:

    如果提交的文件必须在工作副本中。几天前我遇到了这个问题。你可以在SVN中删除文件然后导入。如果提交的文件是txt文件,你可以做文件修改,有一个例子在:http://wiki.svnkit.com/Committing_To_A_Repository

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-29
      • 2010-10-21
      • 2012-05-06
      • 2011-03-28
      • 1970-01-01
      • 2016-06-23
      • 2019-03-16
      • 2019-07-12
      相关资源
      最近更新 更多