小石頭
          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
          (FAQ)基于svnserve的服務器,權限文件authz配置的常見問題及解答

          最近在我用Subversion論壇(http://www.iUseSVN.com/bbs)經常有人提到這樣的問題:
          為什么我的客戶端沒有寫權限?
          為什么我的權限沒有起作用?

          總結他們的配置,發現
          都是用svnserve作為服務器,
          都在svnserve.conf中使用了authz-db選項

          原因可能如下:

          1,配置authz時,沒有注意svnserve啟動參數-r所指定的目錄。
          這里有兩種情況:
          A:-r直接指定到版本庫(稱之為單庫svnserve方式)
          比如,有一個庫project1,位于D:\svn\project1
          使用以下命令啟動svnserve

          svnserve -d -r D:\svn\project1

          在這種情況下,一個svnserve只能為一個版本庫工作
          authz文件如果配置成下面這樣就是錯的,

          [groups]
          admin=user1
          dev=user2
          [project1:/]
          @admin=rw
          @doc=r

          應該配置成

          [groups]
          admin=user1
          dev=user2
          [/]
          @admin=rw
          @doc=r

          因為[project1:/]表示庫project1的根目錄,而按上面的啟動參數,是沒有庫的概念的。

          B:-r指定到版本庫的上級目錄(稱之為多庫svnserve方式)
          同樣,有一個庫project1,位于D:\svn\project1
          如果使用以下命令啟動svnserve

          svnserve -d -r D:\svn

          這種情況,一個svnserve可以為多個版本庫工作,
          這時如果想限制指定庫的指定目錄,就應該指定具體的庫,像這樣

          [groups]
          admin=user1
          dev=user2
          [project1:/]
          @admin=rw
          @doc=r

          如果此時你還用[/],則表示所有庫的根目錄,同理,[/src]表示所有庫的根目錄下的src目錄

          2,對中文目錄進行權限控制時,沒有將權限文件authz改為utf-8格式。

          svn對于非英文文件名和目錄名使用utf-8格式編碼處理,要對中文目錄進行正確控制,
          應該使用utf-8格式,如何將默認的文件轉為utf-8,
          我使用的是UltraEdit的菜單"ASCII to UTF-8 (Unicode Editing)"。

          更多參考文檔:
          (配置權限控制文件)http://www.iusesvn.com/bbs/thread-6-1-1.html
          (中文目錄權限控制)http://www.iusesvn.com/bbs/thread-41-1-1.html

          ?引用 ?報告回復頂部
          lulu
          高中生
          Rank: 3Rank: 3


          UID 124
          精華 0
          積分 211
          帖子 36
          威望 2
          金錢 209
          推廣積分 0
          閱讀權限 30
          注冊 2006-8-15
          狀態 離線
          發表于 2006-8-28 16:44? 資料個人空間短消息?
          svnservice能實現對多個檔案庫的管理

          也就是說,我要建多個檔案庫來管理不同項目,項目間彼此不關聯,所以,對單個項目而言,任何改動產生的版本號是連續的。

          ?引用 ?報告回復頂部
          PCplayer
          教導主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權限 150
          注冊 2006-6-3
          狀態 離線

          用支付寶求購
          回復 #2 lulu 的帖子

          可以啊,參數中使用多庫svnserve方式就行了

          ?引用 ?報告回復頂部
          cjnn
          初中生
          Rank: 2



          UID 210
          精華 0
          積分 70
          帖子 13
          威望 0
          金錢 70
          推廣積分 0
          閱讀權限 20
          注冊 2006-9-6
          狀態 離線
          發表于 2006-9-6 16:53? 資料文集短消息?
          我的根目錄的權限管用了,但子目錄還不行

          我按樓主說的,做了如下操作:
          ??svnservice -install -d -r e:\svnhome

          然后配置authz如下:
          ??[/]
          ??Admin = rw
          ??* = r
          ??[/Trunk]
          ??chenjie = rw
          ??* = r

          結果是,根目錄的權限管用了,但子目錄還不行.
          即:我可以用Admin在svnhome下任意目錄執行讀寫操作.可以用chenjie在svnhome下任意目錄執行讀操作.
          但是用chenjie在Trunk目錄中無法執行寫操作

          求助!謝謝!
          ?引用 ?報告回復頂部
          PCplayer
          教導主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權限 150
          注冊 2006-6-3
          狀態 離線

          用支付寶求購
          回復 #4 cjnn 的帖子

          請注意單庫多庫的區別,
          svnhome目錄下有哪些內容?
          ?引用 ?報告回復頂部
          cjnn
          初中生
          Rank: 2



          UID 210
          精華 0
          積分 70
          帖子 13
          威望 0
          金錢 70
          推廣積分 0
          閱讀權限 20
          注冊 2006-9-6
          狀態 離線
          發表于 2006-9-6 18:12? 資料文集短消息?
          svnhome目錄下,有:
          ??Branches
          ??Tags
          ??Trunk

          我覺得我設的應該是單庫吧,把svnhome做為一個庫
          ?引用 ?報告回復頂部
          PCplayer
          教導主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權限 150
          注冊 2006-6-3
          狀態 離線

          用支付寶求購
          我是指e:\svnhome下有哪些內容
          ?引用 ?報告回復頂部
          cjnn
          初中生
          Rank: 2



          UID 210
          精華 0
          積分 70
          帖子 13
          威望 0
          金錢 70
          推廣積分 0
          閱讀權限 20
          注冊 2006-9-6
          狀態 離線
          發表于 2006-9-7 09:33? 資料文集短消息?
          E:\svnhome下的內容:
          ? ?? ???\conf
          ? ?? ???\dav
          ? ?? ???\db
          ? ?? ???\hooks
          ? ?? ???\locks
          ? ?? ???format
          ? ?? ???README.txt
          ?引用 ?報告回復頂部
          PCplayer
          教導主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權限 150
          注冊 2006-6-3
          狀態 離線

          用支付寶求購
          回復 #8 cjnn 的帖子

          確保你的svn版本為1.3.2
          ?引用 ?報告回復頂部
          cjnn
          初中生
          Rank: 2



          UID 210
          精華 0
          積分 70
          帖子 13
          威望 0
          金錢 70
          推廣積分 0
          閱讀權限 20
          注冊 2006-9-6
          狀態 離線
          發表于 2006-9-7 10:11? 資料文集短消息?
          回復 #9 PCplayer 的帖子

          我是裝的這些:
          svn-1.3.2-setup.exe
          TortoiseSVN-1.3.5.6804-svn-1.3.2.msi
          LanguagePack-1.3.5.6804-win32-zh_CN.exe
          ?引用 ?報告回復頂部
          PCplayer
          教導主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權限 150
          注冊 2006-6-3
          狀態 離線

          用支付寶求購
          如果是這樣,不應該有問題的。
          再檢查一下你的啟動參數是不是確實為單庫的,
          你試著用多庫方式配置看看如何,
          另外注意如果有中文,應該將authz改為utf-8格式(這方面請搜索論壇文章)
          ?引用 ?報告回復頂部
          cjnn
          初中生
          Rank: 2



          UID 210
          精華 0
          積分 70
          帖子 13
          威望 0
          金錢 70
          推廣積分 0
          閱讀權限 20
          注冊 2006-9-6
          狀態 離線
          發表于 2006-9-7 13:26? 資料文集短消息?
          回復 #11 PCplayer 的帖子

          好吧,我再試試
          謝謝你!
          ?引用 ?報告回復頂部
          zpqs
          小學生
          Rank: 1



          UID 289
          精華 0
          積分 17
          帖子 6
          威望 2
          金錢 15
          推廣積分 0
          閱讀權限 10
          注冊 2006-9-22
          狀態 離線
          發表于 2006-9-22 14:55? 資料文集短消息?
          svn下有p1??p2? ?p3 三個倉庫,svn是根
          AuthzSVNAccessFile 怎么指向?

          <Location /svn>
          ? ?DAV svn
          #? ?SVNPath /home/server/servers/svn
          ?? SVNParentPath /home/server/servers/svn? ?==>多庫
          ? ?AuthzSVNAccessFile /home/server/servers/svn/p1/conf/authz? ?==?????

          ? ?Satisfy Any
          ? ?Require valid-user
          ? ?AuthType Basic
          ? ?AuthName "身份驗證"
          ? ?AuthUserFile "/home/server/servers/svnuser.passwd"
          </Location>
          ?引用 ?報告回復頂部
          PCplayer
          教導主任
          Rank: 8Rank: 8


          UID 3
          精華 7
          積分 5870
          帖子 1573
          威望 291
          金錢 5522
          推廣積分 57
          閱讀權限 150
          注冊 2006-6-3
          狀態 離線

          用支付寶求購
          回復 #13 zpqs 的帖子

          Apache的授權文件跟svnserve的是兩回事
          如果使用apache,跟svnserve方式中的svnserve.conf,passwd,authz都沒關系,
          你自己完全可以另外指定:通過SVNParentPath 和 AuthzSVNAccessFile

          請參考論壇文章
          ?引用 ?報告回復頂部
          zpqs
          小學生
          Rank: 1



          UID 289
          精華 0
          積分 17
          帖子 6
          威望 2
          金錢 15
          推廣積分 0
          閱讀權限 10
          注冊 2006-9-22
          狀態 離線
          發表于 2006-9-22 16:37? 資料文集短消息?
          ok thank u.
          ?引用 ?報告回復
          posted on 2007-03-04 14:36 小石頭 閱讀(520) 評論(0)  編輯  收藏 所屬分類: Subversion
          主站蜘蛛池模板: 施甸县| 迁安市| 永嘉县| 西乡县| 太保市| 上栗县| 明星| 台北县| 阳朔县| 尼玛县| 敦化市| 鹤山市| 望谟县| 历史| 昔阳县| 临城县| 岳西县| 漳州市| 阳原县| 惠州市| 正宁县| 乐业县| 普陀区| 山阴县| 类乌齐县| 贡山| 榆林市| 沂源县| 化德县| 汉寿县| 阿拉善盟| 当雄县| 青田县| 德庆县| 金秀| 嵊州市| 江津市| 六枝特区| 葫芦岛市| 米易县| 武威市|