리포지토리 초기화 (git init)
Git으로 버전 관리를 하려면 해당 폴더에서 git init라는 명령을 실행한다.
.git 폴더가 만들어지면 해당 폴더는 git으로 버전관리를 할 수 있게 된다.
git bash를 실행하고 아래와 같이 실습해보자
(git bash실행 시 폴더 경로는 "c:/users/사용자명" 이다. 리눅스 명령어인 pwd로 해당 경로를 확인할 수 있다.)
리포지토리 상태 확인 (git status)
git status 로 git의 상태를 확인할 수 있다.
git-test로 만든 리포지토리의 상태를 확인해보자
On branch master : 현재 브랜치가 master 라고 표시
No commits yet : 커밋된 항목이 없다라고 표시
nothing to commit (create/copy files and use "git add" to track) : 커밋할 내용이 없다라고 표시되며, 파일을 생성하거나 카피한 후 git add라는 명령으로 추가 할 수 있다고 표시
commit 테스트 용으로 README.md 파일을 하나 작성해보자
README.md 파일은 추후 github 연동 시 index 페이지와 같은 역할을 하는 파일이다.
c:\users\사용자명\git-test 에 파일을 만들자 (파일명 : README.md)
또는 vi 에디터를 이용하여 파일을 생성 (git-bash에서는 리눅스용 vi 에디터를 사용할 수 있다.)
README.md 파일 안의 내용은 테스트용이므로 간단하게 "This is GIT-TEST" 라고만 입력.
다시 git status를 실행하면 README.md 파일이 표시되며, untracked files로 출력된다.
스테이지 영역에 파일 추가 (git add)
파일을 git 리포지토리에서 관리(버전관리)하도록 git add 명령어를 이용해 스테이지 영역에 추가
add를 index라고도 한다. (eclipse 플러그인의 경우 index로 표시됨)
git add README.md
스테이지영역 : commit하기 전의 임시 영역
svn 과 같은 버전관리 프로그램에서는 없는 개념
git add README.md로 파일을 스테이지 영역에 추가 후 git status로 상태를 확인하면 새로운 파일이 추가되었다는 내용을 확인 할 수 있다.
아직 리포지토리에 반영된 건 아니다.
리포지토리 변경 내용을 기록 (git commit)
git commit 명령으로 스테이지 영역에 존재하는 파일을 실제 리포지토리에 반영하는 명령
commit시 메세지를 기록해야 하는데, 한줄로 기록하는 방법과 상세한 내용의 메시지를 기록하는 방법이 있다.
한줄 commit 메시지 기록 방법
git commit -m "한줄 메시지내용"
상세한 내용 commit 메시지 기록 방법
아무런 옵션 없이 git commit 만 실행하면 git bash 설치 시 세팅한 에디터가 호출된다.
에디터에서 상세 내용을 입력 후 저장하고 에디터를 종료한다.
git commit
vi 에디터에서 내용입력 방법 : i 키를 누르고 내용을 입력(또는 수정) 후 esc, : ,wq, 엔터를 순차적으로 입력 시 저장되면서 에디터에서 빠져 나온다.
커밋 로그 확인 (git log)
git log 명령으로 리포지토리에 commit 된 내용을 확인할 수 있다.
git log
특정 파일에 대한 로그만 확인 시
git log 파일명
파일의 변경된 내용을 출력하는 법
git log -p
특정 파일의 변경된 내용을 출력
git log -p 파일명
변경 내역 확인 (git diff)
현재 작업중인 내용과 스테이지 영역의 차이를 확인
git diff
README.md 파일을 열어서 기존 내용에 hellow, There와 #Git Test라는 내용을 입력
git add 하기 전에 git diff로 변경 내역을 확인
기존 this is GIT-TEST 이외에 추가된 hellow, There와 #Git Test 라는 내용이 +로 표시된 걸 확인 할 수 있다.
추가된 내용은 +로 표시되며, 삭제된 내용은 -로 표시된다.
git add 명령으로 스테이지 영역에 변경된 내용을 추가
git add README.md
이후 다시 git diff 해도 로컬작업 영역과 스테이지 영역에 차이가 없으므로 아무것도 표시되지 않는다.
최신 commit과의 차이를 확인할 경우 아래와 같이 git diff HEAD 라고 입력한다.
git diff HEAD
이제 git commit을 하여 변경내역을 반영한다.
'개발 > git,github,svn' 카테고리의 다른 글
[svn] CentOS 7 Subversion 설치 및 세팅 (0) | 2021.01.28 |
---|---|
5. eclipse에 github 연동하여 소스 올리기 (0) | 2021.01.17 |
4. github 회원가입 (0) | 2021.01.17 |
2. Git 설치 후 기본설정 (0) | 2021.01.17 |
1. 윈도우용 git 설치 (git for windows) (0) | 2021.01.17 |
댓글