Tôi sẽ nói các bước bạn cần thực hiện trong kịch bản bạn mô tả phụ thuộc 100% vào môi trường phát triển và các công cụ bạn đã thiết lập.
Sử dụng Perforce để kiểm soát phiên bản mã nguồn, chúng tôi đã thiết lập hệ thống phân nhánh nơi các bản phát hành tách biệt với công việc phát triển và tất cả các nhánh phát triển xuất phát từ một nhánh "chấp nhận". Mỗi nhánh được sử dụng cho một vấn đề duy nhất, hoặc cho một tập hợp các vấn đề liên quan chặt chẽ. Không có vấn đề nào khác có thể được thực hiện trong một chi nhánh cho đến khi các thay đổi đã được tích hợp vào chi nhánh chấp nhận.
Vâng, điều đó có nghĩa là chúng tôi có rất nhiều chi nhánh. Có, chúng tôi làm rất nhiều đồng bộ (chấp nhận xuống một chi nhánh công việc) và tích hợp (chi nhánh công việc lên đến chấp nhận). Nhưng giá trị của nó là không thể tính toán khi nói đến việc dễ dàng chuyển từ nhiệm vụ này sang nhiệm vụ khác, quay trở lại với hai vấn đề được thử nghiệm, phát hiện hai vấn đề cắn nhau, v.v.
Sau khi phát triển đã thực hiện (bao gồm các bài kiểm tra riêng) , một vấn đề được kiểm tra bởi nhóm QA. Đầu tiên cô lập trong chi nhánh riêng của mình. Sau đó được tích hợp vào nhánh chấp nhận và kiểm tra hồi quy được thực hiện để tìm ra bất kỳ vấn đề nào với các vấn đề độc lập cắn nhau. Khi tất cả các vấn đề cho một bản phát hành đã được tích hợp vào sự chấp nhận, một hồi quy hoàn chỉnh và kiểm tra chức năng mới được thực hiện bởi nhóm QA.
Vì vậy, chi nhánh chấp nhận luôn là trạng thái phát triển "mới nhất" cho ứng dụng.
Trong này thiết lập các kịch bản mà bạn mô tả sẽ diễn ra như sau:
Rời khỏi công việc hiện tại của tôi như nó có, có thể kiểm tra tại bất kỳ thay đổi nổi bật như vậy là không để mất chúng khi tôi bị treo máy tính. Nếu điều đó có nghĩa là phá vỡ xây dựng hàng ngày của chi nhánh đó, tôi sẽ không đăng ký, trừ khi nó rất dễ dàng để sửa chữa các lỗi biên dịch. (Xin lưu ý rằng chúng tôi có nhiều ứng dụng trong bộ ứng dụng của chúng tôi và trong khi các thay đổi của tôi có thể biên dịch trong ứng dụng tôi đang thực hiện, chúng vẫn có thể phá vỡ các ứng dụng khác trong bộ của chúng tôi) không được phá vỡ quá trình xây dựng.
Tìm nhánh "trống" - chi nhánh hiện không được sử dụng cho bất kỳ công việc phát triển nào hoặc nếu tất cả các chi nhánh được thực hiện, hãy tạo một nhánh mới.
Buộc đồng bộ hóa nhánh chấp nhận và nhánh công việc đã chọn để máy của tôi được đảm bảo có trạng thái mới nhất cho cả hai nhánh.
Đồng bộ hóa (bắt buộc nếu cần) trạng thái mới nhất của chi nhánh chấp nhận cho nhánh công việc, do đó chi nhánh công việc đã chọn giống với chi nhánh chấp nhận.
Mở bộ ứng dụng của nhánh đó trong IDE, gỡ lỗi và giải quyết. Gửi đến chi nhánh công việc.
Yêu cầu QA xem xét nó trong nhánh làm việc. Nếu họ hài lòng với nó, hãy tích hợp các thay đổi lên để chấp nhận để họ có thể tiếp tục thử nghiệm.
Chuyển IDE trở lại làm việc trên bộ ứng dụng trong nhánh mà tôi đã làm trước đây.
Rửa sạch và lặp lại.
Nguồn
2010-06-26 10:48:58
Nên * chắc chắn * là cộng đồng wiki. –
Làm thế nào để làm bánh từ bánh mì nướng đến bánh kem? –