나는 git의 도움을 받아 모델링/예측 작업을 시작하려고한다. 이 작업을 용이하게하기 위해 git 아키텍처를 설정하려고하지만 몇 가지 문제가 있습니다.데이터 업데이트로 모델링 작업을위한 작업 흐름
목표 : 지역에서 모델링 작업의 끝에서/소 지역의 branchs (필요한 인간의 개정, 인간의 개정 = 커밋), 코드의 버전을 함께 검토 할 수 예측을 모두 가지고 마스터 아래로 병합 그리고 그것이 실행 된 데이터 세트. 나중에 개정이 필요할 경우, 모 듈러는 정확한 예측이 완료된 시점에서 분기하여 올바른 (가능하면 이전) 버전의 코드로 작업 할 수 있어야합니다.
문제 : 데이터 및 코드 버전이 변경 될 수 있습니다. 구형 모델 실행은 이전 코드/데이터와 호환되지 않습니다 (예 : 지역 1, 코드 버전 1 및 데이터 버전 2를 사용할 수 있지만 지역 2, 코드 4 및 데이터 6). 프로젝트에서 예측을 재현 할 수 있어야합니다.
내 솔루션 : git의 철학에 위배되는 것 같지만 데이터 세트 또는 코드 업데이트가있을 때마다이를 마스터에 배치하고 파일 이름에 버전 번호를 추가하십시오. region/subregion 브랜치를 가지며 모든 예측 완료 커밋에 태그를 붙입니다. 그런 다음 예측이 완료되면 master로 병합하고 코드와 데이터가 실행 된 버전을 나타내는 다른 파일을 추가하십시오. 수정이 필요한 경우 완료 태그를 찾아 적절한 버전의 코드로 다시 작성한 다음 지역으로 병합 한 다음 마스터로 병합합니다. 모델을 재생해야하는 경우 생성 된 추가 파일의 올바른 코드/데이터로 모델을 실행하십시오.
git을 사용하여이 프로세스를 추적하는 가장 좋은 방법입니까, 아니면 더 좋고/더 간단한 방법이 있습니까? 이 프로세스가 작동합니까, 아니면 그로 인해 발생할 수있는 의도하지 않은 문제가 있습니까?
"상위 리포에 기록하십시오. 정확한 SHA1 ..."은 나중에 언제든지 이전 예측을 실행하기 위해 그 SHA1에 reset --soft가 필요하다는 것을 의미합니까? – RayVelcoro
@RayVelcoro 부모를 원하는 SHA1로 재설정하면 하위 커밋이 상위 커밋에 기록 된대로 각각의 SHA1로 재설정됩니다. SHA1은 gitlink입니다 (https://stackoverflow.com/a/2227598/6309 및 https://stackoverflow.com/a/17442045/6309 참조). – VonC