是否有可能更改存储在Subversion中的文件,使其永远不会被修改?我们有一个需要存储在系统中的文件,但没有用户应该能够更新它。更改Subversion文件,使其永远不会被修改
回答
您可以创建一个拒绝任何包含该文件的提交的预提交挂钩。
您可以使用svn lock
,但其他用户可以强制锁定。最好的方法是使用一个将拒绝修改文件的钩子。
这些文章应该让你去:
感谢您的信息。看来这是要走的路。我给你+1了,但詹姆斯先给了同样的答案,所以接受了他。 – Firedragon
我想答案是肯定的,没有两个。是的,从这个意义上说,你可以lock
该文件,从来没有unlock
其他用户。没有在这个意义上说,如果你unlock
该文件,另一个用户可以modify
它。它取决于你找到正确答案的选择。
我看到你已经接受了一个答案,但是我有一个Perl pre-commit hook可以做你想做的。所有你需要做的就是发送在控制文件中的条目:
[file You are not allowed to modify this file]
file = /the/file/you/cannot/modify.txt
access = read-only
users = @ALL
顺便说一句,你应该创建一个管理员组的成员可以修改这些文件,所以您不必如果你改变了钩必须修改它:
; Creates a group of users who are allowed to modify read-only files
[group admins]
users = firedragon, bob, ted, carol, alice
[file Only Admins are allowed to modify this file]
file = /the/file/you/cannot/modify.txt
access = read-only
users = @ALL
; Order is important. The last entry that matches
; the file is the one implemented
[file Only Admins are allowed to modify this file]
file = /the/file/you/cannot/modify.txt
access = read-write
users = @admins
您可以指定一组使用Ant风格的水珠或Perl的正则表达式的文件,以及访问控制可以read-write
,read-only
,no-delete
,或add-only
这是伟大的标签。用户可以创建一个标签,但不能对其进行修改。
[file You can create a tag, but not modify it]
file = /tags/**
access = read-only
users = @ALL
[file You can create a tag, but not modify it]
file = /tags/*/
access = add-only
users = @ALL
第一个删除在整个标记目录树中的任何位置写入的所有功能。第二个允许用户只在/tags/
目录下直接添加标签。
顺便说一句,你应该创建一个可以修改这些文件的管理员组的成员,所以你不必改变钩,如果你这样做:
意见新的评论。我已经标记了你,希望我能做更多: - / – Firedragon
- 1. AVCaptureVideoOrientation永远不会改变
- 2. 修改subversion文件权限
- 3. 使用Subversion检查远程修改
- 4. 验证的文件不会被修改
- 5. 更改的文件未被修改?
- 6. 排球库android-getHeaders()永远不会被使用&getParams()永远不会被使用
- 7. 试图更改Kivy中的标签文本,它永远不会更改
- 8. CSS不会永久更改
- 9. 防止在git上修改被修改的文件被修改
- 10. TortiseSVN 1.7如何打开修改的文件使其父文件夹被修改?
- 11. CSS:如何保持图像永远不会被相同的“偏移”修改?
- 12. “永远不会被执行”
- 13. Rails 3.2 session_id永远不会改变
- 14. 的TestContext.TestName财产永远不会改变
- 15. Android Facebook sdk,sharedPreferences永远不会改变?
- 16. Django翻译Chrome中的缓存文件永远不会改变
- 17. Subversion将修改后的文件标记为已修改
- 18. 在Swift中,改编的AVCaptureVideoDataOutputSampleBufferDelegate,但captureOutput永远不会被调用
- 19. Subversion:只提交修改过的文件
- 20. 如何缓存sql查询,其结果永远不会改变?
- 21. 永久文件更改
- 22. 更改mixins.scss不会更改CSS文件将其导入
- 23. 实体框架修改Context.cs文件更改不会持续
- 24. Second Spinner永远不会根据First Spinner更改数组
- 25. 生成永远不会更改的可靠设备ID
- 26. 链接到令牌的ASP.NET API用户永远不会更改
- 27. 修改ctx.result不会更改POST响应
- 28. Mvvm。文本框永远不会改变与System.Threading.Thread.Sleep
- 29. 插入不会永久更改地图?
- 30. 收藏已被修改,其中项目未被修改
你就不能锁定这个文件? – StKiller
我相信锁可以被打破。 – Firedragon