티스토리 뷰

et cetera

GIT LFS 사용 관련 TIP

Mr.SIM 2018. 7. 25. 22:11

GIT을 통해 코드를 관리하는데 코드 이외 오디오 파일, 비디오 파일과 같은 큰 데이터 를 저장하려고 하고 싶을 때 LFS(Large File Storage)를 사용할 수 있다.
https://git-lfs.github.com/


1) LFS를 사용하면 인증절차가 3번(3 times)이나 이루어진다??

이유까지는 잘 모르겠으나, LFS를 사용하고 git push 를 사용할떄 3번의 username과 password를 물어본다. LFS 사용하기 이전처럼 한번 인증을 하기 위해서는 아주 간단한 방법이 있는데 Git의 Credential 저장소를 이용하면 쉬워진다.

https://git-scm.com/book/ko/v2/Git-%EB%8F%84%EA%B5%AC-Credential-%EC%A0%80%EC%9E%A5%EC%86%8C


이는 잠시 cache에 저장해서 자동으로 인증해줄 수 있도록 하는 것인데, 설정하는 방법은 다음과 같다.

 $ git config credential.helper cache

 $ git config credential.helper 'cache --timeout=1'


timeout의 기본값은 900초이며, 위 명령어의 1은 1초를 뜻한다. 처음 인증 후 바로 캐시를 통해 인증되므로 1초면 충분하다.



2) LFS를 사용하기 이전에 큰 파일에 대한 히스토리가 남아있다??

BFG Repo-Cleaner 를 사용하면 큰 파일들을 지워준다. LFS 적용 전의 히스토리가 남으면 아래 링크를 통해 jar를 받아서 지워준다.

https://rtyley.github.io/bfg-repo-cleaner/


$ git clone --mirror git://example.com/your_project.git


$ java -jar bfg_file_name.jar --strip-blobs-bigger-than 100M your_project.git


$ cd your_project.git

$ git reflog expire --expire=now --all && git gc --prune=now --aggressive


$ git push



'et cetera' 카테고리의 다른 글

[Pattern] KNN Clustering  (0) 2014.02.23
html5 태그 선언  (0) 2013.09.26
html5의 웹 워커사용하기 ( thread )  (0) 2013.09.17
html5가 제공하는 localStorage 자바스크립트 API  (0) 2013.09.17
댓글
최근에 올라온 글
최근에 달린 댓글
글 보관함
Total
Today
Yesterday