버젼 관리 및 협업 시 사용하는 Git의 Command를 자주 까먹는 기분이라
정리를 하려고 한다.
git init
git clone RemoteRepositoryURL
git add FileName
: 특정 파일 스테이징
git add .
: 전체 변경 파일 스테이징
git commit -m "Commit Message"
: -m
옵션은 message 옵션
git commit -am "Commit Message"
: 이 경우 기존에 한 번이라도 커밋한 적이 있는 경우에 사용
git remote add origin RepositoryAddress
git push origin master
git push
git push origin BranchName
git pull origin BranchName
git checkout -- FileName
git reset HEAD FileName
: 파일명 미입력시 모든 스테이징 파일 되돌리기
git reset HEAD^
git reset --hard SpecificCommitHashValue
: 특정 커밋의 해쉬값은 git log
를 통해 가져오기
git revert SpecificCommitHashValue
: 특정 커밋의 해쉬값은 git log
를 통해 가져오기
git branch
git branch BranchName
: 원하는 브랜치명을 입력하여 생성
git checkout BranchName
: 원하는 브랜치명을 입력하여 이동
git log --oneline --branches
git log --oneline --graph
: --graph
옵션은 로그의 형태를 그래프로 형상화하여 보기 좋게 함
git log BranchName1 BranchName2
: 브랜치명1을 기준으로 브랜치명2와 비교
BranchName2가 BranchName1에 병합당하는 경우 BranchName1으로
checkout
필요
git merge BranchName
git merge BranchName
: Conflict 발생
git branch -d BranchName
: 삭제의 경우 기본 브랜치인 Master
로 이동후 수행
이 경우 여기서의 삭제는 완전 지워지는 것이 아닌 안보이는 것.
다시 동일명으로 브랜치 생성시 예전 내용 나타남.
작업 사항 혹은 커밋 이력이 있는 경우, 브랜치가 삭제되지 않는 경우가 발생함. 이러한 경우 다음의 커맨드를 이용하여 강제로 삭제
git branch -D BranchName
git push origin :BranchName
git branch ExBranch
git push origin ExBranch
git branch --set-upstream-to origin/ExBranch
이후 개발 진행
참고