저장소
- Working Directory
- Staging area
- repository
- remote repository
기본 명령어
git init | .git 이 생성되어 버전 관리의 시작 |
git add 파일명 | Working Directory -> Staging area |
git commit [-m | -am] "메세지이름" -m 옵션 : 메세지 이름만 적기 -am 옵션 : git add 와 git commit -m 동시에 수행 하기 |
Staging area -> repository |
git push 저장소명 브랜치명 | repository -> remote repository |
저장소 되돌리기
HEAD^^ | 가장 최근 커밋부터 두개 되돌리는 것 |
git reset --hard HEAD^ | Working Directory , Staging area , Repository 의 가장 최근 부분이 사라지고 , Repository 의 head는 두번째 커밋이 된다 , 이때 현재 작업공간은 두번째 커밋내용으로 변경되며 up-to-date(최신) 상태가 된다. |
git reset (--mixed) HEAD^ <default> | Staging area , Repository 의 가장 최근 부분이 사라지고 , Repository 의 head는 두번째 커밋이 된다 , 이때 작업공간은 영향을 받지 않고 그대로 있는다. |
git reset --soft HEAD^ | Repository 의 가장 최근 부분이 사라지고 , Repository 의 head는 두번째 커밋이 된다 , 이때 작업공간과 Staging area 는 영향을 받지 않고 그대로 있는다. |
그외 알아두면 유용한 명령어들..
git diff , git revert
Repository끼리의 상호작용 종류
git remote (-v) | 원격저장소 조회,추가.삭제하기. 내 로컬 Repository와 상호작용하고 있는 원격 저장소들의 목록을 조회 -v 옵션 : 단축이름과 URL 같이 보여줌 |
git remote add origin URL.git | 내 로컬과 상호작용하는 원격저장소로 , origin(단축이름) 이라는 원격저장소 명칭으로 정하여 URL을 원격저장소로 등록하기 |
git remote rm origin | 내 로컬에 등록된 origin(단축이름) 이라는 원격저장소를 제거한다 |
git push -u origin master | 원격저장소에 밀어넣기. 나의 로컬 디렉토리의 master 브랜치를 origin의 master브랜치로 푸쉬하는 것 -u 옵션 : git push -u origin master 로 해주면 , 이후에 origin master 부분을 생략해도 디폴트로 적용됨 |
git pull (origin master) < -u 옵션이 이전에 사용 되었다면 origin master는 생략가능 > |
원격저정소 갖고 와서 합치기. 원격 저장소 origin을 내 로컬 저장소의 master 브랜치로 갖고와서 덮어 씌우는 것(동기화,merge) |
git fetch origin | 원격저장소 일단 갖고만 오기. origin저장소에 있는 것을 내 로컬저장소로 가져만 오는 것이다. git pull은 merge 되어 내 작업공간이 사라지지만 , git fetch는 merge 되지 않고 일단 가져만 오는 것이고 , 로컬 저장소에서 영향을 받지는 않는다. fetch로 가져온 내용은 [origin/master | FETCH_HEAD ] 브랜치에서 확인이 가능하다. |
git checkout origin/master | 브랜치 변경하기. 현재 브랜치를 origin/master 브랜치로 변경하기 |
git clone url.git | 원격저장소 복사하기. url 에 있는 원격 저장소 내용을 현재 디렉토리에 복사해오기 , 자동으로 원격저장소가 등록되어 origin역시 자동 생성 된다. |
브랜치
git branch | 브랜치종류, 현재브랜치 확인 |
git branch newbranch | newbranch라는 새로운 브랜치 생성 |
git checkout -b newbranch2 | newbranch2라는 새로운 브랜치를 만듬과 동시에 브랜치변경 |
git branch -D newbranch | newbranch 삭제 |
협업시 발생할 수 있는 이슈들
'GIT' 카테고리의 다른 글
branch 삭제 불가능할경우 (0) | 2021.09.06 |
---|---|
GIT - git pull 시 에러 (0) | 2021.05.12 |
GIT - STS(eclipse)프로젝트로 협업시 gitignore 설정 (0) | 2021.05.09 |
GIT - Git 구성도 및 Git Bash 명령어 (0) | 2021.05.09 |
GIT-명령어,개념정리 (0) | 2021.04.27 |