[Git] git을 다루는 기본 명령어 정리

모리스·2023년 3월 9일
0

git

목록 보기
2/2
post-thumbnail

여러 개발자가 프로젝트 하나를 개발할 때 코드의 형상관리와 공유를 위해 git을 많이 사용한다.
몇 가지 git 명령어는 외워 뒀지만.. 나도 사람인지라 안쓰게되는 명령어는 자꾸 잊어버린다.. 이번엔 박제..
이번 노트에서는 git에서 기본적인 명령어들을 작성하려한다.


Branch 생성

Local Branch
local에만 브랜치 생성

$ git branch my_branch_1

local branch 생성과 동시에 생성한 브랜치로 checkout

$ git checkout -b my_branch_1

Remote Branch
local branch 생성 후 아래 명령어 입력하면 local에서 만든 branch가 remote에도 생성

$ git push origin my_branch_1

local branch와 remote branch 연동

$ git branch --set-upstream-to origin/my_branch_1

Branch 삭제

Local Branch
현재 checkIn 되어있는 branch에서는 삭제 불가. 다른 branch로 이동 한다.

$ git checkout master
$ git branch --delete my_branch_1

force delete
만약 삭제하려는 브랜치에 변경점이 있거나 commit 이력이 있으면 위의 명령어로 삭제 불가. 그래도 삭제하고 싶다면 -D 옵션을 준다. 대문자 -D 옵션은 --delete --force의 줄임말이다.

$ git branch -D my_branch_1

Remote Branch
원격 브랜치를 삭제한 뒤, 아래의 명령어를 입력한다.

$ git push origin :my_branch_1

다른 방법으로는

$ git push origin -d my_branch_1

Remote Branch

remote branch update
remote repo를 갱신한다.

$ git remote update

branch list 보기

$ git branch -r // remote repo의 branch리스트를 보여준다
$ git branch -l // local reop의 branch 리스트를 보여준다
$ git branch -a // remote, local 모든 repo의 branch 리스트를 보여준다

remote branch checkout
remote repo의 branch를 checkout 한다.

$ git checkout -t origin/my_remote_branch_1

git 상태 확인

git status
repo의 상태를 보여주는 명령어이다. 관리되고 있는 파일과 디렉토리의 목록을 확인할 수 있다.

$ git status

git diff
Tracked 상태인 파일 중 stage에 올라가지 않은 수정된 파일을 모두 찾아 내용을 보여준다.

$ git diff

git diff [특정 파일명]을 입력하면 특정 파일에 대한 diff 정보만 보여준다.

git add / commit / push / pull

add
코드 수정이 완료되면 staging 영역에 파일을 추가하는 명령이다.

$ git add src/screen/my_screen_1

현재 디렉토리에 있는 수정된 파일을 전부 staging 영역으로 올리는 방법은 다음과 같다.

$ git add .

commit
수정된 파일을 add로 staging 영역에 올린다음 원격 저장소에 올리기 전 로컬 db에 저장하고 트랜잭션을 종료 시키는 역할을 수행한다.
commit은 staged영역이 아닌 즉, unStaged영역은 작업이 수행되지 않는다.

$ git commit -m "Add new commit message"

git commit의 명령어만 입력하게되면 vim이 실행 되며, 여러줄의 commit message를 입력할 수 있다.

push
local에서 수정, 업데이트한 파일을 원격 저장소에 적용한다.

$ git push origin my_remote_branch_1

또는, 현재 브랜치가 원격 브랜치와 같다면

$ git push

도 가능하다.

pull
동료 개발자 또는 본인이 작업한 remote브랜치에 있는 내역을 나의 local 브랜치로 업데이트 한다.

$ git pull
profile
모바일 앱 개발 노트 :)

0개의 댓글