본문 바로가기
IT

깃헙 - GitHub

by 소혜민 2025. 1. 30.
반응형

책에 있는 소스들은 모두 깃헙이라는 곳에 저장을 해 두었습니다. 이 소스들을 다운로드 받는다면 공부에 많은 도움이 되겠죠? 그래서 여러분과 깃헙에 저장된 소스를 공유하고자 합니다. 소스를 다운로드 받기 위해서는 먼저 깃(git)이라는 것이 필요합니다. 아래에 있는 인터넷 주소를 따라들어가서 프로그램을 다운로드 받을 수 있습니다. 해당 페이지에는 윈도우용, 맥용, 리눅스용의 깃을 다운로드할 경로가 나와 있습니다. 본인의 컴퓨터에 맞는 운영체제를 선택해서 설치할 수 있습니다. 

 

https://git-scm.com/downloads

 

지금까지 우리는 파이썬 코딩을 연습해 왔습니다. 혹시라도 이 책을 읽으면서 책에 나온 내용을 따라서 코딩을 하셨다면 다음의 위치에 코딩을 해 놓은 소스 파일들이 저장이 되어 있겠죠?

 

C:\PythonProject\MyRPA

 

우리가 코딩을 하면서 .py나 .ui 파일들을 저장해 놓은 곳의 위치입니다. 이렇게 우리가 만들고 수정한 소스코드를 관리해 주는 툴들이 있습니다. 여기선 그 툴 중의 하나인 깃헙을 살펴보려고 합니다. 소스를 관리하는 툴은 소스를 모두 서버에 저장을 합니다. 수정이 될 때마다 원할 때마다 변경된 소스 코드들을 저장을 할 수 있습니다. 그리고 만약에라도 이전에 수정했던 내용으로 소스를 되돌리고자 할 때는 히스토리 기능이 있어서 원하는 시점으로 되돌아갈 수도 있습니다. 그 뿐만 아니라 다른 컴퓨터에서도 현재의 소스와 동일한 코드를 다운로드 받아서 사용할 수 있겠죠. 

 

또 한가지 아주 중요한 기능 중의 하나는 여러 사람들이 동시에 하나의 프로젝트를 같이 개발할 수 있는 기능을 지원하는 것입니다. 서로 다른 파일이 아니라 같은 파일을 동시에 수정을 할 수도 있습니다. 당장 지금은 경험하기 어렵겠지만 이런 소스 관리 툴로 인해서 복잡한 소프트웨어 개발을 여러 명의 개발자가 같이 일을 할 수 있게 해 줍니다. 지금까지 이런 툴을 소스 관리 툴이라고 했는데 일반적으로는 형상관리 툴이라고 부릅니다. 여러가지 다양한 툴 중에서 일반 사용자가 개인 프로젝트용으로 가장 먾이 사용하고 있는 것이 바로 이 깃헙입니다. 

 

오픈소스를 개발하는 사람들은 이 깃헙을 이용해서 본인들의 소스를 전세계 여러분들과 공유하기도 하죠. 저도 이 책에서 사용된 모든 소스를 여러분과 공유하고자 합니다. 

 

 

첫번째, 탐색기를 엽니다. 그리고 우리 프로젝트가 있는 폴더로 이동을 합니다. 작업 중엔 MyRPA 폴더만 있습니다. 여기서 [내 PC > Ricky(C:) > PythonProject >]를 지우고 대신 ‘cmd’를 입력합니다. 그러면 명령 프롬프트 창이 뜹니다.



두번째, 명령어 프롬프트 창에 다음과 같이 입력을 합니다. 

 

C:\>PythonProject>git clone https://github.com/sohyemini/MyRPA.git book

 

https://github.com/sohyemini/MyRPA.git는 제가 올려둔 소스가 있는 위치이고 git의  clone 이라는 명령을 이용하여 현재 있는 폴더에 book 이라는 폴더를 만들고 소스를 다운로드 받게 됩니다. book 폴더를 열어보면 책에 있는 모든 소스와 관련된 데이터가 들어 있음을 알 수 있습니다. 

 

프로그램 소스 데이터를 받았습니다만, 내 소스도 저장을 할 필요가 있습니다. 그래서 이번에는 내 소스를 어떻게 저장을 하는지를 살펴보도록 하겠습니다. 차근차근 어떻게 만드는지를 확인해 보겠습니다. 우선 깃헙에 가입을 하도록 합니다. 

 

https://github.com/github

 

페이지 우측 상단에서 Sing in으로 들어가서 이메일 주소를 입력하고 Continue를 선택 다음으로 이동을 합니다. 이메일, 비밀번호, 사용자이름, 뉴스레터 등을 받아 볼 것인지를 묻는 질문 등에 답을 해야 합니다. 

 

그림 047. 깃헙 가입

 

그 외에도 로봇이 아니라는 것을 검증하기 위해서 간단한 문제도 풀고, 사용자가 몇명이나 될 것인지 그리고 학생이나 선생님인지를 묻기도 합니다. 그 외에도 다양한 질문을 물어보는데 답변을 대충 하시고 마지막에 “Continue for free” 무료 사용을 선택합니다. 무사히 가입을 마쳤다면 다음의 화면을 볼 수 이씁니다. 깃헙의 대시보드 화면입니다. 

 



이젠 우리가 코딩을 하던 프로젝트를 깃헙에 저장을 하려고 합니다. 파이참에서 VCS → Share Project on GitHub을 선택합니다.

 

 

