2010-05-08 43 views
7

Tôi đang phát triển Trình duyệt giao diện web tùy chỉnh cho các kho lưu trữ Subversion với C#/ASP.NET và SVNKit (được chuyển đổi sang .NET assembly bằng IKVM.NET). Có cách nào làm sạch cách thêm cục bộ người dùng lật đổ mới (được thêm bởi quản trị viên) bằng mã C# không?Thêm người dùng subversion mới theo lập trình với C#

Trả lời

4

Tôi không thể cung cấp C#, nhưng tôi nghi ngờ ngôn ngữ triển khai có tác động đến mọi thứ. Tất cả những gì bạn cần làm là đọc/ghi vào một tập tin văn bản. Các thay đổi đối với tệp cấu hình diễn ra ngay lập tức (không giống như Apache). Rất không phải là phức tạp.

Nếu bạn bật vào thư mục conf trong kho của bạn (không phải bản sao làm việc của bạn), bạn sẽ tìm thấy ba tập tin:

  • svnserve.conf
  • authz
  • passwd

svnserve.conf kiểm soát tệp xác thực của repo (passwd), được tắt theo mặc định. Để kích hoạt xác thực tài khoản dựa trên bạn chỉ cần bỏ ghi chú dòng trong conf trông giống như:

password-db = passwd 

Bạn cũng sẽ có thể muốn tinh chỉnh:

anon-access = none 
auth-access = write 

Như nhận xét trong các ghi chú file config, bạn có thể chỉ định đường dẫn đến tệp bên ngoài. Điều này có thể là những gì bạn có nghĩa là một cách "sạch" để tinh chỉnh công cụ. Đơn giản chỉ cần đặt tập tin passwd của bạn bên ngoài repo và thay đổi svnserve.conf của repo để trỏ đến nó một cách rõ ràng. Sử dụng kỹ thuật này, bạn có thể kiểm soát truy cập vào nhiều repos từ một tập tin passwd duy nhất. Ví dụ:

password-db = /home/user/svn-users.conf 

Các tập tin mật khẩu riêng của mình trông như thế này:

[users] 
user1 = user1pass 
user2 = user2pass 

Các ý kiến ​​trong các tập tin mặc định nên được khá rõ ràng về cách để có được mọi thứ lên và chạy, nhưng nếu bạn muốn biết thêm , TortoiseSVN manual có hướng dẫn thiết lập máy chủ tuyệt vời. (Còn có SVN Redbean book, nhưng tôi thấy Rùa rõ ràng hơn một chút.)

Các vấn đề liên quan