我的Cygwin SVN客戶端在版本1.6.17和1.7.4之間更改了有關Windows ACL的行爲。Cygwin SVN簽出ACL問題
[更新: SVN 1.7.4和1.6.17實際上具有相同的行爲。問題在於別處。我沒有得到的是它停止工作的地步,可能是Cygwin的更新。 ]
[UPDATE: Cygwin的內置SVN客戶端實際上榮譽通過設置可執行ACL位爲當前用戶的svn:executable
關鍵字。必須謹慎對待SVN書中提及的「在Windows下沒有效果」。 ]
使用1.7.4運行檢出將所有提取的文件設置爲只讀爲當前用戶。例如,在我的具體情況下這就是煩人的事情,它不會爲批處理設置執行標誌。在文件屬性中,當前用戶的安全選項卡爲標記Everyone
和Read
/Write
。
運行退房與1.6.17不顯示此行爲。文件檢出與用戶友好的權利,批處理可以執行。在文件屬性中,對於當前用戶,安全選項卡爲/Read
爲Everyone
和Modify
/Read & execute
/Read
/Write
打勾,這是我期望從結帳中得到的。該檢出是腳本過程的一部分,因此兩個測試情景中的環境都是相同的。
我發現沒有提及SVN車票的行爲,並沒有運氣搜索。大多數結果都與服務器端配置有關。
我沒有ACL/NTFS專家,我看過Cygwin的POSIX /窗口在http://cygwin.com/cygwin-ug-net/ntsec.html文章,但沒有明確的區別。
- 我試過了svn:可執行文件的關鍵字,但預計今年有Windows下沒有效果。
- 在Windows 7或XP下也會出現相同的差異。
- 我注意到TortoiseSVN 1.7.6(針對「本機」SVN 1.7.4構建的)正確運行檢出。
- 我有默認的全新安裝
/etc/fstab
,裏面是空的,並沒有/etc/fstab.d
配置。
這並不是說我對1.6.17不滿意,但1.7.4中的一些功能很有趣。
如何解決奇怪的訪問權限問題?
爲什麼你會在這裏使用cygwin?當然,一個本地的svn客戶端就是你需要的。 – 2012-03-19 15:53:42
@DavidHeffernan同意。但是,運行檢出的腳本實際上是使用Cygwin工具作爲先決條件。在這個過程中引入外部svn可能會造成更多的傷害而不是優點,並且會使其運行的平臺的配置複雜化。該腳本適用於遠程buildbot工作人員。 – TallFurryMan 2012-03-20 10:59:58