Tôi đang chạy thử nghiệm trên một mô hình, với một quy trình làm việc như thế này:Làm thế nào để tổ chức một loạt các thí nghiệm khoa học sử dụng Git
- Tôi làm việc trong một mô hình (một phần mềm bằng Python)
- tôi thay đổi một số thông số và chạy thử nghiệm
- Sau đó, tôi sẽ lưu trữ kết quả thử nghiệm (dưới dạng dưa chua).
- Sau đó, tôi sẽ phân tích các kết quả (được chọn) bằng phần mềm khác (Sổ tay IPython).
Tôi đang sử dụng Git and Scientific Reproducibility làm hướng dẫn, trong đó kết quả của thử nghiệm được lưu trữ trong bảng cùng với giá trị băm của cam kết. Tôi muốn lưu trữ các kết quả trong một thư mục thay vào đó, đặt tên cho các thư mục dưới dạng băm.
Suy nghĩ về kiểm soát phiên bản, tôi muốn cách ly các code
và analysis
. Ví dụ, một sự thay đổi của màu sắc trong một âm mưu trong một máy tính xách tay IPython trong analysis
không nên thay đổi bất cứ điều gì trong code
Phương pháp Tôi đang nghĩ đến:
Một cấu trúc thư mục như thế này:
model
- code
- simulation_results
- a83bc4
- 23e900
- etc
- analysis
và các kho lưu trữ Git khác nhau cho code
và analysis
, để lại simulation_results
trong số Git.
Mọi nhận xét? Một giải pháp tốt hơn? Cảm ơn.
Số hex nào trong simulation_results có nghĩa là gì? (Tôi đoán họ là cam kết ID, nhưng tôi bỏ lỡ một số bối cảnh.) –
Tôi duy trì submodules là một cách tiếp cận tốt. Tôi đã chỉnh sửa và chi tiết câu trả lời của tôi. – VonC
Hi Josef, Có thực sự số hex là cam kết ids. – Victor