2021.6.30 TIL : [GitHub] 간단한 깃헙 사용 방법
많은 개발자분들이 깃을 협업 툴로 사용하시는데, 나는 깃 자체가 너무 어려워서 쓸 때마다 헤매는 중이다. 명령어들도 쉽게 익숙해지지 않고 (아무래도 몇 번 안 써봐서 그렇겠지만) 헷갈린다.
그래서 내가 다시 보고 사용하려고 만든 깃헙 사용 방법! 간단한 내용들만 다룰 예정이고, 내가 이해한 바를 토대로 작성하는 것이니 오류가 있을 수 있다.
먼저 깃헙을 이용해서 내 코드를 업로드하여 다른 사람도 볼 수 있도록 하는 과정은 그림으로 설명하면 다음과 같다. 내 컴퓨터에서 작성한 코드를 스테이징, 커밋의 두 가지 과정(추후 자세하게 설명)을 통해서 로컬 저장소에 업로드하게 된다. 그리고 푸시하게 되면 우리가 아는 그 github.com 의 저장소(remote repository)에 올릴 수 있게 되는 것이다.

0. git 초기화와 상태 확인을 통해 마지막 커밋으로부터 달라진 파일들 체크
$ git init
$ git status
아마 안내 문구? 처럼 터미널에 뜨기 때문에 별 다른 설명 없이도 이해가 되긴 하겠지만, 위 두 명령어를 통해 초기화를 하고, 업로드할 파일들을 체크할 수 있다. 또, 업로드할 파일과 업로드 하지 말아야 할 파일들을 나눠서 설정할 수도 있는데, 이 부분은 아직까지 해본 적이 없어서 추후에 github 2편으로 다시 작성할 예정이다.
1. 로컬 저장소에 올리는 방법
(1) 파일 스테이징
$ git add .
위의 명령어를 통해서 스테이징이 가능하다. 스테이지란 저장소에 올리기 전에 상태를 점검할 수 있도록? 올릴 파일들을 선정하기 위해 거치는 과정으로 git status를 통해서 어떤 파일들이 선택되었는지 확인할 수 있다. 또한 위의 명령어는 모든 파일들을 저장소에 업로드하겠다는 의미이다.
(2) 파일 커밋
$ git commit
$ git commit -m "커밋 메세지를 남겨주세요"
스테이징된 파일들을 실제로 저장소에 올리기 위해서는 커밋하는 과정이 필요하다. 위의 두 명령어 중 어느 것이나 상관 없지만, 커밋 메세지를 남기기 위해서는 아무래도 아래 명령어를 사용하는 것이 좋다. (특히, 계속해서 파일을 업데이트 하다보면 버전 관리 중에 더 오래된 버전으로 다시 돌아가야 하는 경우가 생기는데, 이 때를 대비하여 어떤 부분들이 수정된 것인지를 기록해두면 편리하다고 한다.)
이렇게 커밋하고 나면 로컬 저장소에 업로드가 완료된 것이다! 다음으로 이 로컬 저장소에 저장된 것을 깃헙에 올리면 된다.
2. remote 저장소에 올리는 방법
$ git remote add origin {remote repository 주소}
먼저 위 명령어를 통해서 remote repository(Github repository 주소)를 origin이라는 별칭으로 부르도록 한다. 매번 https://로 시작하는 주소를 복붙하기는 귀찮기 때문에 별칭을 붙인다.
깃에는 branch 라는 개념이 존재한다. 말 그대로 나뭇가지 같은 역할로, 여러 사람이 하나의 나무에 파일을 계속해서 업로드, 업데이트 하다보면 충돌할 수 있기 때문에 나뭇가지에 먼저 업로드하고 나중에 한 번에 merge할 수 있도록 한다. 따라서 repository를 생성하고 나면 자동 생성되는 master브랜치 외에도 협업 시에는 내 브런치를 만드는 것이 좋다. 이렇게 하면 다른 브랜치에 영향을 주거나 master 브랜치에 영향을 주지 않기 때문에 편하게 작업할 수 있다.
$ git push origin master
$ git push origin {branch 명}
만약 내가 master 브랜치에 푸시를 하려고 한다면 위의 첫 번째 명령어를 사용하면 되고, 만약 다른 branch에 업로드 하고 싶다면 master 대신 다른 branch명을 넣어주면 된다.
※ 브랜치 생성하는 방법
master 브랜치 외에 나만의 브랜치를 생성하고 싶다면 다음 명령어를 입력하면 된다. 아래의 두 번째 명령어는 생성된 브랜치 명들을 나열해주는 명령어이다.
$ git branch {만들고자 하는 branch명}
$ git branch