repo 명령어 정리
1. REPO INIT
현재 디렉터리에 .repo 디렉터리를 생성하고 그 안에 URL로부터 다운 받은 manifest.xml을 두고 이 파일이 실제 .repo/manifest/ 디렉터리에 있는 manifest file을 symbolic link로 지정한다.
2. REPO SYNC
project_list를 넣지 않으면 모든 repository를 sync한다.
첫 repo sync시에는 $git remote update와 같은 동작을 하고 ,
그 후의 repo sync 시에는 $git rebase origin/BRANCH와 같은 동작을 한다.
[OPTION]
-d : topic branch에 있을 경우 특정 revision으로 switch되도록 해준다.
-f : 다른 프로젝트에서 sync fail이 발생해도 계속 sync를 진행한다.
-c : 현재 지정된 branch의 내용만을 sync한다.
3. REPO DIFF
git diff를 이용해서 PROJECT_LIST의 working tree변경 내용을 보여준다.
git diff는 HEAD commit부터 변경사항을 보여준다.
4. REPO UPLOAD
project_list의 local 변경 부분을 remote로 update한다.
각 branch의 review를 위한 upload를 할 수 있도록 prompt를 띄운다.
이 명령어를 사용하여 전체 project의 push를 한꺼번에 할 수 있다.
5. REPO DOWNLOAD
Gerrit과 같은 review system의 23823의 변경내용을 platform/build에 download하는 경우
예 )
6. REPO FORALL
모든 git repository에 COMMAND를 실행하도록 해준다.
repo forall -c git checkout test_branch라고 실행할 경우 모든 repository가 test_branch로 이동하게 해준다.
[OPTION]
-c : 실행할 command와 argument를 보여준다.
-p : page단위로 output을 보여준다.
-v : command실행 massage를 stderr로 보여준다.
7. REPO PRUNE
이미 merge된 topics를 삭제하는 기능을 수행한다.
8. REPO START
해당 project repository에서 git status를 실행하는 것과 동일하다.
project_list에 지정해주지 않을 경우 repo forall -c git status와 같다.
9. REPO STATUS
해당 project repository에서 git status를 실행하는 것과 동일하다.
PROJECT_LIST를 지정해주지 않을 경우
repo forall -c git status와 동일하게 동작한다.
'Embedded : : Linux > : : Linux' 카테고리의 다른 글
Device Tree 주소 지정 방법 (0) | 2024.11.12 |
---|---|
[bash] 유용한 명령어 (0) | 2024.11.12 |
[shell script] "$*" 과 "$@"의 차이 (0) | 2024.10.12 |
리눅스의 디렉터리 구조 (1) | 2024.10.07 |
Linux, 부팅, Swap, Dependency, Boosting (0) | 2024.04.24 |