마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드에서 GIT 사용 질문입니다.

0 추천
GIT의 문제점 1
 
1. 상대가 작업 후 GIT에 Commit 했다.
2. 내가 작업을 마치고 상대방 소스와 합치기(Merge) 위해 작업을 GIT에 Commit했다(Pull을 하기위해서는 Commit을 먼저 해야하는 룰 때문에)
3. GIT에서 상대가 올린 작업물을 받는다(Pull)
4. 충돌을 고친후 Add To Index를 했다.
5. 상대가 올리지 않은 파일이 있어서 충돌이 덜 고쳐졌다.
6. 상대가 GIT에 파일을 Commit했다.
7. 그러나 상대가 올린 파일을 받을 수(Pull) 없다.. (Pull을 하기위해서는 Commit을 먼저 해야하는데 여전히 충돌상태여서)
 
GIT의 문제점 2
 
1. 위와 같은 상황에서 메일로 파일을 받아서 수동으로 충돌을 고쳤다.
2. Add To Index를 해서 Commit 할 수 있는 상태를 만든다.
3. Team -> Commit을 누른다.
4. GIT에 올려져있는 다른 프로젝트 파일이 체크가 된 상태로 뜨길래, 해제하려 하는데 해제가 되지 않는다.
->결국 현재 프로젝트를 GIT에 올리기 위해 다른 프로젝트를 GIT에 올리게 되는 문제가 있다.
 
 
 
안드로이드에서 GIT 사용하시는 분들...
저 같은 증상 없으신가요? 있다면 어떻게 해결하시나요?
슈퍼꽃붕어 (1,600 포인트) 님이 2015년 2월 9일 질문

2개의 답변

0 추천
3번 단계에서 현재 작업 중인 코드에 머지하면 안됩니다.

별도 브랜치를 만들어서 받은 후 코드가 멀쩡하게 돌아가는지 확인한 다음 현재 작업 코드에 머지해야 합니다.
익명사용자 님이 2015년 2월 9일 답변
브렌치를 만들어서 상대가 올린 소스를 받고 충돌을 고치나요? 여기서 상대가 파일을 덜 올려서 충돌이 다 안 고쳐졌다면 그다음엔 어떻게 해야하나요?
브랜치를 만들 때 현재 작업 중인 코드에서 만들면 안됩니다.
작업 시작 시점의 저장소 코드에서 브랜치를 만들어야 합니다.
이렇게 하면 브랜치에 다른 사람이 올린 코드를 머지할 때 충돌이 날 이유가 없습니다.
작업을 시작하기전에 미리 브렌치를 만들어놓고 작업후,
Pull하면 된다는 건가요? Pull하기 이전에 Commit은 안해도 되나요?
(참고로 이클립스 플러그인으로 하기때문에 용어가 다른점은 이해해주세요)
0 추천
코드 수정중에 다른사람에 push해놓은 코드를 pull할때 commit을 안하면 pull이 안되는건 맞지만

통상 git stash를 통해 현재 본인이 작업중인것을 말그대로 stash해놓고 pull받으시면 됩니다.

그 후에 pull하시면 되고 pull한 코드에 문제가 없으면

그때 git stash apply하시면 됩니다.
익명사용자 님이 2015년 2월 9일 답변
...