생각기록

팀 프로젝트 전 git 관련 본문

프로젝트/팀프로젝트 KSP

팀 프로젝트 전 git 관련

끼록관 2022. 12. 10. 17:38

*repo생성한 사람이 해야 할 것

레퍼지토리 만들기

비밀번호 입력

cd ~~

.git clone ~~

-git checkout -b develop

git push origin develop > remote에 develop브랜치 올림 (github 확인 가능)

이란 브랜치를 추가 한다

 

 

settings  >  Branches  >  default branch 를 develop 체크 후 update 눌러서 바꾼다.

develop이란 브렌치가 메인이 되도록


settings  >  general  >  automatically delete head branches 체크!!

머지한 브렌치 자동적으로 삭제 되도록 하는 것

 

 

브랜치 보호하는 것
1. repo  > settings  > branches 에서 "Add branch protection rule" 클릭!
2. Branch name pattern 에 develop 이라고 작성
3. Require a pull request before merging 체크!!!! 


4. 제일 아래에 create 버튼 클릭
-----------------------------------------
5. repo > settings > branches 로 다시 이동 후 Add rule 버튼 클릭
6. main 브랜치에 대해서도 브랜치 보호 설정! (2~4번 반복)
7. 최종적으로 settings > branches 에 두번째 사진처럼 보여야 함! 

 

 

setting > collabordators 추가

팀원 추가


팀원들이 할 것

5. git clone ~~    저장소 복사

6. cd ~~

7. git checjout develop      

8. git pull

9. git checkout -b "feature 이름"

 

디폴트 브렌치에서 정보를 pull 당겨오고

그 것에서 파생 되도록 해야해서 항상 git checkout develop!!

우린 계속 develop에 있는 브랜치에서 파생시켜서 피처 브랜치를 만들어서 쓸 것 !

 

ex) git checkout -b login

같은이름으로 겹칠 것같으면 곤란해집니다.

규칙으로 이름을 적던지 충돌을 줄인다.

 

10. git add commit push

 

11. git push origin "feature 브랜치명"

로컬 > 리모트(github)

 

 

오늘 하루 작업 > 머지 > 푸쉬 

열심히 개발 > !! 하나의 브랜치를 하루를 넘기지 말 것 ~~

한번 만든 브랜치를 다음 날 까지 가져가면, 변경사항이 계속 쌓인다.

(머지해서 푸쉬하지마라!!)

로컬 머지 x !! github 에서 합니다

 

 


로컬 push 후

github merge 하기

1. github로 가서 저장소 > full request 풀리퀘스트 or new 풀리퀘스트

2. base : develop  / compare : "내가 작업한 브렌치 명"

 

디벨롭과 뭐가 바뀌었는지, 내가 어떤 커밋을 햇는지가 나온다

 

3. create pull request 를 누릅니다.

 

머지하려는 기능을 간단히 설명을 넣는다. ( 팀 내 규칙대로 하면 좋다 )

ex) login view를 만듦

create pull request 를 최종으로 누른다.

 

files changed 에 내가 올린 것들이 올라갓는지 확인 해보고

 

conversation 가서 

 

 

4. merge pull request 

config merge 눌러서 충돌이 발생하면, 문의 할 것 

성공적으로 되면 merged(보라색)이 뜹니다.

 

이 다음은 정말 중요합니다 !

내가 작업한게 머지가 됬을 때

브랜치에 

automatically delete head branches 이 기능 때매

머지한 브랜치가 자동 삭제가 되니 브랜치 확인해봅니다.

 

리모트에서 머지 했으니

로컬 디벨롭과 지금 디벨롭이 다릅니다.

 

5. git checkout develop  + git pull 

로컬 디벨롭과 리모트 디벨롭이 같아 집니다.

그 다음 다시 브랜치를 만들면 됩니다.

 

 

요약

repo > code 탭 > remote에 본인 브랜치가 잘 생성됬는지 확인하고

pullrequests 탭 이동 > New pull request 클릭

base : develop / compare : "feater 브랜치" 

화면 pr 화면의 merge 버튼 클릭 > 머지 시킴

------------------------------------------------------------------------머지까지 한 상황

또 새로운 기능 개발

1. git checkout develop 꼮!!!!

2. git pull 꼮!!!!

3. git checkout -b "new branch명"

4. 위 작업 반복

 

 

선생님 글

더보기

1. merge 로컬에서 절대절대 하지말 것
초기 세팅
2. repo 생성 (팀 당 1명)
- git clone ~~~
- cd ~~~~
- git checkout -b develop
- git push origin develop
- github > setttings > branches > default branch를 develop으로 변경
- github > setttings > general > Automatically delete head branches 체크
3. collaborators 추가
4. git clone ~~~
5. cd ~~~~
6. git checkout develop
7. git pull
8. git checkout -b "feature이름" ex) git checkout -b soyeon_login
9. 열심히 개발 """"" 하나의 브랜치를 하루를 넘기지 말것 """""
10. git add commit
11. git push origin "feature이름"
12. repo > code 탭 > remote에 본인 브랜치가 잘 생성됐는지 확인하고
13 . pull requests 탭으로 이동 > new pull request
14. base : develop / compare : 여러분이 만든 브랜치
15. pr 화면의 merge 버튼 클릭
------------------------------------------------
또 새로운 기능 개발
1. git checkout develop 꼭....
2. git pull 꼭....
3. git checkout -b newbranch 명
4. 위 작업 반복



epo 만드신 분은
1. repo > settings > branches 에서 "Add branch protection rule" 클릭!
2. Branch name pattern 에 develop 이라고 작성
3. Require a pull request before merging 체크!!!! ( 첫번째 사진 참고 )
4. 제일 아래에 create 버튼 클릭
-----------------------------------------
5. repo > settings > branches 로 다시 이동 후 Add rule 버튼 클릭
6. main 브랜치에 대해서도 브랜치 보호 설정! (2~4번 반복)
7. 최종적으로 settings > branches 에 두번째 사진처럼 보여야 함!

 

 

 

 

규칙 정하기 

충돌이 발생하지 않을 규칙

다른사람의 작업과 머지를 해야하는 상황

 

team 프로젝트에서 

1.머지 merge 로컬에서 절대ㅐㅐㅐㅐㅐㅐㅐㅐㅐㅐ하지 말 것

본인 git, vscode에서 xxxxxx

 

2. main 브랜치 x!