github 총정리! ✅ 복습(RE)
VCS = 버전 관리 시스템.
$ git --version
mac OS의 경우에는 Homebrew를 이용하면 편리.
$ brew install git
$ git config --global core.autocrlf input
windows는
$ git config --global core.autocrlf true
--global
과 같이 하이픈(-)이 두개 연속 작성된 기호
$ git init
$ git add .
$ git commit -m "코멘트"
git add .
는 전체 파일 업로드)-m
은 message를 의미. 코멘트와 함께 commit 할 수 있음$ git remote add origin "repo 주소.git"
$ git push origin master
HEAD
라는 것은? - 현재 프로젝트가 이 버전으로 최신으로 유지되고 있음을 의미.
터미널에서 아래 명령어를 입력하여 새 브랜치를 생성
git branch -a
를 입력$ git branch login
$ git branch
$ git checkout login
이전 master 라는 branch에서 login
branch로 이동하게 됨.
좌측 브랜치 = 수정 전 브랜치
우측 브랜치 = 수정 된 브랜치 (덮어써질 것)
한번 더 Merge 눌러주면 정상적으로 합쳐진다.
-> master 브랜치에 합쳐진 완성본으로 업데이트되고,
참고로 blue 브랜치가 사라지지는 않는다.
$ git clone [REPO_URL] [DIR]
$ git clone https://github.com/thisisyjin/git-clone.git
여러 버전을 commit으로 등록한 후, 이전 commit으로 돌아가보자.
git reset --hard HEAD~1
HEAD (=현재 가장 최신 상태)에서 한 단계 이전으로 돌아가는 (~1
) 명령어.
만약 두개 이전으로 리셋하려면?
HEAD~2
로 작성하면 된다.
-> git log
를 해보면 그 이전 버전은 없어져있다.
$ git reset --hard ORIG_HEAD
ORIG_HEAD
는 기존 헤드를 의미함.
-> 한 번 까지만 복구 가능함.
blue라는 브랜치를 생성 후 index.html을 수정하고, commit해보자.
$ git branch blue
$ git checkout blue
$ git add .
$ git commit -m "blue"
여기서 다시 master branch로 돌아가면?
수정했던 부분이 모두 사라진다.
$ git checkout master
$ git clone [Repo URL.git]
$ git branch -d blue
-b
옵션.$ git checkout -b blue
버전 충돌시
$ git reset --hard HEAD~1
이전 단계로 되돌리는 것이 가장 깔끔하지만, 너무 많은 부분이 수정되었다면?
$ git pull origin master
아래와 같이 나오는데, 현재 변경 사항 or 수신 변경 사항 중에 선택을 하면 된다.
변경 후 git add .
, git commit
, git push origin master
로 푸시하면 끝.
= 원격 저장소의 내용을 가져옴.
$ git pull origin master