Git 복습

Jan 02, 2024
Git 복습
Git : 버전 관리 시스템
  1. 정의 버전 관리 시스템(Version Control System, VCS)은 소프트웨어 개발에서 소스 코드의 변경 내용을 추적하고, 버전을 관리하는 도구
VCS는 소스 코드를 저장하고, 수정 이력을 추적
여러 개발자들이 동시에 작업하는 경우 변경 내용을 쉽게 병합할 수 있도록 돕습니다.
폴더를 통째로 관리하는 것
  1. 기존 파일 관리 방법 팀장님이 예전 파일을 달라고 하면, 복구 시간이 오래걸린다. 복구 후에 파일을 하나 더 생성 현재 파일은 아래와 같이 관리된다. 시간이 좀 지나고, 팀장님이 업그레이드 요청을 하게 되면, v3가 나오게 된다.
💡
불변을 감지// 매우 중요
기존의 데이터가 있어야 변경을 감지
 
  1. 기존 큰 프로젝트 관리 방법 file1 -> file100까지 통으로 관리하는 중에 file3과 file20 수정 요청이 들어오면, 그 부분을 수정하는 건 위험 폴더를 통으로 복제해서 파일을 변경한다. (버전 관리 시작)
  1. VCS(Version Control System) 활용 데이터베이스나 특정 시스템을 활용하여 변경된 내용만 v1에서 v2로 관리한다. 즉, 통으로 복사하지 않는다. 기존 데이터를 활용하여 변경된 내용만 관리하는 시스템이다. 치명적인 단점은 데이터베이스에 바이러스가 걸리면 끝난다. 그리고 협업을 할 수 없다.
  1. CVCS(Centralized Version Control System) 활용 중앙 집중형 버전관리 시스템 (협업 가능) A가 file1.txt를 다시 수정해서 업로드 하면 큰일난다. 당연히 소스를 관리하는 중앙 컴퓨터가 바이러스 걸리면 끝난다. (복제 시스템이 필요하다.) 히스토리를 중앙 저장소에서만 관리하고 있다.
  1. DVCS (Distributed Version Control System) - git //리눅스 DVCS(distributed version control system)는 분산 버전 관리 시스템으로, 모든 개발자들이 로컬 저장소(Local Repository)를 갖고 소스 코드를 관리하며, 변경 내역을 추적하고 원격 저장소(Remote Repository)와 동기화합니다. 이 방식은 중앙 서버를 필요로 하지 않으며, 개발자들이 로컬 저장소에서 소스 코드를 수정하고, 다른 개발자들과 변경 내역을 공유하는 방식으로 동작합니다. DVCS의 가장 큰 장점은 분산 저장소 방식을 통해 소스 코드를 보다 안전하게 보호할 수 있다는 것입니다. 각각의 개발자들이 로컬 저장소를 갖고 작업하기 때문에, 중앙 서버가 다운되거나 손상되더라도 소스 코드를 호할 수 있습니다. 또한, DVCS는 원격 저장소와 로컬 저장소 간의 동기화를 통해 개발자들 간의 협업을 쉽게 할 수 있습니다. 로컬과 중앙저장소 모두 히스토리를 가지고 있다.
 
Github : 모든 개발자들의 소스 코드를 모으는 곳 // microsoft
챗GPT가 Github 기반으로 만들어짐
 
코파일럿 : Github에 있는 소스 코드를 기반으로 만들어주는 AI
 
Share article

vosw1