Ngoài câu trả lời của @ simon.
Không phải tất cả trong công nghệ phần mềm là về lập trình, thiết kế hoặc mô hình hóa. Có vô số nhiệm vụ chúng tôi thực hiện liên tục trong ngày làm việc. Bạn đã đề cập đến một - xây dựng dự án bên ngoài IDE - nhưng còn nhiều thứ nữa.
Các nhà phát triển có kinh nghiệm / chủ động có xu hướng tự động hóa các nhiệm vụ này. Một số, thậm chí xây dựng các công cụ khi các tác vụ này trở thành một phần của SDLC và chúng rất tẻ nhạt - và dễ bị lỗi - phải làm bằng tay. Các chương trình rất giỏi làm những công việc lặp đi lặp lại, bất kể chúng tẻ nhạt đến mức nào. Chúng ta - con người - không tốt đến thế.
Những công cụ / tập lệnh này có tác dụng phụ tích cực khác
- Năng suất
- Chuyển giao kiến thức
- Tự chủ (cho người mới)
Vì vậy, vâng, các tập lệnh nên có trong SCM và chúng phải là một công cụ nữa trong hộp công cụ của nhà phát triển.
Về thư mục /scripts
tôi sẽ nói rằng nó không thành vấn đề. Để đơn giản, tôi để chúng trong thư mục gốc của dự án để tất cả các tuyến được khai báo trong các tập lệnh đều liên quan đến thư mục của dự án. Nếu tôi cần truy cập vào các thư mục hoặc tệp bên ngoài, tôi tạo các liên kết mềm .
Những điều cần xem xét trước khi kiểm tra các tập lệnh vào SCM.
Để bảo mật, hãy đảm bảo rằng các tập lệnh không có thông tin được mã hóa cứng - lý tưởng nhất là các tập lệnh nên được tham số hóa tốt -
Hãy chắc chắn rằng các tập lệnh không làm những điều kỳ lạ đối với hệ thống, ví dụ như để thực thi các lệnh không thể hoàn tác (điển hình nhất rm -rf
).
Vì những thứ này trở thành một phần của nguồn dự án, tài liệu được đánh giá cao.
Kịch bản không phải là khoa học tên lửa. Làm cho kịch bản súc tích. Thay vì một người cai trị tất cả ... và trong bóng tối trói buộc họ , hãy làm nhiều hơn, nhỏ hơn và súc tích. Như thể bạn đang áp dụng SRP.