- Working Directory
사용자가 실제로 작업하는 폴더 - Staging Area
확정할 변경 사항을 준비시키는 영역 - Local Repsitory
사용자 컴퓨터 로컬 환경에 위치한 저장소. - Remote Repository:
Github, Gitlab 등에 위치한 원격 저장소.
- origin : local repository의 원본 원격 저장소
따라서 git push -u origin master 는 현재 Local Repsotiry 와 설정된 origin (remote repository) 를 연결시키며 푸쉬하겠다는 의미로.
-u 옵션과 --set-upstream 옵션은 같은 역할을 한다고 보면된다. local - remote repository 연결이 성사되면 그 순간부터 -u 옵션을 생략하고 git push 할경우 자동으로 지정된 origin 으로 푸쉬된다.
원격 레포지토리 브랜치명을 명시하지 않을경우 로컬에서 설정한 브랜치이름을 그대로 따라간다. - git push 명령어의 이해
git push -u origin master // 현재 연결된 remote repository (origin) 과 현재 branch (master) 를 연결시키고 push 하겠다.
git push --set-upstream origin master // 위와 같은 말이다. - origin : local repository와 연결된 원본 remote repository 이름
- master : (default) branch
- HEAD : recent Commit of current branch //. 현재 브런치의 최신 commit의 위치를 가리킨다.
📝 Tip.
💡 remote repository 의 branch name과
local repository 의 branch name을 동일하게 설정하는 것이 정신건강에 이롭다.
git push -u origin develop => 현재 local repository branch 중 `develop` 과 remote origin (원격 저장소)에 develop 브랜치를 연결하는 것이다.
만약 remote origin 에 해당 브랜치가 없다면 새로 생성될 거고,
현재 local repository 에 branch가 없다면 에러가 발생할 것이다.
'기타 > git' 카테고리의 다른 글
gitlab Setting (gitlab 시작하기, 설정) (0) | 2020.01.13 |
---|---|
error:src refspec master does not match any 해결 (0) | 2020.01.09 |
Git 고급 명령어 (0) | 2020.01.09 |
github push Error (non-fast-forward) (0) | 2019.11.27 |
Github 기본 명령어 (0) | 2019.09.13 |