[Git]

Git 설치와 버전 생성

Hevton 2020. 9. 8. 23:49
반응형

Git은 버전관리, 백업, 협업에 아주 특화된 기능을 제공합니다. Git의 기능을 제공하는 프로그램들이 많은데, 그 중 Git의 오리지널이라고 할 수 있는 CLI 기반의 Git을 설치해보도록 하겠습니다.

 

아래 링크로 가셔서 git 프로그램을 다운로드해주세요.

git-scm.com

 

Git

 

git-scm.com

 

다운로드를 완료하신 뒤 터미널로 가셔서 git을 쳐보시고, 아래와 같이 git에 대한 설명들이 나온다면, 설치가 잘 완료된 것입니다.

usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
           <command> [<args>]

.
.
.

그리고 이제 버전관리를 할 디렉터리로 이동하셔서, git에게 '앞으로 이 디렉터리에서 작업할게, 너가 관리해줘' 라고 말해줍니다.

그러면 git은 해당 디렉터리에 .git으로 된 파일을 만들어서 이곳에 프로젝트들의 대한 버전같은 정보들을 저장합니다.

git init .

 

간단하게 텍스트 파일 하나정도를 만들어서 저장소(Repository)에 이동하기 전에, git의 흐름에 대한 설명을 나열하겠습니다.

 

Working Tree

- 파일을 만들고, 수정하는 단계 ( 버전으로 만들어지기 전 단계 )

 

Staging Area

- Working Tree 단계 이후에, 버전을 만들 파일들만 모아 놓은 곳. 버전을 만들게 되면 이 곳에 있는 파일들만 버전화가 됌.

 

Repository

- 버전이 저장되는 곳

 

이제 간단하게 텍스트파일을 만들어 버전으로 저장소에 저장시키겠습니다. 텍스트 파일 하나를 만들고, 대충 글을 넣은 다음에 저장을 한 뒤에 아래 명령을 쳐줍니다.

git status

해당 명령어는 현재 작업하고 있는 Working Tree의 상태를 물어보는 명령어입니다. 현재 텍스트파일 하나를 생성한 뒤에 이 명령어를 치게 되면 제가 생성한 파일이 목록으로 나올 것입니다.

p.s 참고로 이 때 UnTracked Files 라고 설명을 해줄 텐데, 이 파일이 추적 즉 트랙킹이 되지 않는 상태임을 알려줍니다. 파일을 한번이라도 Staging Area에 올려놓아서 버전관리를 할 의향을 보여주기 전 까지는 트랙킹이 되지 않고 그냥 무시해 버립니다. Staging Area에 올려놓은 적이 없으니까, 즉 버전관리를 한 적이 없으니까 당연히 트랙킹이 되지 않는 상태입니다. ( 한번이라도 Staging Area 에 올려 놓고 다시 파일을 수정해 보시면 git status를 쳤을 때 modified라며 트랙킹이 되게 됩니다.)

 

그리고 이 파일을 버전으로 만들려면 아래 명령어를 이용해 Staging Area로 올려놓습니다.

(폴더 안에 있는 모든 파일을 올리려면 git add 폴더명, 또는 현재 디렉토리의 모든 파일일 경우 git add .을 이용할 수도 있습니다.)

git add 파일명.확장자

그리고 다시 git status라고 치면, 해당 파일이 커밋 되었다는 설명이 나옵니다. Staging Area로 잘 올려놓았다는 뜻입니다.

(= 성공적으로 올리게 되면, git status를 입력했을 때, 올려놓은 파일들이 Changes to be committed 상태라고 나올 것입니다)

 

그러면 이제 올려놓은 파일을 버전으로 만들어 저장소에 저장시키는 명령어를 입력해줍시다.

git commit -m "버전이름"

그리고 저장소로 버전이 잘 이동되었는지 아래 명령어를 통해 확인해 줄 수 있습니다.

git log

버전이 잘 이동되었다면, 명령어를 입력했을 때 아까 입력한 버전에 대한 정보가 간단히 출력될 것입니다.

자세한 정보를 출력하길 원하신다면 git log --stat 을 입력하시면 됩니다. 해당 명령어는 버전에 무슨 파일들이 있고, 이전 버전과 비교했을때 데이터가 얼마나 변경되었는지 정도를 보여줍니다.

이보다 더 자세한 출력을 원하신다면 git log -p 를 입력하시면 되는데, 해당 명령어는 버전에 무슨 파일들이 있고, 이전 버전과 비교했을 때 데이터가 얼마나 변경되었는지를 넘어 어떤 것들이 변경되었는지까지 자세히 보여줍니다.

 

명령어를 다시 정리하면

git status - Working Tree의 상태를 보여줌

git add - 파일을 Staging Area로 올려놓음

git commit - 버전 생성

git log - 버전 출력

 

 

해당 공부자료의 모든 출처는 opentutorials.org 의 생활코딩의 중심이신 '이고잉' 님 이십니다. 공부 자료에 도움을 주셔서 감사합니다.

반응형