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

Github(깃허브)에서 Clone한 내용에 HEAD를 옮기는 방법

0 추천

안녕하세요. 교육용 소스를 올리시는 유저분의 Github 자료를 통하여 안드로이드 프로그래밍을 공부하고 있는 왕초보 개발자입니다.

 

현재는 다른 유져분들이 Github에 올린 repositories의 소스를 Android Studio에 "Git Repository URL"을 통해 불러와 안드로이드 스튜디오에 소스를 보고 실행해보며 공부를 하고 있습니다.

 

그런데 Github의 repositories 한 항목마다 여러개의 Commit이 있더라고요.

 

그리고 제가 Git Repository URL을 통해 불러들인 소스는 Commit이 최종적으로 다 합쳐진 것들이고요.

 

그리고 여기 답변해주시는 고마운 분들의 도움으로 Android Studio에서  Github에서 Clone한 URL의 commit history를 보는 방법을 알게 되었습니다. (Shortcut : Alt +9) 그리고 이 방법으로 아래 그림과 같이 열수 있게 되었고요.

 

 

왼쪽란에는 1번, 2번, 3번과 같이 각 Commit이 있고 오른쪽에는 변화된 파일(파란색), 생성된 파일(녹색)으로 나오고 더블 클릭을 하면 어떻게 코드가 변화했는지 자세히 나와서 이 방식으로 공부하면 도움이 크게 되겠다는 생각이 들었습니다. 아무래도 최종 코드만 보는 것 보다 과정 코드를 보고 변화과정을 알 수 있으니 코드의 내용을 이해하는 것도 크게 도움이 됬고요.

 

하지만 단순히 코드를 보는게 아니라 당시 Commit의 내용을 안드로이드 스튜디오에 불러들여서 당시 commit 상황을 실행하고 싶기도 한데, 그럴 경우 HEAD의 정보를 옮겨가면 된다는 조언을 들었습니다. 그런데 HEAD의 정보를 어떻게 옮기는지 알고 싶습니다.

 

그리고 show diff 명령어는 어떻게 치는지도 알고 싶습니다.

 

부족한 질문글 읽어주고 함께 생각해주셔서 감사합니다.

익명사용자 님이 2015년 10월 25일 질문

1개의 답변

0 추천
 
채택된 답변
안녕하세요 개발자님

 checkout 명령어로 옮겨 다닐실 수 있습니다. git checkout <sha1>

물론 명령어는 헷갈리니까 1,2번에 그냥 우클릭하시면 checkout revision이라고 뜹니다

show diff는 별거 아니예요. 그냥 더블클릭하신게 show diff 맞습니다 ^^

archive 를 통해 해당 시점에 zip 파일 형태로 보존도 가능합니다만 스튜디오에선 안보이네요

나중에 여유가 되시면 꼭 콘솔 사용법도 배워두시면 큰 도움이 됩니다
홍월령 (4,240 포인트) 님이 2015년 10월 26일 답변
우와... 아주 감사드립니다. 몇주간 혼자서 끙끙대던 것을 덕분에 손쉽게 해결할 수 있게 되었습니다. 그리고 더불어 공개된 소스를 공부할 수 있는 방법까지 생겼습니다. 정말 감사드립니다.
...