팀프로젝트 GIT 명령어 순서

김태영·2021년 4월 28일
8

솔루션개발

목록 보기
7/12

기본 용어

Local : 개인의 노트북

Remote : 원격의 환경(git server nas)에 올려놓고 동시 공유

Repository : 깃에서 팀원들과 프로젝트를 저장, 공유 할 수 있는 곳 (공유 폴더)
PM이 스프링 프로젝트 세팅을 한 뒤, 다른 팀원들이 git clone 을 받을 수 있게 Repository를 생성.

git init --bare 저장소 초기화
git update-server-info 서버 정보 초기화

git remote add origin https:// 레포지토리 유알엘 : 생성 된
Repository를 세팅한 프로젝트에 연결해서 다른 Local에서도 사용 할 수 있도록 해주는 명령어

git clone : PM이 셋팅한 Repository를 자신의 Local에 받기 위한 작업.
자신이 원하는 폴더까지 접근 후 클론 작업 필요 (현재 폴더 확인 터미널 명령어 :pwd)
명령어 : git clone URL(Repository의 URL)

branch : 최초 클론 시, Master(Main) 브랜치로 경로가 잡혀 있으며, Master(Main) 브랜치에 작업 할 경우 다른 팀원의 작업 사항들 (원본)에 문제가 생길 수 있기에,
본인이 작업 할 브랜치를 생성 후 작업 시작 (중요)

  • 현재 브랜치 확인 명령어 : git branch
  • 작업 할 브랜치 생성 명령어 : git branch feature/브랜치명
  • 작업 할 브랜치로 이동하는 명령어 : git checkout feature/브랜치명
    (브랜치만 생성하고, 이동을 안하게 되면 Master(Main)에서 작업이 될 수 있으니 꼭 이동 명령어 후, 현재 브랜치 확인하길 추천!)

git add . : 현재 브랜치의 모든 작업사항들을 저장하는 명령어

git commit -m "저장 사항 메시지 작성" : git add . 한 저장 사항들을 PR 올리기 전 어떠한 저장 사항인지 commit으로 기록하고, 메시지를 남겨서 저장사항을 트랙킹 할 수 있는 명령어
commit 후, push 하기 전에 다른 팀원의 작업이 Master(main)에 머지가 되었다면 Master(main)로 이동 후, git pull origin main 명령어를 사용하여 최신 main을 만들어야함 + pull 받은 작업사항을 자신이 작업한 브랜치로 이동하여 git merge main으로 브랜치에도 최신화 시킨 후 push진행!
(아래의 작업 순서 참조)

git push origin feature/브랜치명 : 현재 브랜치의 작업사항을 깃헙에 올리는 명령어

PR (Pull Request) : Push 된 commit 사항을 깃헙에 공유하는 작업.
팀원들과 프로젝트 공유를 하면서 최종 업데이트가 되기 위해서는 Merge* 의 단계가 필요한데, Merge가 되기 위해 업무 사항을 깃헙에 공유 할 때의 행위올릴 때 작업사항을 공유하는 행위

Merge: PR을 올린 뒤 최종 승인이 났을 경우 Merge가 되는데, 기존의 Repository에 PR을 올린 작업사항들이 업데이트가 되는 상황
작업 사항이 Merge가 되면, 다른 팀원들은 PR을 올리기 전에 업데이트 된 머지 사항을 자신의 Local에서도 최신화를 시킨 뒤 다시 푸쉬를 해야함.

작업 순서

작업은 Main 브랜치 작업은 하면 안되며, 브랜치를 분리 후 작업 필요함.
(공용 github에서 파일을 받아오는 방법 + 수정 후 깃허브에 올리는 방법)

PM이 Repository에 프로젝트를 연동하면 아래의 명령어로 작업 진행 가능

팀에 배포되어진 URL을 확인한 이후

현재 경로를 확인하는 명령어 : pwd
경로를 지정(이동)하는 명령어 : cd 폴더명
폴더가 없다면 폴더를 만드는 명령어 : mkdir 새폴더명
터미널에 git clone 위에서 복사한 URL 붙혀넣기

gradle build : 서버에 프로젝트.imi 클론 할 수 없기때문에 프로젝트를 받은 이후 한번 종속성
을 빌드 시켜줘야함

현재 Branch가 Master(Main)이기 때문에 Branch를 내걸로 수정해야함
git branch feature/subMaster(내브랜치명) 명령어로 이름 설정
git checkout feature/subMaster(내브랜치명) 명령어로 이름 설정한 브랜치앞으로 경로 설정 (!!중요!!)

git branch : 현재 브랜치가 어디 앞으로 설정되어있는지 확인하는 명령어
복사해왔던 파일들을 img, js, styles 등 폴더를 만들기 위한 상위 폴더를 만든 후, 붙혀넣기

git add . : 붙혀넣은 작업을 저장하기 위해 기록 준비

git commit -m "Add: 초기세팅(예시)" : 커밋(기록) 남김

git checkout Master(Main) : 메인 브랜치로 이동

git pull origin Master(Main) : 다른 팀원의 Merge 사항을 Local의 Master(Main)브랜치에 최신화 하기 위한 작업

git checkout feature/push를 올리기 위해 최근에 작업한 브랜치 : 자신의 Local Master(Main)브랜치에 최신화 시킨 작업사항들을 본인이 작업했던 작업사항에 최신화 시켜야하기에 메인->작업한 브랜치로 다시 이동

git merge Master(Main) : Master(Main)브랜치의 변동사항을 자신의 브랜치로 Merge해오는 명령어

git add . : 머지를 한 작업사항들을 다시 저장

git commit -m "작업한 메시지" : 머지 사항들 커밋남김

git push origin feature/seunghyunyoo(내브랜치명) : 더 수정 할게 없으면 깃허브로 푸쉬
Push가 잘 적용되면 코드 안에 git로 갈 수 있는 URL생성이 되고, 생성된 URL 클릭 후 이동

PR(Pull Request) 작성 : 깃헙에 가서 PR을 작성하고 승인요청을하면 해당내용 전달 완료
Master(Main)이 확인하고 승인하면 최종 Merge완료
최신화 된 Repository를 Local에 최신화 -> 본인 작업사항 Repository에 PR 요청 등 9번 ~ 20번의 작업을 반복적으로 진행.

profile
개발곳간

0개의 댓글