본문 바로가기
개발/개념정리

[Git/Git명령어] 명령어 정리 2 - 인프런 강의 참고

by 신앉아영 2023. 7. 27.
반응형

git 명령어 정리

인프런 강의 참고 (빠르게 git - 핵심만 골라 배우는 Git/Github)

앞의 글이 생각보다 길어져서 끊고 작성할게요

 

git 명령어 정리1

https://standzero.tistory.com/14


branch : 작업을 단위로 나눈 후 작업을 합친다. 이때 나누는 단위가 브랜치

branch를 사용해야 하는 이유

1. 협업을 하는데 합칠 때 번거로운 점들이 많이 발생

2. 수많은 commit 중 특정 몇개만을 골라서 없애고 싶을 때

1,2 를 직접 일일히 하려면 시간이 많이 걸림

 

명령어

git init을 처음으로 시작하면 자동으로 main 브랜치에 속하게 됨

git branch : 현재 내가 있는 브랜치

** 한번이라도 commit을 해야 git branch를 입력 시 나옴

git branch 브랜치이름 : 새 브랜치 만들기

git checkout 브랜치이름 : 다른 브랜치로 옮겨가기

a브랜치에 b의 브랜치 내용을 합칠 때

1. git checkout a

2. git merge b

중요

git remote : 원격저장소(GitHub)에 조회하기. 내 레퍼지토리와 상호작용 중인 원격저장소 목록 조회.

단축이름이 출력됨

git remote add <단축이름><url> : 기존 워킹디렉토리에 새 원격저장소를 추가

git remote rm <단축이름> : 연결된 원격저장소를 지울 때

git push : github에 올리기

git push -u origin main : 내 레퍼지토리 main 브랜치에 있는걸 origin(단축이름)의 main 브랜치로 넣어라

-u 는 디폴트로 저장하겠다는 의미

git pull : github에서 갖고와서 합치기

git pull origin main : origin 을 내 레퍼지토리의 main 브랜치로 갖고오기(동기화)

지금 내 작업 중인 작업물은 사라짐. 덮어씌우는 개념

git fetch : 만약 내가 작업중인 작업물은 안사라지게 하고싶을때 fetch를 사용

git fetch origin main : 동기화하지는 말고 origin을 내 레퍼지토리의 main 브랜치로 갖고오기

** 바뀐내용을 어디서 확인할 수있나면 내가 main브랜치에 있다면 바뀐 내용은 origin/main 브랜치에서 확인

즉 현재 나는 로컬저장소의 main브랜치이고, 확인은 원격저장소의 main브랜치에서 확인

git clone <url> : github에 있는걸 복사하기

<url>에 있는 원격 저장소 내용을 현재 레퍼지토리로 복사해오기

협업을 할 때 주의해야할 점

1. 내 로컬에는 변화가 있지만 원격에는 변화가 없을 때

내 로컬의 변화한 것을 원격에 push하면 됨

2. 내 로컬에는 변화가 없지만 원격에는 변화가 있을 때

원격의 변화를 pull로 받아오면 됨

3. 내 로컬에도 변화가 있고 원격에도 변화가 있을 때

(1) rebase

(2) pull request

원격저장소에게 내 코드를 받아달라는 요청을 보냄(pull request)

원격저장소에서 승인을 해주게 됨(merge)

pull request하는 방법

(1) 협업하고싶은 계정을 fork하기.

여기서 내 계정을 누르면 계정의 하위에 co-practice가 생성되며 그 곳에 내 계정의 내용들이 복사됨

(2) fork 해온 co-practice에서 clone(복사)를 하기

그럼 상호작용 하고 싶은 레퍼지토리의 내용들이 복사됨

(3) 새 브랜치를 만든 후 그 브랜치에서 내가 하고 싶은 것들을 함

(4) 그 후에 push를 하면 우리가 협업중인 브랜치에 올라가게 됨

(5) 새로 만든 브랜치를 지우기

글의 내용들 중에서 틀린 부분이 있다면 댓글을 남겨주세요!

반응형