问题标签 [svnkit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 使用 SVNKit 检出目录/文件
我在 wiki 上看不到记录签出的地方。理想情况下,我想检查一个文件“example/folder/file.xml”,如果不仅仅是文件夹......然后当应用程序关闭或以其他方式关闭时,能够提交回对该文件的更改。我该怎么做呢?
java - 多线程时设置 SVNKit
我正在尝试使用不同的线程和 SVNKit 并行连接到许多 SVN 存储库。
在线查看一些代码示例,看起来在使用 SVNKit 之前我必须使用静态方法对其进行初始化
显然,静态方法让我担心多线程环境。我的问题是:
- 是否可以以这种方式并行使用 SVNKit?
- 我什么时候需要调用这些设置方法?只在软件开始时,每个线程一次,什么?
如果有人能解释我必须调用这些方法的原因,我也会很高兴。
java - 无法使用 SVNKit 提交目录树
我有一个目录,其中包含来自旧版构建系统的文件。我想在 SVN 存储库中重新创建此构建系统的时间线。
为此,我必须获取每个构建,提取其所有文件,将它们放在一个合理的目录结构中,将整个目录结构提交给 svn,并为每个构建创建标签(以便轻松识别它们)。现在,我能够从该系统中获取文件,将它们放在一个目录结构中,并且我正在尝试使用 SVNKit 将整个目录放入 SVN(因为整个同步系统是一个使用 Java 代码的系统)。
所以,我要做的是
- 使用将所有新文件添加到 svn
SVNWCClient.doAdd(main.workDirectory, true, false, false, SVNDepth.INFINITY, false, false /* we only add files below this path */)
- 然后使用提交整个目录
SVNCommitClient.doCommit(changedFiles, false, null, commitProps, null, false, true, SVNDepth.INFINITY)
不幸的是,它不能很好地工作......
确实,每次我尝试调用这些方法时,我都会得到
请注意,当我使用 TortoiseSVN 查看此文件夹时,它似乎是添加到 SVN 中的完美“普通”文件夹......此外,我可以使用 TortoiseSVn 提交根目录及其所有子目录,而不会出现最小的问题。那么,我可以/应该更改我的代码以使其正常工作吗?
java - 让 SvnKit 在 64 位 Windows 7 上工作的问题
我在让 SvnKit 在 64 位 Windows 7 上运行时遇到问题。我打开一个 shell 并输入 jsvn,然后我得到了...
该系统找不到指定的路径。
它没有说是什么路径。它不是启动器脚本,因为我检查了所有路径。它必须在一个 svnkit jar 或依赖 jar 中。
这是 1.3.4.6888 独立版本。我安装的 JRE 是 1.6.0_22。
有人在 64 位 Windows 7 上看到过这个问题吗?
编辑以显示启动器脚本:
似乎甚至没有从 jsvn.bat 文件中调用 java。
这是该文件的内容...
因此,某处存在错误路径,并且脚本从不调用 java 命令。如果我打开 echo 并观察控制台输出,然后手动输入 java 命令,它就可以工作。
我难住了。
java - Java Subversion 库
我一直在研究用于 Subversion (SVN) 的 Java API。似乎有3个可用:
- JavaHL - SVN 项目的一部分。提供相对底层的 API
- svnClientAdapter - Subclipse 项目的一部分。提供了比较高级的API
- SVNKit - 与其他 2 个不同,它提供了 SVN 协议的 100% Java 实现,即无需安装本机库。它提供了一个高级 API、一个低级 API、一个 JavaHL 的实现,以及一个使用 SVNKit 来实现它的命令行客户端。
我对这些 API 没有任何实际经验,但假设上述情况属实,SVNKit 看起来显然是赢家。我从经验中知道外表可能具有欺骗性,因此我正在寻找实际使用过这些库中的一个或多个的人的反馈。如上所述,SVNKit 是失控的赢家,还是有更好的选择。
我想答案将取决于我将使用 API 做什么,并且(也许令人惊讶)答案主要是编写,例如添加、更新和删除文件、创建项目和存储库、分支等。
谢谢!大学教师
java - 使用 SVNKit 更改 SVN 目录权限
我正在使用 SVNKit 以编程方式与 SVN 服务器交互。在某些时候,我需要防止对存储库目录进行任何进一步的更改。我最初的想法是使用锁来做到这一点,但后来我发现 SVN 锁是可破坏的(并且可以窃取),但我需要真正强制目录不能被修改。我知道我可以通过编写一个钩子脚本来使锁牢不可破,但这会使部署复杂化,并引入特定于平台的依赖关系。
我的下一个想法是通过更改需要锁定的目录的权限来解决这个问题。我可以使用 VisualSVN 服务器管理控制台来执行此操作,但我还没有找到任何通过 SVNKit API 执行此操作的方法。此功能是否通过 API 公开,如果没有,是否有另一种锁定目录的方法?
谢谢!
java - 使用 SVNKit 从 SVN 中提取的日期不正确
我正在使用 SVNKit 从 SVN 服务器检索日志。我正在使用 SVNKit 版本 1.3.2。
除了我最近看到的一些奇怪的问题外,一切都运行良好。提交日期检索被转换为运行程序的系统的时区,因此引入了一个偏移量,从而改变了在日志(使用 tortoise svn)和我的程序输出中看到的时间。
我想要的是日期输出应该与 SVN 日志中看到的相同。
java - 在没有本地结帐的情况下通过 SVNKit 提交更改的文件?
我正在使用 SVNKit 从我们的存储库中获取文件的内容。我想更改代码中的内容并将更改提交回来,而无需先签出文件。我已经在网上搜索过,只找到了需要签出本地文件系统的解决方案。
有谁知道这样做的方法?
svn - 哈德森 svnkit SSL
我将 Hudson CI 服务器与托管在 Subversion 上的项目(或作业)一起使用。我正在通过 SSL 连接到 Subversion 服务器。
一切正常,Hudson 可以从 subversion 进行更新,构建并且没有问题。
就在今天,哈德森停止检查颠覆性的重大变化。当有很多更改时,Hudson 将从 SVN 开始更新,然后它会给出以下错误:
错误:无法更新https://myserver:8443/svn/myproject/trunk
org.tmatesoft.svn.core.SVNException: svn: 坏记录 MAC
svn:报告请求在“/svn/CTPN/!svn/vcc/default”和错误堆栈中失败
原因:javax.net.ssl.SSLException:com.sun.net.ssl.internal.ssl.Alerts.getSSLException 的错误记录 MAC(未知来源)
它会每 10 秒尝试一次,并且永远持续下去。它发生在同一天在我们使用的两台 Hudson 服务器上
它适用于小更新,但是当它是大更新时,它会出现此错误
请问有什么反馈吗?
svn - 使用 SVNKIT 从 SVN 获取存储库的内容
我想比较 svn 中的 2 个存储库。我尝试制作使用 svn 从 svn 获取内容的程序,然后比较本地目录。是否可以使用 svnkit 从 svn 获取内容而无需签出。我不想修改存储库中的任何内容。是否可以从下载中排除某些元素,例如图像。