MyCloud

[Git] 연동중에 발생했던 문제와 해결과정 본문

Project/OpenSource

[Git] 연동중에 발생했던 문제와 해결과정

Swalloow 2016. 5. 21. 16:17



얼마 전 안드로이드 스튜디오에 Git을 연동하는데 

너무 많은 오류를 겪어 따로 정리해보려고 합니다.






오류 메세지와 해결 방법


첫번째 오류

우선 첫번째 오류는 로그인 문제였습니다 !

안드로이드 스튜디오 내에서 Settings - Version Control - GitHub 로 들어가면



다음과 같은 화면이 나타나게 됩니다.

여기서 Login과 Password 정보를 입력한 뒤, Test 버튼을 통해 확인하실 수 있습니다.



그래도 안되신다면 Settings - Version Control - Git 으로 들어가

올바른 경로로 수정하시고, Test 버튼을 통해 확인하시면 됩니다.







두번째 오류

두번째 오류는 SSH Key 설정 문제 였습니다.

Git을 전에 삭제했다가 다시 깔았던 경우나 Git Desktop을 함께 쓰는 경우,

SSH key가 이전의 키와 중복되어 문제가 발생할 수 있습니다.



문제는 SSH key를 삭제하고 다시 만들어 해결할 수 있었습니다.

참고 : https://help.github.com/articles/generating-an-ssh-key/


여전히 문제가 발생해서 로그를 확인해보니 다음과 같은 오류 메세지가 있었습니다.

"Push failed: Failed with error: fatal: Could not read from remote repository."

찾아보니 인텔리제이에서는 HTTP key가 아니라 SSH key를 사용해 보라는 의견이 많아서,

아래와 같은 명령어를 통해 키를 SSH로 변경했습니다.

git remote -v

git remote set-url origin git@github.com:[UserName]/[RepositoryName]

그리고 안드로이드 스튜디오의 Settings - Version Control - Git 로 들어가

SSH executable 항목을 Native로 변경하면 끝 !






세번째 오류

두번째에서 끝날 줄 알았더니 또 에러가 발생 !



안드로이드 스튜디오 내의 오류 메세지는

"Push rejected: Push to origin/master was rejected" 였습니다.

git status 명령어를 통해 확인해보니 non-fast-forward error 라고 나옵니다.

참고 : https://help.github.com/articles/dealing-with-non-fast-forward-errors/


다른 branch에 Commit이 안된 파일이 있어서 Push가 거절된 것이 원인이였습니다.

사실 처음에 Repository를 만들 때, README.md와 gitignore 파일을 함께 생성했는데

이게 Clone이 안되서 문제가 된 것입니다 !


해결 방법은 다른 branch에 있는 파일과 merge를 하거나

rm 명령어를 사용해서 파일을 삭제하시면 됩니다.

저는 그냥 파일을 삭제하는 것으로 해결했습니다.






결론


문제를 해결하는데 무려 세 시간이 걸렸어요 ㅠㅠ

Git 관련 문제가 생기면 Git 에서 지원하는 Help 페이지를 통해 해결하는게 빠릅니다.

(어차피 플랫폼에 따라 변화가 다르더라도 오류 메세지는 같기 때문에)

그래서 구글링을 통해 Stackoverflow에서 검색을 해도 결국 Help 페이지로 가게 됩니다.


아래는 GitHelp 페이지 링크 입니다.

https://help.github.com/




Comments