본문 바로가기

Git

Git CLI 버전관리

지난시간에는 git을 설치했습니다.

아직 git이 설치되지 않았다면 아래 링크를 통해해당 글을 참고해주세요.

 

git CLI 설치

git CLI로 버전관리 하는 이유와 방법에 대해서 써볼려고 합니다. 개발자 입장에서 CLI로 git을 사용하는 이유에는 1. 자원 효율성 우선 컴퓨터 입장에서 그래픽 기반 입출력 (GUI)을 사용한다는 것은

madeprogame.tistory.com

 

이제부터는 git에게 어떤 특정한 디렉토리를 버전관리를 하고 싶다고 얘기를 해줄겁니다.

우선은 디렉토리를 만들어야 겠죠? 

우선 파일탐색기에 들어가주시고요!

 

 

경로는 다르게 해도 괜찮지만 처음해보신다고 하시면 따라해보시는 걸 추천드립니다.

다음과 같은 경로로 이동해줍니다. (자신의 컴퓨터와 다르다면 폴더들을 만들면서 오시면 됩니다)

이후 git 이라는 디렉토리를 만들어주시면 준비는 끝났습니다.

 

 

이제 Git Bash로 가볼까요?

아래와 같이 명령어를 써주고 현재파일 위치에 따라 이동해서

방금 만든 git 디렉토리까지 가줍시다.

 

현재와 같은 경로명이 나와야하고 git안에서 mkdir을 이용해 새로운 디렉토리를 만들어줍시다.

이런 권한부여가 안됬다고 오류가 뜨게 되면

 

관리자 권한으로 실행해줍시다.

 

관리자 권한으로 다시 들어가서 해보시면 성공적으로 디렉토리가 생성되고 들어가실수 있는 것을 확인할 수 있을거고요.

 

이제부터 git에게 이제부터 프로젝트를 작업할꺼니깐 이 디렉토리를 버전관리 하기 시작해! 라고 얘기해보겠습니다.

git init .

 

성공적으로 초기화가 완료가 되었고요 .

ls -al

 

숨겨진 파일목록까지 확인을 해보시면 git파일이 들어와 있는 것을 확인하실 수 있습니다.

 

실제로 파일탐색기를 열어 확인해보니 .git이라는게 들어와있죠?

 

이제부터 .git 디렉토리 안에있는 디렉토리들이 자신의 역할에 따라 저장이 될 것이고

절대 이 디렉토리를 지워선 안됩니다!

 

Repository: Version들이 저장되는 곳

Working tree: 아직 버전으로 만들어지기 전 단계 (수정,삭제)

Staging Area: 버전으로 만들기전 올려놓는 곳 (위에 올려져 있는 것만 버전으로 만들 준비)

 

 

자 이제 파일을 만들어봅시다.

nano hello1.txt

 

 

 

현재 창이 떴다면 성공!

 

1을 적어준 후 CTRL+X를 눌러줍시다.

 

Y를 눌러줍니다.

 

그럼 파일 이름이 hello1.txt가 맞냐? 라고 물어보는데 Enter 쳐줍시다.

 

디렉토리 목록을 확인하면 hello1.txt가 만들어져 있고 밑에 명령을 해줍시다. (뒤에 따라오는 파일명의 내용을 출력)

cat hello1.txt

 

 

정말로 저희가 적어놨던 1이 보이죠?

 

깃에게 너의 상태가 어떠냐고 물어봅시다.

 

git은 명시적으로 이 파일을 버전관리를 할거야 라고 알려줘야 하고 아니면 그 파일을 없는 셈 치는데요.

(Untreaked 상태)

 

이제 hello1.txt 파일을 버전으로 만들기 위해서는 Staging Area에 올려야 하고 그때 사용하는 명령어는 git add 입니다.

(working tree 수정사항을 이제 버전으로 만들거니깐 staging area에 올려!)

git add hello1.txt

 

 

올리고 git 의 상태를 물어봐줍시다.

버전들이 될 파일들을 보여주고 있고요.

 

이제 버전으로 만들어! 라고 해야겠죠? 

그렇다면 Staging Area에 올려져 있는 hello1.txt 파일은 respository로 이동하게 될 것입니다!

git commit -m "Message 1"

 

 

커밋이 완료되었고 git에게 상태를 물어봤더니

"버전이 되지 않은 수정사항이 있지 않다." 라는 말과 함께

"버전으로 만들 것이 없다."라고 말하고 있네요.

 

버전이 잘 만들어졌는지 확인을 해야겠죠?

git log

 

 

버전의 고유값과 정보들이 함께 나와있고요.

 

다음은 수정을 해볼까요?

nano hello1.txt

 

숫자 2를 추가해보겠습니다.

다음은 알죠? Ctrl+X -> Y -> Enter

 

cat hello1.txt

 

git의 상태를 물어보니 Staging Area 위에 올려져 있지 않은 수정사항이 있단 것을 말해주고 있네요.

git status

 

 

다음은 무얼해줘야 할까요?

Staging Area에 올려줘야겠죠?

git add hello1.txt

git add . (현재 디렉터리의 하위 디렉토리 모두 올린다)

 

다시 상태를 물어보니 Staging Area에 올려져 있다고 합니다.

 

이제 무엇을 해야할지 대충 감이 오죠?

git commit -m "Message2"

git commit -am "Message2" (add와 commint 한꺼번에 해주기! untracked 상태에서는 안됨)

 

다음은 git log로 확인해봅시다.

 

 

이렇게 Working Tree , Staging Area, Repository 의 세 단계를 알아보았고

 

Working Tree: 수정한 내용이 들어있다.

Staging Area: 수정한 내용중에서 커밋하고 싶은 (버전으로 만들고 싶은것)을 올린다.

Repository: 커밋을 한 변경사항들이 저장된다.

 

라는 것을 알게되었습니다.

'Git' 카테고리의 다른 글

Git CLI 버전간의 차이점 (diff)  (0) 2024.01.19
Git CLI 여러 개의 파일 버전으로 만들기  (0) 2024.01.19
Git CLI 설치  (0) 2024.01.19
Git 협업  (0) 2024.01.19
Git 백업  (0) 2024.01.18