Git & Github/Git

0. GIT

pakms980319 2024. 2. 23. 12:36

GIT

Git이란 분산형 버전 관리 시스템(Version Control System) 의 한 종류이며, 빠른 수행 속도에 중점을 둔다.


1. 버전 관리란?

버전 관리 시스템은 파일변화를 시간에 따라 기록했다가 나중에 특정시점의 버전을 다시 꺼내올 수 있는 시스템이다.

  • 각 파일을 이전 상태로 되돌릴 수 있다
  • 프로젝트를 통째로 이전 상태로 되돌릴 수 있다
  • 시간에 따라 수정 내용을 비교해 볼 수 있다
  • 누가 문제를 일으켰는지도 추적할 수 있다
  • 누가 언제 만들어낸 이슈인지도 알 수 있다.
  • 파일을 잃어버리거나 잘못 고쳤을 때도 쉽게 복구할 수 있다

2. Git의 필요성

  1. 나와 내 동료가 같은 웹 사이트에서 동시에 같은 'A' 페이지를 업데이트 하고 있다고 하자
  2. 나는 무언가를 변경하고 저장한 다음 웹사이트에 'A' 페이지를 업로드 한다
  3. 그런데 이 때 동료가 동시에 'A' 페이지에서 작업을 할 때 문제가 발생한다.
  4. 만약 확인하지 않고 동시에 작업을 한다면 누군가의 작업은 덮어 쓰여질 것이고 지워질 것이기 때문이다.
  5. Git은 이와 같은 일을 사전에 방지해준다.
  6. 나와 동료는 같은 페이지에 각자 수정사항을 업로드 할 수 있고, 두 개의 복사본을 저장한다.

즉, 모두 같은 환경에서 개발하여 불필요한 시간을 없애고 서로 주고 받는 와중에 일어나는 충돌을 최소화 하는 것이라고 말할 수 있다.

 

프레임워크를 갖추고 공통으로 쓰는 코드들을 미리 넣어두고, 테스트 코드나 샘플 코드들을 넣어주어서 프로젝트 개발 시작하기전에 팀원 모두 같은 코드로 테스트할 수 있는 환경도 제공할 수 있다.


3. Git의 장점

 

1) 소스 코드를 주고 받을 필요 없이, 같은 파일을 여러 명이 동시에 작업하는 병렬 개발이 가능하다.

(브랜치를 통해 개발한 뒤, 본 프로그램에서 합치는 방식(Merge)으로 개발을 진행 할 수 있다)

 

2) 분산 버전 관리이기 때문에 인터넷이 연결되지 않은 곳에서도 개발을 진행할 수 있고, 중앙 저장소가 날라가 버려도 원상복구 할 수 있다.

 

3) 팀 프로젝트가 아닌, 개인 프로젝트일지라도 Git을 통해 버전 관리를 하면 체계적인 개발이 가능해지고, 프로그램이나 패치를 배포하는 과정도 간단해진다.


4. Git 작동 구조

  1. 내가 작업을 한 것을 (로컬 저장소)
  2. 원격 저장소로 밀어내거나 (PUSH)
  3. 원격 저장소에서 최신 형상을 내 작업공간으로(로컬 저장소) 당겨온다 (PULL)


출처

 

https://inpa.tistory.com/entry/GIT-%E2%9A%A1%EF%B8%8F-%EA%B0%9C%EB%85%90-%EC%9B%90%EB%A6%AC-%EC%89%BD%EA%B2%8C%EC%9D%B4%ED%95%B4

 

[GIT] ⚡️ git 개념 & 원리 (그림으로 알기쉽게 비유 😃)

Git 이란 무엇인가? Git이란 분산형 버전 관리 시스템(Version Control System) 의 한 종류이며, 빠른 수행 속도에 중점을 둔다. 우리가 레포트를 제출한다고 가정했을때, 처음에 저장했을때 'report.txt'라

inpa.tistory.com

 

'Git & Github > Git' 카테고리의 다른 글

Interactive rebase에서 최초 커밋을 수정할 수 없는가?  (0) 2025.05.02
Git 초기 프로젝트 push 에러 기록  (0) 2024.05.19
git push 403 에러  (0) 2024.04.24
0. GITHUB Page 만들기  (0) 2024.02.27
0. GIT 설치하기  (0) 2024.02.23