나는 힘내에서 (대형) 포트란 프로젝트를 가지고있다. 개발중인 기능에 해당하는 다른 활성 분기가 있습니다. 각 분기에 대해 컴파일 된 버전의 코드를 유지 관리하는 편리한 방법을 찾고 싶습니다.힘내 : 여러 지점을 가진 프로젝트 빌드
코드는 현재 Make를 사용하여 컴파일되며 모든 오브젝트 파일은 바이너리와 함께 별도의 폴더 (예 : build_branch1)에 보관됩니다. 디렉토리 구조는 다음과 같다 :
메이크
./build_branch1/objects
./build_branch2/objects
./build_branch2/bin
./build_branch1/bin
./src
. ..
원칙적으로 다음과 같이 모든 분기를 컴파일 할 수 있습니다.
0 자식 체크 아웃 BRANCH1
만들 --prefix = build_branch1
자식 체크 아웃 브랜치
할 --prefix = build_branch2
등 ...
만들기는 소스의 타임 스탬프를 비교한다 (갓 Git에서 build_branchN 폴더의 오브젝트 파일로 체크 아웃하고 변경된 파일을 다시 컴파일합니다. 문제는 Git이 branch1과 branch2 사이에 다른 모든 소스 파일의 타임 스탬프를 변경하여 많은 파일이 필요하지 않을 때 다시 컴파일되도록하는 것입니다. 코드를 컴파일하는 데 오랜 시간이 걸리므로 (최대 30 분), 이는 큰 불편이 될 수 있습니다.
이 경우 가장 좋은 전략이 무엇인지 궁금합니다. 이 게시물에서와 같이 각 체크 아웃 후에 타임 스탬프를 업데이트하려고합니다. What's the equivalent of use-commit-times for git? 무엇을 권하고 싶습니까?
감사합니다. 그것은 깔끔한 생각입니다. 나는 각 체크 아웃에서 뭔가를한다는 생각을별로 좋아하지 않았다. (내가하는 체크 아웃의 대부분은 코드를 작성하는 것이 아니다.) – calys