반응형

[text]    : 선택사항 값

<text>  : 반드시 입력해야하는 값 


1. Branch 관련 명령어

git checkout -b <브랜치이름>    - 현재 시점에서 새로운 브랜치를 생성하면서, Checkout하는 명령어

git push origin <브랜치이름>    - 로컬 브랜치를 원격 브렌치에 업데이트 , 또는 원격 브랜치 생성

git checkout <브랜치이름>    - <브랜치이름>해당 브랜치로 Checkout

git branch 

git branch --list    - 현재 로컬 브랜치 목록을 보여줌

git branch -r 

git branch -r --list    - 원격 브랜치 리스트를 보여줌

git branch -d <브랜치이름>    - 로컬 브랜치를 삭제함

git push origin -d <브랜치이름> - 해당 리모트 브랜치를 삭제함



2. Merge 관련 명령어
git fetch origin [브랜치이름]   - 리모트 브렌치의 히스토리 상태를 업데이트 함
git merge <브랜치이름>    - 해당 브랜치와 현재 브랜치를 병합
git rebase origin/<브랜치이름>    - 해당 브랜치를 리베이스 함


3. Commit 관련 명령어

git stage -A    - 현재 변경사항을 Stage함

git reset    - 현재 Stage에 올라간 파일들을 Unstage함.

git commit -am "커밋메세지"    - 현재 커밋 메시지로 Commit

git status     - 현재 로컬 브랜치 변경사항을 표시

git checkout -- .    -현재 모든 변경사항을 제거함.(함부로 사용하지 말것)



4. merge 충돌 관련 명령어

git mergetool    -현재 충돌난 상태를 외부 병합툴로 실행

git diff     - 변경 전후 상태 비교

git merge --abort   - 현재 병합중 취소

git rebase --continue    - 계속해서 rebase 병합함

git rebase --abort    - 리베이크 병합 취소


5. 소스 추출시 Tracking된 파일만 압축

git archive -o latest.zip HEAD

 

Tag 달기


 git tag <tagName> [Hash code]    : 태그 생성.

 git push origin master <tagName> : 특정 태그만 원격저장소에 올리기

 git push --tags  : 모든 태그를 원격저장소에 올리기

 

 Tag 삭제.

 git tag -d <tagName>     : 특정 태그 삭제

 git  push origin :refs/tags/<tagName> : 원격저장소에 태그 삭제.

 

 

 Git File목록 검색 

 

 git ls-files | grep -i <pattern>


파일을 수정한 부분중 특정 부분만 찾아서 되돌리고 싶을때


git difftool -y #ref -- /path/aa.cpp

머지 툴을 이용해서 해당 부분을 찾아서 되돌릴 수 있다.


6. MergeTool 이나 DiffTool을 사용할 때 등록되어 있는 Tool을 선택해서 사용할 수 있다.


git mergetool -t <toolname> OR git mergetool -tool=<toolname>

git difftool -t <toolname> OR git difftool -tool=<toolname>


ex)git difftool -t p4merge, git mergetool -t tortoisemerge ...등등


* toolname : .gitconfig 파일에 등록되어 있는 Tool이름을 의미 한다.



+ Recent posts