본문 바로가기

GitOps

(18)
[Github] 정리 Local 연동# 사용자 설정$ git config --global user.name $ git config --global user.email # 저장소 clone$ git clone https://github.com/# token 인증된 저장소로 변경$ git remote remove origin$ git remote add origin https://@github.com/# local branch를 tracking branch로 변경$ git push --u origin main PR Template 위 사진처럼 root 위치에 pull_request_template.md 파일을 생성해서 템플릿 내용 작성   pr을 날릴 때 자동으로 적용됨 Github PagesGithub Pages를 사용하기 위..
[Git] Git Flow 분산 환경 Workflow중앙집중형 버전 관리 시스템: 중앙 저장소가 중심 노드 역할Git: 개발자들의 저장소가 개별 노드 역할 및 중심 노드 역할 가능중앙집중식 Workflow중앙 저장소 한 개에 대해 여러 개발자들이 협업하는 형태모든 개발자들은 push 권한을 갖는다.협업 모델이므로 fetch + merge + push가 필수이다.Git에서도 적용해서 사용할 수 있다.Git FlowGit에서 표준급으로 사용되는 workflowmain(master), develop과 같은 main branch, feature, release, hotfix와 같은 branch가 존재함Git Flow Branchmain메인으로 사용되는 브랜치애플리케이션의 버전 별 배포는 해당 브랜치로 진행함hotfix, release의 ..
[Git] 브랜치 Git 데이터 개체Blob: 개별 파일에 대한 스냅샷트리 개체: 파일과 디렉토리 구조가 담긴 개체 (디렉토리)커밋 개체: 메타데이터 및 루트 트리를 가리키는 포인터커밋 개체parent에는 이전 커밋의 해시값이 들어간다.git이 포인터로 어떤 커밋을 가리킬 때, 커밋 객체의 루트 트리를 기반으로 스냅샷을 복구한다.git이 사용하는 포인트 이름이 HEAD.HEAD는 현재 작업 중인 브랜치를 가리킨다.만약 HEAD가 브랜치가 아닌 특정 커밋을 가리키면 이를 Detached 됐다고 한다.브랜치필요 시 기존 코드에서 독립적으로 개발할 수 있게 스냅샷을 분리한 것매우 가볍다HEAD가 이동할 수 있는 이정표의 역할을 함기본 브랜치는 main(master)브랜치와 태그의 차이둘 다 HEAD가 이동할 수 있는 이정표의 ..
[Git] 기초 및 명령어 시작 명령어git init: 로컬에서 .git 디렉토리를 만듦git clone: 기존 remote 저장소의 모든 데이터를 로컬로 복사형상 관리Tracked fileGit에서 형상 관리하는 파일Unmodified(Committed): 로컬 데이터베이스에 커밋된 상태. git clone 후 모든 파일은 이 상태이다.Modified: 파일이 변경됐지만 커밋되지 않은 상태Staged: 변경된 파일이 커밋할 준비가 된 상태Untracked file새로 생성되어 Git에서 관리하지 않는 파일관련 명령어git status: 파일 상태 확인 가능. -s 옵션으로 간략하게 확인 가능git add : untracked file(혹은 modified file)을 staged 상태로 변경git diff: tracked fil..
[Git] 개념 GitOpsGit을 중심으로 인프라스트럭처, 애플리케이션, 컨테이너 배포를 자동화CI/CD와 결합되어 개발 및 운영을 관리버전 제어 시스템 (VCS)코드, 문서 등등을 관리하고 추적변경 사항 기록하여 이력 추적 가능협업 가능로컬 버전 제어 시스템 (Local VCS)local에서 모든 변경 사항 저장모든 패치를 합산하여 특정 시점의 파일 모양 만듦협업 불가능ex. 한글과 컴퓨터중앙 집중식 버전 제어 시스템 (CVCS)로컬 버전 제어 시스템에서 발전된 시스템협업 가능관리자가 세밀한 제어 가능중앙 집중식 서버가 단일 장애 지점(SPOF)이 됨서버의 다운타임에는 공동 작업 중단서버가 손상되면 복구 불가ex. ppt 공유 문서분산 버전 제어 시스템중앙 집중식 버전 제어 시스템에서 발전된 시스템중앙에서 최신 스냅..
[Git] Github flow 실습: Member편 개요 Github Flow 흐름도입니다.이 흐름도를 기준으로 실습을 진행합니다.또한 해당 실습은 Member 기준으로 진행됩니다. Github flow에 대한 설명은 해당 링크에서 Owner편은 해당 링크에서 확인할 수 있습니다. 실습1. Organization 가입 Owner가 초대를 보내면 Organization에서 확인할 수 있습니다.accept를 눌러서 초대를 받아줍니다.   join   organization에 잘 들어온 것을 확인할 수 있습니다.organization repository를 눌러보겠습니다.   Owner가 organization인 repo임을 확인할 수 있습니다. 2. Issue 등록하기 Issues -> New issue   Owner가 생성한 템플릿을 확인할 수 있습니다.해당..
[Git] Github flow 실습: Owner편 개요 Github Flow 흐름도입니다.이 흐름도를 기준으로 실습을 진행합니다.또한 해당 실습은 Owner 기준으로 진행됩니다. Github flow에 대한 설명은 해당 링크에서 Member편은 해당 링크에서 확인할 수 있습니다. 실습1. Organization 생성 Your organizations - New organization - Join for free   name, email을 채워주고, My personal account를 선택합니다.만약 팀장님께서 보고 계신다면 A business or institution을 선택하시면 됩니다.아래 약관에 동의하고 Next를 누르시면 됩니다.   Organization에 멤버를 추가합니다.   그리고 인증 화면을 지나가면   잘 생성된 모습을 볼 수 있습니..
[Git] Github flow git 브랜치 전략이란?협업 시에 브랜치를 효과적으로 관리하기 위한 전략.github flow는 브랜치 전략 중 하나이다. hotfix, master(main), release, develop, feature 등 여러 개의 브랜치를 사용하는 git flow와 다르게, github flow는 master(main), feature 단 두 가지의 브랜치만 사용한다. git flow가 master에서 버전을 안정적으로 관리할 수 있었다면 github flow는 feature에서 merge하면 바로 master branch이기 때문에 버전을 따로 관리하지 않는다. 크게 버전의 구분이 없는 웹 개발에서 주로 사용한다. 브랜치 merge 작업을 github에서 실시하게 된다. 이런 검증의 절차가 특징이다.그리고 그..