10/30
지난주 금요일에는 개인프로젝트할 때에 Git 관리를 알아봤다면 이번에는 팀 프로젝트를 할때의 Git 관리에 대해 배우고,
git alies를 이용하여 git 에서 단축어 지정하는것, git amend를 이용 하여 커밋 메세지를 수정 git reset 으로 커밋 위치 수정,
git rebase -i 를 이용하여 여러 커밋을 합치거나 merge하는방법 들을 배웠다.
# 팀프로젝트 repositories 생성하기
new repository 로 프로젝트 생성
프로젝트명 입력후 생성
팀원 초대 후 팀원이 초대 수락하면 팀프로젝트화 된다.
그리고 팀장, 팀원 들이 각자의 local에서 작업을 한다.
작업을 할때는 master의 위치에서 각자의 새로운 branch를 생성 해주고 난후 작업을 하면 된다 .
마스터 위치에 있는것을 환인한후
branch를 생성해 준다.
branch 위치를 바꿔주고 원하는 작업을 add, commit해준다.
commit 까지 마친후
새 브렌치에 commit 메세지까지 잘 올라간 것을 확인한후 git Hub에 push해준다.
최초 push 할때에는 branch생성도 해야 하니 -u origin까지 입력해야하고
이후 동일 branch의 push라면 git push만 입력하면 된다.
push를 안정적으로 했다면 gitHub에 위와같이 팝업이 뜨지만 팝업버튼을 클릭하지 않고 New pull request를 클릭하여
request를 생성해주자.
create 버튼을 눌러주면 compare과 base 위치에 알맞은 branch를 넣어주고 create puu request 버튼을 눌러주자.
그리고 난후 팀장은 팀원이 요청한 request를 확인한후 괜찮으면 merge를 해준다.
merge를 한후 필요가 없어진 branch는 delete branch를 눌러 삭제해주자 (실수로 못했다면 나중에 close에서
찾아서 삭제해 줄 수도 있다.)
이렇게 git Hub에서 작업을 마쳤다면 다시 local에서 git fetch -p 로 최신화를 시켜주자
fetch를 받은후 log 를 보면
remote에서 받은 master가 로컬의 master보다 위에 있는것을 볼 수 있다 이제 lacal master로 이동해
remote master를 merge 해주고 필요없어진 local sw/feature1 branch를 제거해 주자.
깔끔하게 필요 없는 branch들이 삭제되고 최신화 된것을 볼 수 있다.
이런식으로 팀원들과 git 하는것을 배웠고 confliect 처리도 배웠다.
# git 에 관한 추가사항 정리
- git status, git log, git fetch는 몇번을 해도 괜찮으니 자주할 수로 좋다.
- git alias -> 짧은 명령어를 입력할 수 있게 단축어를 지정 시켜주는 것
- git amend -> 커밋 메세지를 수정 (단 push 되기 전까지의 commit 만 수정 가능하다 / 이유는 commit 수정을 하게
되면 commit 의 번호를 재할당 하기 때문이다.) - git reset -> 원래 있던 커밋 중 한곳으로 돌아가기
- hard - 3가지 다 바꾸는것
- git rebase -i <HEAD~> -> 여러 커밋을 HEAD에 입력한 갯수에 따라 합치는것 (이것역시 push 하기 전까지만 가능)
- git rebase master -> rebase 의 기본적 기능은 합치는 것이지만 기존 개발자들이 3way merge가 되는 모습을 보기
싫어 fast forword merge가 되게 merge를 사용 하지 않고 rebase 를 사용 하여 merge와 유사한 기능이 작동하게
표현 한 것이다.
'중앙정보처리학원 - 수강일지' 카테고리의 다른 글
#중앙정보처리학원-64일차- (0) | 2023.11.01 |
---|---|
#중앙정보처리학원-63일차- (0) | 2023.10.31 |
#중앙정보처리학원-61일차- (0) | 2023.10.27 |
#중앙정보처리학원-60일차- (0) | 2023.10.27 |
#중앙정보처리학원-59일차- (0) | 2023.10.25 |