하나의 프로젝트를 여러명이서 협업할 때 작업 관리툴을 사용하여 버전 관리, 코드 관리를 진행한다. 그중에 가장 많이 사용되고 범용적인것은 역시 GIT일것이다. 사용법은 너무나도 광범위하고 일일히 다룰 수 없기에 사용하면서 간편했었던 것들 위주로 정리를 해본다.
팀 repository에서는 가장 최신을 유지하고, 코드 리뷰등을 통하여 안정성, 최선의 코드를 관리해야한다. 각 작업자들은 해당 repo(이하 repository)에서 공통적으로 관리하는 코드를 내려받고, remote를 추가하여 개인 pc에서도 팀 repo와 같은 코드를 유지할 수 있다.
git fork 및 clone을 통해서 자신의 pc에 team repo를 그대로 가져와 사용한다.
$ git remote -v
위의 명령어를 통해서 현재 내 프로젝트에서 remote가 되어있는 항목을 확인 할 수 있다.
fetch와 pull은 현재 브랜치에서 상위 브랜치의 HEAD를 받아온다는점에서 유사하나 fetch는 코드를 가져오지 않는다.
git fetch upstream develop
git pull upstream develop
커밋이 꼬여 이전 커밋들로 새롭게 쌓을 수 있다. 기초가 되는 브랜치에서 체리픽으로 하나하나 필요한 커밋들을 넣는 용도이다.
git switch -c newBranch
git cherry-pick 1r123 13333 rfg322
기존 커밋에 추가된 작업 내용을 추가할 수 있다. 추가하면서 commit message도 바꿀 수 있다.
git commit --amend
이전 커밋들을 git에 올려 PR을 요청해놓은 상황, 추가된 작업을 추가 커밋없이 이전 커밋에 합친다면 amend와 force를 사용하면 된다.
git commit --amend
git push origin develop --force