본문 바로가기
IT

github.com 가입 및 저장소 생성

by Oh.mogilalia 2016. 1. 12.

github.com 가입 및 저장소 생성

1. github 홈페이지로 이동한다.

https://github.com


2. 저장소를 생성하는 화면에서 요구하는 사항을 입력한다. 그리고 'create repository' 버튼을 클릭한다.


Repository name : 저장소의 이름을 입력한다. 우리의 목표는 생활코딩 플랫폼인 opentutorials.org를 만들어보는 것이기 때문에 opentutorials-자신의 아이디를 입력한다.

예를들면 'opentutorials-egoing'

Description : 프로젝트에 대한 설명을 입력한다. 안적어도 된다.

프로젝트가 오픈소스임을 나타내는 Public을 선택한다. Private은 돈을 내야 한다.

Initialize this repository with a README는 무시한다.


mogibu_mogibututorials.pdf


Github에 동기화


Git과 github는 다르다. Git은 자신의 컴퓨터에 설치하는 프로그램이다. Git이라는 프로그램을 통해서 소소코드의 버전을 관리하고, github.com으로 변경된 버전을 업로드 하는 것이다. github.com은 업로드 된 소스코드를 협업자들에게 재분배해주는 역할등을 수행한다.


1. 지금부터 github.com 으로 소스코드를 업로드 하기 위한 인증절차를 수행할 것이다. 터미널을 열고 아래와 같이 입력한다.

mogibu@mogibu-PC:/var/www/html/mogibututorials$ ssh-keygen

Generating public/private rsa key pair.

Enter file in which to save the key (/home/mogibu/.ssh/id_rsa): 


2. 엔터를 3번 계속 누르면 아래와 같은 화면이 출력되면서 종료될 것이다.

Enter passphrase (empty for no passphrase): 

Enter same passphrase again: 

Your identification has been saved in /home/mogibu/.ssh/id_rsa.

Your public key has been saved in /home/mogibu/.ssh/id_rsa.pub.

The key fingerprint is:

3b:ee:83:31:c9:ee:11:b5:38:e1:7d:68:f4:08:47:a3 mogibu@mogibu-PC

The key's randomart image is:

+--[ RSA 2048]----+

|        o        |

|       o .       |

|      E +        |

|     . O =       |

|     .=.S o      |

|      =+ o       |

|     ..+o        |

|      oo..       |

|     ...o.       |

+-----------------+

mogibu@mogibu-PC:/var/www/html/mogibututorials$ 


3. 아래와 같이 명령어를 입력한다. cat은 뒤에 따라오는 파일의 내용을 화면에 출력하라는 의미의 명령이다. 즉 ~/.ssh/id_rsa.pub 파일의 내용을 화면에 출력하라는 뜻이다. id_rsa.pub 파일은 4번 과정을 통해서 만들어진 파일이다.
cat ~/.ssh/id_rsa.pub

4, 그럼 아래와 같은 화면이 출력될 것인데, 이 중에 ssh-rsa로 시작하는 부분부터 문자열이 끝나는 부분까지 마우스로 드래그 한 다음에 오른쪽 클릭을 하고 copy를 선택해서 복사한다. 공백이 포함되면 안 되기 때문에 정확하게 복사한다. 이 내용은 인증에 사용되기 때문에 유출되면 안 된다.
ssh-rsa AAAAB3NzaC1y???????????????lBIocVnmzbKhijfIFvOh mogibu@mogibu-PC


5, github.com 으로 접속한다. 상단의 Account Setting 아이콘을 클릭해서 계정 정보 변경 페이지로 이동한다.


6. 왼쪽 사이드바의 SSH Keys를 선택한 후에 오른쪽 상단에 Add SSH Key 버튼을 클릭한다.


7. 현재 사용 중인 컴퓨터(우분투)의 별명을 붙여준다. 그리고 아까 복사한 (상기 6번) SSH key를 붙여넣기 한다. mogibututorials Ubuntu


8. 비밀번호를 요구하면 github.com의 비밀번호를 입력한다. 이렇게 해서 SSH키를 github에 등록했다.


9. 정상적으로 잘 작동하는지 확인하기 위해서 아래와 같은 명령을 터미널에서 입력한다. '-T'는 대문자를 입력해야 한다.

ssh -T git@github.com


mogibu@mogibu-PC:/var/www/html/mogibututorials$ ssh -T git@github.com

The authenticity of host 'github.com (192.30.252.128)' can't be established.

RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added 'github.com,192.30.252.128' (RSA) to the list of known hosts.

Hi mogibu! You've successfully authenticated, but GitHub does not provide shell access.


원격저장소(github.com)를 이용하기

1. http://github.com 에 방문해서 자신의 저장소를 찾는다. 직전에 설명한 내용을 참고한다.


2. SSH를 선택하고 그 URL을 복사한다.

git@github.com:mogibu/mogibututorials.git


3. 터미널에서 아래의 명령을 실행한다. 아래의 명령 중 'git@github.com:mogibu/mogibututorials.git' 부분을 2번 절차를 통해서 알아낸 자신의 SSH 주소로 변경한다.

git remote add 는 로컬 저장소에 원격 저장소를 연결하는 것이다. 'git@github.com:mogibu/mogibututorials.git;'는 원격 저장소의 URL이고 origin은 이 저장소의 별명이다. 원격저장소의 URL을 항상 기억하기는 어렵기 때문에 별명을 사용한다.

cd /var/www/html/mogibututorials;

git remote add origin git@github.com:mogibu/mogibututorials.git;


4. 로컬 저장소에 저장된 버전들을 원격 저장소에 동기화시키자. 아래의 명령은 로컬 저장소의 내용을 원격 저장소로 업로드 한다.

git push origin master;

이렇게 하면 github.com에 소스코드가 업로드 된다. 자신의 저장소에 방문해서 소스가 잘 업로드 됐는지 확인해보자.


이후에 작업을 진행하고 그에 따라 변경된 내용들을 commit한 후에 다시 github.com으로 소스를 업로드 할 때는 git push origin master; 명령을 실행하기 전에 다음 명령을 먼저 실행해야 한다.

git pull origin master

이 명령은 원격 저장소의 내용을 자신의 로컬 저장소로 다운로드하는 명령이다. 여러 사람이 작업하거나 다른 컴퓨터에서 작업한 내용이 원격 저장소에 있다면 git push 명령을 실행하기에 앞서서 git pull을 통해서 원격저장소와 로컬저장소의 상태를 같게 만들어야 한다.


pull은 원격저장소에서 로컬로 당겨오는 것이고, push는 로컬저장소에서 원격저장소로 밀어 넣는 것이다. 그리고 언제나 pull을 하고 그 다음에 push를 해야 한다.


커밋할 때마다 원격 저장소로 push해야 하는 것은 아니다. 혼자 작업하는 경우라면 좀 천천히 push해도 좋고, 여럿이 작업하는 것이라면 push와 pull을 자주 하는 것이 좋다. 서로 같은 부분을 수정하면 나중에 합치는데 꽤 많은 에너지가 들어가기 때문이다.


출처 : egoing 아저씨의 생활코딩

'IT' 카테고리의 다른 글

Flac2Mp3 in Ubuntu  (0) 2016.11.13
화면 왼쪽의 Launcher를 아랫쪽으로 옮길 수...  (0) 2016.09.17
Git이라는 버전관리 시스템  (0) 2016.01.12
한/영 전환  (0) 2016.01.11
윈도우 드라이브 마운트  (0) 2016.01.11