버전 관리
프로젝트를 진행할 폴더로 가서
1. git init 으로 현재 디렉터리를 버전관리한다.
git init
git 파일을 생성한다.
ls -al (현재 파일목록을 보여주는 명령어)
2. Add
vim f1.txt ( 파일명이 f1 인 텍스트 파일 생성)
키보드 I를 누르면 insert로 바뀜
그리고 입력하면 입력이 되고
esc 누르면 읽기만 가능해진다.
Insert 상태에서 입력하고자 하는 텍스트를 입력하고
:wq
를 입력 후 엔터를 누르면 위의 창에서 나가지고
터미널로 돌아온다.
다시 ls -al 로 파일이 추가됐는지 확인해보면
아래와 같이 텍스트 파일이 추가된 것을 확인할 수 있다.
그리고 만약 f1 파일에 내용이 정상적으로 반영이 됐는지 확인하고 싶으면
cat 명령어를 사용하면된다.
cat 파일명 ( 파일 내용 출력 )
버전관리를 하기전에 제일 먼저 익혀야할 명령어는
git status
Untracked files -> 추적되고 있는 않은 파일
f1.txt 이 있다.
버전관리가 되고 있는 gitfth 안에 존재하지만
이 파일을 깃에게 버전관리를 시작하라고 명령하기 전에 깃은 해당 파일을 무시한다.
그래서 버전관리를 시작하라고 명령한다
git add [파일명]
f1.txt 파일을 추가하고 다시 git status 로 상태를 확인해보니
new file로 f1.파일을 인식하기 시작한다.
새로 추가할 파일은 add명령을 사용해서 깃에게 추적을 명령할 수 있다.
버전 만들기( commit )
버전은 단위가 있음
어떤 작업이 있으면 그 작업이 완결된 상태가 버전이다.
깃 버전을 처음 만들때 어떤 사람이 했는지를 확인할 수 있도록
이름을 지정해준다.
처음 딱 한번만 해주면 됨
git config --global user.name [지정할 유저이름]
git config --global user.email [지정할 유저 이메일]
I를 사용해서 insert로
커밋 메시지를 입력하고
:wq
를 입력해서 나간다
이제 버전이 잘 만들어졌는지 확인 해보자.
git log
이제 버전을 여러개 만들어서 확인해봄
이미 버전관리가 되고 있는 파일의 경우에도
add를 또 해줘야함
최초 또는 수정돼서 버전을 만들기 전에도 add를 먼저해야함
이제 git commit 으로 커밋메시지를 2로 해서 커밋 후 log로 확인해봤다.
아래와 같이 나열되는 것을 확인할 수 있음
그럼 여러개를 한번에 수정해서
commit 시점을 놓치고 나서
commit을 하고자할때
add를 사용하면 내가 commit하고자 하는 파일을 선택해서 commit할 수 있다.
위와 같이 f1.txt만 add를 한 상황에서
git status를 확인하면
f2.txt는 commit 되지 않을 것이라는 것이라는 것을 확인할 수 있음
새로운버전에는 f1은 들어가지만
f2는 들어가지 않는다. 즉 선택적으로 커밋을 할 수 있음
이렇게 커밋하고
상태를 확인해보면 아래와 같이 f2는 커밋되지 않음을 확인된다.
그래서
add 를 통
f1은 커밋 대기 상태에 올라가는 것이고
f2는 커밋 대기 상태에 올라가지 않는 것
이 커밋 대기 상태에 있는 파일들이 가는 곳을 스테이지라고 한다.
변경사항 확인하기
버전을 만들어 놓으면 좋은 점이 있다.
1. 차이점을 알 수 있고 어느시점의 내용을 알 수 있음
2. 과거로 돌아갈 수 있음
1번인 차이점을 확인하기 위해서
git log -p
자세히 하나 씩 확인해보면
---는 이전 버전
+++변경 된 부분
원래 f1.txt의 초기 내용은 souce : 1 이였지만
souce : 2로 변경되었다. 라는 것
커밋은 각각 고유의 값(주소)이 존재한다.
이제 이 커밋 아이디를 기준으로 이전의 커밋들을
확인할 수 있는 방법은
git log [커밋 id]
그럼 예를들어서
특정 커밋과 커밋 사이의 차이점을 알고 싶으면 ?
git diff [커밋 id]..[커밋id]
dc1로 시작하는 커밋과 dc8로 시작 하는 커밋의
각각의 소스 코드 사이의 차이점을 보여주는데
diff의 장점은
작업을 할 때 커밋하기전에 자기가 작업한 내용이 문제가 있는지 없는지를
마지막으로 리뷰할 수 있는 기회를 제공한다.
과거로 돌아가기
현재의 커밋을 취소하고 과거로 돌아가고 싶을 때
두 가지 방법이 있다.
1. reset
2. revert
예를들어 커밋메시지가 7과 5인 커밋을 삭제하고 4로 돌아가고 싶다.
라고 가정할 때 reset을 사용하면된다.
git reset [돌아가고 싶은 코드 id] --hard
https://www.inflearn.com/course/%EC%A7%80%EC%98%A5%EC%97%90%EC%84%9C-%EC%98%A8-git#reviews
'GIT' 카테고리의 다른 글
Git 버전 관리 - 클론(clone) (0) | 2023.10.17 |
---|---|
Git 버전 관리 - 여러 개의 브랜치 합치는 방법(멀티 브랜치) (1) | 2023.10.17 |
Git 버전 관리 - 협업 시 필요한 branch 의미와 만들기 (0) | 2023.10.17 |
Git 버전 관리 - .gitignore (1) | 2023.10.17 |
Git 버전 관리 - 소스트리 사용 (0) | 2023.10.17 |