상세 컨텐츠

본문 제목

Git(깃)으로 형상관리 하는 이유와 개념!

CI&CD/Git&GitLab

by JORDON 2023. 1. 25. 13:27

본문

반응형

 

리눅스 토발즈가 개발한 오픈소스 시스템이다.

 

(Git)은 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 스냅샷스트림 기반의 분산버전 관리시스템이다. 또는 이러한 명령어를 가리킨다. 소스코드관리에 주로 사용되지만 어떠한 파일 집합의 변경사항을 지속적으로 추적하기 위해 사용될 수 있다. 기하학적 불변이론을 바탕으로 설계되어 있으며 분산버전 관리 시스템으로서 빠른 수행 속도에 중점을 두고 있는 것이 특징이며 데이터 무결성, 분산, 비선형 워크플로를 지원한다.

 

Git은 거의 모든 명령을 로컬에서 실행

Git은 데이터를 추가할 뿐 삭제하거나 수정하지 않는다.

 

SVN과 Git의 스냅샷 차이

SVN은 시계열방향으로 스냅샷을 찍어 형상을 관리한다.

Git은 Branch을 수직계열화하여 각각의 모듈을 형상관리한다.

 

 

GitLab

 

Git(깃)의 Remote Repository(원격저장소) 관리뿐만 아니라 이슈, 트래킹, 코드리뷰, CI/CD, 테스트, 모니터링 등을 전체 소프트웨어개발의 라이프사이클에 필요한 기능을 제공함

 

GitLab CI/CD

 

지속적인 소프트웨어 개발 방법을 사용하면 반복적인 코드 변경사항을 지속적으로 빌드 테스트 배포할수 있음

반복적인 프로세스는 버그가 있거나 실패한 버전을 기반으로 새코드를 개발할 가능성을 줄이는데 도움이 됨 

방법을 사용하면 새코드 개발부터 배포까지 사람의 개입을 줄이거나 거의 개입하지 않으려고 노력하여 사람의 실수를 줄일 수 있음

 

CI(Continuous Integration) - 지속적인 통합

 

깃랩의 깃저장소에 코드가 저장된 에플래케이션을 개발자는 매일 하루에 여러번 코드사항 변강사항을 푸시함

Repository(리포지토리)에서 푸시할때마다 스크립트 세트를 생성하여 애플리케이션을 자동빌드하고 테스트할수 있음

 

CD(Continuous Delivery)의 2가지 의미

 

CD(Continuous Delivery) - 지속적인 전달

지속적인 전달은 유사한 지속적인 통합으로 사람이 개입하여 수동으로 배포하여 사람의 개입이 필요하는것 입니다.

 

CD(Continuous Delivery) - 지속적인 배포

지속적인 배포는 지속적인 전달과 유사한 지속적인 통합을 넘어서는 또 다른 단계 차이점은 어플리케이션을 수동으로 배포하는 대신 자동으로 배포되도록 설정한다는 것입다. 사람의 개입이 필요하지 않음

 

반응형

관련글 더보기

댓글 영역