깃 명령어를 사용하는 방법은 여러가지가 있다. 명령프롬프트(CMD)
, 통합 개발 환경(VScode, eclipse 등)
에 내장되어 있는 터미널을 사용하거나, Git을 설치할 때 딸려오는 Git Bash(CLI)
나 Git GUI
를 사용하는 방법도 있다. 하지만 명령어는 같으니 아무거나 사용해도 된다. 나는 window환경을 쓰기 때문에 Git Bash를 사용한다.
Git
을 사용하기 전 repository
라는 용어를 잘 알고 있어야 한다. Git repository는 Git으로 관리하는 프로젝트의 저장소이다.
Git repository에는 크게 두 가지 종류가 있다.
Local repository - 본인의 컴퓨터에 저장된 로컬 버전의 프로젝트 저장소
Remote repository - 로컬 repository 와는 반대로 내 컴퓨터가 아닌 외부 (일반적으로 원격 서버) 버전의 프로젝트 저장소. 팀에서 작업 할 때 특히 유용하다. 이 곳에서 프로젝트 코드를 공유할 수 있고, 다른 사람의 코드를 확인할 수도 있다. 또, 로컬 버전의 프로젝트와 병합하고, 변경 사항을 적용 할 수 있는 곳이다.
우선 바탕화면에 test라는 폴더를 만들고 그안에 test.html파일을 만들었다. cd명령어로 자신이 만든 폴더의 위치로 이동하면 된다. 그리고 git init를 치면 Git을 사용할 수 있다. git init
는 이 폴더를 git저장소
로 쓰겠다는 뜻이다.
git status
는 파일들의 현재 상태들을 알려준다. Initial commit
이라고 나와있는데 아직 commit를 하지않았기 때문에 저렇게 나오는 것이다.
그리고 commit을 해야만 Git에 파일이 저장된다. Git이 관리해야하는 파일로 인식을 하게 해주는 것이다.
Untracked files:~~~으로 되어있는 부분은 저 파일은 commit되지 않는다는 뜻이다. commit대상으로 포함시키려면 git add [파일 이름]
을 해야한다.
test.html파일을 commit대상으로 포함시키기 위해 git add test.html
을 해주고 git status를 했다.
하지만 파일이 수백 개라면 하나하나 add를 하기 힘들다. 그래서 git add .
을 사용하면 한 번에 Untracked 파일들을 저장할 수 있다.
만약 add된 파일들을 다시 Untracked상태로 되돌릴 때는 git rm [파일명]
을 하면 된다.
commit대기 중인 파일들을 commit 시키려고한다. 명령어는 git commit -m "설명"
을 하면 된다. 나는 테스트를 하기위해 테스트라고 적었지만 실제로 사용할 때는 작업한 내용을 간단명료하게 적어야 한다. 회사마다 정해져있는 컨벤션이 있다고 하니 참고하면 좋을 것 같다.
나의 환경에서는 로그인이 되어 있었기 때문에 에러가 뜨지않았다. 만약 에러가 난다면 아래의 명령어를 쳐서 자신의 정보를 저장한 후에 commit한다.
git config --global user.email "자신의 이메일"
git config --global user.name "자신의 이름"
이제 이 첫 commit을 기준으로 자유롭게 코드를 수정하고 추가, 제거할 수 있다. 문제가 생긴다면 commit을 했던 시기로 되돌아 오면 되기 때문이다.
그리고 add와 commit를 동시에 하려면 아래의 명령어를 사용한다.
git commit -am "설명"
git log
는 commit된 내역을 볼 수 있다. git log를 치면 다른 명령어를 칠 수 없기 때문에 q를 눌러 빠져나와야한다.