( git log를 찍어본다.)
앗, Git에 있는 최신 commit 내용이 없군! 싱크가 안맞나봐.
( repo sync를 한다.)
어라? 왜 업데이트되지 않고 그대로인거지? 뉴뉴
이런 식으로 가끔 repo sync를 해도 Git과 동일하게 싱크가 맞춰지지 않을 때가 있다. 가장 만만한 방법인 폴더를 날린 후 다시 받기를 해도 안 된다. repo start만 수행하면 이상하게도 예전 로그로 돌아가 버린다. 이럴 때에는 branch를 날려야 한다. branch에서 어떤 정보를 가지고 있는 듯 한게, branch를 삭제하지 않고서는 뭔 짓을 해도 해결되지 않는다.
현재 branch를 날리고 no branch 상태에서 새로 repo start를 하면 Git과 동일한 최신 상태로 업데이트할 수 있다.
Step1. no branch 상태 만들기
브랜치가 설정되어 있는 상태에서 해당 브랜치를 삭제할 수는 없다. 만약 그랬다가는 다음과 같은 에러를 만나게 될 테니까.
error: Cannot delete the branch 'XXXX_master' which you are currently on.
현재 브랜치가 아니면 되는 것이니 다른 브랜치로 옮겨도 될 것 같긴 한데, 난 하나의 브랜치만 쓰고있기때문에 그냥 폴더를 지우고 새로 받는 것으로 no branch를 만들기로 했다.
브랜치 목록을 출력했을 때, 기존의 브랜치(XXXX_master라고 가정한다)는 한 줄 아래로 밀리고 현재의 브랜치가 no branch로 나타나는 것을 확인할 수 있다.
[결과] * (no branch)
XXXX_master
Step2. 기존 브랜치 삭제하기
이제 브랜치를 삭제할 수 있게 되었다. -D 옵션으로 브랜치 삭제가 가능하다.
Step3. 브랜치 다시 설정하기
삭제 후 해당 브랜치를 다시 설정한다. 그럼 끝!
이제 다시 git log를 찍어보면 Git과 동일하게 최신의 log들이 업데이트 되어있음을 확인할 수 있다. めでたし~めでたし
rm -rf 폴더이름 : 폴더를 통채로 지운다
repo sync 폴더이름 : 폴더를 새로 내려받는다 (폴더 생성부터 다운로드까지 한번에!)
cd 폴더이름 : 다시 만들어진 해당 폴더에 들어가서
git branch : 브랜치 목록을 출력한다
브랜치 목록을 출력했을 때, 기존의 브랜치(XXXX_master라고 가정한다)는 한 줄 아래로 밀리고 현재의 브랜치가 no branch로 나타나는 것을 확인할 수 있다.
[결과] * (no branch)
XXXX_master
Step2. 기존 브랜치 삭제하기
git branch -D XXXX_master
Step3. 브랜치 다시 설정하기
repo start XXXX_master --all
이제 다시 git log를 찍어보면 Git과 동일하게 최신의 log들이 업데이트 되어있음을 확인할 수 있다. めでたし~めでたし
'공부하는 개발자 > Android' 카테고리의 다른 글
| Adb connection Error시 다시 Online으로 연결하기 (0) | 2011/11/16 |
|---|---|
| Repo sync해도 최신 Commit log가 업데이트되지 않는다면 (0) | 2011/11/10 |
| [Git] repo sync했을 때 branch is published 에러 (0) | 2011/10/10 |
| 안드로이드 에뮬레이터 단축키 (0) | 2011/09/19 |