스파르타코딩클럽 로고
로그인
에듀윌 × 스파르타
오직 에듀윌러만! 50% 할인 쿠폰팩 받으러 가기
전체 강의
부트캠프
국비
커뮤니티
블로그
이벤트
고객센터
기업 서비스
둘러보기
인텔리픽
신입 개발자 채용 공고를 한 곳에서
로그아웃
1664871602839-0928_git.png
아티클

5분만 투자하면 평생 써먹는 깃허브 꿀팁

조회수 8752·6분 분량
2022. 9. 28.

개발자 취업을 위해 가장 중요한 것은 무엇일까요? 바로 본인의 실력을 '증명'하는 것입니다. 어떤 사람이 코딩에 관심이 있다고 하는데, 코딩으로 만든 결과물을 보여주지 못한다면 어떨까요? 즉 개발에 관심이 있다고 말은 하면서 포트폴리오가 하나도 없다면, 기업은 그 사람의 실력을 판정할 수가 없겠죠.


결국 개발자 취업의 성공길로 들어서기 위해서는 블로그, 유튜브 등 어떠한 매체를 활용하든지 자신의 성과를 보여줄 수 있어야 합니다. 그중 대표적인 것이 바로 ‘깃허브'입니다. 많은 분들이 코딩 공부를 하다가 한 번 쯤은 깃허브를 들어보셨을 거라 생각합니다. 개발자의 꿈을 키우고 있는 저도 2년 전에 깃허브를 처음 접했는데요. 실제로 “왜 필요하겠어?”라고 생각하고 제대로 사용해 보지 않았던 것 같습니다. 하지만 시간이 지나면서 깃허브가 단순 협업 툴 외에도 다양한 역할을 하고 있다는 것을 알게 되었는데요. ‘잘 가꾼 깃허브 하나, 열 번 고친 자소서 안 부럽다’라는 말, 들어 보셨나요? 이번 시간에는 개발자의 대표적인 증명 수단, 포트폴리오로 활용되는 깃허브 사용법을 알려드리려고 합니다.



깃허브(GitHub)의 탄생 배경

같은 회사에 다니는 영희와 철수가 동일 프로그램에 대해 기능을 업데이트 하고 있습니다. 다음은 영희와 철수의 근무표입니다.

영희와 철수의 근무표
영희와 철수의 근무표

다음날 어떻게 되었을까요? 한 회사에서 출시하는 프로그램임에도, 영희 버전과 철수 버전으로 나뉘는 문제가 발생했습니다.

그리고 영희의 컴퓨터에는 이런 파일들이 저장되어 있을 겁니다.

프로젝트 결과 보고서_최최최최종
진짜진짜진짜 최종최종 최최종...

이렇게 단계마다 파일을 저장해 둘 경우 용량을 너무 많이 차지하는 문제 또한 발생합니다. 철수와 영희는 포기하지 않고 v1.0에서 개선된 기능을 v1.1에 추가하기까지 성공합니다. 그러던 와중 코드가 엉켜 문제가 발생해 다시 v1.0으로 돌아가야하는 상황입니다. 누군가가 v1.0을 저장해놓지 않았다면 어떻게 될까요? 다시 처음부터 v1.0을 개발해야겠죠.



Git을 이용한 버전관리

영희와 철수의 상황처럼 대부분의 프로젝트는 여러 사람의 협업으로 이루어집니다. 여러분의 포트폴리오에 들어갈 프로젝트들 또한 대부분 협업으로 만든 프로젝트일 텐데요. 시간이 지남에 따라 사람들은 앞서 말한 문제점들을 극명하게 느끼기 시작했고, 이 문제들을 해결하기 위해 버전 관리 시스템 VSC(Version Control System) 개념을 도입하게 됩니다. 버전 관리 시스템이란, 파일 변화를 시간에 따라 기록하여 저장소에 두고, 이후 특정 시점의 버전이 필요할 때 저장소에서 다시 꺼내올 수 있는 것을 말합니다. 즉 버전은 '변경 사항들의 기록'이고, 버전 관리는 '파일변화를 시간에 따라 기록했다가, 나중에 특정 시점의 버전을 다시 꺼내올 수 있도록 하는 기능'이라고 할 수 있겠습니다. 그렇다면 버전 관리를 위해 실제로 필요한 것은 무엇일까요? git(깃) 설치부터 함께 차근차근해 봅시다.


① git 설치

버전 관리를 가능하게 해주는 것이 git이라는 프로그램인데요. git은 로컬(사용자 PC)에 있는 파일들에 변동사항이 생길 때마다 github라는 임의의 저장소에 업로드 시켜 줍니다.

