2014-05-17 1 views
1

현재 외부 저장소에 추출한 다음 서브 트리로 내 기본 프로젝트에서 참조하려는 파일 이라는 디렉토리가 있습니다. 주 리포에서 내 파일의 기록을 잃지 않고이 하위 트리 연결을 설정하지 않고이 작업을 수행하려면 어떻게해야합니까? 이후디렉토리를 이동하는 방법과 그 파일을 하위 트리의 원격 저장소로 이동

--subdirectory-filter <directory> 
     Only look at the history which touches the given subdirectory. The result 
     will contain that directory (and only that) as its project root. 

:

main_project.git < --- files.git

root 
---data 
------files 

이동

root 
---remote 
------files (subtree) 

답변

0

사용 git filter-branch --subdirectory-filter은 별도의 저장소에 그 하나의 폴더에 압축을 풉니 다 git submodule 또는을 사용할 수 있습니다.을 사용하여 새 저장소를 두 번째 저장소에 포함시킵니다.

+0

안녕하세요 michas, 내가 올바르게 이해한다면이 필터 - 분기가 내 메인 저장소에서이 하위 디렉토리의 모든 기록을 완전히 삭제하므로 하위 트리가 올바른지 다시 가져올 수 있습니까? 내가 다른 곳의 서브 트리에 포함되어있을지라도 내 메인 레포에서 파일의 기록을 유지하고 싶기 때문에 불행히도 원하지 않는 것입니다. – user391986

+0

'git filter-branch'는 히스토리를 보존합니다. 'subdirectory-filter'는 주어진 디렉토리 외부의 모든 것을 "제거"합니다. 저장소의 새로운 복제본을 만들고 직접 살펴보십시오. – michas

관련 문제