문제

나는 많은 데이터 파일(시뮬레이션 결과)을 생성하는 프로젝트에서 git을 사용하고 있습니다.나는 동일한 저장소에서 모든 결과를 버전화하고 추적하도록 "강제"되어 있습니다.(이것은 어려운 요구 사항이므로 변경할 수 없습니다.)

그러나 나는 그것들이 필요하지 않습니다.프로젝트에는 약 50MB가 있고 저장소에는 5GB의 결과가 있습니다.

브랜치를 생성하고 모든 결과를 삭제한 후 이 브랜치를 확인하고 해당 브랜치에서만 작업하는 것이 가능합니까?

로컬 변경 사항을 다시 fat 브랜치로 푸시하는 것이 얼마나 어렵습니까(무엇을 해야 합니까)?

작업을 위해 5GB를 제거할 수 있는 더 나은 솔루션이 있습니까?

도움이 되었습니까?

해결책

분기를 만들고 분기에서 결과 파일을 삭제하려는 경우 분기를 다시 마스터로 병합하면 마스터에서도 결과가 삭제됩니다.파일 삭제는 다른 것과 마찬가지로 변경입니다.

아마도 git 하위 모듈 지원을 사용하여 코드 변경 사항을 fat 저장소의 하위 모듈로 관리할 수 있습니다.이런 방식으로, fat 저장소에는 모든 것이 포함되어 있는 것처럼 보이지만 작은 코드 비트만 독립적으로 작업할 수 있습니다.원활하게 작동하려면 약간의 조작이 필요할 수 있습니다.

다른 팁

브랜치를 생성하고 하나의 커밋에서 원치 않는 파일을 삭제하는 경우 데이터 파일을 삭제하는 커밋을 병합하지 않고도 후속 커밋을 기본 브랜치로 다시 선별할 수 있어야 합니다.

참조 git Cherry-Pick 매뉴얼.

git Cherry-pick 외에도 또 다른 대안은 병합 직전에 파일 삭제 변경 사항에 대해 git-revert를 실행하는 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top