git
git config --list
git config --global user.name "UserName"
git config --global user.email "UserId@gmail.com"
git status
'git init(initialized)' 명령어를 통해 현재 디렉터리를 깃을 사용할 수 있도록 초기화한다. 깃을 사용하면서 버전이 저장될 저장소(repository)에 해당하는 '.git' 디렉터리가 숨김 파일로 생성된다. 'Initialized empty Git repository...' 메시지 표시 후 사용 가능하다.
git init
'git add' 명령어를 통해 현재 디렉터리의 파일을 스테이징 영역에 올릴 수 있다. 스테이징 내용을 '.git/index' 파일에 저장하기 때문에 '인덱스에 등록한다'라고 표현할 수도 있다. 스테이징 영역에 있는 파일은 버전으로 만들 수 있다.
git add {파일명}
'git commit' 명령어를 통해 스테이징 영역의 파일을 버전으로 만들 수 있다. -m 옵션을 사용하여 함께 저장할 메시지를 저장할 수 있다.
'git commit --amend' 명령어를 사용하여 최근 커밋 메시지를 수정할 수 있다.
git commit -m 'message'
'git checkout' 명령어를 통해 작업 트리에서 수정한 파일의 변경 사항을 취소할 수 있다. 단, checkout으로 되돌린 내용은 다시 복구할 수 없다.
git checkout -- {파일명}
-am 옵션을 사용하여 스테이지에 올리고 커밋하는 과정을 일괄 처리할 수 있다. 단, 한 번이라도 커밋한 적이 있는 파일을 다시 커밋할 때만 사용 가능하다.
git commit -am 'message'
'git log' 명령어를 통해 다음과 같은 버전 정보를 확인할 수 있다. 다음과 같은 정보를 묶어 간단히 '커밋 로그'라고 한다. --stat 옵션을 사용하여 관련된 파일까지 함께 확인할 수있다.
git log
'git diff' 명령어를 통해 작업 트리에 있는 파일과 스테이지에 있는 파일을 비교할 수 있다. 추가한 내용은 "+" 기호와 함께, 삭제한 내용은 "-" 기호와 함께 표시된다.
git diff
git reset HEAD {파일명}
git reset HEAD^
git reset HEAD~{n}
git reset --hard {커밋 해시}
커밋 해시에 해당하는 커밋을 최신 커밋으로 되돌릴 수 있다. 단, 지정한 커밋을 삭제하는 것이 아닌 변경했던 이력을 취소한 새 커밋을 만든다.
git revert {커밋 해시}
Git에서 사용하는 명령은 리눅스를 기반으로 하고, 윈도우에서는 깃 배시 프로그램을 거쳐서 깃 명령을 사용한다.
텍스트 문서에서 Enter를 눌렀을 때 그 위치에 삽입되는 문자를 개행 문자 또는 줄바꿈 문자라고 한다. 윈도우의 개행 문자(CRLF 문자)와 리눅스와 맥의 개행 문자(LF문자)는 다르다.
때문에 Git에서 'git add' 명령어 실행시 다음과 같은 경고 메시지와 함께 문서의 CRLF 문자를 LF 문자로 변환하여 커밋할 것이라고 안내한다.
warning:LF will be replaced by CRLF in text.txt
버전 관리 중인 디렉터리 안에 버전 관리를 하지 않을 파일 또는 디렉터리가 있는 경우, '.gitignore' 파일을 만들어 목록을 지정할 수 있다. vim 에디터를 통해 파일 생성 후, 버전 관리 대상이 아닌 파일 또는 디렉터리 이름이나 파일 확장자를 입력한다.
기호 | 설명 |
---|---|
~ | 현재 접속 중인 사용자의 홈 디렉터리(또는 사용자 디렉터리, c/User/사용자 아이디) * 사용자 아이디는 5글자까지만 나타난다. |
./ | 현재 사용자가 작업 중인 디렉터리 |
../ | 현재 디렉터리의 상위 디렉터리 |
vim은 "vi improved"의 약자로서 유닉스의 기본 편집기인 vi 에디터의 개량한 버전이다. vim 에디터는 편집 가능한 '입력 모드'와 저장 가능한 'ex 모드'로 나뉜다. vim 에디터 진입시 'ex 모드'로 열리며, I(Insert) 또는 A(Add) 명령어를 입력하여 '입력 모드'로 전환 가능하다. 편집한 내용 저장 후 종료를 위해 ESC 명령어를 입력하여 'ex 모드'로 다시 전환해야 한다.
ex 모드 | 진입키 | 입력 모드 |
---|---|---|
저장, 종료 등 | <======= ESC ======= == I (Insert) / A (Add) ==> | 텍스트 입력, 수정 |
vim 에디터 실행시 vi/vim 명령어 모두 사용 가능하다.
vi 명령어 사용시에도 vim 에디터를 실행한다.
명령어 | 설명 | 예시 |
---|---|---|
vim {파일명} | 파일 열기 {파일명}의 파일이 존재하는 경우, 수정 가능 존재하지 않는 경우, 신규 생성 후 작성 가능 | vi test.txt |
vim -{행번호} {파일명} | 파일을 열고 해당 행 번호로 커서 이동 | vi -100 test.txt |
vim -/"{검색 문자열}" {파일명} | 파일을 열고 첫 번째 검색 문자열로 커서 이동 | vi -/"test" test.txt |
view {파일명} | 읽기 전용 파일 열기 | view test.txt |
Git 설치 시, vim 편집기 사용을 기본값으로 설정했지만, 다른 편집기로 변경 가능하다. 예를 들어, 'Notepad++'로 변경시 아래와 같이 입력하여 변경할 수 있다.
git config --global core.editor "notepad++"
명령어 | 설명 |
---|---|
:w / :write | 편집 중이던 문서를 저장 |
:q / :quit | 편집기 종료 |
:wq {파일명} | 편집 중이던 문서를 저장하고 종료 파일 이름 입력시 해당 이름으로 저장 |
:q! | 문서를 저장하지 않고 편집기 종료 확장자가 .swp인 임시 파일 생성 |