거의 알고리즘 일기장

git 실무시 자주쓰는 명령어 모음 본문

web

git 실무시 자주쓰는 명령어 모음

건우권 2023. 3. 11. 16:53

요즘에는 vscode, intellij의 git 관련 plugin들이나 source tree같은 도구들이 엄청 좋아져서 command line에서 사용하는 일이 많지는 않을것이다. 하지만, 개인적으로는 user interface기반은 너무 자주 위치가 바뀌어 간단한 기능들은 명령어를 알고있으면 일이 편해지므로 아는게 좋다. 

 

이번글에는 내가 일하면서 개인적으로 자주쓰는 command line에서 사용하면 좋을 명령어 모음들을 준비해보았다.


1. git add 

//변경사항 전부 add
git add .

//특정 파일만 add
git add src/intro/index.ts

2. git commit

//변경사항을 새로운 커밋으로 만들기
git commit

//지금 현재 커밋 덮어쓰기
git commit --amend

이 명령어에서 내가 제일 많이 쓰는 옵션은 --amend 이다.

 

간단하게 설명하면, 현재 커밋 덮어쓰기 기능인데 이런 시나리오일때 많이쓴다.

commit은 어떤 기능의 단위로 주로 하는데 다 만들진 않아 애매할때가 있다 (퇴근할때).

이때, 해당 지점까지 임시 커밋만 만들어두고 나중에 그 기능이 완성되면 덮어쓰고 push 한다.

3. git push

//origin 으로 push (연결된 git 서버에)
git push 

//강제 push
git push -f

이 명령어에서 가장 유용한 옵션은 -f or --force이다.

 

당연히 origin (git server)의 사항을 덮어쓰는것이기때문에, 협업시에는 써서는 안되고 그냥 혼자 작업하는 프로젝트에서나 써야한다.

하지만, 혼자쓰는 프로젝트에서는 유용하다.

4. git stash

//stash에 저장 (local에 해당사항을 저장해놓는 형식이다)
git stash

//stash한 항목 불러오기
git stash pop

이 명령어를 이용할때의 시나리오는

 

협업을 하고있을때, 같은 브랜치에 최신사항이 올라왔을때, 내가 작업중인게 있다면,

git stash -> git pull -> git stash pop 이런식으로 쓴다. (근데 git flow, github flow 같은 branch 전략대로만 했다면, 이럴일이 많이는 없다.)

5. git rm

//만약에 .idea의 트래킹을 끊고 싶다면
git rm -r --cached .idea

이 명령어를 이용할때의 시나리오는

 

예시를 들면 git에 .idea 파일이 올라갔다. 근데 이걸 지우고 싶어서 .gitignore에 .idea를 추가해도 tracking이 끊기지 않을때, 저 명령어를 써주면 지워진다.

6. git checkout

//main branch로 이동 (main branch가 있을경우)
git checkout main

//develop branch로 생성 및 이동 (이때 현재 branch기준으로 develop branch가 생성된다)
git checkout -b develop

그 외에도 엄청 많은 명령어들이 있지만, 조금 복잡한 동작의 명령어들은 그냥 user interface 기반의 툴을 이용하는편이 편하다.

(나는 gitui라는 도구와 jetbrain안에 내장된 plugin들을 이용한다.)

반응형
Comments