본문 바로가기

내가 Git Repository가 필요 했던 이유..

아무래도 개발자는 아니다 보니 Git을 개발자들과 같이 매일 사용하는건 아니지만 요즘 업무의 특성상 DevOps를 지향하고 있다 보니 아무래도 git 명령어를 많이 사용하고 있다. 

 

회사에서는 GitLab의 기본 접속 구조가 SSH 키로 등록 하게 되어 있어서 등록해놨는데 간혹 이용하는 개인 저장소인 GitHub는 Key가 지금 사용하는 SSH key로 셋팅이 안되어 있다.

 

최근 다시 Blog를 다시 시작하게 된것도 있고 한번 다시 정리 해야 겠다 마음먹고 이번에 SSH를 접속하는 방법 및 아직 마스터를 못한 Git 사용법에 대해서도 정리 해보고자 한다.

 

먼저 GitHub를 사용하는 방법은 여러가지가 있겠지만 모두다 git 명령어를 통해서 관리 한다.

(아무것도 모르는 사람의 경우에는 직접 올리기도 하겠지만... 그런 사람은 없다고 가정하겠다.)

 

개발자가 아닌경우나 저장소를 안쓰는 경우에도 아래의 명령어는 알고 있을 것이다. 

git clone [Git Repository Address]

필자도 마찬가지였다. 대부분의 업무가 저장된 소스나 파일들을 받아서 컴파일 하고 설치하고 해당 서비스를 잘 돌아가게 만들고 제공해 주는 부분이 대부분이였기 때문이다. (오래전이다 ㅎㅎ)

 

그러다가 간혹 고생 고생해서 만든 Shell Script를 만들어 놓고 잊어 버리기 일수였다. 보통 local에 저장을 해놓지만 잘 관리 하지 않았었다.

어느날 Python의 강력한 기능에 이끌렸고 회사에서도 마침 간단히 테스트 프로그램을 만들어야 할일이 있는데 개발자들은 다 바쁘고... 어쩔수 없이 내가 만들게 되었는데 그때 부터 본격적으로 GitHub를 활용하기 시작 했던거 같다. 

 

BTW, 서두가 너무 길었는데 그럼 본격적으로 Git 저장소를 만들고 SSH Key를 활용해서 접속하는 방법에 대해서 기술해 보겠다. 

 

GitHub를 통한 개인 저장소 만들기..

먼저 개인 저장소를 사용하기 위해서는 대중적으로 많이 알려져있는 GitHub Site를 방문해서 가입을 하도록 하자 가입하는 방법은 자세히 기술하지 않도록 하겠다. (요즘 누가... 가입 하는 방법을 알지 못할까라는 생각에.. 또한 불필요 하게 길어질듯 하여..)

 

GitHub Sign Up

여기로 이동하자.... 그리고 오른쪽 상단의 "Sign Up"을 누르도록 하자.

https://www.github.com

ID, E-Mail, Password를 차례로 입력하고 Captcha(캡챠를 모른다면 여기에서 알아 보도록 하자)를 제대로 입력하면 된다 

(Captcha가 구글에서 고양이나 개 등을 똑바로 세워놓는 것으로 바뀐거 같다. 내가 가입할때는 있었나? 구글껄 사용했었나? 기억이 안난다 아무튼 중요한건 아니다.)

 

그 다음으로 사용할 Plan을 물어 보는데 개인으로 사용할 것이니 Individual 

개인적으로 사용할것이니 "Individual"을 선택하고 "Free"를 선택하면 된다. Free Plan의 경우 라애롸 같이 사용할수 있다. 

 

주요 사항을 확인해 보면..

Repository 개수에 제한없음, 최대 500MB까지의 저장용량을 사용가능, Private Repository의 경우 최대 3명까지만 Project에 참여 할수 있다. "Pro" 플랜은 Private의 참여자 수가 제한이 없으며 용량 등이 높다. (아래의 링크를 참조 하자)

https://github.com/pricing

Create a new repository

플랜을 선택하고 간단한 github의 설문 조사를 마치면, 처음으로 Repository를 만들수 있는 화면이 나온다. 

그전에 가입한 E-Mail로 Github에서 온 메일의 인증을 해야 한다. Repository 생성 화면이 안나왔다면, E-Mail 인증을 하도록 하자.

 

github create repository

Repository 이름과 간단한 설명을 적고 Public / Private 을 적은 후 Create를 눌러 주면 된다. 

추가로 몇가지 설명을 하겠다. 

 

"Initialize this repository with a README"를 체크 하면 README 파일이 생성과 동시에 자동으로 생성된다. 

이 README 파일은 Repository에서 보면 소스 파일 아래 해당 소스에 대한 설명을 볼수 있는데 이 README 파일에 내용을 Markdown 형태로 작성하면 표시 된다. (마크 다운에 대한 GitHub의 공식 문서 참조)

 

"Add .gitignore: None" 으로 되어 있는 부분을 누르면 여러가지 언어 리스트가 나오는데 각 언어에 대해서 Git Repository에 업로드 하지 않도록 미리 정의한 파일이 Repository에 .gitignore 파일에 남는다. 즉, .gitignore 파일은 Repository에 업로드 하지 말아야 할 File 또는 Directory를 정의한 파일이다. 

 

"Add a license: None"는 해당 Repository의 오픈소스 라이선스 규약을 명시 한다. (라이선스 가이드는 여기를 참조 하자)

 

GIT command를 이용하여 source 파일 업로드 하기

Repository Name / 간단한 설명을 적고 나면 아래와 같은 화면이 보일 것이다. 

Created Repository in github

자 이제 자신만의 Repository가 생겼으니 git command를 이용해서 소스 코드를 올려 보도록 하자. 

친절하게도 설명이 나와 있어서 별 어렵지 않게 따라 할수 있을것 같다. 

 

간단히 명령어에 대해서 아래의 Code Block에 주석을 달아 놓았다. 

이제는 부터 자신이 이용하는 Terminal Tool을 이용해서 git 명령어를 사용해 보도록 하자. 

mkdir blog.secuof.net
### 먼저 Directory를 만들어서 아무것도 없는 공간에서 작업을 한다. 
cd blog.secuof.net
### 해당 Directory로 이동한다.
echo "# blog.secuof.net" >> README.md
### echo 명령어를 이용해서 README.md 파일에 "# blog.secuof.net" text를 입력
git init
### git 초기화 이 명령어를 실행하면 해당 디렉토리 밑에 .git 디렉토리가 생성된다. 
git add README.md
### git repository에 README.md 파일을 추가 한다. (이 명령어를 실행한다고 해서 실제 추가가 되지는 않음)
git commit -m "first commit"
### git commit을 한다. -m 옵션은 comment를 입력할수 있는 옵션이다.
git remote add origin https://github.com/secuofme/blog.secuof.net.git
### Upload할 원격 저상소의 주소를 추가한다. 
git push -u origin master
### Commit한 내용을 Repository에 업로드 한다.

위와 같이 따라 하다보면 아래와 같이 Login 화면이 보일 것이다. 

ID / Password를 입력하면 README.md 파일이 업로드 되며, 저장소에 다시 가보면 Quick setup 화면은 사라져 있고 README.md 파일이 업로드 되어 있을 것이다. 

우린 여기서 위와 같이 Login을 입력 하지 않고 SSH key를 이용한 로그인 방법을 알아 보도록 하겠다. 

 

GitHub SSH Key 등록

여기서 부터는 다음 글로... 생각보다 길어 졌다...

Secuof Blog