순간을 기록으로

[코드스테이츠] 백엔드 부트캠프 7일차 본문

코드스테이츠 백엔드 부트캠프

[코드스테이츠] 백엔드 부트캠프 7일차

luminous13 2022. 5. 3. 23:10

[회고]

오늘은 git을 배웠다. git이란 버전 관리시스템 중 가장 유명한 프로그램이다. 버전 관리시스템이란 파일의 버전을 관리해주는 프로그램이다. 이것을 안 쓰면 파일이 수정될 때마다 아래 짓을 해야 한다..(돔황챠~~)

 

버전관리시스템을 모르는 사람의 폴더

이렇게 부트캠프 초기에 git을 배우는 이유는 버전 관리도 있지만 다른 사람들과 코드로 협업할 때 유용하게 쓸 수도 있기 때문이다. github라는  원격 저장소에 서로의 파일을 올려놓고 협업을 할 수 있다. 깃과 깃허브는 협업의 기초가 되는 부분이다. 반드시 이해하고 넘어가자. 

 


[Git 설치 후 환경설정하기]

git config --global user.name "Choongseop Kim"
git config --global user.email "kchs94@gmail.com"
  • --global 옵션을 주면 git 모든 프로젝트에 적용되므로 한 번만 설정하면 계속 사용할 수 있다.
  • 만약 프로젝트마다 다른 이름과 다른 이메일을 사용하고 싶으면 --global 옵션을 빼면 된다.
git config --global core.editor nano
  • git에서 커밋메세지를 작성할 때, 텍스트 에디터가 열리는 상황이 있다. 이때 열리는 텍스트 에디터를 설정할 수 있는 명령어다. 나는 nano 에디터로 설정했다.

 

[혼자 작업할 때]

1. 다른 원격(remote) 저장소를 fork해서 내 원격 저장소로 가져옵니다.

2.내 원격 저장소를 로컬로 가져옵니다.

 

git clone [내 원격 저장소 url]

 

3. 예를 들어. untracked file 상태(=unstaged, work space)에 있는 AAA.txt를 git이 관리하는 상태로 만들기 위해 add 명령어를 사용합니다.

 

git add [파일명]
  • 이렇게 하면 AAA.txt는 staging area(staged)에 있는 상태입니다.
  • AAA.txt는 git이 트래킹(tracking)하는 상태입니다.
  • 만약 add한 뒤, 수정하면 파일은 Staging Area에서 Staged한 상태였다가 Unstaged Area의 Modified 상태가 됩니다. 따라서, 다시 git add를 입력하여 Stated한 상태로 만들어야 합니다.
  • 상태 종류
    • Unmodified: 기존에 커밋했던 파일을 수정하지 않은 상태
    • Modified: 기존에 커밋했던 파일을 수정한 상태
    • Staged: commit이 가능한 상태

4. 변경사항을 저장하기 위해 commit 명령어를  사용합니다.

 

git commit -m '커밋 메세지'

 

(5.) 만든 커밋을 취소하려면 reset Head^ 명령어를 사용하면 최신 커밋을 기준으로 커밋을 취소할 수 있습니다.

 

git reset HEAD^3
git reset HEAD~3
git reset HEAD^^^
  • 최신 커밋부터 3개의 커밋을 취소합니다.
  • HEAD는 최신 커밋을 가리킵니다.(참조합니다)

 

6.내 로컬 저장소에 있는 커밋 기록들을 내 원격 저장소에 반영하고 싶으면 push를 사용하면 됩니다.

 

git push origin main
  • origin: 내 원격 저장소 별명
  • main: origin 안의 이름이 main인 브랜치

(7.) 커밋 기록을 보고 싶으면 git log를 입력합니다.

 

git log

 

8.내 원격 저장소로 push한 변경사항들을 fork했던 프로젝트에 반영하려면 PR(Pull Request)을 합니다.

 


Reference

Comments