[Git] Github 사용하기

SexyWoong·2024년 9월 26일

원격 저장소와 연결하기

  1. 로컬에서 작업하던 폴더에 git init 명령어를 실행시켜준다면 .git폴더가 생성되고 해당 폴더는 git에 의해 관리되어진다.

  2. gitHub에 레포지토리를 하나 만들어준다.

  3. 다음 명령어들을 실행시켜 로컬 저장소와 원격 저장소를 연결시켜준다.

git remote add origin (원격 저장소 주소) - 로컬의 Git 저장소에 원격 저장소로의 연결 추가
git branch -M main - 기본 브랜치명을 main으로 변경
git push -u origin main - 로컬 저장소의 main브랜치 커밋 내역들을 원격 저장소 main 브랜치로 push (한 로컬 저장소의 원격 저장소를 여러개로 지정할 수 있음. 예를 들어 gitHub에 하나, bit bucket (예. origin2)에 하나 등)

push와 pull

git push: 로컬 저장소의 커밋 내역을 원격 저장소로 보내기. (git push -u origin main)으로 대상 원격 브랜치가 저장되었기 때문에 가능

git pull: 다른 팀원이 push 등을 통해 나의 로컬 저장소에는 없는 변경 내역들을 원격 저장소에 반영했을때, 해당 변경 내역을 나의 로컬 저장소로 가져오는 기능

원격 저장소의 변경 내역을 pull하지 않고, push하려고 하는 경우, 에러가 발생

pull의 옵션

  1. git pull --no-rebase

충돌이 발생한다면?
충돌 해결 후 git add . -> git commit을 순서대로 해주면 된다.

  1. git pull --rebase

    충돌이 발생한다면?
    충돌 해결 후 git add. -> git rebase --continue
    만약 충돌 시 원격의 내용을 선택한다면?
    최종 결과는 로컬의 커밋은 없어도 되기때문에 로컬의 커밋 내역이 사라짐.

원격 브랜치

로컬에서 생성한 브랜치를 원격에 push하는 경우

로컬에서 브랜치를 생성 후 git push를 해준다면 에러가 발생. 왜일까? 로컬에서 새로 생성된 브랜치를 원격 어디에 push를 해주어야하는지 잘 모르기 때문이다.

이 경우에는 만약 로컬에 생성한 브랜치명이 'from-local'이라면 git push -u origin from-local이라는 명령어를 입력하면 된다.

원격에서 생성된 브랜치를 로컬로 가져오는 경우

원격에 생성된 브랜치명은 'from-remote'라 가정

git fetch를 한 후, git branch -a를 입력하면 origin/from-remote 브랜치도 볼 수 있다.
다음, git switch -t origin/from-remote를 입력하면 원격 브랜치를 로컬로 가져올 수 있다.

로컬 브랜치 삭제: git branch -d (브랜치명)
원격 브랜치 삭제: git push origin --delete (브랜치명)

profile
함께 있고 싶은 사람, 함께 일하고 싶은 개발자

0개의 댓글