what-is-git
git은 로컬에 있는 파일에 변동사항이 생길 때마다 github에 업로드 시켜 줍니다.

즉 git은 파일의 변경사항을 '추적'하고 여러 명의 사람들이 작업한 파일들을 '조율'합니다. github는 git으로 관리된 정보를 백업하는 저장소(일종의 웹하드)라고 할 수 있겠습니다. 포트폴리오를 위한 첫 걸음으로, 아래 링크에 들어가 git을 다운 받아 봅시다.

- git 다운로드 : https://git-scm.com/downloads


② GitHub(깃허브) 회원가입

- GitHub 홈페이지 : https://github.com/

두 번째로 깃허브 ID가 필요합니다. 이메일 주소로 가입하시면 되고요, Username은 각별히 신경 써서 정해주세요.

gitbash
Git Bash

회원가입과 설치를 완료하셨다면 바탕화면에 다음과 같은 아이콘이 생길 겁니다. 만약 생성되지 않았더라도 당황하지 마시고, Window 검색을 이용해 'Git Bash'를 열어 주세요.

gitbash-main
Git Bash를 열어 주세요.


git config --global user.name "사용자이름"
git config --global user.email "이메일@abc.com" 

위의 명령어를 입력해 줍니다.

'user.name'에는 가입시 입력한 이름을, 'user.email'에는 가입한 이메일을 입력해 주세요.(설치 후 최초 1회)

이 단계를 통해 git이 로컬 정보를 알 수 있게 되었습니다. 로컬 정보란 사용자 개개인의 PC를 구분할 수 있는 정보를 말합니다. 이를 입력하는 것은 깃이 누구의 컴퓨터인지 알 수 있도록 하기 위함인데요. 예를 들어 영희의 컴퓨터와 철수의 컴퓨터의 ID와 E-mail을 입력하면 git이 각각의 기능을 구현하기 위한 파일들을 깃허브로 가져올 준비를 하는 것이죠.

영희와 철수의 pc
영희와 철수를 구분하는 기준


③ github 사이트에 접속해 repository(저장소) 만들기

이제 git이 가져온 파일들을 깃허브에 저장해 봅시다. 저장소(repository)를 만드는 과정을 소개해 드릴 건데요. 레포지토리란 깃허브라는 저장공간 내 카테고리를 구분하는 하위 공간으로, 보통 프로젝트 단위로 많이 생성합니다. 깃허브 접속 후 Repositories 탭에서 Create Repository나 New라고 써있는 초록색 버튼을 클릭해 줍니다.

create a new repository
create repository

위와 같은 화면을 마주하셨나요? 위의 이미지처럼 입력하면 Spartacodingclub이라는 이름으로 저장소가 형성됩니다. Public과 Private은 다른 유저들에게 공개 여부를 선택하는 것으로 여기서는 Public을 선택해 줍니다. Description은 repository에 대한 설명을 적는 란으로 필수적인 입력사항은 아닙니다. Description에 위와 같이 입력할 경우 완성된 Repositrory 밑에 작은 글씨로 설명이 적히게 됩니다. 곧 creating repository 버튼을 클릭 후 넘어가면 아래의 사진처럼 repository가 성공적으로 완성된 것을 확인하실 수 있습니다.

성공적으로 만들어진 repository
생성된 repository


꼭 하늘색 박스 안 주소를 복사해 주세요.


여기서 하늘색 박스 안에 있는 주소(*저장소 주소)를 복사해 둡니다. (나중에 필요해요)

이제 자신이 업로드하고싶은 프로젝트와 깃허브를 연결할 차례입니다. 저는 VSCode를 이용했습니다. 자신이 올리고 싶은 파일을 연 상태에서 아래와 같이 terminal 탭 → new terminal을 클릭해 주세요.

github연결하기
terminal -> new terminal


그러면 하단에 terminal 창이 열릴 텐데요. 사진처럼 명령어를 입력해 줍니다.

terminal
노란색으로 표시된 git을 잘 보면서 똑같이 입력해 주세요.


위의 문장을 입력했으면 업로드 자체는 완료되었을 것입니다. 이 다섯줄만 기억하고 있으면 업로드는 무리없이 진행할 수 있는데요, 각 문장의 뜻이 무엇인지 설명드리겠습니다.

git init
git init

$git init버전관리를 시작하라는 명령어입니다. git init을 명령받은 순간부터 git은 변경사항을 추적할 준비를 합니다. (명령어 앞에 붙은 $는 터미널 안에 입력하라는 뜻으로 소개드린 방법대로 터미널을 직접 열어서 명령어를 입력한 경우 $는 붙이지 않아도 정상적으로 작동합니다.)

git add
git add

