본문 바로가기

카테고리 없음

깃 git 기초 / 명령어 / 브랜치 Branch

git. [분산형 버전 관리 시스템]

주요 기능 

이력 기록 및 추적 누가, 언제 어떤 파일을 어떻게 수정했는지 변경 이력을 기록하고 확인 가능
원격 저장소 및 공유 소스코드를 원격저장소와 지역저장소에 분산하여 저장.
→ 원격저장소에 문제가 생겨도 지역저장소를 이용해 복원 가능
변경 이력 병합 동일한 소스코드를 변경했을시 변경내용을 병합하는 기능

ℹ️ 버전관리시스템(Version Control System) : 소스코드변경을 관리하고 추적하기 위한 시스템

ℹ️ 깃허브(GitHub) : git으로 관리 되는 프로젝트의 원격저장소 역할을 수행하는 웹호스팅 서비스

 

⭐ git 소스 관리 흐름

 

⌨️ git 로컬 저장소 초기화

명령어  기능
git init 지역 저장소 생성
git config —global user.name “사용자명” 사용자명 등록
git config —global user.email “메일주소” 사용자 이메일 등록
git remote add “식별자” “원격 저장소 주소” 원격저장소 주소를 지역저장소에 등록

⌨️ 추적 변경 관리

명령어  기능
git add “파일/폴더경로” 스테이지에 파일 등록
git commit 새로운 커밋 생성
git commit —amend —no-edit 마지막 커밋 수정
git push “식별자” “브랜치” 원격 저장소에 커밋 반영
git cloen “원격 저장소 주소” 원격 저장소 복제
git reset “커밋 체크섬” 특정 커밋으로 최종 커밋을 변경(커밋 제거)
git revert “커밋 체크섬” 특정 커밋으로 변경사항을 되돌린 후 새로운 커밋 생성

⌨️ 기타

명령어  기능
git status 현재 지역저장소의 파일 상태 확인
git log (—pretty=oneline —graph) 커밋 내역 확인

 

브랜치 (Branch)[master 브랜치로 부터 독립적인 작업 공간을 갖는 기능]

서로 다른 버전의 코드를 만들 때 서로의 작업에 영향을 주지 않기 위해 사용

 

⭐ 브랜치 병합 기준 브랜치에 새로 작업된 브랜치의 커밋 내역을 반영하는 작업

    ☝️Fast Forward :

          Master 브랜치에 변경사항이 없는 경우 작업 브랜치의 새로운 커밋이 Master 브랜치에 새로운 커밋으로 더해짐

    ☝️Merge Commit :

         Master 브랜치에 변경사항이 있는 경우 작업 브랜치의 커밋 내역을 하나의 병합된 커밋으로 묶어서

         새로운 커밋으로 더해짐

 

ℹ️ Conflicts (충돌) : 서로 다른 작업 브랜치에서 동일한 코드를 수정 한 후 병합 할때 발생

⌨️ 브랜치 관리

명령어  기능
git branch -a 브랜치 확인
git branch “브랜치명” 브랜치 생성
git branch -d “브랜치명” 지역저장소 브랜치 삭제
git push -d “브랜치명” 원격저장소 브랜치 삭제
git checkout “브랜치명” 현재 작업공간을 해당 브랜치로 변경
git merge “브랜치명” 브랜치 병합 (기준브랜치로 변경 후 진행)
git pull “식별자” “브랜치명” 원격 저장소의 브랜치 변경 내역 적용
git fetch “식별자” 브랜치명” 원격 저장소의 브랜치 변경 내역만 가져오기
git cherry-pick “커밋 체크섬” 특정 커밋을 현재 브랜치에 추가
git rebase “브랜치명” 브랜치의 커밋 이력 기준으로 재정렬
반응형