🔥 git init
353자
3분
Git 프로젝트를 시작할 때 가장 먼저 해야 할 일은 바로 git init
명령어를 실행하는 것이에요. 이 명령어는 현재 디렉토리를 Git 저장소로 초기화한답니다. 그럼 예제 코드와 함께 자세히 알아볼까요?
$ mkdir my-project $ cd my-project $ git init Initialized empty Git repository in /Users/codingmax/github/my-project/.git/
shell
위 코드에서 볼 수 있듯이, 먼저 mkdir
명령어로 새로운 디렉토리를 생성하고 cd
로 해당 디렉토리로 이동했어요. 그리고 git init
을 실행하면 .git
이라는 숨김 디렉토리가 생성되면서 Git 저장소가 초기화됩니다.
$ ls -la total 0 drwxr-xr-x 3 codingmax staff 96 3 29 17:20 . drwxr-xr-x 10 codingmax staff 320 3 29 17:20 .. drwxr-xr-x 9 codingmax staff 288 3 29 17:20 .git
text
.git
디렉토리에는 Git이 프로젝트를 관리하는 데 필요한 모든 정보가 담겨 있어요. 예를 들면 커밋 히스토리, 브랜치, 설정 등이 있죠.
$ cd .git $ ls -al total 24 drwxr-xr-x 9 codingmax staff 288 3 29 17:20 . drwxr-xr-x 3 codingmax staff 96 3 29 17:20 .. -rw-r--r-- 1 codingmax staff 21 3 29 17:20 HEAD -rw-r--r-- 1 codingmax staff 137 3 29 17:20 config -rw-r--r-- 1 codingmax staff 73 3 29 17:20 description drwxr-xr-x 15 codingmax staff 480 3 29 17:20 hooks drwxr-xr-x 3 codingmax staff 96 3 29 17:20 info drwxr-xr-x 4 codingmax staff 128 3 29 17:20 objects drwxr-xr-x 4 codingmax staff 128 3 29 17:20 refs codingmax@tv .git % tree . ├── HEAD ├── config ├── description ├── hooks │ ├── applypatch-msg.sample │ ├── commit-msg.sample │ ├── fsmonitor-watchman.sample │ ├── post-update.sample │ ├── pre-applypatch.sample │ ├── pre-commit.sample │ ├── pre-merge-commit.sample │ ├── pre-push.sample │ ├── pre-rebase.sample │ ├── pre-receive.sample │ ├── prepare-commit-msg.sample │ ├── push-to-checkout.sample │ └── update.sample ├── info │ └── exclude ├── objects │ ├── info │ └── pack └── refs ├── heads └── tags 9 directories, 17 files
text
이 디렉토리를 삭제하면 커밋 히스토리, 브랜치, 설정 등이 삭제되기 때문에 주의해야 합니다. 만약 .git
폴더를 삭제한 후에 다시 git 을 사용하려면 git init
을 실행해서 설정을 처음부터 다시 시작해야 합니다.
한편, 이미 존재하는 프로젝트를 Git 저장소로 만들고 싶다면 해당 프로젝트 루트 디렉토리에서 git init
을 실행하면 돼요.
$ cd existing-project $ git init Initialized empty Git repository in /Users/codingmax/github/existing-project/.git/
shell