2009-09-24 35 views
7

Tôi đã chơi đùa với git trên máy cục bộ của mình và mọi thứ có ý nghĩa cho đến khi một nhà phát triển từ xa và nhiều nhà phát triển tôi bắt đầu bối rối.Luồng công việc Git để phát triển web

Mục tiêu của tôi là có một trang web "bán công khai" mà một nhóm gồm 4 người có thể làm việc và thúc đẩy các thay đổi cho trang web trực tiếp khi họ sẵn sàng. Chúng tôi cần trang web dev/s nằm trên máy chủ web công cộng để chúng tôi có thể nhận được chấp thuận trước khi đẩy thay đổi trực tiếp. An ninh không phải là một mối quan tâm lớn vì vậy tôi đang lên kế hoạch sử dụng một đơn giản .htaccess để hạn chế truy cập. Không phải tất cả các thay đổi đều cần được phê duyệt nhưng tôi muốn các trang web của dev luôn được cập nhật.

Thách thức lớn là 2 trong số 4 người chúng tôi là nhà thiết kế và vì vậy toàn bộ quá trình thực hiện thay đổi và thúc đẩy nó sống cần phải nhanh chóng và đơn giản. Chúng được sử dụng để chỉ thay đổi các trang web. Tôi không muốn thực hiện quy trình 10 bước để thực hiện những gì họ đang thực hiện bằng phím tắt ngay bây giờ.

Mọi đề xuất?

+0

Capistrano không nhất thiết là độc quyền với Ruby on Rails; nó có thể được cấu hình để làm việc với các dự án khác. Google một cái gì đó dọc theo dòng "Capistrano cho PHP" để bắt đầu. Ngoài ra còn có Ruby Gems chẳng hạn như triển khai railsless mà sẽ tự động cấu hình Capistrano cho phù hợp. Trên một mặt lưu ý ... này là để đáp ứng với một bình luận cho một câu trả lời ở trên. Xin lỗi để làm điều đó theo cách này nhưng tôi chưa thể gửi bình luận. Tôi hy vọng tất cả các bạn sẽ tha thứ cho tôi vì tôi nghĩ thông tin này đáng để chia sẻ. Chúc mừng. – Synexis

Trả lời

4

Check-out:

này sẽ nhận được tất cả mọi người quen thuộc với việc sử dụng git và cung cấp cho bạn một công cụ để đẩy mạnh hiệu quả các thay đổi.

+0

Vì vậy, để sử dụng GitX mọi người sẽ cần một bản sao cục bộ của toàn bộ trang web? Tôi muốn tránh điều này nếu có thể. Chúng tôi có một thư mục với 4Gb tệp PDF hiếm khi thay đổi. – respectTheCode

+0

Thật không may, Git (bất kể bạn sử dụng GitX hay không) không hỗ trợ kiểm tra một phần. Điều này có thể là trong các công trình. Câu trả lời bạn sẽ nghe ngay bây giờ là 4Gb tệp PDF của bạn sẽ không được kiểm tra trong cùng một kho lưu trữ. –

+1

Chúng tôi đã sử dụng git trong vài tháng và hoạt động rất tốt. Mỗi người dùng có XAMPP và một bản sao đầy đủ của trang web. Sau đó chúng tôi có một máy chủ trong văn phòng của chúng tôi mà tất cả chúng tôi đẩy và kéo từ.Nó có một kịch bản cập nhật bài đăng tải lên các thay đổi cho nhánh chính đến máy chủ web. Chúng tôi sử dụng các nhánh khác cho các máy chủ dev của chúng tôi. Nó không hoàn hảo nhưng nó hoạt động khá tốt. – respectTheCode

3

Trước khi tiếp tục, tôi sẽ nêu rõ ràng rằng git là không phải là một công cụ triển khai web. Capistrano và bạn bè là giải pháp vượt trội và bắt buộc đối với các hệ thống phức tạp. Tuy nhiên, nếu bạn có một trang web đủ đơn giản và không quan tâm đến việc triển khai nguyên tử, phụ thuộc, quá trình ép buộc (đảm bảo tất cả thay đổi đã được QAed, v.v.), và tương tự, đôi khi bạn có thể lấy ra một móc sau buộc git checkout. Sau đó, quá trình triển khai vào một trang web sẽ được đẩy tới một kho lưu trữ đặc biệt. Bạn có thể có một kho lưu trữ cho QA và một cho sản xuất, hoặc có móc kiểm tra các chi nhánh được đẩy đến và con số đó để cập nhật theo cách đó.

Xem http://toroid.org/ams/git-website-howto để biết thêm thông tin về móc đơn giản nhận được để thanh toán tự động.

Tất nhiên, bạn cũng có thể có móc sau nhận cuộc gọi một hệ thống triển khai web thực tế để xử lý một số vấn đề được đề cập ở trên.

+0

Chúng tôi không có quy trình đánh giá thay đổi nội dung để những thay đổi đó chỉ được thực hiện trên nhánh chính. Mọi thứ khác lấy nhánh riêng của nó và được sáp nhập vào master để phát hành. Chúng tôi có một số các chi nhánh được kiểm tra trên các máy ảo trong văn phòng của chúng tôi để xem xét khi tiến độ dự án. Nó không hoàn hảo nhưng nó hoạt động tốt. Tôi sẽ nhìn vào Capistrano, nhưng nó nghe có vẻ quá mức cần thiết cho những gì chúng ta cần. – respectTheCode

+1

Có vẻ như Capistrano là một giải pháp cụ thể của Ruby on Rails nên nó sẽ không giúp ích gì trừ khi bạn sử dụng Ruby on Rails. – respectTheCode

+0

Tôi giả định rằng bạn đã giải quyết được vấn đề, err, vài năm trước. Tôi chỉ bình luận cho những người khác đang xem xét cùng một vấn đề. Nếu bạn có những ràng buộc không được đề cập để cả hai giải pháp đều không hoạt động, hãy làm sáng tỏ. Ngoài ra, vui lòng upvote nếu bài đăng này hữu ích. –

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