반응형
타이젠 혹은 안드로이드와 같이 전체 소스를 받으면서 repo를 사용하게 되는데 init, sync를 사용하면서 옵션들을 찾아봤다.
https://source.android.com/source/using-repo.html
init
repo init은 repo를 현재 폴더에 초기화하는 명령어. .repo폴더를 만들어서 안에 Git의 저장소를 넣게 된다. 또한 manifest.xml을 포함하게 되어서 이 .repo/manifests에 심볼릭 링크로 연결되어 있다.
option
- -u : manifest repository의 url을 지정한다.
- -m: 저장소에서 manifest file을 선택할 수 있다. 어떤 manifest 이름도 선택되지 않으면 default.xml을 선택하게 된다.
- -b: revision을 선택하게 된다. 예를 들어서 특정 manifest-branch를 선택하게 된다.
Sync
repo sync는 변화되었거나 업데이트 된 파일들을 내 환경에 다운로드 한다. 어떤 인자도 포함하지 않고 실행하게 된다면, 모든 프로젝트에 대한 파일들을 받게 된다.
repo sync 실행 시 동작하는 것은 아래와 같다.
- 프로젝트가 처음 동기화 되는 것이라면, repo sync는 git clone 과 동일하게 동작하게 된다. 모든 branch 들이 local 프로젝트 디렉토리에 카피 되게 된다.
- 이미 한번 동기화가 동작했었다면 repo sync는 git remote update와 gir rebase origin/BRANCH를 실행한 것과 동일하게 동작한다고 생각하면 된다.
- 만약 git rebase operation의 결과가 merge 를 하면서 충돌로 나타난다면, Git commands를 통해서 충돌 문제를 해결해야 한다.
repo sync가 성공적으로 마무리되면 최신의 코드가 저장되게 된다.
option
- -d : 지정된 프로젝트를 manifest revision으로 변경한다. 만약 프로젝트가 현재 topic branch인데, 임시로 manifest revision이 필요할 경우에 유용하다.
- -s: 현재 manifest에 있는 manifest-server element를 통해서 지정된 가장 좋은 빌드와 동기화 한다.
- -f : 프로젝트가 fail 하더라도 다른 프로젝트들과 동기화를 계속 이어간다.
- -j : job number 쓰레드를 몇개 쓰냐는 것과 비슷하게 동작한다고 생각하면 된다.
반응형
'CSE > Tizen' 카테고리의 다른 글
Web API 구현 방안 (1) | 2014.09.04 |
---|---|
Ubuntu 14.04 LTS에서 Eclipse 에러 (0) | 2014.08.09 |
MIC와 GBS 설치하기 (0) | 2014.08.01 |
repo 버전 (0) | 2014.07.29 |
The Tizeners (0) | 2014.07.28 |