问题标签 [svn-lock]

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.

0 投票
1 回答
1075 浏览

svn - 同一工作区上的并发 SVN 更新

在我的公司,我们使用 Jenkins 来构建我们的 C++ 应用程序。由于项目之间紧密相连,并且我们使用分层的 make 结构,我们将整个源代码作为一个大工作区进行检查。

然后,我们使用不同的 Jenkins 项目在构建之前对同一工作区的不同子文件夹进行更新,有时这些项目是同时构建的。使用 Subversion 1.6 可以正常工作,但是使用 Subversion 1.7 我们经常会遇到以下错误:

工作区似乎被锁定,因此获得一个新的工作区

我认为这是因为如果更新正在运行,subversion 1.7 会锁定整个工作区(而 1.6 只锁定了相关的子文件夹)。

有没有办法在不锁定 Subversion 1.7 中的 subversion 工作区的情况下进行 SVN 更新?此致。

0 投票
1 回答
66 浏览

svn - 工作副本被锁定

我在最新的结帐中创建了一个新分支。现在我尝试使用“撤消添加”将其删除,但它所做的只是删除文件,保留结构和文件夹,但给我消息“工作副本已锁定”。

我的问题是:

a) 我可以更改我的工作副本吗?
b) 如果是这样,我该如何改回来?
c)我如何删除这个分支?

0 投票
1 回答
1236 浏览

svn - 如何默认禁用 svn-needs-lock?

在我得到一台新的工作站计算机后,我的 SVN 设置有所不同。我创建的所有文件都svn:needs-lock默认设置了属性。实际上,过去不是这种情况,我真的不需要它,因为这里的并发开发人员太少了。

您能否告诉我如何将我的计算机配置为默认不设置此属性?

系统:Windows 7

SVN 客户端:TortoiseSVN

0 投票
1 回答
262 浏览

svn - 为什么`svn update`解锁文件以及状态B是什么

我使用 Enterprise Architect,它用于svn lock将模型文件锁定在 subversion 存储库中。例如:

我了解到,svn commit除非您使用该--keep-locks选项,否则您会松开锁。从 Subversion 1.8 开始,我注意到svn update现在解锁了:

请注意, 之后没有任何内容svn status。锁没了!但是svn update没有--keep-locks状态B

好吧,是德语。但是您不需要说德语就可以看到该列表中没有B。

如果我现在尝试重新锁定,我被告知文件已被锁定:

这是一个错误还是这种奇怪行为的原因。

更新:

感谢@user655063,我现在知道B代表破锁。这导致了以下问题:“为什么锁总是坏掉”。

不仅仅是在被 Enterprise Architect 锁定时。如果我在命令行上重新锁定文件,下一个锁定也将被视为已损坏和未锁定svn update

0 投票
1 回答
668 浏览

linux - 如何确定用户 svn 的锁定文件列表

我们需要什么:如果退出任务或开发,开发人员应该解锁他锁定的所有文件。

有没有一种简单的方法来检查指定的用户他锁定的所有文件的列表?

我们正在使用 svn 在 Linux 服务器上运行 Subversionversion 1.8.11 (r1643975).

0 投票
1 回答
733 浏览

svn - SVN防止无锁提交?

我需要防止用户在 svn 下提交一个特定文件,除非他们获得了锁。我使用了 svn:needs-lock 属性,它可以满足我的要求,但是有一个限制——用户不能在本地编辑文件以进行测试。这些是模型(DevEx - xml)文件,虽然合并它们是一个巨大的痛苦(因此需要锁定)我想让用户能够在本地修改文件,但阻止他们在没有得到一把锁。

可以做到吗?如何?

0 投票
2 回答
87 浏览

git - SubGit:Git 钩子,如果未锁定,则锁定 svn 文件,如果被其他用户锁定,则拒绝提交

语境:

我正在开发一个大型 UE4 项目。目前我们使用 SVN 作为我们的 VCS,但我一直是一名 git 开发人员,并且拥有本地 repo、本地分支和存储是我不愿意放弃的东西。

所以,我已经开始使用 SubGit 来处理 repo 的 git 版本,而 subgit 进行 git 到 svn 的转换。到目前为止,我喜欢它,除了我被迫使用 rebase 而不是合并这一事实之外,其他一切都像普通的 git。

编辑 1:我的 subgit 存储库是本地的,因为我无权访问远程 SVN 存储库。这意味着工具喜欢svnadminsvnlook不适合我。

问题:

现在,我的团队通过锁定他们在 SVN 中工作的二进制文件来工作。我想要一种自动加入该工作流程的方式。所以我想到了一个预提交挂钩来检查我即将提交的文件是否被锁定。如果没有,则立即锁定它们。如果是,请检查我是否是锁的所有者。如果我不是,请中止提交。

有没有人知道如何实现这样的目标?