git-flow cheatsheet (danielkummer.github.io)
git flow 순서도라고 해야하나.. 초기설정방법부터 git 단계별 설명이 되어 있는 참고 사이트이다.
팀원(멤버)급은 feature 단계에서 작업 후 develop 단계로 merge한 후 push하면 다른 팀원들이 작업한 내용과 merge하고
팀장(관리자)이 해당 내용 수정요구 또는 추가작업요청을 하면 팀원들이 수정&추가작업해서 최종 수정한 이후에
팀장(관리자)이 승인하고
develop 단계에서 release 단계로 넘어간다. release 단계에서는 release 이름으로 tag 한다. 이때 태그이름은 주로
v0.1 -> v0.2 -> v0.3 이런식으로 작성한다. (version 버전별로 업데이트 개념, 두자리로 사용, 0.2 .. 0.3 ..등 0은 베타버전, 버전별 호환이 안되는 경우 앞자리 숫자 변경한다 v1.6 -> v2.0 )
정리하자면,
팀원 : feature branch에서 작업 -> develop branch로 병합 (팀도 develop branch로 작업 후 release)
- git feature start -> 작업 -> git feature finish
- git develop branch로 merge
- git develop branch로 push(내 local에서 작업한 내용 remote에 올리는 단계)
- compare & pull request (내 remote에 올린걸 팀 repo develop branch에 pull 요청) -> 팀 develop branch에 push 되었는지 확인
- 팀장(관리자)이 확인 후 추가요청사항 or 수정사항 요청-> 해당 내용 수정하기
- git bash에서 수정 or 추가사항 반영 -> vi 파일 내용수정 -> git add -> git commit
- git push origin develop (open상태에서 바로 수정사항 적용가능하다)
- 요렇게 올리고도 추가 수정사항이 있는경우
- (팀 branch로 merge한 이후에 revert 가능)
수정은 push 이전에 하는게 좋다. 결국 push는 왠만하면 안하는게 좋은거 같..
파일 이름 수정(Rename)
git mv 변경전파일명 변경후파일명 : git 없이 mv 변경전파일명 변경후파일명 하는 경우 파일삭제개념이다. git에게 파일변경으로 인식시키기 위해 mv 앞에 꼭 git을 넣어서 git mv 로 작업하는 습관을 들이자 (변경 history를 남기기 위함)
이렇게 변경하면 stage에 올릴 물리적 변화량이 없기 때문에 git add 할 필요없이 바로 git commit 하면 된다.
되돌리기(Undo) : 변화량을 취소하고 최근 상태로 되돌리기
git restore 파일명
(git restore . : 현재 위치 아래에 있는 모든파일 되돌리기)
올렸던 파일 내리기(Unstaging)
git reset HEAD 파일명 : HEAD는 최신(최근)상태를 말한다. reset은 없던 상태로 되돌리는 개념.(위험성이 크다)
여러개의 파일을 stage에 올린 후 특정 파일만 수정할 경우에도 사용가능하다.
but, 협업 시 수정사항은 reset이 아닌 revert로 합시다 (수정이력 남기기 위함)
git revert --no-commit HEAD~3 : no commit(commit 한번에 하기) / HEAD~숫자(최근작업한것부터 숫자개수만큼 순차적으로 되돌리기)
되돌리고 commit 해야 수정 완성. 수정하게 된 경위와 내용을 commit에 작성한다.
git revert -m : merge한 commit을 되돌리기
정리하고도 복잡스럽...... 결국 이렇게 단계를 쪼개고 쪼개는게 백업 개념인 거 같은데 넘나 복잡스럽습니다. ㅠㅠ
'Git' 카테고리의 다른 글
git clone 후 파일이나 폴더가 보이지 않을때 (0) | 2023.02.24 |
---|---|
github organization 협업 방법 (0) | 2022.12.08 |
github organization 생성 및 초기설정 (0) | 2022.12.08 |