
Github로 코드 리비전 관리를 해야 하는데 워낙 안 하다 보니까 이젠 깃허브 사이트와 내 프로젝트 연동하는 법도 몰라서 매번 구글링 하는 지경에 이르렀다. 이런 멍청한 나를 위해서 결국 블로그에 정리한다!!
미래의 나야,,, 부디 이젠 이 글을 보지 않고도 깃허브에 플젝 잘 올리길 바라...
성질 급한 나를 포함한 모든 한국인들을 위해서!
(참고로 C:\projects\BrailleHelper는 각자 작업하는 플젝의 위치라고 생각하면 된다. 자세한 내용은 아래 참고)
1. Github에 자신의 레포지토리 생성
2. C:\projects\BrailleHelper>git init
3. C:\projects\BrailleHelper>git add [업로드할 파일]
4. C:\projects\BrailleHelper>git commit -m "[커밋 메시지]"
5. C:\projects\BrailleHelper>git branch -M main
6. C:\projects\BrailleHelper>git remote add origin [1에서 생성한 git 주소]
7. C:\projects\BrailleHelper>git push -u origin main
* 잘 따라하다가 만약 7번에서 Access Token과 관련해서 에러가 떴다면? 여기를 클릭해서 바로 넘어가기! *
1. Github 페이지의 레포지토리 생성하기
먼저 해당 프로젝트를 올릴 repository(레포)를 만들어야 한다.
https://github.com/ 로 들어가서 로그인한 후 자신의 레포지토를 보는 페이지로 넘어가면 아래처럼 자신의 레포지토리와 함께 맨 위에 New라는 초록 버튼이 보일 것이다. 새로 만들어주자!
아래와 같이 자신의 입맛대로 public이나 private 설정해주고, README파일이나 gitignore파일 여부도 체크해주자! 필자는 이미 로컬에서 만들어서 따로 추가하지 않았다.
그러면 아래처럼 설명법과 같이 자신의 깃 주소가 나타난다. 해당 깃 주소를 옆의 copy&paste 버튼을 이용해서 복사해주자! 그리고 처음으로 레포지토리에 자신이 만든 파일을 올리는 것이라면 바로 아래 적힌 순서대로 진행해주면 된다! 하지만 혹시 헤맬 모든 이들을 위해서 아래에서 예외상황까지 만들어가며(실은 그냥 마주한 것...) 정리했다.
2. Github에 올릴 플젝에서 git init 하기
현재 진행 중인 프로젝트에서 git을 처음으로 실행시킨다. 여기가 git의 로컬 저장소임을 점찍어둔다고 생각하자.
물론 그전에 Git이 처음이라면 https://git-scm.com/downloads에서 자신의 운영체제에 맞춰서 다운로드하자!
(그리고 Git이 무엇인지도 알아보는 것을 추천한다. 무조건 개발자는 git으로 포폴을 해야 하니까 사용하는 것이라면 버전 관리 시스템이란 단어가 무엇인지부터 찾아보는 것을 매우 매우 매우 추천한다.)
3. git add <파일>
github 레포지토리에 올릴 파일을 add 해준다. 필자는 귀찮아서 git add .으로 모든 파일을 add 했는데 아뿔사 .idea 파일도 다 add가 되어버렸다. 필자가 pycharm으로 가상 환경을 만들어서 쓰다 보니 생기는 파일인데 굳이 올릴 필요가 없으므로 .gitignore에 추가했어야 했는데 안 했다ㅠㅠ
그래서 결국 git status로 올라간 상황 다시 확인하고, 설명에 rm 하면 삭제할 수 있다길래 rm을 실행시켰다!
아래와 같이 필자는 .idea 폴더 밑의 파일들을 삭제해야 했으므로 git rm --cached .idea/*을 실행했다.
4. git commit 하기
이제 add 한 파일 내용을 커밋한다. 커밋 메시지는 자신이 나중에 확인하기 편한 꼴로 작성해주면 된다!
5. git branch -M main
이건 원래라면 생략했을 단계인데 이번에 그냥 적용해보았다.
원래 git에서 기본 branch는 master이고 그 아래에 slave 형식으로 붙는데, github에서 master 대신 main으로 만들겠다고 이야기를 해서 홈페이지에서는 main으로 바꾸는 방법을 써두었다.
아래에서 보면 알 수 있듯이, git status로 현 상황을 보거나 git branch로 확인하면 내가 master 브랜치에 있음을 알 수 있다. 하지만 이젠 main으로 바뀐 몸(?)! 공식 홈페이지에 적힌 대로 git branch -M main을 실행시켜 master대신 main이란 브랜치를 사용하자!
6. git remote add origin [Your Repository url]
이제 github 페이지에 있는 리모트 레포지토리에 연동할 차례이다! 1번 단계에서 복붙 해놓은 git 링크를 [Your Repositroy url] 자리에 넣어주자! 그러면 아래와 유사할 것이고, 아무런 에러 메시지가 뜨지 않는다면 clear!
7. git push -u origin main
정말 최종 단계로, 레포지토리에 commit 한 내용을 올리는 것이다! 만약 5번에서 귀찮다고 main으로 브랜치를 바꾸지 않았다면 git push -u origin master로 적용해야 한다는 것 잊지 말자!
끝이란 생각에 신이나 위 커맨드를 입력하면 username과 password를 입력하라고 나온다. 여기서 순서대로 id와 pw를 입력하면 된다고 생각하면 경기도 오산이다!

읽어보면 2021.08.13부터 pw 인증이 사라졌단다~ 이젠 personal access token을 쓰렴~~~ 이라고 적혀있다. 그러면 이제 Password for '~' 대신에 Access Token for '~'로 바꿔주면 어디가 덧나나...?
여하튼 Access Token이 필요하다.
8. Access Token 구하기
어렵지 않다! 그냥 사진만 많다!
일단 Github의 우측 상단에 자신의 프로필을 눌러서 Setting으로 들어가자!
그다음에 좌측에서 여러 설정들이 나오는데 아래로 내려가다 보면 Developer settings가 있다. 여길 눌러준다.
그러면 아래처럼 세 가지가 뜨는데 이 중에 Personal access tokens로 들어가 준다. 필자의 경우에는 이미 생성한 토큰이 있어서 뜨지만, 이미 곧 만료되기도 하고, 다른 플젝에 사용하던 토큰이라 새로 만들려고 한다. 새로 만들기 위해서 위의 Genereate new token 선택!
아래와 같이 access token의 정보를 설정할 수 있다. 자신이 알아볼 수 있게 note를 적고, 해당 token의 유효기간을 설정한다. 필자는 2달 내외로 플젝을 끝내야 하므로, 넉넉히 3달로 잡았다. 따로 Custom도 가능하고, 유효기간을 아예 설정하지 않을 수도 있다. 이건 편한 대로!
그리고 적용 범위를 선택해야 하는데, 필자는 repo에 관한 것만 설정하면 된다고 생각해서 repo관련만 체크하고 나머지는 놔두었다. repo에 올릴 거니까 repo 체크 후 나머지는 필요한 대로 설정해주자! 그 후 맨 아래 초록색 generate token 버튼을 클릭하면 생성된다!
토큰을 생성하면 아래와 같이 뜬다. 아래 파란 박스에도 적혀있지만 여기 있는 토큰을 꼭!!!!!!! 복붙 해서 저장하자! 이건 다시 확인하지 못한다. 까먹으면 다시 토큰 생성해줘야 한다!
여기서 token을 얻었다면 다시 7번으로 돌아가자!
7. git push -u origin main
이제 진짜 찐찐찐막입니다. 여러분 나가지 말아 주세요
다시 git push를 당당하게 쳐준다! 물론 자신의 branch가 master라면 git push -u origin master로 변경하는 것 잊지 말고!
그 후 Username에 자신의 id를, Password에 자신의 token을 넣어주자! 참고로 pw는 적어도 보이지 않기 때문에 안 적힌다고 당황할 필요가 없다! 그러면 아래와 같이 잘 올라갔다고 뜬다!

축하합니다! 이제 여러분은 맘 편히 버전 관리할 수 있습니다.
참고 자료
1. http://gyutaehan.me/1-gitgwa-github/
2. https://curryyou.tistory.com/344
'일상 공부' 카테고리의 다른 글
Virtualbox Ubuntu 설치하기 (feat.모든 오류 총집합) (3) | 2021.12.28 |
---|---|
파이참 가상환경 사용하기(How to use Pycharm venv) (0) | 2021.11.03 |
[TroubleShooting] Git: (Un)Merge Conflict (0) | 2021.10.06 |
[TroubleShooting] Selenium: 셀레니움 클릭이 안되는 이슈 (0) | 2021.10.05 |
Virtual Box 가상 하드 디스크 용량 조절 (4) | 2020.07.24 |