2011-08-22 26 views
6

Phương pháp tốt nhất để thông báo cho nhà phát triển khác là gì khi một thay đổi được cam kết trong kiểm soát sửa đổi yêu cầu một số hành động bổ sung cụ thể của nhà phát triển nhận được bản cập nhật. sửa đổi tệp cấu hình cục bộ không có trong điều khiển phiên bản?Khi cam kết kiểm soát sửa đổi yêu cầu nhà phát triển thay đổi cấu hình của riêng mình

Tôi hiện đang viết nó trong thông báo cam kết, nhưng có vẻ như điều này có thể dễ dàng bị bỏ qua. Do bất kỳ hệ thống kiểm soát sửa đổi cung cấp một cách tốt hơn để làm điều này?

Làm cách nào để những người khác thực hiện việc này hoặc sẽ không bao giờ có bất kỳ thay đổi cần thiết nào nằm ngoài tầm kiểm soát sửa đổi?

Tôi đang sử dụng thủy ngân nhưng câu trả lời từ những người sử dụng các hình thức kiểm soát sửa đổi khác cũng sẽ hữu ích.

Trả lời

5

Có nên hiếm khi có những thay đổi cần thiết mà bên ngoài kiểm soát sửa đổi. Đối với những trường hợp hiếm hoi mà họ đang sử dụng, hãy sử dụng kênh giao tiếp thường xuyên mà nhà phát triển có (như danh sách gửi thư hoặc kênh IRC hoặc một cái gì đó tương tự). Mỗi dự án nhiều nhà phát triển đều cần những thứ như vậy.

2

Chỉ cần một ý tưởng, nhưng bạn có thể có kích hoạt dựa trên một mô hình trong thông điệp cam kết để gửi một mail với cam kết bình luận cho các nhà phát triển

doable với hooks

3

Personnally, tôi sử dụng 2 phương pháp:

  1. thông tin liên lạc một: Tôi nói để developpers khác gì thao tác là phải làm gì để được up-to-date (đúng, nhưng đôi khi, chúng ta bỏ lỡ một số chi tiết .. ..)
  2. kịch bản lệnh: Tôi đã thực hiện update tập lệnh được sử dụng để quản lý cập nhật tất cả các phần của dự án (các thư mục khác nhau, kho lưu trữ khác nhau, điều khiển phiên bản khác ...), trong tập lệnh này hoạt động cần thiết để duy trì một kho lưu trữ chính xác (tôi sử dụng nó cho kho svn và git).
5

Với git, những gì bạn có thể do (ngay cả khi nó không phải là thực sự ở đó cho kịch bản đó) là sử dụng một filter driver, với điều kiện của bạn cam kết bao gồm những thay đổi cho một tập tin với một recognizable content (bộ lọc doesn' t có tên hoặc đường dẫn của tệp).

enter image description here

Một tài xế lọc là:

  • tuyên bố trong một .gitattributes file (có nghĩa là, trái với móc hoặc gây nên, bạn có thể dễ dàng phân phối nó)
  • gắn liền với một vết bẩn và một rõ ràng script (cũng được phiên bản, smudge được kích hoạt trên cam kết.
  • bạn có thể, trên cam kết, kích hoạt bất cứ hành động tự động nào bạn cần.

Một lần nữa, điểm là không sử dụng các móc (bạn không thể sao chép dễ dàng giữa các bản ghi) và sử dụng cơ chế có thể được phiên bản và nhân bản.

1

Đối với các tệp mà mỗi nhà phát triển cần thực hiện thay đổi cục bộ (như chuỗi kết nối cơ sở dữ liệu, v.v.) Tôi muốn giữ mẫu dưới dạng tệp được theo dõi, chẳng hạn như localconfig.template.Trong tập lệnh xây dựng/khởi chạy của bạn, bạn có thể có logic như sau:

if not exists localconfig then 
    copy localconfig.template to localconfig 
else 
    if localconfig.template is newer than localconfig 
    print a big ugly warning about maybe needing to update 
Các vấn đề liên quan