2012-03-09 32 views
6

Tôi đã dành cả tuần qua để đọc về Git và cố gắng tìm ra cách để phù hợp với nó vào công ty của chúng tôi. Có thông tin ngoài kia và trong số các tài nguyên khác tôi thấy Pro Git book rất hữu ích. Tuy nhiên, một điều vẫn còn là một bí ẩn đối với tôi (nó không nằm trong cuốn sách), là làm thế nào để 'liên kết' kho Git với các máy chủ sản xuất của chúng tôi.Triển khai mã cho (các) máy chủ sản xuất từ ​​Git

Thiết lập hiện tại của chúng tôi bao gồm một máy chủ SVN, tất cả chúng ta cam kết (Tôi thấy điều này có thể được cân bằng bằng cách thiết lập kho lưu trữ Git trống ở vị trí được chia sẻ và đẩy nó). Các máy chủ sản xuất của chúng tôi (có nhiều khách hàng đang chạy cùng một codebase PHP) hiện đang là các bản sao làm việc SVN, mà chúng tôi cập nhật một cách thủ công một lúc bằng cách chạy svn up.

Cách tốt nhất để tiếp cận điều này trong Git là gì? Tôi nghĩ về việc thêm các máy chủ sản xuất làm điều khiển từ xa trong kho Git của tôi and pushing to them, nhưng tôi nghĩ điều này có thể gây nhầm lẫn nếu các máy chủ khác nhau có lịch sử đẩy khác nhau (đây sẽ là một dịp mà bạn thực sự cần nó được tập trung). Hay bạn cần sử dụng một công cụ như https://github.com/mislav/git-deploy?

tôi không thể giúp đỡ, nhưng cảm thấy các nhà phát triển Git 'không thực sự nghĩ về điều này' .. Tôi hy vọng tôi thiếu cái gì đó :)

+0

Xin chào, tôi có câu hỏi nhanh. Tôi chỉ muốn xác minh. Tôi đã không chắc chắn nếu đó là đúng, nhưng nó là hoàn toàn tốt đẹp và bạn nên có một repo git trong máy chủ sản xuất của bạn để đẩy các tập tin của bạn phải không? Tôi có nghĩa là câu hỏi này trả lời một cách tinh tế, nhưng tôi muốn thực sự ở đây có một haha. Tôi đánh giá cao nó. – Andy

Trả lời

6

Bạn có thể đạt được các luồng công việc cùng với git. Thiết lập một repo trần mà tất cả các bạn đẩy mã của bạn đến và sao chép repo đó trên máy chủ sản xuất của bạn. Khi một cái gì đó đã xảy ra và bạn muốn cập nhật repo sản xuất của bạn chỉ cần làm "git pull" thay vì "svn up".

Đây là một khởi đầu tốt để có được mọi thứ. Sau một thời gian, bạn có thể muốn tự động hóa điều này và bạn có thể thực hiện rất nhiều điều thú vị với ví dụ: git hooks.

+0

Cảm ơn, điều đó rất hữu ích. – Rijk

+0

Điều này cũng có thể thú vị đối với bạn: [Luồng công việc Git tập trung vào web] (http://joemaller.com/990/a-web-focused-git-workflow/) – hakre

+0

@hakre thực sự là một minh chứng thú vị về các kịch bản móc (mặc dù tôi sẽ không đi với quy trình làm việc này, vì chúng tôi không bao giờ trực tiếp sửa đổi mã trên máy chủ sản xuất) – Rijk

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