TigerCow.Door



안녕하세요.


이번 포스팅에서는 github을 이용하는 기초적인 방법에 대해서 알아보겠습니다.



1. Github 이란?



Github이란 간단히 말해서 Git을 지원하는 서비스라고 할 수 있습니다.

우리가 지난 포스팅들에서 간단하게나마 git에 대해서 알아보았는데 여기서 repository(저장소)를 웹상에 올려서 보다 시각적으로, 쉽게 관리할 수 있도록 해주는 역할도 하고 있습니다.


github은 git을 지원하는 서비스 중 가장 유명하다고 볼 수 있습니다.


몇가지 특징을 알아본다면, 

Github에서 저장소, repository는 무제한으로 생성가능합니다.

하지만 public이 아닌 private으로 만드는 것은 유료입니다.

(Github Student Developer Pack을 받으면 무료입니다.)


또한, pull / pull request 방식으로 이루어져 있습니다.

(이에 대한 내용은 추후에 다뤄보도록 하겠습니다.)


저장소를 모두가 함께 공유하고 함께 다룰 수 있다.

즉, 내가 하나의 저장소를 만들고 프로젝트를 커밋한 후에 팀원들이 해당 저장소에 참여하여 함께 코드를 수정하는 등의 업무를 진행할 수 있습니다.



2. Github 준비하기


먼저 Github을 본격적으로 이용해보기 전에, Github 아이디를 생성해야 합니다.

아래 사이트에 접속하여 Github 아이디를 생성하고 로그인 합니다.


https://github.com/


이때 username은 github에서 자주 사용되므로 자신임을 인식하기 좋고 너무 어렵지 않은 것으로 설정하는 것을 추천드리고

email은 추후에도 다른 이메일을 추가하는 등의 설정이 가능하니 자신이 대표적으로 사용하는 계정을 하나 입력하시면 좋을 것 같습니다.


계정생성이 끝나고 로그인을 하면 다음과 같은 첫 화면을 만나실 수 있습니다.



여기서 새로운 저장소(repository)를 만들기 위해서는 사진의 빨간색 동그라미가 쳐져있는 녹색 버튼을 누르시면 되고, 그 외에 자신이 전에 만들었던 저장소들은 버튼 하단에 목록으로 나와있습니다.

저는 과거에 진행했던 몇가지 저장소가 있기에 목록이 뜨는데, 이제 가입하고 시작하시는 분들은 아무것도 없을 것입니다.


이때 Github을 이용하는 방법에는 크게 2가지가 있습니다.

방법이라기 보다 순서의 차이일 수도 있겠는데요, 처음하시는 분들께서 헷갈리지 않도록 나눠서 설명드리도록 하겠습니다.


첫번째의 경우는,

이미 만들어진 프로젝트(또는 새롭게 프로젝트를 시작할 때) 특정 디렉토리를 저장소에 연결시키는 경우입니다.


두번째 경우는,

누군가 만들어 놓은(또는 과거에 자신이 하던 프로젝트를 새로운 컴퓨터 등에서 할 때) 저장소를 가져와서 사용하는 경우입니다. 


두가지 모두 전체적인 그림이나, 개념은 비슷하지만 초반 시작이 약간의 차이가 있기 때문에 그부분은 따로 나눠서 설명드리도록 하겠습니다.



3. Github 으로 프로젝트 시작하기


먼저 위에서 말씀드린 두가지 경우 중 첫번째 경우에 대해서 알아보도록 하겠습니다.

Github을 통해 새로운 프로젝트를 시작하거나, 기존에 진행중인 프로젝트를 Github과 연결시키는 경우입니다.

이때 기본 개념을 생각해보면, 우리가 원래 작업하던 디렉토리(or 새롭게 시작하려는 디렉토리) A가 존재한다고 생각합니다.

이때 새롭게 시작하는 프로젝트던, 원래 작업하던 프로젝트던 특정 디렉토리는 존재할 것이고 단지 내부에 어떤 파일들이 얼마나 작업되어 있냐의 차이 일 뿐입니다.


그럼 저는 컴퓨터의 github_prac라는 폴더를 생성하고 내부에 단순한 markdown파일을 하나 만들고 진행하도록 하겠습니다.



뭐 여러분들은 폴더 명(디렉토리 명)이 다를 수도 있고 내부에 있는 파일이 당연히 상이할 수 있습니다.


이제 Github과 연결을 시키기 위해 Github 메인 페이지에서 repository를 만들어 보도록 하겠습니다.


아래 사진과 같이 적절한 repository name을 작성하고 설명을 작성해줍니다.

(설명은 작성하지 않아도 상관없습니다.)



그리고 제일 하단에 있는 Create repository를 눌러서 저장소를 생성합니다.


그럼 아래와 같은 화면이 등장할 것 입니다.



git으로 시작하는 명령어들이 마구마구 써져있는데, 간략하게 설명을 드려보도록 하겠습니다.


설명이 잘 이해가 가지 않는 분들께서는 아래 포스팅들을 먼저 읽어보시면 좋을 것 같습니다.


GIT(깃) #1_ 기본 개념과 설치


GIT(깃) #2_ 저장소 만들고 파일 등록하기


GIT(깃) #3_ 버전 생성(COMMIT)


GIT(깃) #4_ 버전 확인 및 비교하기


