2008-11-01 43 views
12

Tôi đã làm việc trên một số dự án PHP và luôn có vấn đề với việc tổ chức công việc của mình. Bạn phát triển ứng dụng của mình ở đâu - trên máy chủ cục bộ, máy chủ từ xa hoặc có thể sản xuất một (!)? Khi tôi làm việc trên máy chủ cục bộ của mình sau khi tạo một số đường dẫn chính, tôi gửi các tệp mới bằng ftp - nhưng đôi khi nó xảy ra để quên đi một tệp và nó chỉ mệt mỏi khi duyệt qua một số bản sao để sao chép các tệp đã thay đổi. Bạn đề xuất phương pháp hay nhất nào?Làm thế nào để bạn quản lý Vòng đời phát triển dự án PHP?

Trả lời

10

Đây là cách chúng tôi quản lý trang web thương mại của chúng tôi:

  1. Phát triển trong một hộp cát địa phương
  2. Kiểm tra-in để SVN
  3. tự động xây dựng/kiểm tra từ SVN vào nội bộ máy chủ dev
  4. Triển khai theo kịch bản sử dụng rsync để dàn dựng máy chủ cho QA/UAT
  5. Triển khai theo kịch bản lên máy chủ .

Máy chủ dàn dựng và sản xuất đều được ISP lưu trữ và phần cứng và phiên bản phù hợp và chạy RHEL, máy chủ Dev nội bộ là phiên bản khớp với CentOS.

Bằng cách này, khi mã số truy cập các máy chủ sản xuất không nên có bất kỳ bất ngờ khó chịu như ngay cả những kịch bản triển khai được kiểm tra trong giai đoạn 4.

+1

Chúng tôi làm điều gì đó tương tự trừ khi chúng tôi sử dụng thanh toán SVN để tạo giai đoạn (cho phép sửa đổi # hoặc thẻ được chỉ định - trong trường hợp thân cây không thể thực hiện được) - sau đó sử dụng rsync để đảm bảo sản xuất khớp chính xác với giai đoạn. – DavidWinterbottom

0

Tôi đang phát triển trên một máy phát triển có môi trường giống hệt như môi trường sản xuất - ngăn chặn một số hành vi khác nhau do các phiên bản hoặc cấu hình khác nhau. sau khi hoàn thành tôi chỉ cần di chuyển tất cả các tập tin trên máy chủ sản xuất.

Winmerge là một công cụ cửa sổ đẹp và miễn phí để phân biệt tệp của bạn giữa máy phát triển và máy sản xuất.

+0

Điều đó không giống như có hệ thống phiên bản điều khiển mà không có khả năng quay ngược thời gian? –

1

Google App Engine có công cụ tương ứng tự động tải lên các tệp môi trường sản xuất được sửa đổi; không biết liệu có cái gì đó tương tự cho PHP không. Vì vậy, thực hiện một tập lệnh dev2prod (một kịch bản thực hiện điều này tự động) nên là một giải pháp tốt.

Để quản lý tệp nguồn cục bộ, mọi người có thể đề xuất bạn sử dụng source code control system.

0

Phát triển trong máy tính cục bộ của bạn với cấu hình chính xác giống như môi trường phát triển của bạn (đó là apache mods, phần mở rộng php và vv), bằng cách sử dụng một hệ thống kiểm soát phiên bản (tôi thích SVN) để theo dõi các tập tin sửa đổi và những gì không.

Sau đó, bạn có thể viết kịch bản trong môi trường sản xuất hoặc thử nghiệm để sao chép/cập nhật tệp khỏi kho lưu trữ sang đường dẫn máy chủ web.

0

lẽ đã đươc nghe off cho chuyển hướng một bài cũ nhưng đây là cách tôi làm điều đó bằng các công cụ miễn phí:

Tôi sử dụng Netbeans, Git, bitbucket, cây nguồn, gitflow và FTPloy.

Bitbucket.com: đăng ký tài khoản miễn phí. SourceTree: miễn phí từ bitbucket. Công cụ tuyệt vời để quản lý kho git. Tất cả các cam kết, sáp nhập và kéo có thể được thực hiện ở đây. Các vấn đề trong bitbucket có thể được theo dõi.

Trong sourcetree, thực hiện nhánh chính và nhấp vào "git flow" - google gitflow - luồng công việc tuyệt vời của các tính năng, hotfix, phát triển và các nhánh phát hành và sourcetree giúp tự động hóa quá trình.

FTPloy.com tự động triển khai nhánh chính của bạn. Miễn phí là một repo/server. Nhưng đáng để nâng cấp nếu bạn muốn đẩy chi nhánh phát triển vào một sandbox máy chủ để thử nghiệm.

Hy vọng điều này sẽ giúp ai đó tìm kiếm trên web!

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