git 기본
1. git 초기 사용시
git config --global user.email "내이메일"
git config --global user.name "내이름"
2. git 저장소 연결(친구 repository)
mkdir 저장폴더
cd 저장폴더
git clone <https 복사 주소>
3. 복사한 폴더로 이동
cd 복사폴더
4. git status
5. git branch [branch명]
6. git checkout [branch명]
if ) clone 중 누군가가 작업을 했다면?! push 가 안될 것 !
why? 누군가가 새로 push 했기 때문에
로컬과 서버의 커밋 히스토리는 독립적임.
1. git fetch origin
리모트 서버로부터 저장소 정보 동기화
새로운 정보를 모두 내려받고, 받은 데이터를 로컬 저장소에 업데이트하고 나서 origin/master 포인터의 위치를 최신 커밋으로 이동시킴.
로컬의 브랜치를 서버로 전송하려면 쓰기 권한이 있는 리모트 저장소에 Push해야 한다.
로컬 저장소의 브랜치는 자동으로 리모트 저장소로 전송되지 않는다.
git push <remote> <branch> 명령 사용
git push origin serverfix:serverfix
= 로컬의 serverfix브랜치를 리모트 저장소의 serverfix브랜치로 push하라.
2. git merge origin/master
: 현재 내 branch 에서 merge 시키면 됨.
3. git push
if) branch 따서 수행 중 바꼈다면?
git fetch origin
git checkout master
git merge <branch> // 현재 브랜치 head로 master 옮기기
git merge <origin/master>
get push origin master
cf) 리모트 브랜치란?
리모트 저장소에 있는 포인터인 레퍼런스.
git ls-remote [remote] : 모든 리모트 조회 가능
git remote show [remote] : 모든 리모트 브랜치와 그 정보
1) 리모트 트래킹 브랜치: 리모트 브랜치를 추적하는 레퍼런스
2) 리모트 트래킹 브랜치는 로컬에 있지만 임의로 움직일 수 없다.
3) 리모트 서버에 연결할 때마다 리모트의 브랜치 업데이트 내용에 따라서 자동으로 갱신
4) 리모트 트래킹 브랜치 = 마지막으로 연결했던 순간에 브랜치가 무슨 커밋을 가리키고 있었는지 북마크
* origin 의 의미
- 브랜치 이름으로 많이 사용하는 “master” 라는 이름이 괜히 특별한 의미를 가지는 게 아닌 것처럼 “origin” 도 특별한 의미가 있는 것은 아니다.
- git init
명령이 자동으로 만들기 때문에 사용하는 이름인 “master” 와 마찬가지로 “origin” 도 git clone
명령이 자동으로 만들어주는 리모트 이름이다.
- git clone -o booyah
라고 옵션을 주고 명령을 실행하면 booyah/master
라고 사용자가 정한 대로 리모트 이름을 생성해준다.
'IT공부' 카테고리의 다른 글
node 버전 관리하기 (0) | 2019.09.18 |
---|---|
anaconda(가상환경)를 이용한 gensim과 konlpy 설치 순서 (0) | 2019.02.21 |
php vs. Node (0) | 2019.02.12 |
클라우드 인프라란? (0) | 2018.11.06 |
java, jsp, javascript, jquery 구분! (0) | 2018.11.05 |