小石頭
          Excellence in any department can be attained only by the labor of a lifetime; it is not to be purchased at a lesser price.
          posts - 91,comments - 22,trackbacks - 0
          經(jīng)常有朋友問到Subversion是否可以對中文目錄進(jìn)行權(quán)限控制,如果可以,該如何配置。

          經(jīng)過測試,發(fā)現(xiàn)subversion是可以很好地控制中文目錄的權(quán)限的。

          方法很簡單,就是將你的權(quán)限控制文件的格式轉(zhuǎn)換為UTF-8格式,
          將權(quán)限文件改成UTF-8格式我使用的是UltraEdit的菜單"ASCII to UTF-8 (Unicode Editing)"。


          關(guān)于配置權(quán)限控制文件,請參考鄭新星發(fā)表的
          《Subversion之路--利用 svnserve.exe 實現(xiàn)精細(xì)的目錄訪問控制》
          http://www.iusesvn.com/bbs/viewt ... &extra=page%3D1

          有關(guān)中文目錄權(quán)限控制的討論,也可以參考
          http://www.iusesvn.com/bbs/viewt ... &extra=page%3D1

          增加您網(wǎng)站的流量。加入 Google AdWords
          ?引用 ?報告回復(fù)頂部
          鄭新星
          教導(dǎo)主任
          Rank: 8Rank: 8
          云在青天水在瓶


          原創(chuàng)先鋒獎 ?
          UID 2
          精華 2
          積分 3239
          帖子 120
          威望 57
          金錢 3112
          推廣積分 70
          閱讀權(quán)限 150
          注冊 2006-6-3
          來自 美麗的鷺島——廈門
          狀態(tài) 離線
          發(fā)表于 2006-7-4 20:21? 資料主頁文集短消息?
          今晚抽空做了測試,部分結(jié)論如下:
          1 svn不支持微軟格式的UTF-8文件,不支持unicode,僅支持標(biāo)準(zhǔn)UTF-8,就是頭部有一個 FF FE的文件
          2 用微軟自帶的“記事本”編輯出來的任何unicode格式文件,svn均不認(rèn)識
          3 只要使用了svn 支持的標(biāo)準(zhǔn)UTF-8文件,svn 就可以很好地實現(xiàn)對中文的支持,包括中文用戶名、中文目錄、中文組名

          現(xiàn)在有個小問題,我新建一個文件只有一個“1”這個字符,然后用UltraEdit查看其UTF-8格式(狀態(tài)條提示U8-DOS格式)和UNICODE格式(狀態(tài)條提示U-DOS格式),兩者完全一樣,看不出區(qū)別,不知道究竟區(qū)別何在?

          ?引用 ?報告回復(fù)頂部
          鄭新星
          教導(dǎo)主任
          Rank: 8Rank: 8
          云在青天水在瓶


          原創(chuàng)先鋒獎 ?
          UID 2
          精華 2
          積分 3239
          帖子 120
          威望 57
          金錢 3112
          推廣積分 70
          閱讀權(quán)限 150
          注冊 2006-6-3
          來自 美麗的鷺島——廈門
          狀態(tài) 離線
          發(fā)表于 2006-7-4 21:10? 資料主頁文集短消息?
          查資料說,對于UTF-8文件,應(yīng)該是 EF BB BF 31,而對于UNICODE文件,應(yīng)該是 FF FE 00 31
          難道是Ultraedit顯示的二進(jìn)制格式,是經(jīng)過加工的,而不是最原始的?

          還有,為什么微軟的“記事本”出來的UTF-8格式,會有兩個FF FE FF FE呢?

          ?引用 ?報告回復(fù)頂部
          PCplayer
          教導(dǎo)主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權(quán)限 150
          注冊 2006-6-3
          狀態(tài) 在線

          用支付寶求購
          我試了一下,在UltraEdit中
          不管UTF-8還是Unicode都是FF FE 31 00
          對于微軟的“記事本”,經(jīng)常是有問題的,現(xiàn)在都不敢相信它,只相信UltraEdit
          ?引用 ?報告回復(fù)頂部
          鄭新星
          教導(dǎo)主任
          Rank: 8Rank: 8
          云在青天水在瓶


          原創(chuàng)先鋒獎 ?
          UID 2
          精華 2
          積分 3239
          帖子 120
          威望 57
          金錢 3112
          推廣積分 70
          閱讀權(quán)限 150
          注冊 2006-6-3
          來自 美麗的鷺島——廈門
          狀態(tài) 離線
          發(fā)表于 2006-7-5 23:03? 資料主頁文集短消息?
          晚上寫了個小程序測試了一下,終于弄懂了UltraEdit弄出來的UTF8格式,和微軟弄出來的UTF8格式之間的區(qū)別了

          比如說一個文本文件內(nèi)容是“1啊”兩個字符:
          對于 GBK編碼:31 B0 A1
          對于unicode UCS-2 編碼(不論記事本還是Ultaedit): ff fe 31 00 4a 55 (在Ultraedit二進(jìn)制下看到的是一樣的)
          對于UltraEdit的“UTF8(unicode editing)” 的編碼: 31 e5 95 8a (在Ultraedit下看到的是 FF FE 31 00 4A 55)
          對于微軟“記事本”另存為出來的UTF8的編碼:??ef bb bf 31 e5 95 8a??(在Ultraedit下看到的是 FF FE FF FE 31 00 4A 55)

          可以看出來,微軟的UTF8編碼其實是符合標(biāo)準(zhǔn)的,因為 ef bb bf 這三個字節(jié),正好就是 FF FE 的UTF8編碼。也就是說,看來是我們冤枉微軟了,一直以為是Ultraedit出來的utf8標(biāo)準(zhǔn)而微軟“記事本”出來的utf8不標(biāo)準(zhǔn),其實正好相反。
          參見 ultraedit forum

          看來我手頭的 UE9.0 是個很老的版本了。

          現(xiàn)在就剩下一個問題:為什么svn不支持標(biāo)準(zhǔn)utf8,無法識別BOM呢?
          ?引用 ?報告回復(fù)頂部
          PCplayer
          教導(dǎo)主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權(quán)限 150
          注冊 2006-6-3
          狀態(tài) 在線

          用支付寶求購
          強,這種鉆研精神我要好好學(xué)習(xí)先!
          另外我要找找UTF-8等編碼的標(biāo)準(zhǔn)文檔。
          ?引用 ?報告回復(fù)頂部
          鄭新星
          教導(dǎo)主任
          Rank: 8Rank: 8
          云在青天水在瓶


          原創(chuàng)先鋒獎 ?
          UID 2
          精華 2
          積分 3239
          帖子 120
          威望 57
          金錢 3112
          推廣積分 70
          閱讀權(quán)限 150
          注冊 2006-6-3
          來自 美麗的鷺島——廈門
          狀態(tài) 離線
          發(fā)表于 2006-7-6 13:01? 資料主頁文集短消息?
          下面摘自??http://xiushen.com/blog/read.php/114.htm ,說明了BOM的存在對PHP腳本的影響

          QUOTE:
          如果您在修改任何PHP文件后發(fā)生:

          ??* 不能登入或者不能登出;
          ??* 頁頂出現(xiàn)一條空白;
          ??* 頁頂出現(xiàn)錯誤警告;
          ??* 其它不正常的情況。
          則多半是編輯器的問題。

          本程序采用UTF-8編碼。現(xiàn)在幾乎所有的文本編輯軟件都可以顯示并編輯UTF-8編碼的文件。但是很遺憾,其中很多軟件的表現(xiàn)并不理想。

          類似WINDOWS自帶的記事本等軟件,在保存一個以UTF-8編碼的文件時,會在文件開始的地方插入三個不可見的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隱藏的字符,用于讓記事本等編輯器識別這個文件是否以UTF-8編碼。對于一般的文件,這樣并不會產(chǎn)生什么麻煩。但對于 PHP來說,BOM是個大麻煩。

          PHP并不會忽略BOM,所以在讀取、包含或者引用這些文件時,會把BOM作為該文件開頭正文的一部分。根據(jù)嵌入式語言的特點,這串字符將被直接執(zhí)行(顯示)出來。由此造成即使頁面的 top padding 設(shè)置為0,也無法讓整個網(wǎng)頁緊貼瀏覽器頂部,因為在html一開頭有這3個字符呢!

          最大的麻煩還不是這個。受COOKIE送出機制的限制,在這些文件開頭已經(jīng)有BOM的文件中,COOKIE無法送出(因為在COOKIE送出前PHP已經(jīng)送出了文件頭),所以登入和登出功能失效。一切依賴COOKIE、SESSION實現(xiàn)的功能全部無效。

          因此,在編輯、更改任何文本文件時,請務(wù)必使用不會亂加BOM的編輯器。Linux下的編輯器應(yīng)該都沒有這個問題。WINDOWS下,請勿使用記事本等編輯器。推薦的編輯器是: Editplus 2.12版本以上; EmEditor; UltraEdit(需要取消‘添加BOM’的相關(guān)選項); Dreamweaver(需要取消‘添加BOM’的相關(guān)選項)等。

          對于已經(jīng)添加了BOM的文件,要取消的話,可以用以上編輯器另存一次。(Editplus需要先另存為gb,再另存為UTF-8。)

          下面一段摘自 http://forums.mozine.org/index.php?showtopic=556 ,說明了BOM對 mozilla 插件制作過程中對BOM的要求:

          QUOTE:
          選擇編輯器

          要編輯中文語言檔案,你必需要有合適的編輯器。Mozilla 有些特定的文件格式要求,所以你的編輯器最少要有以下的功能:

          1. 支援 UTF-8 文字檔型
          2. 可選擇文件是否要有萬國碼檔案簽名 BOM (Byte Order Mark, U+FEFF)
          3. 支援逸出萬國碼 (escaped Unicode,\uXXXX) 的文字編碼

          可惜的是在 Windows 2000 與 XP 上的 Notepad 沒有第二項的支持,所以你必須用其它的編輯器。以下是一些建議:

          1. UniRed : freeware,很好用
          2. SC UniPad: 測試版有字元數(shù)限制,正式版太貴了,功能好但可能不適用。

          這些程序的使用請參見 Mozilla 地方化的工具。



          QUOTE:
          2. .dtd 文件是 UTF-8 格式,注意 .dtd 文件不得有 BOM 開頭字元

          總結(jié):自由軟件領(lǐng)域,好像對BOM都非常不適應(yīng),而svn的作者可能是覺得沒必要處理BOM也可以正確處理UTF-8文檔,所以就這么干了。只是比較郁悶的是,我無法使用我最愛的編輯器了:記事本


          附件 : [前述將文件頭部內(nèi)容導(dǎo)出查看的小程序,它會打印出頭10個字節(jié)的內(nèi)容] dumphex.rar (2006-7-6 13:01, 18.39 K)
          該附件被下載次數(shù) 101
          ?引用 ?報告回復(fù)頂部
          ekylin
          小學(xué)生
          Rank: 1



          UID 79
          精華 0
          積分 4
          帖子 1
          威望 0
          金錢 4
          推廣積分 0
          閱讀權(quán)限 10
          注冊 2006-8-4
          狀態(tài) 離線
          發(fā)表于 2006-8-4 11:33? 資料文集短消息?
          版主,http apache 認(rèn)證方式無法識別中文???
          ?引用 ?報告回復(fù)頂部
          PCplayer
          教導(dǎo)主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權(quán)限 150
          注冊 2006-6-3
          狀態(tài) 在線

          用支付寶求購
          中文是可以識別的
          請樓上的詳細(xì)描述你的問題
          ?引用 ?報告回復(fù)頂部
          小宇
          班主任
          Rank: 7Rank: 7Rank: 7


          UID 396
          精華 0
          積分 132
          帖子 86
          威望 16
          金錢 116
          推廣積分 0
          閱讀權(quán)限 100
          注冊 2006-10-17
          狀態(tài) 離線
          發(fā)表于 2006-10-18 16:48? 資料個人空間短消息?
          打個標(biāo)記先~把基礎(chǔ)問題解決了再來研究~
          看了教導(dǎo)主任的帖子
          有種不敢說話的感覺……
          ?引用 ?報告回復(fù)頂部
          PCplayer
          教導(dǎo)主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權(quán)限 150
          注冊 2006-6-3
          狀態(tài) 在線

          用支付寶求購
          回復(fù) #10 小宇 的帖子

          悄悄地問一下:為什么不敢說話
          ?引用 ?報告回復(fù)頂部
          szhuiwang
          初中生
          Rank: 2



          UID 103
          精華 1
          積分 51
          帖子 8
          威望 12
          金錢 39
          推廣積分 0
          閱讀權(quán)限 20
          注冊 2006-8-9
          狀態(tài) 離線
          發(fā)表于 2006-11-1 17:09? 資料文集短消息?
          SVN可以對中文目錄設(shè)置權(quán)限,卻不能對中文庫設(shè)置權(quán)限.是什么原因?(服務(wù)器端是Linux操作系統(tǒng))
          ?引用 ?報告回復(fù)頂部
          rolkey
          小學(xué)生
          Rank: 1



          UID 584
          精華 0
          積分 1
          帖子 1
          威望 0
          金錢 1
          推廣積分 0
          閱讀權(quán)限 10
          注冊 2006-11-20
          狀態(tài) 離線
          發(fā)表于 2006-11-20 09:37? 資料文集短消息?
          大家的UltraEdit是哪個版本???我這個10.20只有轉(zhuǎn)換成unicode的功能,沒有轉(zhuǎn)換成UTF-8的功能,不知道在哪里設(shè)置???
          ?引用 ?報告回復(fù)頂部
          PCplayer
          教導(dǎo)主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權(quán)限 150
          注冊 2006-6-3
          狀態(tài) 在線

          用支付寶求購
          回復(fù) #13 rolkey 的帖子

          我的是v11




          posted on 2007-03-04 17:14 小石頭 閱讀(1673) 評論(1)  編輯  收藏 所屬分類: Subversion

          FeedBack:
          # re: Subversion是否可以控制中文目錄的訪問權(quán)限?可以!
          2007-08-28 22:13 | zinsser
          將權(quán)限控制文件的格式轉(zhuǎn)換為UTF-8格式,為什么在svnmanager中還是不能對中文目錄控制?  回復(fù)  更多評論
            
          主站蜘蛛池模板: 阜康市| 浑源县| 朔州市| 防城港市| 洞口县| 隆林| 十堰市| 乌鲁木齐县| 建平县| 防城港市| 黄龙县| 正蓝旗| 文昌市| 五峰| 延边| 疏附县| 康乐县| 工布江达县| 四会市| 柘城县| 西平县| 崇仁县| 滕州市| 永安市| 外汇| 文山县| 陆河县| 林西县| 台北县| 平塘县| 大埔县| 广灵县| 濮阳县| 黄大仙区| 天全县| 缙云县| 宜川县| 庆城县| 临猗县| 建湖县| 宁陵县|