Profile picture

[GIT] Git의 기본 사용방법

JaehyoJJAng2022년 02월 27일

GIT

소스코드 버전관리 및 다른 개발자와의 협업을 위한 버전관리 프로그램

Github는 코드저장소이고 git과 github는 같지않음!

git 프로젝트 생성하기

git init

  • 현재 작업 디렉토리를 Git이 관리하는 프로젝트 디렉토리로 설정
  • 해당 디렉토리 안에 .git 디렉토리 생성됨
$ git init

유저의 정보 설정

$ git config user.name "YOUR GITHUB USERNAME"
$ git config user.email "YOUR GITHUB EMAIL"

설정된 유저 정보를 보는 방법은 아래 명령어 사용

$ git config user.name
$ git config user.email

git add

아무파일 생성해보기

$ touch hello.txt

파일을 생성하고 아래 명령어를 쳐보면 git 프로젝트에 어떤 파일이 추가되었는지 확인가능

$ git status
On branch main
Your branch is up to date with 'origin/main'.

Untracked files:
  (use "git add <file>..." to include in what will be committed)
	2022-02-27-hello.txt

git add 사용

이제 깃 프로젝트가 현재 수정사항을 추적할 수 있도록 수정 또는 추가된 파일을 Staging Area 에 추가

Staging Area

working Directory: 내가 작업하고 있는 프로젝트의 디렉토리를 지칭

커밋을 하기 위해 git add 로 추가된 파일들이 대기하는 공간

Repository: 커밋된 파일들이 모여있는 일종의 저장소

특정 파일만 Staging area에 추가하는 경우

$ git add ./hello.txt

현재 디렉토리의 모든 파일들을 Staging area에 추가하는 경우

$ git add .
또는
$ git add ./

git commit

위 과정을 통해 파일을 Staging area 에 추가했으면 그대로 커밋하면 됨

커밋 메시지를 지정해서 커밋하는 방법

$ git commit -m "First Commit Log"

git log

지금까지 커밋한 로그들을 볼 수 있는 명령어

$ git log

로그를 조금 더 이쁘게 보고싶다?

$ git log --pretty=oneline

f1a29d461c480a81d7bcfb29b415a6ae95378646 (HEAD -> main, origin/main) [UPD]: 포스팅 생성
5befd10acba7e26ae1ba0df14437dd82c207513a [UPD]: localStorage 데이터와 데이터 유무에 따른 조건문 추가
0ccf4a104d4b1129de44f7c712857cfda86c249c [UPD]: 함수의 매개변수와 인자 활용한 D-Day Counter 리팩토링
29447d2a07eaa21f54e4eb412b620d65c789a6e7 [UPD]: DevOps 카테고리 링크 수정

git diff

커밋간 변경사항 확인

git diff commitID1 commitID2

깃 프로젝트에 원격 저장소 주소 등록하기

$ git remote add origin https://github.com/yourusername/test.git

URL 이 가르키는 외부 프로젝트를 현재 깃 프로젝트의 원격 저장소로 지정하고 Alias는 origin 으로 지칭

git push

커밋한 파일을 원격 저장소로 push

$ git push -u origin main
  • main: 로컬의 main 브랜치가 원격 저장소의 main 브랜치를 바라보게 하는 명령어
  • -u(--set-upstream): 이 명령어를 사용해서 push를 하면 그 이후에는 git push만 하면 알아서 origin 이라는 원격지의 main 브랜치로 푸시가 된다

Loading script...