팀원 입장에서 GitHub로 협업하기
팀원 입장에서 최초 깃허브 초대받은 리포지토리에 연결하기
// 전부 내려받음. 원격 저장소의 주소는 .git으로 끝나는 것. 뒤에 한칸 띄고 .은 상위 폴더를 만들지 않는 것.
git clone <원격저장소주소> .
// 전체 브랜치를 보여줌(확인 차)
git branch -a
// 내 작업 브랜치를 하나 만들고 이동함
git switch <브랜치명>
작업하기 전
// 깃허브에서 누가 push한 것이 있는지 확인한다
// 또는 습관적으로 메인 브랜치를 pull 해서 최신 버전으로 만들고 시작한다. 내 꺼 다 만들고 pull 해도 되지만 병합 충돌하기 까다로울 수 있다.
// origin은 보통 저렇게 설정하고, 아닌 경우도 있음.
git pull origin <메인브랜치명>
작업 완료 시
// 현재 위치 중인 브랜치 확인
git branch
// 만약 엉뚱한 곳에 있다면 내 브랜치로 이동
git switch <내브랜치명>
// 변경사항 있는 파일 모두 스테이징 에어리어로 이동시킴
git add .
// 스테이징 에어리어로 이동한 파일들 커밋함 (버전 기록함)
git commit -m "커밋메시지"
// 내 작업 브랜치에 push함
git push origin <내브랜치명>
// 이후에 dev로는 github에서 내 브랜치로 이동해서 code 드랍다운 아이콘을 눌러 pull request 요청하는 게 가장 깔끔함
// base : 합쳐질 곳, compare : 내 꺼
// merge 옵션으로 3 개가 있는데 create a merge commit은 내 브랜치의 커밋 메시지도 같이 넘어가고, 아래 두 개는 (squash, rebase...) 내 브랜치 커밋메시지는 안 넘어감.
// 터미널에서 merge 하기
// 현재 내 브랜치에서 합칠 브랜치로 이동
git switch <합칠 브랜치명>
git merge <내브랜치명>
// 이후 충돌발생 시 충돌 해결. 병합 확인기에서 좌측이 팀원 내용, 우측이 내 것, 하단이 최종 완료된 모습.
작업 중 복구가 필요할 때
// 가장 최근 커밋 이후의 작업 내용을 취소하고자 할 때
// 한 칸 띄고 .은 모든 파일을 복구하는 것. ctrl + z를 안 먹힐 때까지 누르는 것과 같은 효과임.
git restore .
git restore <파일명.확장자>
// 커밋을 직접 지정해서 복구시키기
git restore --source <커밋아이디> <파일명.확장자>
// 특정 파일 git add 취소하기
// git status로 상태 확인할 때 추천명령어로 나옴. 외울 필요 없고 그거 보고 하면 됨.
git restore --staged <파일명.확장자>
// 방금 전에 커밋한 내역 삭제하기
git revert HEAD
// 이 외 revert, reset 등의 명령어가 있지만 협업에서는 권장되지 않기 때문에 사용 지양
'Programing > Git' 카테고리의 다른 글
로컬에서 브랜치 생성, 삭제하기 (0) | 2024.06.17 |
---|---|
Mac에서 push 할 때 생성되는 .DS_Store 앞으로 계속 업로드 제외시키기 (0) | 2024.05.17 |
[코딩애플] Git 강좌 정리 (비공개) (0) | 2024.05.04 |
GIt과 GitHub 사용 총정리 (0) | 2024.04.25 |
메인 브랜치를 내 브랜치와 동기화 시키기 (rebase) (0) | 2024.04.18 |
댓글