Directory 와 비슷한 개념?
원격 저장소, Github
개인 저장소, PC
Committed
기존에 Commit했던 파일을 수정하지 않은 상태
Modified
기존에 Commit했던 파일을 수정한 상태
Staged
commit이 가능한 상태
Fork
Github에서 다른 저장소의 파일을 Fork로 가져올 수 있다.
clone
git clone {레파지토리 주소}
git clone https://github.com/{github-name}/{Repository}.git
git clone https://github.com/Jaeminst/git-workflow-test.git
git clone git@github.com:{github-name}/{Repository}.git
git clone git@github.com:Jaeminst/sprint-simple-git-workflow.git
status
git status
로 Local의 목록을 확인할 수 있다.
restore
git restore {파일명}
으로 commit 되지 않은 변경을 되돌린다.
add
git add {파일명}
으로 commit 가능한 상태로 추가한다.
git add .
으로 Staging area의 모든 파일을 추가한다.
commit
git commit -m '메시지'
-m 옵션으로 코멘트를 달고 commit 할 수 있습니다.
훌륭한 Git commit 메시지의 7가지 규칙
1) 공백라인으로 본문과 주제 구분
2) 제목 줄을 50자로 제한
3) 제목을 대문자로
4) 제목 줄을 마침표로 끝내지 마십시오.
5) 제목에 명령형 분위기를 사용하세요.
6) 본문을 72자로 줄바꿈
7) 행동을 사용하여 무엇을 어떻게, 왜 바꿨는지 표현하라.
reset
git reset HEAD^
으로 Github에 올라가지 않은 commit이면 reset으로 취소할 수 있습니다.
HEAD^ : 가장 최근 commit
HEAD^^^ : 가장 최근부터 3개의 commit
HEAD~4 : 가장 최근부터 4개읠 commit
git reset --hard
, git reset --soft
학습필요.
push
git push {origin} {branch}
git push origin master
으로 나의 Remote Repository의 master(tree)에 변경 사항을 업로드한다.
git push upstream master
으로 업스트림으로 등록된 레포지토리에 푸쉬.
log
git log
현재까지 commit 된 내역들을 터미널 창에서 확인
git log --oneline -n 3
최근 3개 커밋내역 확인
init
기존 디렉토리를 Git Repository로 변환
git init
현재 디렉토리를 init 하고, 초기화 한다.
remote add
나의 저장소에 연결한다.
git remote add origin {Repository 주소}
다른 저장소에 연결한다.
git remote add {other} {Repository 주소}
등록된 저장소를 삭제한다.
git remote remove {other} {Repository 주소}
remote -v
연결된 모든 Remote Repogitory 확인
git remote -v
pull
Github 저장소에서 Local 저장소로 작업내용을 가져온다.
받아오는 내용은 자동으로 병합(merge) 된다.
git pull {shortname} {branch}
pull 사용 후 충돌 발생
같은 부분을 변경하면 자동병합을 실패하며, 직접 수정 해주어야 한다.
git status
로 충돌 파일을 확인한다.
그 다음 비주얼 스튜디오를 열어 수정한다.
Add 하여 Staging area로 추가하고 commit하고, push 해주어야 한다.
이때, 충돌로 commit된 파일은 자동으로 comment가 달린다.
merge
git merge {branch}
git merge upstream/main
으로 현재 위치에서 업스트림으로 등록된 레포의 main 브랜치 가져옴
switch
git switch -c {branch}
새로운 브랜치 생성
git switch {branch}
{브랜치}로 이동
Fork
다른 저장소에서 나의 저장소로 가져온다.
Clone
나의 저장소에서 개인 저장소로 가져온다.
Add
개인 컴퓨터에 있는 파일을 추가한다.
Commit
특정 시점의 저장소 스냅샷을 기록한다.
Push
스냅샷을 Github에 등록한다.
Pull Request
등록된 변경코드를 다른 저장소에 변경 요청한다.
내가 push한 변경 사항에 대하여 다른 사람들에게 알리는 것.
Pull Request (=PR) 으로 수정반영을 요청한다.
git pull origin master
git pull pair master
Pull {other} {branch} : Remote -> Local 받아오며 자동병합 됩니다.
git status
로 충돌 내용을 확인합니다.add
로 추가하고, commit
해줍니다.push
해줍니다.