DEVLOG
[git] git프로젝트 clone부터 merge까지! 본문
git으로 프로젝트 관리하기 FLOW
● clone
$ git clone (url) / bitbucket에서 clone코드 복사 후 터미널에 입력
: 전체 저장소 내려받기
● npm install
$ npm install
: package.json에서 사용하는 패키지들을 다운받아주는 명령어로 작업초기에 한번만 실행!
● branch 생성
$ git checkout -b 'feature/branchname'
: 바로 master나 develop에서 작업하는게 아니라 개인 branch를 생성해서 작업후 merge하는 방식으로 진행이 되므로
'feature/(기능에 따른 브랜치명)' 으로 branch를 생성해준다.
● fetch
$ git fetch (branch명)
branch명 예시 : develop
: merge된 파일을 최신버전으로 새로고침하기 (pull 받기 전에 실행해주기!)
● pull
$ git pull origin (branch명)
branch명 예시 : develop, feature/~~~)
: 파일 내려받기 (업데이트 된 최신 파일들을 내려받기)
* pull을 하게되면 기존에 작업하던 것들과 내려받은 파일의 충돌이 발생하는데 직접 코드를 보면서 처리를 해주어야한다.
이때 현재변경사항수락(master)인지 수신사항수락(가져온것)인지 잘 보고 선택해야한다!
잘못하면 변경사항을 적용하지 못하고 코드가 꼬여버리는 일이 발생한다 :(
● 작업완료 ADD/COMMIT/PUSH세트
$ git add
$ git commit -m "커밋메세지"
$ git push origin (branch명)
*작업완료 후에 add, commit, push는 항상 같이 진행해주어야 한다! 항상 세트로 다니는 것을 주의하자!
*한눈에 보이는 커밋메세지를 작성하는 법을 길들이자
****협업시 깃 컨플릭 안나게하는 꿀팁****
- git add
- git commit -m ‘ ’
- git pull origin develop <- 중요
- git push origin myBranch
3번이 중요한 이유 :
3번에서 develop의 내용을 내꺼로 가져와서 전부 병합하고 ( incomming 을 가져온다고 생각하면됨, 이게 남의 작업물이니까)
올리게 되면 컨플릭 없이 pr남길 수 있음,가끔 안그래도 안나는 경우가 있는데
이경우엔 내꺼가 상위 브랜치( 예시에서는 develop)을 덮어버리는 경우가 있음
그러니 develop을 한번 받고 올여야함정리 : push 전 내가 pr남기려고 하는 브랜치를 한번 pull 하기
● PR(Pull Request)
: 코드 merge하기 전 검사받는 개념으로 생각하면 된다. (주로 코드 수정후에 확인받는 듯?!)
- push후에 bitbucket Branches에서 내 branch의 PR(pull request) Create
- Branch 선택 : develop
- Reviewer 선택 : 주로 IMS나 style을 줄때는 은정님(poli~~) / 주요 기능부분이면 장대리님 (젠솔기준)
- create pull request 버튼
* 이때 title와 content는 commit message에 의해 결정!
첫줄이 title, 1.~~ 2.~~ 이런식으로 쓴건 content
- reviewer확인 후 Approve어쩌고 체크가 되면 확인하고 완료되면 Merge
* close source branch를 체크하면 merge가 완료됐을 때 사용했던 branch가 브런치목록에서 사라짐!
*****develop -> master로 merge할때 절대절대 체크하지 말 것!!!*****
참고사항
파일중에서 gitignore파일의 dependencies가 의미하는 것은 push할때 무시되는 파일들??을 의미한다.
주로 모듈들이 너~~무 많아서 굳이 다 올릴 필요가 없을때...? 그런느낌?!!
거의 내가 이 파일을 건드릴 일은 없다고 하셨다!
터미널에서 작동중지 명령어 : ctrl + C
'others' 카테고리의 다른 글
mac 터미널로 VScode 여는 'code'명령어를 영구적용 시키는 법 (0) | 2021.12.15 |
---|---|
[git] 로컬에서 삭제한 파일 원격 저장소에 적용하기 (0) | 2021.01.19 |