Overview : 처음으로 올리기
기본
1. git서버에 디렉토리 생성 및 Repos URL 확인
ssh://111.111.111.111:11111/data/git/xslt
또는
https://dev@dev.azure.com/myoffice/work/_git/xslt
2.로컬경로로 이동 및 git 명령어
1 2 3 4 5 6 7 8 9 |
git init git config --global core.autocrlf false vi .gitignore #필요시 git add . git commit -m "Initial commit" git remote add origin <Git Repos URL> git push -u origin master |
Git 옵션 CRLF LF
자동 변환을 비활성화 반드시
1 2 3 |
git config --global core.autocrlf false |
업데이트
1.원격 저장소에서 변경된 메타데이터 정보를 확인할 뿐만 아니라 최신 데이터를 복사하여 로컬 Git에 가져옵니다.
1 2 3 |
git pull |
2. fetch 원격 저장소에서 최신 메타데이터 정보를 확인후 merge 방법
1 2 3 4 |
git fetch : 원격 저장소에서 최신 메타데이터 정보를 확인하라는 명령을 전달 (원격저장소에서 커밋된 코드를 임시 브랜치로 다 내려받습니다.) git merge origin/newbranch (해당 branch 에 fetch 된 것이 통합된다) |
3. fetch 원격 저장소에서 최신 메타데이터 정보를 확인후 merge 방법
1 2 3 4 5 6 7 8 9 10 11 |
git fetch origin //원격 저장소에서 최신 메타데이터와 변경 사항을 가져옵니다. git checkout main //- 로컬 브랜치가 main인지 확인하고 아니라면 main 브랜치로 체크아웃합니다. git merge origin/master //로컬 브랜치에 원격 브랜치의 변경 사항을 병합합니다. git pull origin master // git pull은 git fetch와 git merge를 결합한 명령어입니다. 충돌시 git add <resolved-file> git commit |
4.rebase
커밋 기록을 깔끔하게 유지: 리베이스 방식은 병합 커밋을 생성하지 않으므로 커밋 기록이 더 깔끔하고 직선형으로 유지됩니다.
1 2 3 |
git pull --rebase origin master |
수정
1.커밋 기록 수정 (rebase, reset)
특정 커밋을 수정하거나 삭제하려면 git rebase -i
명령어를 사용합니다.
1 2 3 |
git rebase -i HEAD~n |
n
을 수정하고자 하는 커밋 수로 바꿉니다. 그러면 편집기가 열리고, 여기서 수정할 커밋을 선택할 수 있습니다.
2. 원격저장소 정보 및 경로 변경
1 2 3 4 5 6 7 8 |
git config --global user.email "you@example.com" git config --global user.name "Your Name" sudo git remote set-url origin ssh://111.111.111.111:11111/data/git/xslt 또는 sudo git remote set-url origin https://dev@dev.azure.com/myoffice/work/_git/xslt |
3. 브랜치 이름을 변경
1 2 3 |
git branch -m main |
1 2 3 4 5 6 7 8 9 10 |
git push origin main //새로운 브랜치를 원격 저장소에 푸시 git push origin --delete master //기존 master 브랜치 삭제 git branch --unset-upstream //현재 브랜치의 업스트림 브랜치를 해제 git branch -u origin/main //로컬 저장소에서 기본 브랜치를 main으로 설정합니다. git status -sb //업스트림 브랜치 설정 확인 |
삭제
1.Git Reset을 사용하여 최근 커밋 삭제
가장 최근의 커밋을 삭제하려면 git reset
명령어를 사용합니다.
- 커밋 기록과 변경 사항 모두 삭제: 숫자는 삭제할 최근 개수
1 2 3 |
git reset --hard HEAD~10 #n개수 |
- 커밋 기록만 삭제하고 변경 사항은 유지:
1 2 3 |
git reset --soft HEAD~4 #n개수 |
2.원격 저장소에서 브랜치 삭제
원격 저장소에서 특정 브랜치를 삭제하려면:
1 2 3 |
git push origin --delete <branch_name> |
3.로컬 브랜치 삭제
로컬에서 브랜치를 삭제하려면:
1 2 3 |
git branch -d <branch_name> |
로컬에서 master 를 완전 삭제하려면:
1 2 3 |
rm -rf .git |