리눅스 & 안드로이드2012. 2. 15. 08:05
repo script를 사용하면 여려개의 git으로 구성된 repository를 한 번에 처리할 수 있어서 편리하다.
하지만, 굳이 모든 git들이 필요하지 않다면 저장공간 낭비 뿐만 아니라, repo sync 시 시간이 오래 걸리기도 한다.
그런데 gerrit review system과 함께 사용하려면 어쩔 수 없이 repo upload를 해야 한다고 알 고 있었는데, 그렇다고 하기에는 너무 불편하고 불합리 하다고 생각이 들었다. (그렇게 만들었을 리 없지 않은가!)

결국, 방법은 있었다. 궁하지 않고 찾지 않아 잘 모르고 있었을 뿐...

repo script를 사용하는 git/gerrit 시스템에서 특정 git만 가져온 후, gerrit과 연동 되도록 하는 방법은 다음과 같다.

As-Is:   repo sync -> git commit -> repo upload
To-Be: git clone -> git commit -> git push

방법은, 본인이 clone으로 내려 받은 디렉토리에 생성되는 .git 디렉토리의 내부에 있는 config파일을 수정하는 것이다.

> vi .git/config

 [remote "origin"]

        fetch = +refs/heads/*:refs/remotes/origin/*

        url = ssh://localhost:12345/android/vendor/com/apps/AlarmClock.git

        push = HEAD:refs/for/repository_master   <== 추가


repository_master는 banch name! (용어가 정확한지는 잘 모르겠다)

Posted by 세월의돌