$git add . 는 현재 파일이 속해있는 폴더의 모든 변경사항을 추적하도록 명령하는 것입니다. 만약 특정 파일의 변경사항만을 추적하고 싶다면 아래와 같이 ‘$git add 파일명’을 입력하시면 됩니다.


git add index
git add index.html

위의 과정들을 통해 파일들은 stage 로 옮겨졌고 모든 변동사항 또한 파악되었습니다. 이제 남은 세 줄은 stage에서 깃허브로 이동시키는 명령어들입니다.


git 명령어들
git 명령어들


$git commit -m이란 메시지와 함께 파일의 현재 버전을 생성할때 사용하는 명령어입니다. 아까 repository를 만들 때 소개드렸던 description과 비슷한 기능이고, 실제로 업로드 후 제목 옆에서 확인 가능합니다.

$git remote add origin (저장소주소) 는 'remote(원격으로) + add(더한다) + origin(저장소) + 저장소 주소'로 나누어 볼 수 있는데요. 여기서 origin은 git이 원격 저장소를 부르는 별칭 정도로 생각해주시면 좋겠습니다. origin이라는 이름으로 원격 저장소(뒤의 주소)를 연결한다는 뜻입니다.

마지막으로 $git push origin maste을 입력 받으면 git이 유효한 정보들을 origin이라는 별칭을 가진 원격 저장소에 업로드합니다.


명령어들을 차례대로 터미널 창에 입력하고 나면,

index
index.html


vscode 왼쪽에 나열되는 파일명이 초록색으로 바뀌는 것을 확인할 수 있는데, 이것은 아직 버전관리를 시작하지 않았다는 뜻입니다. 모든 입력을 마친 뒤, 깃허브에 접속해보면 아까 생성한 repository에 index.html 파일이 업로드 된 것을 확인할 수 있습니다. 잠깐! 깃허브 연동이 처음인 경우, 중간에 깃허브 로그인 창이 뜨는데요. 한 번 로그인 하고 다시 터미널로 돌아와 명령어를 입력해주면 됩니다.


여기까지 따라오셨다면, 축하드립니다! 깃허브에 첫 번째 push가 완료되었을 것입니다!


git push complete
깃허브에 push 완료!



지금 깃허브를 시작해야 하는 이유

코딩을 마친 뒤 터미널 창을 열어 이러한 과정을 반복한다면 깃허브가 당신의 프로젝트를 차곡차곡 저장해둘 것입니다. 그렇게 노력의 흔적이 하나씩 모여 멋진 포트폴리오가 되는 것이죠. 실제로 대부분의 개발자들이 깃허브를 통해 포트폴리오를 제작하고, 깃허브 링크 한 줄로 채용되는 경우도 많답니다. 아래의 링크는 깃허브를 사용해 만든 포트폴리오의 예시입니다.

깃허브 포트폴리오
깃허브가 실제로 도움이 된다!?


깃허브의 다양한 기능을 이용해 프로필과 포트폴리오를 제작하셨는데요. 실제로 깃허브가 취업에 많은 도움이 되었다는 답변을 들을 수 있었습니다.


여러분 소녀시대 서현의 자기관리 명언을 들어보셨나요? '자기관리는 평생 해야 하니 빨리 습관으로 만들어야 한다'

소녀시대 서현의 명언
관리는 하루 이틀 안에 만들어지는 게 아니야


어차피 만들어야 하는 포트폴리오라면, 오늘 시작하는 사람이 이득!

이젠 github 업로드를 습관으로 만들어 보는 것이 어떨까요?



스파르타 기자단 에딧터 이정혜 님


- 해당 콘텐츠는 저작권법에 의해 보호받는 저작물로 스파르타코딩클럽에 저작권이 있습니다.
- 해당 콘텐츠는 사전 동의 없이 2차 가공 및 영리적인 이용을 금하고 있습니다.
내용이 유익하셨다면? 공유하기
copyclip-blog-sharekakao-blog-sharefacebook-blog-share
다른 분들이 많이 읽은 글
아티클
코딩 문제 은행 백준, 그게 뭐죠? 200%활용하기!(알고리즘 테스트, solved.ac)
조회8887·4분 분량
코딩 문제 은행 백준, 그게 뭐죠? 200%활용하기!(알고리즘 테스트, solved.ac)
아티클
비전공자도 이해할 수 있는 프론트엔드, 백엔드의 모든 것 - 실전편(프레임워크, 성향별 추천, 선택 방법 등)
조회11826·6분 분량
비전공자도 이해할 수 있는 프론트엔드, 백엔드의 모든 것 - 실전편(프레임워크, 성향별 추천, 선택 방법 등)
copyclip-blog-share