상황에 따라 약간 다를 수도 있겠습니다만 어쨌거나 제 경우에는 다음과 같은 화면이 나왔습니다. 어쨌거나 깃헙에 로그인을 해야지만 파이참과 연결이 됩니다. 

 



우리는 이미 깃헙에 가입을 했고 대시보드 화면을 본 상태이기 때문에 로그인이 된 상태입니다. 그래서 별도로 로그인을 하지는 않습니다. 다만 화면의 메시지를 보고 다음으로 넘겨야 하며 마지막에 “You have been successfully authorized in GitHub. You can close the page.”와 같은 메시지를 보았다면 정상적으로 연결된 것입니다. 

 

Description에 간단한 설명을 넣어주고, Share를 눌러 내 소스코드를 깃헙 서버로 업로드 할 수 있는 준비를 마칩니다. 우측 상단에 Private에 체크가 되어 있으면 다른 사람들이 내 코드를 보거나 다운로드 할 수 없습니다. 만일 오픈소스로 내 소스를 오픈하고자 할때는 체크 표시를 없애 줍니다. 만약에 오른쪽 하단에 Git이 설치되지 않았다는 메시지가 뜨면 Add를 눌러 설치를 해 줍니다. 깃헙은 Git을 기반으로 만들어졌고, 파이참에서도 Git을 기본적으로 이용을 합니다. 

 

 

처음으로 Commit을 한다는 작은 창이 뜨면 Add를 클릭해 줍니다. 프로젝트에 있는 파일들이 모두 보이는데 체크가 된 파일이 대상이 됩니다.  commit, 커밋은 내 컴퓨터 내에 현재 소스를 저장해 놓겠다는 의미입니다. 깃헙은 소스코드를 바로 서버로 올리지 않고 내 컴퓨터에 우선 저장을 해 놓습니다. 그 이후에 Push, 푸쉬를 통해서 서버로 소스를 전송합니다. Add를 누르는 순간 현재 소스의 내용이 컴퓨터에 저장이 됩니다. 소스가 저장이 된 후, 파이참 화면을 보면 다음과 같습니다.

 

빨간색 박스와 같이 없던 것들이 생겼습니다. 왼쪽의 커밋은 소스가 로컬에 커밋된 소스 또는 서버와 하나라도 다를 경우에 표시가 됩니다. 지금 상태에서 소스에 아무런 글자나 입력해 보시기 바랍니다. ‘#’을 하나 입력했을 뿐인데 파일이 변경 되었다고 좌측의 Commit 창에 파일명이 나타납니다. 

 

 

테스트를 위해서 새로운 파일을 만들면 다음과 같이 새로운 파일을 추가하겠느냐는 메시지가 뜹니다. Add를 눌러야 깃헙에 추가를 할 수 있게 됩니다. 

 

 

수정이 되고 추가된 파일들이 Commit 창에 나타납니다. 깃헙에 올리기 위해서는 우선 올려야 할 파일들을 체크해 줍니다. 그리고 어떤 이유로 파일이 수정되거나 추가되었는지를 Commit Message에 넣어 줍니다. 어떤 이유로 파일이 변경이 되었는지 또는 수정이 되었는지를 바뀐 소스코드를 보지 않아도 쉽게 파악할 수 있도록 하기 위함입니다. 











 

Commit Message 아래에는 파란색의 Commit 버튼이 있습니다. 커밋을 누르면 컴퓨터에 수정된 사항이 저장이 됩니다. 그리고 이렇게 컴퓨터에 저장이 된 변경 정보를 깃헙 서버로 올리기 위해서는 우측 상단의 ↗버튼을 누릅니다. 이 버튼의 역할은 Push 입니다.

 

 

Push를 하면 비로소 변경된 소스파일의 정보가 모두 깃헙으로 올라갑니다. 그럼 여기서 깃헙을 로그인해서 어떤 것이 보이는지 알아봐야겠습니다. 깃헙을 로그인해서 보면 왼쪽에 자신의 아이디 + / + MyRPA가 보일껍니다. 그럼 거길 눌러서 MyRPA의 저장소로 이동을 합니다. 저장소에는 우리 프로젝트의 모든 파일들을 볼 수 있습니다. 우리가 추가한 커밋 메시지들도 볼 수 있고, 각 파일을 누르면 소스코드도 볼 수 있습니다. 또한 파일 리스트가 보이는 화면에서 코드 버튼을 누르면 소스를 다운로드 받을 수 있는 주소도 볼 수 있습니다.

 

 

혼자 개발하는 경우 깃헙은 정기적인 소스코드 저장을 하는 가장 기본적인 역할을 합니다. 또한 개인이 개발을 하더라도 복잡한 프로그램의 경우 기능을 원복하기 위해서 특정한 위치로 소스코드를 변경하고자 할 때도 유용하게 사용할 수 있습니다. 또 다른 경우라면 혼자서 개발을 하지만 집에서 소스코드를 변경하기도 하고 사무실에서 다른 컴퓨터로도 개발을 한다고 하면 소스코드를 가지고 다니거나 노트북을 가지고 다닐 필요가 없습니다. 지금은 여기까지만 보고 나중에 집에서 개발하던 소스를 회사 컴퓨터에서는 어떻게 수정을 하는지 그리고 서로 다른 컴퓨터에서 수정한 내용이 어떻게 자동을 합쳐지는지를 살펴보도록 하겠습니다.



반응형

댓글