물론 해당 명령어들은 터미널(cmd)을 열어서 자신이 연결하고자 하는 폴더(디렉토리)로 이동후에 진행하는 명령어 입니다.


git init

git 저장소를 초기화 합니다.

현재 터미널이 위치한 디렉토리에 git repository를 생성하는 작업입니다.


git add README.md

git stage area 에 README.md 파일을 등록합니다.

물론, 현재 여러분의 터미널이 위치한 디렉토리에 해당 파일이 없다면 명령어에서 오류가 날 것입니다.

즉, 저 같은 경우에 Hello.md 파일을 add 하려면,

git add Hello.md

라고 작성해야 겠지요?

추가적으로, 현재 디렉토리에 있는 모든 파일 및 폴더를 등록하는 방법이 있습니다.

git add .

이라고 작성해주면 됩니다. 즉, 특정 파일이나 폴더 명 대신에 .(점) 을 이용하는 것입니다.


git commit - m "first commit"

이제 git stage area에 있는 내용을 git repository에 옮기는 과정입니다.

이때 메세지를 함께 작성하게 되는데 큰따옴표 사이에 있는 내용은 자신이 자유롭게 작성하면 됩니다.

주로 커밋메세지는 어떤 내용을 커밋하는건지, 즉 어떤 내용을 수정해서 커밋한건지? 어떤 기능을 추가해서 커밋한건지? 등을 적는데 사용합니다.



git remote add origin ~

이제 우리가 commit까지 끝낸 repository를 실제 github repository와 연결시켜야 합니다. 지금 설명드리는 명령어가 나와있던 github 페이지를 다시 확인해보겠습니다.



위의 페이지에서 빨간색으로 밑줄쳐져 있는 것이 개인의 github repository의 주소입니다. 물론 repository 마다 주소가 다릅니다.

해당 주소를 복사하여 명령어의 물결표시대신 입력하면 됩니다.

이때 명령어의 단어에 대해 간단히 설명드리면,

git remote 란 local 환경이 아닌 git 서버의 브런치(branch)에 대한 것을 다루는 것입니다. 브런치에 대한 내용은 나중에 보다 심화적인 내용으로 다루어야 하니, 간단히 생각해서 여러분의 컴퓨터(local) 환경에 대한 작업을 떠나 git 서버에 있는 원격 저장소를 다루는 명령어라고 생각하시면 됩니다.

즉, 새로운 원격 저장소에 대해 add origin ~ 하는 것인데, add 이므로 뒤에 있는 경로의 원격 저장소를 추가시킵니다. 이때 origin은 단순히 해당 연결의 이름이라고 생각하시면 됩니다.


git push -u origin master

이제 git push 인데, 해당 명령어는 우리가 commit을 통해 git repository에 옮겨 놓은 것들을 원격 저장소로 업데이트 시키는 명령어 입니다.

이때 -u 라는 것은 우리가 추후 git pull 이나 git push를 하는데 보다 쉽게 할 수 있도록 설정해주는 하나의 옵션이라고 생각하시면 됩니다.

그리고 master는 브런치의 이름을 적어주는 것인데, 아직 브런치의 개념을 배우지 않았기 때문에 그냥 넘어가겠습니다.



해당 명령어들을 차근차근 터미널에서 실행시키면 해당 디렉토리의 파일 및 폴더들이 github repository에 올라간 것을 확인할 수 있습니다.



4. Github에서 프로젝트 가져오기


이건 시작이 보다 간단하기 때문에 짧게 소개해 드리도록 하겠습니다.

예를 들어, 다른사람이 프로젝트의 github 주소를 알려주어 해당 내용을 모두 자신의 컴퓨터에 내려받아 확인하고 싶을 때가 있습니다.

그럼 아래와 같은, repository의 메인화면에서 빨간색 동그라미가 쳐진 부분을 확인 합니다.



Clone or Download 라는 녹색 버튼인데, 해당 버튼을 클릭해보면 어떤 주소와 함께 두개의 버튼이 나옵니다.

물론 zip 파일을 통해 내려받아서 압축을 풀어 확인해도 되겠지만, 해당 내용을 계속 git 으로 관리할 것이라면 git clone 명령어를 이용하는 것이 효율적입니다.

즉, 자신이 해당 repository를 내려받고자 하는 경로(디렉토리)로 터미널을 위치시키고 아래의 명령어를 입력합니다.


git clone ~


이때 물결은 녹색버튼을 눌렀을 때 나오는 주소를 복사해서 넣어주면 됩니다.



이렇게 해서 간단하게, github을 이용하는 방법에 대해서 알아보았습니다.

github에서는 브런치를 사용하여 협업을 보다 수월하고 효율적으로 할 수 있도록 많은 기능들을 제공합니다. 이번 포스팅에서 알아본 것은 매우 기본적인 내용이므로 개발을 시작하는 분들이라면 꼭 익히고 손에 익숙하도록 자주 사용해보는 것이 필요합니다.

또한 github은 매우 유명한 서비스이기 때문에 구글링을 통해서도 보다 많은 정보를 얻을 수 있습니다.

해당 포스팅에서 잘 해결되지 않거나 내용에 대한 피드백은 댓글 및 이메일을 이용해주세요 :)

블로그 이미지

Tigercow.Door

Web Programming / Back-end / Database / AI / Algorithm / DeepLearning / etc