1. 원격저장소와 연결
~/study > cd git_test
~/study/git_test > git init
Initialized empty Git repository in /Users/gimchan-yeong/study/git_test/.git/
~/study/git_test on master > git remote add origin https://github.com/K5S-TEAM/gitTest.git
~/study/git_test on master > git pull origin master
2. 이슈 작성
글작성(예시)
# 목적
멤버 도메인을 개발한다
- 토큰을 이용하여 인증방법을 선택할 예정이지만 테스트에는 사용하지 않는다
- Review 도메인 구현을 위해 Member는 간단하게만 개발
## 개발단계
- [ ] Member Repository 개발
- [ ] Member Service 개발
- [ ] Member Test 개발
## 참고사항
- 개발이 주목적은 아니기때문에 단위 테스트가 아닌 통합 테스트로 개발
이후 submit
클릭
3. 개발
# branch 생성후 해당 branch로 이동하여 작업영역 변경
git checkout -b chan # git chehckout -b [branch명]
# branch 확인
git branch
# 개발
~/study/git_test on chan > mkdir chan # mkdir [작업영역]
~/study/git_test on chan > touch chan/RepositoryFILE
~/study/git_test on chan ?1 > git add .
~/study/git_test on chan +1 > git commit -m "Repository 개발"
~/study/git_test on chan > touch chan/ServiceFILE
~/study/git_test on chan ?1 > git add .
~/study/git_test on chan +1 > git commit -m "Service 개발"
~/study/git_test on chan > touch chan/ServiceTestFILE
~/study/git_test on chan ?1 > git add .
~/study/git_test on chan +1 > git commit -m "TEST 개발"
~/study/git_test on chan > git push origin chan
원격 저장소로 이동
Compre & pull request
클릭
입맛에 맞게 수정
Create a merge commit
- PR의 commit들이 main브랜치의 HEAD commit으로 들어감 (git merge 명령어와 같음, 메시지는 수정 불가), 브랜치의 커밋 기록들이 직관적으로 병합됨
Squash and merge
- PR의 커밋 로그들을 한 개로 추려서 main에 병합(PR 제목으로 된 1개의 로그로 main에 병합)
Rebase and merge
- PR의 커밋 로그들이 main에 재정렬되어 병합됨(커밋 기록이 구구절절 main에 한줄로 되어 마치 main에서 다 작업한 듯이 됨)
commit 과 project 확인
4. 로컬 stage 복구
다음 개발을 위해 reset
git checkout master
git pull origin master
git push origin --delete [branch명]
git branch -D [branch명]
...
...
git checkout -b chan
다시 개발 할때 3번부터 반복
git config -global alias.lg log --full-history --all --graph --color --oneline --date-order
댓글 쓰기