Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Subclipse或(apache)SVN在提交期间防止用户“替换”_Svn_Subclipse - Fatal编程技术网

使用Subclipse或(apache)SVN在提交期间防止用户“替换”

使用Subclipse或(apache)SVN在提交期间防止用户“替换”,svn,subclipse,Svn,Subclipse,在使用SVN的多开发人员环境中工作时,我有时会遇到这样的问题:开发人员意外地将文件替换为文件的副本/粘贴。在subclipse的synchonisation视图中,这一点有时会被忽略,因为在提交之前,diff才起作用 在SVN中,这将以“文件替换”而不是“修改”的提交结束。 这个替换使得查看文件历史记录变得更加困难,因为SVN认为它是一个新文件,而不是一个修改过的文件 我想防止开发人员能够提交替换。或者至少让他们意识到他们实际上是在试图这么做 根据可能的情况,我可以将问题分为多个层次: 在apa

在使用SVN的多开发人员环境中工作时,我有时会遇到这样的问题:开发人员意外地将文件替换为文件的副本/粘贴。在subclipse的synchonisation视图中,这一点有时会被忽略,因为在提交之前,diff才起作用

在SVN中,这将以“文件替换”而不是“修改”的提交结束。 这个替换使得查看文件历史记录变得更加困难,因为SVN认为它是一个新文件,而不是一个修改过的文件

我想防止开发人员能够提交替换。或者至少让他们意识到他们实际上是在试图这么做

根据可能的情况,我可以将问题分为多个层次:

在apache SVN中没有特殊访问服务器端的情况下,是否有方法防止允许内部带有“replace”的提交? 有没有一种方法可以防止在提交中包含“替换”的提交?内亚唇形 在案例1和案例2不可能的情况下,是否有办法让开发人员知道他将在提交中进行“替换”?内亚唇形
非常感谢。

他们使用的是更新版本的Subclipse吗?造成这种情况的大多数原因都是由Eclipse及其驱动团队API的方式引起的。在某些情况下,复制和粘贴时,它会告诉团队API您删除了该文件,这会导致Subclipse运行svn delete。然后将新文件添加到svn add,相当于替换

较新版本的Subclipse会检测到这种情况,并跳一小步将其转换回修改。Subclipse的当前版本是1.10.1,该版本或最新的1.8.x版本中应包含这些更改

您可以在服务器上编写一个预提交钩子,查看提交中的更改,如果提交包含替换,则拒绝提交。看看Subversion提供的svnperms.py示例钩子脚本。如果它还没有做到这一点,它将向您展示如何做到这一点

无法阻止它的发生,但更新的Subclipse版本可能会使其不那么常见

decorator可能看起来不同,SVN属性将显示status replacemented,但没有什么能让用户看到这些东西。2是更好的选择