본문 바로가기

TIL

[TIL-118] 위코드 17일차: 깃과 깃헙

Git & Github

 

git init : 새 프로젝트 시작하기

개념

내가 새로운 프로젝트를 만들 때는 git init을 사용하여 깃을 시작한다.

 

// 깃을 사용하여 변경 내용을 감지하기 시작함
git init

// 코드를 올릴 깃헙 서버(remote)의 레포지토리 주소를 origin이라는 변수에 저장함
git remote add origin repository_url

// 현재 디렉토리의 전체 파일을 staging 영역에 추가함
git add .

// 지금까지의 변경사항을 깃으로 저장함(커밋)
git commit -m "first commit"


-----여기까지 local-----

// 쌓인 커밋을 main 브랜치에 업로드함(푸시)
git push origin main
  • 작업할 디렉토리에 git init을 하면 .git 파일이 생성되어 깃이 작동하기 시작한다.
  • remote는 원격 공간인 깃헙. origin는 레포지토리의 주소, 즉 깃헙 어디에 올릴지 알려주는 수단. github에서 repository를 만들고 해당 레포지토리로 업로드하겠다고 origin 변수를 저장하여 알려준다. 매번 새로 써주는 게 아니라 처음에 origin이라는 곳에 변수처럼 주소를 저장해두면 된다. 그럼 다음에 알아서 저 주소로 계속 올라간다.
  • 작업 중인 디렉토리와 git 저장소 사이에 커밋할 변경 내용이 대기하는 장소를 staging 영역이라고 한다. git add는 변경된 파일들을 커밋할 수 있게 해준다.
  • -m은 메시지라는 뜻. "first commit"이라는 메시지와 함께 커밋해둔다. 커밋을 하면 그 시점까지의 변경사항들이 저장된다.
  • 커밋 단계까지는 로컬에서 일어난 것이고, 이제 remote로 push한다. push할 때 origin으로 보내고 있는데, 그 안에서도 모든 코드가 취합되는 master/main으로 보내고 있다. 실전에서는 작업마다 가지를 쳐서 나중에 main에 병합한다. 

 

참고

https://www.daleseo.com/git-add/

 

 

 

git clone : 클론으로 시작하기

개념

다른 사람이 만들어서 이미 존재하는 프로젝트를 내 로컬에 복제하는 과정이다. git clone 키워드를 사용한다. 새로운 branch를 만들어 클론한 파일들을 가지고 작업한 뒤, commit하고 해당 브랜치에 push한다. 브랜치로 올라간 코드를 main으로 merge하고 싶으면, 권한자에게 pull request(PR)을 보낸다.

 

// url의 레포지토리를 내 로컬에 복제함
git clone repository_url

// 기능에 따라 작업할 브랜치를 만듦
git branch feature/login

// 새로 만든 브랜치로 이동함
git checkout feature/login

// 현재 디렉토리의 모든 파일을 staging 영역에 올림
git add .

// 변경된 내용들이 staging 영역에 올라갔는지, commit 되었는지 확인함
git status

// 변경된 내용이 드러나는 메시지와 함께 커밋함
git commit -m "Add : login page"

-----여기까지 local------

// 쌓인 커밋들을 해당 브랜치로 올림
git push origin feature/login

// 커밋한 내역을 확인함
git log