반응형
git : 버전관리시스템
git 저장소
원격저장소(= remote repository)
여러 사람과 함께 공유하며 관리하는 저장소
로컬저장소(= local repository)
개인 pc에 저장소.
[ git설정 ]
git config --global user.name "user_name"
git config --global user.email "user_email"
git init
git add .
// or git add 저장하려는 파일 또는 폴더명
git commit -m "first commit"
커밋 : commit
저장소 내에 존재하는 폴더 및 파일의 변경 내용을 기록하는 것.
커밋 형식
1번째 줄 : 커밋 내의 변경 내용을 요약 (무엇/왜/등등)
2번째 줄 : 빈 칸
3번째 줄 : 변경한 이유
ex)
git commit -m "feat(survey): add nps survey to the home page
BREAKING CHANGE: `survey` objects in xml file have been re-used
in the global configurations."
[ 깃 특정 커밋으로 돌아가기 ]
git reset 커밋명 --hard
git reset 커밋명 --soft
// hrad와 soft 무슨 차이인것인지 잘 모르겠다... 나중에 내용 추가할 것...
git revert 커밋명
// 커밋을 기록을 유지함.
pull : 사실상 fetch + merge
브랜치 : branch
기존 프로젝트에서 가지를 새로 생성한 후 그 위에서 자신의 작업을 하는 것.
[ 브랜치 생성 ]
git branch 생성할브랜치이름
ex) git branch mihee_dev
[ 브랜치 전환 ]
git checkout 전환할브랜치이름
ex) git checkout mihee_dev
[ 브랜치 생성과 동시에 전환 ]
git branch -b 브랜치이름
ex) git branch -b mihee_dev
[ 브랜치통합 ]
- merge
// 이전의 커밋 내용이 그대로인 상태에서 통합됨
- rebase
// 원래의 커밋 내용이 변경됨.
[ 브랜치병합 ]
git merge 커밋명
[ 브랜치삭제 ]
git branch -D 브랜치명
> git log 브랜치1 브랜치2
// 브랜치1과 브랜치2의 차이를 알려줌
태그 : tag
커밋을 참조하기 쉽게 쉬운 이름을 붙이는 것.
> git tag mihee
// 현재 HEAD가 가리키는 커밋에 mihee 태그 생성
> git tag -a mihee
// 주석을 추가하여 태그 생성
> git tag -am "mihee 커밋" mihee
// 주석과 동시에 태그 생성
> git tag
// 태그 목록 보여줌
> git tag -n
// 주석과 함께 태그 목록 보여줌
> git tag -D mihee
// mihee 태그 삭제
포크 : fork
기존 원격저장소 내용을 내 pc의 저장소에 저장하는 클론과 달리 기존 원격저장소 내용을 나의 원격저장소에 복제해옴.
> git remote rm origin
// 기존에 존재하는 원격저장소 삭제 해당 폴더나 파일을 삭제하는 것이 아니라, 기존 저장소 연결된 것을
삭제한다고 생각하면 될 듯...
반응형