Git 명령어 익히기
✏️ git 명령어
여기서는 상세한 설명보다는 어떤 명령어가 있는지와 간단한 설명만 하겠다.
$ git init
: 현재 디렉토리를 git 레포지토리로 만들고, git이 디렉토리 내의 파일의 변경을 추적하게 함- (untracked 상태 -> staged 상태)
$ git status
: git 레포지토리의 상태를 출력한다.- 디렉토리 내의 파일들이 untracked, modified, staged, committed 상태인지 알아봄
-s
옵션으로 간단하게 출력 가능
$ git add [FILE]
: [FILE]을 스테이징한다.$ git add .
을 보통 많이 쓴다.- 파일명 입력 없이 모든 파일을 스테이징한다.
$ git commmit
: 스테이징된 파일들을 하나의 버전으로 만들고, git 데이터베이스에 저장$ git commit -m [message]
: 커밋 메세지를 입력하면서 commit
$ git log
: commit 기록 보기- q로 나갈 수 있다.
$ git log -p
: 변경 사항도 출력하며 commit 기록을 보여줌
$ git push [리모트 저장소의 별칭] [리모트 브랜치]
: 별칭의 브랜치에게 변경사항을 전송한다.-u
옵션: 최초에만 별칭과 브랜치를 써주고, 그 후에 push는$ git push
만 적어줘도 됨(별칭, 브랜치 생략 가능)-f
옵션: 별칭의 브랜치에게 변경사항을 강제로 전송한다(덮어쓰기).
$ git remote
: 현재 프로젝트에 등록된 리모트 저장소를 확인할 수 있다.-v
옵션: 별칭과 URL을 볼 수 있다.
$ git remote add [리모트 저장소의 별칭] [리모트 저장소 URL]
: 기존에 있던 원격 저장소를 복제한 것이 아닐 때, 원격 서버의 주소를 git에게 알려주어 새 리모트 저장소를 추가$ git remote rm [리모트 저장소의 별칭]
: 별칭의 원격 레포지토리 삭제$ git remote rename [기존 별칭] [새 별칭]
: 기존 별칭을 새 별칭으로 수정 할 수 있다.$ git remote set-url [리모트 저장소의 별칭] [변경할 URL]
: 별칭의 URL을 바꿈.$ git clone [URL] [NAME]
: URL의 원격 레포지토리를 NAME 디렉토리에 복제한다.$ git clone [URL]
: 단순히 URL만 적어주면, 레포지토리 name으로 폴더를 하나 생성하여 생성된 폴더에 원격 레포지토리를 복제한다.
$ git fetch [리모트 저장소의 별칭] [리모트 브랜치]
: 별칭에 해당되는 저장소에서 파일을 다운받아 동기화시킴. merge는 일어나지 않는다.$ git pull [리모트 저장소의 별칭] [리모트 브랜치]
: git fetch 명령어 실행 후, merge까지함.$ git branch
: branch에 대한 명령-v
옵션: Local branch의 정보를 마지막 commit 내역과 함께 보여줌.-r
옵션: 리모트 저장소의 branch 정보를 보여줌.-a
: 로컬/리모트 저장소의 모든 branch 정보를 보여줌.
$ git branch [NAME]
: 새로운 branch 생성.$ git branch -d [NAME]
: 병합이 완료된 branch 삭제$ git branch -D [NAME]
: 병합이 완료되지 않은 branch 삭제$ git checkout [NAME]
: branch 이주.$ git checkout -b [NAME]
: branch 생성과 동시에 이주.$ git merge [NAME]
: branch를 현재의 branch와 병합.$ git pull [별칭] [브랜치] --allow-unrelated-histories
: 병합할 때, 기본적으로 거부하는 것을 허용하게 해줌.- fatal: refusing to merge unrelated histories 에러관련을 해결할 수 있다.
$ git reset [돌아갈 commit]
: 커밋 목록으로 돌아감.- 참고로 돌아갈 커밋은 github에서 볼 수 있다.
$ git revert [commit 목록]
: 커밋 목록으로 돌아감.- reset과 차이는 추후에 게시하겠음.
Leave a comment