-
학원 day66. github기록 2022. 12. 7. 16:07
깃에서 메인이라는 기본브랜치를 갖고 있음을 확인할 수 있다.
완전히 분리된 작업공간을 브랜치라고 한다.
원격저장소에 main이라는 브랜치가 있다.
개별로 메인이라는 가지를 갖고 있고, 메인이라는 가지에 소스코드를 올린다.
원격저장소 메인에 소스코드를 올린다. 그런데 개별로 수정한 소스코드를 올렸는데 같은 곳을 다르게 수정하면 충돌이 발생한다.
관리자 작업을 할거면 dev-admin-1207 이라는 브랜치를 만든다.
브랜치를 만들 때 메인에 있는 걸 복사해서 만든다.
그리고 위에 병합시킨다. (34분)
그리고 다시 내려받는다. notice하고 admin 개발한게 들어있을 것이다.
또 개발하고 올리고 병합하고 다시 내려받는다.
메인이라는 브랜치를 안 깨뜨리려고 하는 것이다.
브랜치를 따는 것이다.
내가 개별로 브랜치를 만들어도 원격저장소에서 가져온 빨간 브랜치는 망가지지 않는다.
머지로 각자 개발한 것을 합친다.
그리고 원격저장소의 메인을 내려받으면 병합된 게 내려받아진다.
진행되면 될수록 메인에 여러사람의 코드가 합쳐지는 것이다.
매일 한번 올려도 상관없고 내가 구현하려는 기능이 완료되면 올려도 된다. 3일에 1번도 ok.
1. main 브랜치에서 시작한다.
2. main 브랜치에서 원격저장소의 최신 내용을 내려받는다.
3. 새 브랜치를 생성한다. (작업의 시작)
* 내가 새로운 브랜치를 딸 때에만 원격저장소의 main 브랜치를 내려받으면 된다.
4. 새 브랜치에서 코딩을 시작한다.
5. 코딩이 완료되면 변경된 내용을 로컬저장소에 저장한다.
6. 로컬저장소에 저장된 내용을 원격저장소에 push한다.
7. github에 접속해서 pull request를 작성한다.
8. github에 접속해서 main 브랜치에 머지한다.
9. main 브랜치로 변경한다.
10. main 브랜치에서 원격저장소의 최신 내용을 내려받는다.
11. 새 브랜치를 생성한다.
12. 새 브랜치에서 코딩을 시작한다.
13. 변경된 내용을 로컬 저장소에 commit한다.
14. 로컬저장소에 저장된 내용을 원격저장소에 push한다.
까만색 - 소스트리에서 작업
빨간색 - 이클립스에서 작업
파란색 - github 사이트에서 작업
---------------------------------------------
github를 이용한 협업시 주의사항
---------------------------------------------
1. 절대 main 브렌치 상태에서 개발을 진행하지 않는다.
1. 절대 main 브렌치 상태에서 push를 실행하지 않는다.
2. 새로운 브렌치를 생성하는 시점
- 기존 브렌치에서 개발이 완료되어야한다.
- 기존 브렌치에서 개발한 내용이 로컬 저장소에 저장되어야 한다.(commit)
- 로컬 저장소에 저장된 개발내용이 원격 저장소에 저장되어야 한다.(push)
- github에서 pull request를 작성하고, main 브렌치에 병합을 완료해야 한다.
* 위에서 나열한 4가지 전부 완료되었을 때가 새로운 브렌치를 생성해야할 싯점이다.
* 새로운 브렌치의 생성 싯점은 기존 브렌치에서 개발이 완료되고, 원격저장소에 병합까지 완료된 시점, 즉 새로운 기능의 개발을 시작할 때다.
2. 새로운 브렌치를 생성할 때는 항상 main 브렌치 상태에서 새 브렌치를 생성한다.
2. 새로운 브렌치를 생성하기 전에 반드시 main 브렌치 상태에서 원격 저장소의 최신 변경내용을 내려받는다.(pull)'기록' 카테고리의 다른 글
학원 day68. Map 정복 (0) 2022.12.09 학원 day67. 싱글턴 정복중.... (0) 2022.12.08 학원 day65. Git (0) 2022.12.06 학원 day64. ajax (0) 2022.12.05 학원 day63. HTML DOM(2), AJAX (0) 2022.12.02