2017-04-27 1 views
0

나는 가능성이 있거나 그렇지 않을 수도있는 매우 틈새 작업에 대해 질문이 있습니다. 나는 그 대답이 어딘가에 있을지도 모른다고 생각하지만 아마도 그 질문을 공식화하는데 실패했기 때문에 나는 그것을 발견하지 못했다. 그래서 여기에 간다 :추적되지 않은 파일을 git repo에 보관

파일 묶음과 거의 아무것도 포함하고 있지 않은 커밋을 가진 간단한 자식 repo를 상상해 보라. 내가하고 싶은 일은 바이너리 파일을 수정하여 git이 파일을 수정했지만 그 파일의 히스토리를 유지하지 않도록하는 것이다. 따라서 파일이 변경 될 때마다 Git은 실제 데이터를 업데이트하지만, 변경되지 않은 것으로 가정합니다.

목표는 프로젝트에 필요하지만 추적하지 않는 비교적 큰 바이너리 파일의 최신 버전을 유지하는 것입니다. 작업은 리베이스를 포함해서는 안되며 인기있는 git 호스트 (예 : github) 에 의해 지원되어야합니다. 편집 : 목표는 git repo를 복제하고, 컴파일 스크립트를 실행하고 결과를 즉시 얻을 수있게하는 것입니다. 따라서 "이 파일들을 보관 용 계정에 보관"하는 것은 해결책이 아닙니다.

이것도 가능합니까? 나는 어디에서보아야 할까? 내가 원하는 걸로 보이지 않는 것 같습니다. 모든 입력에 감사드립니다.

답변

0

아니요, 불가능합니다. git이 파일을 git에 추가하면 git이 변경 사항을 추적하기 때문에 변경 사항을 만들 때 git이 찾게됩니다. 몇 가지 해결책이 있습니다

당신은 참조 할 수 있습니다 :

  • .gitignore에서이 파일을 무시합니다.

  • 가능한 경우 일반 파일 (docx에서 txt, xlsx에서 csv 등)로 이진 파일을 변환 한 다음 버전을 제어하십시오.

  • 정상적으로 변경되고 이진 파일의 이전 버전을 git filter-branch 기간 동안 지워야합니다.

+0

나는 본다. 나는'git filter-branch'에 대해 알고 있는데 이것은 제가 사용하고있는 것입니다.하지만 다른 git repo 사용자들에게는 투명 할 것이고 조작이 수행 된 후에는 어떤 식 으로든 영향을 미치지 않을 솔루션을 기대하고 있습니다. – user2333940

관련 문제