728x90
반응형

깃 레파지토리를 옮길때, 두가지 방법이 있다.

1.commit  유지하지않는방법

2.commit / branch 를 유지하는 방법

 

당연히 2번이 훨씬더 편한다.

해당 레파지토리의 .git 파일을 삭제하고, 

 

git init 으로 새로 등록하여 git push 를 하면 끝나기때문이다.

 

하지만, 후임자와 팀원들을 위해 commit 내용을 공유해주어야 할 필요가 있다.

 

만약 해당깃에 

 

100mb 가 넘는 파일이 없는 경우

 

터미널에서

1. git clone --bare {복사하고자하는저장소의 git 주소, 원래 소스코드가 있는 레파지토리}

2. cd {복사하고자하는저장소의git 주소}
3. git push --mirror {붙여놓을저장소의git주소}

 

만 하면 끝난다.

 

하지만, 100mb 가 넘는경우, 해당 프로세스를 진행하면 100mb 가 넘는 파일이 있기때문에 에러가 난다.

 

해결하기 위해서는

1. 100mb 이상의 파일처리

brew install git-lfs  

brew install bfg        

를 먼저깔아주고

 

1. git clone --bare {복사하고자하는저장소의 git 주소, 원래 소스코드가 있는 레파지토리}

2. cd {복사하고자하는저장소의git 주소}

3. git filter-branch --tree-filter 'git lfs track "*.{zip,jar}"' -- --all  

4. brew install bfg 로 깔지않고 jar 파일을 받았을때,  bfg의 위치를 넣은 path 

 

java -jar {bfg의 위치를 넣은 path } --convert-to-git-lfs '*.zip'

java -jar {bfg의 위치를 넣은 path } --convert-to-git-lfs '*.jar'

 

5. git push --mirror {붙여놓을저장소의git주소}

 

하면 끝

728x90
반응형

+ Recent posts