$ git clone <Repo URL>
$ git remote add pair <Repo URL for pairs fork>
$ git remote -v
$ git add <change file>
$ git commit -m 'change'
$ git push origin master(or other branch name)
이제 드라이버와 네비게이터 역할을 바꾼다.
$ git pull pair master (or other branch name)
$ git add <change file>
$ git commit -m 'change TOO'
$ git push origin master (or other branch name)
$ git pull pair master (or other branch name)
1 ~ 9를 반복한다.
주의 !! ➡️ push는 자신의 레포지토리에, pull은 페어의 레포지토리에서 해야 한다.
✔️ 프리코스 TIL (git 관련)
https://velog.io/@wpdbs4419/TIL.-Day8Command-Line-InterfaceCLIGit
💥 페어와 내가 동일한 라인을 수정한 경우 충돌 발생
git add .
➡️ git commit
Merge branch ‘master’ of <url주소>
라는 commit 메시지가 기록된다.case 1 (conflict 발생 ⭕️ )
git add
, git commit
, git push origin master
git add
, git commit
, git push origin master
(페어 꺼)case 2 (conflict 발생 ❌ )
git add
, git commit
하지 않은 채로 git push origin master
git pull pair master
➡️ Auto-merge 됨case 3 (conflict 발생 ⭕️ )
git add
, git commit
까지 한다 (push는 ㄴㄴ) git pull pair master
를 하면 내용이 다른 부분에서 충돌이 발생한다.git push origin master
를 하면 merge 완료git push pair master
를 쓸 수 있나❓
➡️ 페어가 깃에서 사용자에게 access 권한을 주면 가능
branch에 어떤 작업을 해도 원본에는 아무 영향 ❌
여러개의 branch ➡️ 각각의 branch는 서로 영향 ❌
하나의 원본을 베이스로 하여 여러개의 branch를 만들어서 각자 자신이 맡은 기능을 만들 수 있음
새로운 기능을 개발할 때 / 원본에 영향을 주지 않고 다양한 시도를 하고 싶을 때
나중에 합치는 작업 필요 (master 계정으로 git merge dev
)
git checkout
$ git checkout <브랜치 이름>
을 통해 현재 작업공간(브랜치)을 옮길 수 있음 $ git checkout -b 기능1
$ git checkout 원본
$ git checkout -b 기능2
$ git checkout -b function1
을 하면 내 로컬에 function1 가지가 만들어진 것git push origin function1
를 해줘야 origin master에 function1 가지가 만들어짐