This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| git [2016/05/13 15:23] – Depth 수정 ledyx | git [2021/02/07 03:15] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| = Git = | = Git = | ||
| - | 참고 | + | * 참고 |
| - | https:// | + | |
| - | https:// | + | https:// |
| - | https:// | + | https:// |
| + | https:// | ||
| {{tag> | {{tag> | ||
| Line 52: | Line 53: | ||
| <sxh bash> | <sxh bash> | ||
| git add <FILE 이름> | git add <FILE 이름> | ||
| + | </ | ||
| + | |||
| + | ==== 모든 비어있는 디렉토리 추가 ==== | ||
| + | <sxh bash> | ||
| + | git clean -nd | sed s/' | ||
| </ | </ | ||
| Line 99: | Line 105: | ||
| == Branch 병합 == | == Branch 병합 == | ||
| + | ^ merge | ||
| + | | 모든 이력 남음.\\ (정확한 이력 저장 용도) | ||
| + | |||
| + | * 적절한 사용 예 | ||
| + | * https:// | ||
| + | |||
| + | |||
| + | === merge === | ||
| https:// | https:// | ||
| Line 107: | Line 121: | ||
| #< | #< | ||
| - | ## --ff (default, fast-forward) | + | ## --ff (default, fast-forward) |
| - | ## --no-ff (non-fast-forward) | + | ## --no-ff (non-fast-forward) |
| </ | </ | ||
| - | === 종류 === | + | ==== 종류 |
| - | ==== fast-forward ==== | + | ===== fast-forward |
| 조상 Brunch를 **" | 조상 Brunch를 **" | ||
| Line 144: | Line 158: | ||
| - | ==== 3-way merge ==== | + | ===== 3-way merge ===== |
| 조상 Brunch를 **“master”**, | 조상 Brunch를 **“master”**, | ||
| 병합하려는 Brunch를 **“issues”**라고 할 때, | 병합하려는 Brunch를 **“issues”**라고 할 때, | ||
| Line 155: | Line 169: | ||
| - | + | ==== 충돌 해결 | |
| - | === 충돌 해결 === | + | |
| 충돌이 발생하면 **(< | 충돌이 발생하면 **(< | ||
| * 충돌난 파일을 열고, 편집 후 Index 추가 및 Commit. | * 충돌난 파일을 열고, 편집 후 Index 추가 및 Commit. | ||
| - | === 변경/ | + | ==== 변경/ |
| **※ 만약 [[#로컬 저장소 갱신 | git pull]] 명령을 이용했다면 알기 어려움.** | **※ 만약 [[#로컬 저장소 갱신 | git pull]] 명령을 이용했다면 알기 어려움.** | ||
| Line 170: | Line 183: | ||
| git diff <원래 Branch> <비교 대상 Branch> | git diff <원래 Branch> <비교 대상 Branch> | ||
| </ | </ | ||
| + | |||
| + | |||
| + | === rebase === | ||
| + | |||
| + | ==== Branch 이력 확인하면서 병합 ==== | ||
| + | <sxh bash> | ||
| + | git rebase <branch 이름> | ||
| + | |||
| + | git rebase < | ||
| + | #< | ||
| + | ## --continue : Conflit 발생시 해결 후 계속 작업 진행. | ||
| + | ## --skip | ||
| + | ## --abort | ||
| + | </ | ||
| + | |||
| + | ==== Commit 내역 병합 ==== | ||
| + | <sxh bash> | ||
| + | git rebase -i < | ||
| + | #< | ||
| + | ## 이어서 "~ 혹은 ^"를 붙이면 개수만큼 되돌림. | ||
| + | |||
| + | #지정한 < | ||
| + | </ | ||
| + | |||
| + | ===== 관례 ===== | ||
| + | * 남기는 Commit message 앞에는 접두어로 **pick** 붙인다. | ||
| + | * 없애는 Commit message 앞에는 접두어로 **fixup** 붙인다. | ||
| + | * **Commit SHA-1 Checksum 값**은 꼭 남겨야 한다. | ||
| + | * 기존의 Commit message를 수정하지 않는다. | ||
| Line 277: | Line 319: | ||
| git commit --amend | git commit --amend | ||
| </ | </ | ||
| + | |||
| + | |||
| + | == Untracking files 삭제 == | ||
| + | |||
| + | <sxh bash> | ||
| + | git clean < | ||
| + | |||
| + | #< | ||
| + | ## -f : 파일만 | ||
| + | ## -fd : 파일 & 디렉토리 전부 | ||
| + | |||
| + | # | ||
| + | </ | ||
| + | |||
| Line 313: | Line 369: | ||
| # URL 대신 로컬 저장소도 복제 가능! | # URL 대신 로컬 저장소도 복제 가능! | ||
| </ | </ | ||
| + | |||
| + | === 특정 Directory pull === | ||
| + | <sxh bash ; highlight: | ||
| + | // pull 대상 Directory 생성하고 | ||
| + | git init | ||
| + | git remote add -f origin URL | ||
| + | git config core.sparseCheckout true | ||
| + | echo " | ||
| + | git pull origin master | ||
| + | </ | ||
| + | |||
| Line 367: | Line 434: | ||
| <code bash> | <code bash> | ||
| # Shell path (64x 기준) | # Shell path (64x 기준) | ||
| - | C:\Program Files\Git\bin\sh.exe | + | "C:\Program Files\Git\bin\sh.exe" |
| </ | </ | ||