What's `Git`

SongWoo Yu·2025년 2월 9일

개발을 배우면서 항상 가장 먼저 시작하는 것이 'Git'이었다. 그러나 난 대강 버전 관리 시스템? 클라우드? 이런 식으로 대충 알고 넘어갔고, 사용법도 대충만 정리했다. 오늘부터 일주일간은 git에 대해 탐구하고 정리하는 시간을 가지려고 한다.

다들 깃, 깃허브?, 깃랩!...이라는데 깃이 뭘까?

Git은 '분산버전관리 시스템'(DVCS)으로, 소프트웨어 개발 과정에서 소스 코드의 변경을 추적 및 관리하는데 사용되는 시스템이다. git은 동시 작업과 변경 소스 관리를 효과적으로 할 수 있다는 장점을 가지고 있다.
GitHub는 git을 기반으로 한 웹 호스팅 서비스로 개발자들이 협업하고 소스 코드를 공유할 수 있는 플랫폼을 제공한다. 깃허브를 통해 프로젝트를 공개, 비공개로 관리할 수 있고, 이슈 트래킹이나 풀 리퀘스트 등의 기능을 사용할 수 있다고 한다.

깃은 source에 대하여 merge, rebase(병합) / reset, commit, branch(리비전 관리) / push(릴리즈) / tag(태깅) / diff, log(변경사항 검토)의 역할을 한다.

정리하자면 깃은 로컬에서 관리되는 버전 관리 시스템으로 로컬 저장소를 사용한 시스템이다. 깃 허브는 이러한 깃 시스템을 기반으로 서버를 통해 저장, 공유하는 역할을 하는 웹 호스팅 서비스인 것이다.

시작하기

방법은 크게 두 가지 있다. 로컬 git과 github를 연결하기와 github에서 레파지토리를 생성한 다음 클론하여 사용하기다.

전자를 먼저 보면 git 설치와 github 계정을 생성해야 한다.
git --version으로 깃의 버전을 확인한 후, git init로로컬 저장소를 생성해준다. 이때 원하는 장소에 저장해야 하기 때문에 cd 명령어를 이용해 원하는 장소에 위치한 후 실행하면 된다.

그 후 git repository를 생성한다. New - Create repostiory - 내용 작성 순서로 생성하면 된다.
이제 로컬 git과 github를 연결해야 하는데, git remote add (원격저장소 별칭) (git repository URL)을 입력해주면 된다.
잘 연결되었는지 확인하려면 git remote --verbose를, 이름을 변경하려면 git remote rename (기존명) (바꿀명)해주면 된다.
원격 연결을 해제하려면 git remote remove (이름)으로 해제할 수 있다.

이제 후자의 방법은 쉽다. 아까처럼 github에서 레파지토리를 생성하고, 내 계정에 컴퓨터의 ssh key를 입력해주고 clone해주면 된다.
sshkey를 출력하는 방법은 terminal에 ssh-keygen을 입력하고 출력된 문서를 cat명령 cat ~/.ssh/id~.pub을 통해 출력해주고, 이를 깃허브에 등록해주면 되는 것이다. 이후 git clone ~으로 레파지토리를 끌고와주면 끝난다.

0개의 댓글