Trên máy chủ của tôi, tôi có hai người dùng, www-data
(được sử dụng bởi nginx) và git
. Người dùng git
sở hữu một kho chứa mã của trang web của tôi và người dùng www-data
sở hữu bản sao của kho lưu trữ đó (hoạt động dưới dạng webroot cho nginx). Tôi muốn thiết lập một quy trình làm việc như vậy để đẩy tới kho lưu trữ của git
làm cho kho lưu trữ của www-data
cập nhật, do đó việc cập nhật trang web của tôi.Quy trình triển khai trang web dựa trên Git
Cách chính xác để thiết lập móc cho các kho lưu trữ này (cũng xem xét các đặc quyền và quyền của hai người dùng này) là gì?
Có thực sự là một ý tưởng hay khi có tất cả nội dung công khai của bạn thuộc sở hữu của tài khoản người dùng chạy máy chủ? Nếu máy chủ hoặc mã của bạn bị khai thác, khai thác có thể sửa đổi dữ liệu liên tục, thay vì chỉ truy cập vào scribble trên các kết nối cơ sở dữ liệu của bạn ... – sarnold
Sau đó, tôi nên tạo nội dung công khai thuộc sở hữu của 'git', và làm cho nó có thể đọc được bởi tất cả mọi người ? Điều đó cũng sẽ đơn giản hóa các vấn đề về quyền trong câu hỏi này ... – Chetan
_If_ bạn đang hài lòng với giải pháp đó, sau đó có, nó sẽ giúp bạn tránh được rắc rối khi tìm cách mới để đẩy từ 'git' sang' www-data 'repos. :) Bạn có thích hai repo git trên máy chủ không? Một tùy chọn khác là đặt quyền sở hữu nhóm của các tệp thành một trong các nhóm của máy chủ và cho phép truy cập đọc thông qua các đặc quyền nhóm. – sarnold