본문 바로가기

달밤에 코딩하기/커뮤니케이션을 위한 IT 지식

#11-깃(git)과 깃헙(GitHub)

git과 GitHub 구분하기

git은 소스 버전을 관리할 수 있도록 도와주는 소프트웨어다.

GitHub은 Git 호스팅을 지원하는 웹서비스이다. 

git

깃은 앞서 말했듯이 소스 버전을 관리할 수 있도록 도와주는 소프트웨어다. 버전 관리를 할 경우 위와 같이 버전이 분리되었다가, 합쳐질 수도 있다. 여기서 사용하는 단어들이 별도로 존재하며, 자세한 사항은 아래와 같다.

 

용어 내용
커밋 (Commit) 변경점을 기록하는 행위를 커밋이라고 한다. 위 이미지의 경우, 네모 박스(버전)이 변경점이 될 수 있다.
커밋 로그 (Commit Log) 커밋 내용에 대해 기록된 정보를 말한다.
채크아웃 (Checkout) 현재 기록된 지점을 벗어나는 것을 말한다. 이전에 기록한 특정 변경점으로 돌아갈 때 사용한다.
브랜치 (Branch) 분기, 가지라는 뜻이다. 새로운 방향의 개발 사항을 추가해야 할 때, 새 가지를 뻗는 것을 말한다. 위 이미지의 경우, 파랑 버전에서 빨강 브랜치가 생성되었다고 할 수 있다. 새로운 기능 추가 및 여러 사람과의 협업 시 사용한다.
머지 (Merge) 각각 브랜치에서 작업한 코드를 합치는 것을 머지라고 말한다. 위 이미지의 경우, 빨강/파랑 버전이 머지되어 보라 버전가 되었다고 할 수 있다. git은 머지 시, 코드가 충돌(Conflict) 여부와 내용을 알려준다.

GitHub

GitHub은 Git 호스팅을 지원하는 웹서비스이다. 즉, git과 동일하게 버전관리를 해주면서 클라우드와 같이 원격 저장소의 역할을 해준다. 유사한 서비스로는 비트 버킷(Bitbucket)과 깃랩(git Lab)이 있다.

 

용어 내용
푸쉬 (Push) 로컬 저장소에서 변경된 코드를 원격 저장소에 업데이트하는 것을 말한다. 
풀 (Pull)  원격 저장소의 버전으로 로컬 저장소를 업데이트 하는 것을 말한다. 원격 저장소의 내용이 최신인 경우 사용한다.

 

'달밤에 코딩하기 > 커뮤니케이션을 위한 IT 지식' 카테고리의 다른 글

#10-프레임워크와 라이브러리  (0) 2021.08.30
#9-DB (Database, 데이터베이스)  (0) 2021.08.25
#8-애플리케이션과 웹  (0) 2021.08.22
#7-웹 Web  (0) 2021.08.21
#6-애플리케이션  (0) 2021.08.20