본문 바로가기
개발/Git

Git의 정의와 목적

by yhyuk 2021. 9. 7.
728x90
반응형

Git의 정의와 목적

[ 정의 ]

- 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 분산 버전 관리 시스템이다.

- 소프트웨어 개발에서 소스 코드 관리에 주로 사용되지만 어떠한 집합의 파일의 변경사항을 지속적으로 추적하기 위해 사용될 수 있다.

 

[ 목적 ]

우리가 어떠한 작업을 한다면 먼저 파일을 만들고 저장을 시킨 후 다음 날 다시 작업을 하려고 할 때 그 파일을 추가, 수정, 삭제 작업을 한다. 이 때 전날 작업했던 내용으로 다시 되돌리려고 한다면 어떻게 해야할까?

 

 우선 먼저, 작업 파일을 미리 복사해두어 파일명에 넘버링 또는 날짜를 붙여서 다른이름으로 저장하는데 편집할 때마다 매번 복사하는 일이 상당히 번거로우며 실수 할 가능성도 있다.

동일한 목적을 가진 파일이 여러 파일명으로 존재하므로 알아보기 힘들며 왜, 언제, 누가 수정했는지 알기 힘들다.

또한 여러 명이 공유한 파일을 작업할 때 동시에 편집을 하게 돼 변경하고 있던 파일이 덮어쓰기 되어 내용이 지워져버리기 쉽상이다.

이러한 문제점들을 해결하기 위해 만들어진 것이 Git과 같은 버전 관리 시스템이다!

동일한 파일을 동시에 여러명이 작업할 경우 문제점 발생..

Git 사용의 목적을 크게 3가지로 구분한다면 아래와 같다.

첫번째. 버전관리(Version)

두번째. 백업(Backup)

세번째. 협업(Collaboration)

 

[ 버전 관리 및 장점 ]

- Git은 소스 코드를 효과적으로 관리하기 위해 개발된 분산형 버전 관리 시스템이다. 원래는 Linux 소스코드를 관리할 목적으로 개발 되었다.

- Git 에서는 소드 코드가 변경된 이력을 쉽게 확인할 수 있고, 특정 시점에 저장된 버전과 비교하거나 특정 시점으로 되돌아갈 수도 있다

- 내가 업로드할 파일이 누군가 편집한 내용과 충돌한다면, 서버에 업로드 할 때 경고 메세지가 발생해 편집한 내용을 덮어쓰기 되버리는 실수가 없어지게 된다

 

[ references ]

생활코딩 https://opentutorials.org/course/1

Git 입문 https://backlog.com/git-tutorial/kr/

 

728x90
반응형

'개발 > Git' 카테고리의 다른 글

브랜치(Branch)  (0) 2021.09.13
변경 이력 병합(Merge)하기  (0) 2021.09.11
Push, Clone, Pull  (0) 2021.09.10
변경을 기록하는 커밋(commit)  (0) 2021.09.09
원격(Remote) 저장소와 로컬(Local) 저장소  (0) 2021.09.07

댓글