Git, Branch

정혜지·2022년 7월 21일
0

Git / Github

목록 보기
2/2
post-thumbnail

Git

분산 버전관리 시스템


분산 버전 관리 시스템

중앙집중식 버전 관리 시스템 문제개선

  1. 분산 버전 관리 시스템
  2. 네트워크가 없어도 됨
  3. 로컬에서도 빠르게 작업 가능
  4. 혼자만의 영역에서 실험 및 작업가능

왜 깃을 사용하는가

  • 가볍고 빠르고 효과적
  • 모든 사본을 보관
  • 강력한 브랜치 기능 제공
  • 사실상 표준 분산 버전 관리 시스템

git의 영역 ⭐

git 영역




📌 git 기본 명령어

버전 확인

git version

git 초기설정

git config name, email 설정
git commit, git push할 때마다 계정정보 입력을 생략
git init 
git config --global user.name ""
git config --glbal user.email ""
git config --list

global 전역

git config --global user.name ""
git config --global user.email ""

local 만들어진 저장소 우선순위 높은 계정

git config --local user.name ""
git config --local user.email ""

git config 정보 확인

git config --list

git name, email 초기화

git config --unset user.name
git config --unset user.email

global로 설정했을 경우 초기화

git config --unset --global user.name
git config --unset --global user.email

git config 정보 확인

git config --list

작업 영역으로 이동하기

cd [이동경로]

작업 영역으로 잘 이동했는지 확인

pwd

작업 영역 초기화

git init

현재 상태 확인

git status

해당 작업 영역에 start.txt 파일 생성 및 내용 작성 후 상태 확인

git status

스테이지 영역으로 올리기

git add start.txt

add 이후 현재 상태 확인

git status

스테이지 영역에 올라간 상태 확인 후 저장 영역으로 올리기

git commit -m "add start.txt"

현재 상태 확인

git status

기록 확인하기 (Author 확인하기!)

git log

작업 영역에 test.txt 파일 생성 및 내용 작성, start.txt에 새로운 내용 추가 후 상태 확인

git status

test.txt 파일 스테이지 영역으로 올리기

git add test.txt

현재 상태 확인하기

git status

내용 추가된 start.txt 스테이지 영역으로 올리기

git add start.txt

현재 상태 확인하기

git status

스테이지 영역에 올라간 상태 확인 후 저장 영역으로 올리기

git commit -m "add test.txt"

기록 확인하기

git log

git log ⭐

  • 고유 SHA1값
  • 40자리수 -> 20bytes
  • git 전반에 사용되는 고유한 값
  • 앞의 7자리만 사용



실습

  1. 작업영역에서 start.txt 파일 생성 -> start 내용 작성
  2. test.txt 파일 생성 -> test 내용 작성
  3. test2.txt 파일 생성 -> test 내용 작성
  4. 새로 생성된 파일 모두를 스테이지 영역 올리기
  5. 커밋 메세지로 add start.txt test.txt test2.txt 작성 후 저장 영역 올리기

1. 작업영역에서 파일 생성 및 내용 작성 이후 상태 확인

git status

: 아직 스테이지 영역에 추가되지 않은 상태임으로 변경사항이 빨간색으로 표시


4. 새로 생성된 파일 모두를 스테이지 영역 올리기

git add .
git status

: 스테이지 영역에 추가되었음으로 변경사항은 초록색으로 표시


5. 커밋 메세지로 add start.txt test.txt test2.txt 작성 후 저장 영역 올리기

git commit -m "add start.txt test.txt test2.txt"
git log  //커밋 내용 확인







브랜치(Branch)

가지 또는 줄기
작업의 흐름 또는 커밋
각 브랜치 별로 작업 진행 가능
필요시 병합(merge)하거나 삭제

장점

  • 독립적인 로컬 브랜치
  • 쉬운 전환
  • 각 브랜치별로 기능 혹은 역할 구분
  • 배포/개발/테스트



브랜치 시작하기

새 브랜치 만들기

git branch test

브랜치 삭제 (삭제를 위해서는 다른 브랜치로 전환해야함)

git branch -d test

새 브랜치 생성 확인 및 버젼 확인하기

git branch
git branch -v

생성 브랜치로 전환 후 확인하기

git checkout test
git branch -v

실습

  1. test 브랜치 생성
  2. test 브랜치에 test3.txt 파일 생성, test3 내용 추가 및 start.txt에 내용 추가하기
  3. test3.txt 파일을 스테이지 영역에 올린 후, 커밋하여 저장 영역으로 올리기
  4. master 브랜치로 전환 후 브랜치 확인하기
  5. master 브랜치에서 test 브랜치의 내용을 합치기 (merge)

1. test 브랜치 생성

git branch test

2. test 브랜치에 test3.txt 파일 생성, test3 내용 추가 및 start.txt에 내용 추가하기

(HEAD -> test) 로컬저장소에서 파일 생성 및 내용추가 이후, 현재 상태 확인하기

git status

: 아직 스테이지 영역에 추가되지 않은 상태임으로 변경사항이 빨간색으로 표시


3. test3.txt 파일을 스테이지 영역에 올린 후, 커밋하여 저장 영역으로 올리기

git add test3.txt
git commit -a -m "add test3.txt"
git log.   //커밋 이력 확인

4. master 브랜치로 전환 후 브랜치 확인하기

git checkout master
git branch -v

5. master 브랜치에서 test 브랜치의 내용을 합치기 (merge)

git merge test
git branch -v
git log

: master보다 다른 브랜치의 단계가 더 높은경우, 안전성을 높이기 위하여 커밋으로 남겨야한다.



HEAD
모든 브랜치에는 HEAD 값이 존재하는데 HEAD란 해당 브랜치의 마지막 커밋을 뜻한다.



profile
오히려 좋아

0개의 댓글