2011-12-22 19 views
5

Tôi đã cài đặt và định cấu hình cả gitolite và gitweb. gitolite hoạt động tốt, tất cả các kho và người dùng làm việc như mong đợi .. nhưng khi tôi sử dụng gitweb, tôi thấy một 404 - không tìm thấy dự án nào. tôi tiếp tục thấy rằng project.list trống. Sự cho phép của tệp projects.list là 640 và người dùng và nhóm cũng giống nhau "git".kho gitolite được tạo nhưng projects.list rỗng

Tôi đoán gitolite cũng sẽ thêm một kho lưu trữ mới vào projects.list, đúng không? Dự án gốc của tôi là/home/git/repositories.

Trả lời

5

Lưu ý: Điều này đã được làm lại trong các phiên bản mới hơn của gitolite; đây là the relevant documentation. Bạn vẫn có thể cung cấp cho phép đọc cho người sử dụng đặc biệt "gitweb" như trước, và bạn cũng có thể thêm dòng như thế này để Repos:

config gitweb.owner   = owner name 
config gitweb.description = some description 
config gitweb.category  = some category 

Nếu ít nhất một trong những thông số cấu hình được thiết lập cho một repo, nó sẽ có thể truy cập được vào gitweb.

Như trước đây, "có thể truy cập được vào gitweb" có nghĩa là "được thêm vào dự án một cách kỳ diệu.list".


câu trả lời gốc:

Gitolite hợp lý mặc định là các điều khoản hạn chế nhất - không ai có thể nhìn thấy một kho lưu trữ cho đến khi bạn nói với nó để cho họ. Điều này tất nhiên bao gồm gitweb. Để gitweb có thể xem kho lưu trữ, hãy trích dẫn số gitolite.conf documentation:

Tương tự, cho phép gitweb CGI hiển thị repo. Một cái gì đó như thế này:

repo foo bar baz 
    R = gitweb 

Điều này cung cấp cho bạn một cách nhanh chóng để cung cấp nhiều bản sao lưu cho gitweb và/hoặc truy cập daemon.

Tuy nhiên, việc đặt mô tả cho dự án cũng cho phép quyền gitweb để bạn có thể thực hiện theo cách đó nếu muốn. Tất nhiên trong trường hợp này bạn phải đối phó với từng repo riêng biệt. Thêm các dòng như thế này vào gitolite.conf:

foo = "some description" 
bar = "some other description" 
baz = "yet another description" 

Bạn cũng có thể chỉ định chủ sở hữu cho gitweb hiển thị, nếu bạn muốn; ví dụ tôi có thể sử dụng:

gitolite "Sitaram Chamarty" = "fast, secure, fine-grained, access control for git" 

Gitolite chỉ đặt kho trong projects.list nếu bạn đã nói với nó để làm cho họ có sẵn để gitweb thông qua một trong các phương pháp đó. Nó sẽ sử dụng chủ sở hữu và mô tả để điền vào projects.list là tốt, vì vậy nó thường là tốt nhất để làm điều đó theo cách đó. Lưu ý rằng nếu máy chủ web của bạn đang chạy như một người dùng khác với Gitolite, bạn sẽ cần phải chắc chắn rằng nó bằng cách nào đó có quyền truy cập vào các thư mục có liên quan, được ẩn từ những người dùng khác theo mặc định. Có một số tài liệu ví dụ về các trường hợp phức tạp hơn: gitolite-gitweb-http-backend

+0

Câu trả lời hay nhưng liên kết của bạn bị hỏng. Liên kết mới: http://gitolite.googlecode.com/git-history/df885e5989d3ae9644d4c6b02b627e74afef7b7c/doc/gitolite-gitweb-http-backend.mkd –

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