티스토리 뷰

1. 브랜치 관리

1.1 브랜치 연결

처음에 디렉토리 생성 후, remote repository와 local repository를 연결해야 한다.

만약 연결없이 git 사용 시,  fatal: not a git repository (or any of the parent directories): .git 를 보게 된다....

1) git init - .git 생성 및 추적 시작

2) git remote add origin git@github.com:<user name>/<target repository name>.git - local에 remote 추가

3)  git branch -M main - 기본 브랜치명 master -> main

4) 연결할 파일 생성 후 git add <파일명>

5) git commit -m "connect git remote repository"  

6) git push origin -u origin main 를 통해 연결을 완료하자!


1.2 remote에서 작업물 가져오기

1) git fetch -p - remote의 branch를 local로 가져옴(병합은 x)

1-1) git merge <브랜치명> - 가져온 작업 내용을 로컬 작업 내용에 병합

1-2) 만약 첫 or 작업 내용 없다면 git pull origin  main 으로 바로 작업 내용을 적용까지 한다.


1.3 브랜치 생성 및 관리

- git branch -a : remote, local에서 생성된 브랜치를 확인

- git checkout <브랜치명> : 브랜치 이동

- git chechout -b <새 브랜치명> : 브랜치 생성 및 이동

- git branch -d <브랜치명> : local 브랜치 삭제(푸시 되지 않은 커밋 x)

- git branch -D <브랜치명> : local 브랜치 삭제(푸시 되지 않은 커밋이 있어도 무시)

- git push <name> -d <브랜치명> : <name> remote repository의 브랜치 삭제


2. Statging Area 관리

2.1 Staging Area에 추가

- Staging Area : 커밋되기 전 준비 상태 - 커밋 시, 해당에 존재하는 파일이 업로드 된다.

- git add  : 모든 파일을 Staging Area에 올린다.

- git add <파일명> : 해당 파일은 Staging Area에 올린다.


2.2 Statging Area에서 제외

 >> 제외(수정 내역 유지)

- git reset : Staging Area에 대기중인 수정 사항을 모두 제거, 수정 내용은 유지

- git reset <파일명> : Staging Area에 대기중인 해당 수정 사항을 제거, 수정 내용은 유지

- git restore --staged <파일명> Staging Area에 대기중인 해당 수정 사항을 제거, 수정 내용은 유지

 

 >> 제외(수정 내역도 롤백)

- git reset --hard <파일명>Staging Area에 대기중인 해당 수정 사항을 제거, 수정 내용도 폐기(되돌리기 X)

- git restore --source=HEAD <파일명> Staging Area에 대기중인 해당 수정 사항을 제거, 수정 내용도 폐기(되돌리기 X)

 

2.2-1 git restore

  •  --staged 옵션 사용 시
    : 삭제할 파일의 이전 상태 = Unstaged 에서 대기 : Staging Area 에서 → Unstaged 로 이동
    : 수정된 파일의 이전 상태 = Unstaged 에서 대기 : Staging Area 에서 → Unstaged 로 이동
    : 추가된 파일의 이전 상태 = Untracked : Staging Area 에서 → Untracked 로 이동

  • --staged 옵션 사용 X시
    : 삭제할 파일의 이전 상태 = 미삭제(존재) : Unstaged 에서 → 기존 Git 이 추적하던 파일 존재
    : 수정된 파일의 이전 상태 = 미수정 : Unstaged 에서 → 기존 Git 이 추적하던 파일의 이전 상태

2.3 Statging Area에서 제외 및 임시 보관 관리

 >> 제외 및 임시 보관

- git stash : git add를 통해 Staging Area에 대기중인 수정 사항을 임시 저장소에 보관

- git stash pop : stash 보관소의 가장 최신 변경 사항을 꺼내 반영(Stack구조, FILO)

- git stash apply : stash 보관소의 가장 최신 변경 사항을 반영, stach 보관소에 내용은 유지(Stack구조, FILO)

 

 >> 보관 내역 조회 및 관리

- git stash list : shash 보관소의 저장 내역 조회

- git stash show stash@{0} : shash 보관소의 특정 내역 확인

- git stash drop stash@{0}  : shash 보관소의 특정 내역 삭제

- git stash clear : shash 보관소의 저장 내역 모두 삭제

 


참조

ASAC 수업자료 

 

https://gmlwjd9405.github.io/2018/05/18/git-stash.html

 

[Git] git stash 명령어 사용하기 - Heee's Development Blog

Step by step goes a long way.

gmlwjd9405.github.io

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함