# 기본 환경 설정
git config --global [user.name](http://user.name) “이름”
git config --global [user.email](http://user.email) “이메일주소”
# 기본 에디터를 vim 으로 기본 설정
git config --global core.editor vim
# 설정 정보 확인
git config --global --list
# 기본 설정 변경, 변경 후 저장하고 종료 (esc + :wq)
vi ~/.gitconfig
# 실습을 위해 폴더 생성 (루트폴더 아래 gittest 생성)
mkdir ~/gittest
# gittest 하위로 이동
cd ~/gittest/
my_project 라는 working directory 생성
cd ~/gittest
mkdir my_project
cd my_project
ls -la
# 로컬 저장소 초기화
git init
(1) git 의 핵심 폴더인 .git 폴더가 생성
(2) master 라는 기본 브랜치가 생성
# 원격 저장소와 연결, [저장소 별칭]은 저장소에 쉽게 접근하기 위한 일종의 변수 (default, origin)
git remote add [저장소 별칭] [저장소 주소]
# 현재 등록된 원격저장소
git remote -v
# 현재 폴더내 파일의 상태 확인
git status
# 커밋의 히스토리 확인
git log
# 파일 생성
vi [파일명]
# 파일 수정
# 1. i 입력하면 입력 모드로 변경
# 2. 코드작성
# 3. esc + :wq + enter : 저장 후 종료
# 스테이징 영역에 변경점 추가
# 작업 디렉토리의 변경사항 중 커밋 예정인 파일들을 스테이징 영역에 추가
git add [파일명]
git status
[Tip] Warning 로그
Warning : LF will replaced by CRLF in TestService.java The file will have its original line endings in your working directory
아래 명령어로 경고 메세지 설정을 off 시키고 작업
git config --global core.safecrlf false
# 편집기 열리면 커밋 메세지 작성
git commit
# 인라인으로 커밋 만들때
git commit -m "메세지"
# 커밋 히스토리 확인
git log
# 변경된 코드 확인, 작업 디렉토리에서 기존 코드 대비 변경점 확인
git diff
# [Tip] git 명령어 옵션 정보 확인, 웹 브라우저를 통해 해당 명령어의 매뉴얼 페이지 실행됨
git log --help
git log -u # 해당 커밋과 변경된 내용
git log -u 'commit ID'
git log -1 # 최신 커밋을 기준으로 몇개의 커밋 내역을 불러올것인지
git log -2
git log --name-only # 변경된 파일의 이름 리스트도 확인 가능
git log --oneline # 커밋 하나 당 한줄로 보여줌
git show 'commit ID' # git log -u 'commit ID'와 동일
#1) 커밋 메세지를 변경하고 싶을 때
# 마지막 반영한 최신 커밋 메세지를 변경하고 싶을 때, 최신 커밋 수정 가능한 에디터가 실행됨
# 되돌린 것은 복구할 수 없음
git commit --amend
#2) 커밋에 추가할 변경점이 있을 때
# 파일을 수정 후, 스테이징 영역에 추가
# git commit --amend 명령어로 커밋 생성
vi [파일명]
git add [파일명]
git commit --amend
# 코드를 원복한다 = 반영한 특정 코드를 제거 = 변경을 취소 = 반영한 커밋 되돌리기 = revert
git revert '마지막 반영한 commit ID'
# 새로운 커밋을 반영할 수 있는 에디터 창이 뜸
# 깃의 히스토리는 유지되면서 (= log 에는 찍히면서) 내용은 변경됨
git push [저장소별칭] [현재브랜치]
[Tip] HTTP Basic: Access denied (윈도우)
gitlab username, password 잘못입력했을 때 뜨는 에러
remote : HTTP Basic : Access denied
fatal : Authentication failed for
[해결방법]
[방법 1]
[방법2]
# git clone
# 로컬 저장소 생성
cd ~/gittest
mkdir git_project
cd git_project
# clone 할때는 git init 안해도됨
git clone [원격저장소 주소]
cd git
ls -la
# git log 오래된 로그부터 찍기
git log --reverse
참고 : 코드프레소 '실무자가 알려주는 Git 입문' 강의
코드프레소 체험단 활동을 통해 강의를 제공받았습니다
https://www.codepresso.kr/