【问题标题】:svnkit: how to get working copy revision number?svnkit:如何获取工作副本修订号?
【发布时间】:2014-02-20 00:25:10
【问题描述】:

我正在使用 SVNKit 1.3.2 并尝试获取工作副本修订号。

工作副本也使用 SVNKit 签出,但是当我尝试调用时

clientManager.getLookClient().doGetYoungestRevision(destination);

我收到 FileNotFoundException 告诉我在目标路径下找不到“格式”文件,例如 /path/to/working/copy/format

我可以看到 2 个问题: - 它尝试访问工作目录根目录中的“格式”文件,而该文件应该位于 .svn 文件夹中

  • 此 .svn 文件夹中没有文件。

有什么线索吗?谢谢!

【问题讨论】:

  • 我和你有同样的问题。这很奇怪。我试过你的答案,但这不是我所需要的。

标签: java svnkit


【解决方案1】:

看来应该是通过SVNStatusClient来完成的:

clientManager.getStatusClient().doStatus(destination, false).getRevision().getNumber();

虽然还是不明白 doGetYoungestRevision(destination) 有什么问题...

【讨论】:

  • 在工作副本中提交更改后,我需要使用.doStatus(wc, true).getRemoteRevision() 来获取提交的修订版本。 .doStatus(wc, false).getRevision() 刚刚给了我最初签出的修订版。我可能在这里遗漏了一些微妙之处。
【解决方案2】:

它不起作用,因为doGetYoungestRevision 用于存储库,而不是用于工作副本。

我希望实现与您相同的目标,发现当destination 指向存储库时,它会返回存储库的最后修订号。

该类本身是用于处理存储库的,您可以查看文档here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-27
    • 1970-01-01
    • 2011-06-23
    相关资源
    最近更新 更多