
Git(깃)은 컴퓨터 파일의 변경사항을 추적하고 여러 사용자들 간에 해당 파일 작업을 조율하기 위한 대표적인 버전관리 시스템(vcs)이다.
- git is not equal to github!!
- Github은 Cloud Remote Repository Services
$ git config --global core.autocrlf input
$ git config --global core.autocrlf true
$ git config --global user.name 'NAME'
$ git config --global user.email 'EMAIL'
// 확인 후 Q키를 눌러 종료함!
$ git config --global --list
// master 브랜치 생성됨
$ git init
// 파일이 버전관리중인 상태인지 확인
$ git status
// 특정 파일 선택
$ git add 'file_name'
// 전체 파일 선택
$ git add .
// 커밋 생성
$ git commit
// 메세지와 같이 커밋
$ git commit -m 'New_Project'
-> 사용하지 않는것이 좋음
-> commit 자체의 form이 있을경우 -m을 사용하게 되면 무시하고 덮어쓰게 됨
// 커밋 내역 확인
$ git log
// origin이란 별칭으로 원격 저장소를 연결
$ git remote add origin 주소
// origin이란 별칭의 원격저장소로 버전내역 전송
$ git push origin master
// 브랜치 목록 확인(로컬)
$ git branch
// 브랜치 목록 확인(원격저장소의 브랜치 목록 같이 확인됨)
$ git branch -r
// 새 브랜치 생성
$ git branch 브랜치명
// 브랜치 삭제
$ git branch -D BRANCH_NAME
// 다른 브랜치로 이동
$ git checkout 브랜치명
// 브랜치 생성과 이동을 한번에
$ git branch -b 브랜치명
// 현재 브랜치에 다른 브랜치를 병합
$ git merge 브랜치명
$ git clone 저장소주소
//1단계 전으로 되돌리기
$ git reset --hard HEAD~1
//2단계 전으로 되돌리기
$ git reset --hard HEAD~2
// 되돌리기 전 상태로 리셋
$git reset --hard ORIG_HEAD
// 커밋 내역 확인을 통해 변경사항 확인
$ git log
// 원격 저장소 버전 가져오기
$ git pull origin master
- commit의 제목은 commit을 설명하는 하나의 구나 절로 완성
- Importance of Capitalize
- prefix(앞머리)를 꼭 달아주기
- feat: 기능 개발 관련
- fix: 오류 개선 혹은 버그 패치
- docs: 문서화 작업
- test: test 관련
- conf: 환경설정 관련
- build: 빌드 관련
- ci: Continuous Integration 관련