Git(깃)의 정의와 기능

KDG: First things first!·2024년 7월 16일

Git

목록 보기
1/8

깃이란??

개발자 혹은 컴퓨터 관련 전공자, 개발자 지망생이라면 누구나 자주 들어온 깃이란 대체 무엇일까???

깃이란 쉽게 말해 '코드 버전 관리 프로그램'이다.


깃의 기능 1 : 코드 버전 관리


컴퓨터로 작업물을 만들어본 사람이라면 누구나 해당 작업물에 대한 수정을 반복해나가는 과정 속에서 백업을 위해 여러 개의 버전 관리용 작업물을 만들어본 경험이 있을 것이다.
하지만 이러한 방식에는 파일의 어떤 내용이 수정되었는지, 어떤 파일을 열어야 찾고자 하는 내용을 찾을 수 있는지 등등 여러 문제점으로 인해 결국 사람이 기억에 의존하여 파일을 하나 하나 열어가며 전부 확인해야 하는 문제점이 존재하며 이 때문에 결코 효율적인 방식이라고 할 수 없다.

이러한 문제점은 특히 많으면 하나의 파일에서 수 천 개 이상의 코드를 관리해야 하는 개발자들에게 있어선 더 크게 적용되었고 이러한 비효율적인 방식을 해결하기 위해 나온 것이 바로 버전 관리 시스템이다.

※ 버전 관리란?: 특정 파일의 변화를 시간을 기준으로 기록해두엇다가 차후 원할 때마다 필요한 시점의 버전을 꺼내어 자유롭게 사용할 수 있는 시스템을 말한다.

버전 관리 시스템의 장점은 크게 2가지이다.
1. 작업물의 지난 변화 과정들을 순서대로 확인할 수 있다.
2. 언제든지 사용자가 원하는 버전으로 자유롭게 돌아갈 수 있다.


Git은 버전 관리 시스템으로서 매번 작성했던 코드의 모습을 하나의 모습으로 저장할 수 있게 해주는 역할을 한다.


깃의 기능 2 : 동시 협업 기능

하지만 깃의 장점은 여기에 그치지 않는다.
깃은 여러 개발자들이 원활하게 협업할 수 있게 해주는 기능을 제공한다.


일반적으로 프로그램은 여러 기능으로 이루어진 시스템이고 여러 개발자가 각자 맡은 기능을 동시에 개발하면서 이루어진다. 깃은 여러 개발자가 동시에 개발한 코드를 합칠 수 있는 기능을 제공하기 때문에 개발자들이 협업과 분업을 가능하게 해줌으로써 개발의 효율성과 생산성을 대폭 증대시킨다.


깃의 기능 3 : 깃허브를 통한 작업 백업

만약 작업을 하는 도중에 내 컴퓨터에 문제가 생겨 컴퓨터를 이용하지 못하게 된다거나 작업물이 날라가버린다면 큰 낭패이다. 하지만 이런 경우에도 외부의 컴퓨터에 작업본을 저장해두었다면 언제든지 복구가 가능하다.
깃허브(GitHub)는 바로 이러한 작업본을 백업할 수 있는 외부 컴퓨터(서버)를 제공해주는 서비스를 제공한다. 깃을 통해 작업물을 깃허브에 올리면 깃허브 서버에서 내 작업본이 안전하게 보관된다. 또한 작업본을 깃허브에 저장하면 필요한 경우 팀원들과 작업본을 자유롭게 공유할 수 있어 협업이 매우 용이해진다.

예를 들어 내가 기능 A를 개발하여 깃을 통해 깃허브에 올리면 팀원이 해당 파일을 가져가 기능 A에 대해 수정하거나 업그레이드하는 동안 나는 새로운 기능 B를 개발한 뒤 다시 깃을 통해 각자 작업한 내용을 깃허브에 합치는 것이 가능하기 때문에 개발자들간의 협업에 있어 매우 효과적이다.


깃 vs 깃 허브

깃 : 버전 관리 프로그램
깃허브 : 파일을 보관하는 원격 저장소


*해당 포스팅은 코드잇과 내일배움캠프의 강의를 참고하였습니다.

profile
알고리즘, 자료구조 블로그: https://gyun97.github.io/

0개의 댓글