git&github

[Git] GitHub로 협업하기

kinggoddino 2024. 7. 5.

1)  협력자 (collaborators) 등록 

내가 깃허브 레포지토리에 백업한 파일을 팀원들과 공유하려면 먼저 팀원을 등록해줘야 한다. repository 만든 사람이 해야됨.

 

깃허브 레포지토리  →  Settings  →  Collaborators  →  Add People

 

팀원의 username 혹은 email로 팀원을 추가해준다.

팀원은 깃허브 or 이메일로 알림이 오고 수락해주면 된다.


2)  git clone  <github 주소> .

: 팀장님 코드 복사해오기.

 

팀장님이 나에게 보낸 초대를 수락하면 나도 GitHub에서 해당 레포지토리를 들어갈 수 있다. Code를 복사해준다.

 

작업할 폴더를 만들고 VScode에서 열어준다.

git clone <github 주소> .

명령어를 입력해준다. (맨뒤에 점 빼먹지 말기!!!!!!)

그럼 이렇게 팀장님이 올린 파일들이 복제되어 내 폴더로 들어온다.

만약 점을 빼먹었을 경우 '파일'이 아니라 '폴더'로 가져와지기 때문에

귀찮다.

그리고 cd로 한번 더 들가줘야돼서 실수가 발생할 수 있다.


3)  git push (origin 브랜치명)

: 팀원이 추가 작업 후 github 에 공유하기.

 

팀원이 clone으로 받아온 파일에서 코드를 수정하면 다시 그 파일을 팀원들과 공유해야한다. 방법은 GitHub로 코드 백업하기와 똑같다. 

 

1) 코드 수정

2) git add

3) git commit -m "메시지"

4) git push origin 브랜치명 (그냥 git push만 해도 됨)

 

깃허브 레포지토리로 가보면 수정된 파일이 올라와 있는걸 볼 수 있다!


4)  git pull

: 팀원이 변경한 코드 가져오기.

 

팀장님께 clone으로 파일을 받아온 팀원1, 팀원2는 각자 본인 파트 코드를 작성하여 폴더에 추가한다. 그럼 두 사람은 각각 다음과 같은 파일을 갖고 있음.

팀원1 : 팀장님파일 + 팀원1파일

팀원2 : 팀장님파일 + 팀원2파일

이때 두 사람이 각자 git push 로 깃허브에 파일을 공유하면, 나중에 공유한 사람에게는 먼저 공유한 사람의 파일이 없기 때문에, 먼저 공유한 사람을 덮어쓰기로 지워버리는 불상사가 발생하게 된다...ㅠ

 

그럴줄 알고 못하게 막아놨다.

팀원1이 push를 했는지 모르고 팀원2가 push를 해버리면 에러가 발생한다. 다행

그리고 git pull 하라고 힌트까지 준다.

팀원2는 팀원1이 push한 파일을 pull해서 가져오는 작업을 먼저 해야한다.

 

터미널에 git pull 입력!

 

만약 pull 했는데 다음과 같은 이상한 hint 들이 엄청 나온다면

hint 3개 중 맨위에 있는 # merge 부분 힌트를 따라 적어준다.

 

git config pull.rebase false 입력!

그 후 git pull 다시 해보기

 

만약 다음과 같이 아무것도 입력이 안되는 vim 에디터가 뜬다면

키보드 esc → 키보드 : 키보드 wq → 키보드 enter 로 탈출한다

 

이후에도 충돌발생등 문제가 발생할 수 있다ㅜ

우여곡절 끝에 pull이 성공하면 팀원2의 폴더에는 팀원1의 파일이 추가되었기 때문에 변경사항이 생긴 셈이다. 따라서 변경사항을 add, commit 으로 다시 저장해 준 후 push 하면 드디어 나도 공유 성공이다.

 

1) git pull

2) git add, commit

3) git push origin 브랜치명 (git push만해도됨)

 

 


'git&github' 카테고리의 다른 글

[Git] Pull Request (merge)  (0) 2024.07.05
[Git] 브랜치 활용하기  (0) 2024.07.05
[Git] GitHub로 백업하기  (0) 2024.07.05
[Git] Git 필수 명령어  (1) 2024.07.02
[Git] 리눅스 필수 명령어  (1) 2024.07.02