-
Notifications
You must be signed in to change notification settings - Fork 4
Git cheatsheet
Yun Hwan, Kim edited this page Nov 25, 2019
·
7 revisions
상황
unstaged to commit:
- file1.txt
- file2.txt
....
- file1000.txt
untracked files:
- newfile1.txt
// unstaged file들만 추가한다.
git add -u
// untracked만 남고 unstaged file은 다 stage area로 넘어간다
git status
untracked files:
- newfile1.txt
// original repo를 upstream으로 등록해두면됩니다.
git remote add upstream https://github.com/connect-foundation/2019-14
ref[1]: fork한 repository를 최신화하기
develop브랜치에 feature브랜치에 구현해둔 commit을 올리고 싶다.
// feature브랜치를 develop에 합친다.
////////////////////////////////////////////////
// (prev)
// ----A------>(develop)
// |
// --------------B------C---->(feature)
////////////////////////////////////////////////
// (after)
// ----A------>(develop)---B---C--->(feature)
////////////////////////////////////////////////
git checkout feature
git rebase develop
// 이 후에 rebase때문에 conflict가 발생할 수 있다.
// 그렇다면 conflict를 해결한 후에 git rebase --continue로 conflict를 계속 해결해가면된다.
// develop을 feature이 있는 위치로 합쳐서 최신화한다.
// ----A------>---B---C--->(feature, develop)
git checkout develop
git merge feature
- 리뷰를 받을 코드가 존재하는 브런치로 체크아웃한다.
- 체크아웃된 브런치를 기반으로 --orphan 옵션을 주어 새 브런치를 만들고, 이동한다.
- ex) git checkout --orphan [임의의 브런치]
- 원하는 코드를 커밋한다.
- 커밋id 복사할 것
- 나머지 코드를 전부 지우거나 커밋한다.
- 지우거나 커밋하지 않으면 다른 브런치로 체크아웃을 하지 못한다.
- reivew 브런치로 체크아웃한다.
- git cherry-pick [commit id] 명령어로 원하는 커밋을 가져온다.
- origin에 푸시한다.
- PR을 작성한다.
- PROFIT!