728x90


[바로가기] 기초명령어_Git기초_POSIX CLI


 

버전관리 단계

 

단계 설명 관련 코드
working tree 파일을 수정하는 단계 git init .
# 현재 디렉토리를 깃에게 버전관리 시킴
디렉토리에는 .git 숨김 파일이 생성되고 이 파일에 버전 정보가 들어감
staging area working tree에 여러 파일들 중 버전으로
만들고 싶은 파일들을 staging area에 올려둔다
git add 파일명
# working tree에 있는 파일들 중 git add 코드에 명명한 파일을 staging area로 올림

git add .
# 현재 디렉토리에 있는 모든 파일을 staging area로 올림

git add 폴더
# 폴더에 있는 모든 파일을 staging area에 올림
repository 버전으로 최종적으로 저장되는 단계 git commit
# staging area에 올라와 있는 파일들로 버전을 만들기 위해 에디터를 실행

git commit -m "version name"
# 에디터 없이 버전을 만듬

git commit -am "version name"
# git add와 git commit을 한번에 실행 할 수 있음
# Untraked 파일이 있다면 add가 실행되지 않으니, 파일에는 git commit -am 실행이전에 최소 한번의 git add가 실행되어야함

버전관리에 사용하는 코드 정리

 

코드 설명 예시/부가설명
git status 상태를 출력 No commits yet
# 현재 디렉토리에 아직 관리할 버전이 없다는 의미

Untracked files
# 관리할 파일이 없다는 의미로 어떤 파일을 관리할 것인지 깃에게 알려주는 단계가 한번은 필요함
# 'git add 파일명' 실행 후 다시 git status를 입력하면 changed to be committed로 상태가 바뀜

nothing to commit, working tree clean
# 버전으로 만들게 없고, 워킹트리가 깨끗하다
(=모든 파일이 버전으로 관리되고 있다)

changes not staged for commit
# 파일들이 staging area에 없고 수정사항이 working tree에 있다.

changes to be committed
# 파일들이 staging area에 올라가 있다.
git log 버전의 기록을 보고 싶을 때 사용 출력 결과를 보면 commit 뒤에 영문과 숫자의 무작위 조합 코드를 볼 수 있는데
(ex. commit c500e2538eedbc9f9e872fb6cf310ec6599b5c98) 각 버전의 고유 번호 정도라고 생각하면 됨 이 정보는 checkout과 함께 사용됨
git log --stat 몇개의 파일과 코드가 수정되었는지 출력  
git diff 구 버전과 새 버전을 비교한 결과를 출력 새 버전의 내용은 +로 출력
삭제된 내용을 -로 출력
git reset --hard 마지막 버전 이후 수정된 내용들이 마음에 들지 않는다면 수정된 내용들이 없는 마지막 버전으로 상태를 돌려줌 ex) git reset --hard 33c25a48b13d4228cd8117af7866344a10897fdd

hard 뒤에 있는 버전 식별 정보 이후 버전으로 리셋하겠다.
git checkout 버전을 식별할 수 있는 정보를 뒤에 입력하면 버전을 만든 시점으로 이동 git log로 버전 식별 정보를 알 수 있음
ex) git checkout c500e2538eedbc9f9e872fb6cf310ec6599b5c98

git checkout master
가장 최신 상태 버전으로 이동

 


 

728x90

'# Git' 카테고리의 다른 글

[Git] Git기초_POSIX CLI  (0) 2021.03.21

+ Recent posts