GitNotes.19-3.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 19.3: ignore 처리된 파일들 삭제하기

git clean -fX

위 명령은 현재 디렉토리와 모든 하부 디렉토리에서 ignore 처리된 파일들을 삭제할 것이다.

git clean -Xn

위 명령은 clean 명령에 의해 정리될 모든 파일들을 미리 보여줄 것이다.

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.19-2.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 19.2: 추적중이 아닌 (untracked) 파일들 강제 삭제하기

git clean -f

위 명령어는 추적중이 아닌 모든 파일들을 삭제할 것이다

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.19-1.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 19.1: 대화형 모드로 Clean 수행하기

git clean -i

위 명령어 수행 시 삭제될 항목들의 목록을 출력하고 승인 명령 입력을 아래와 같이 요청할 것이다:

Would remove the following items: folder/file1.py folder/file2.py *** Commands *** 1: clean 2: filter by pattern 3: select by numbers 4: ask each 5: quit 6: help What now>

대화형 옵션인 -i-X-d 등등의 다른 옵션들과 함께 사용 가능하다.

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.19-0.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Chapter 19: Git Clean

파라미터 설명
-d 추적중이지 않은 (untracked) 파일들 뿐만 아니라 추적중이지 않은 디렉토리까지 삭제한다. 만약 추적되지 않는 디렉토리가 다른 git 저장소에 의해 관리되는 디렉토리라면, 기본적으로 해당 디렉토리는 삭제되지 않는다. 이러한 디렉토리까지 삭제하기 위해서는 -f 옵션을 두번 사용하라.
-f, --force 만약 Git 환경설정 변수인 clean.requireForce 가 false 로 설정되어 있지 않다면, git clean-f, -n 혹은 -i 옵션이 주어지지 않는 한 파일이나 디렉토리 삭제 명령을 거부할 것이다. 또한 Git 은 두번째 -f 옵션이 주어지지 않는 한 .git 서브디렉토리를 포함하는 디렉토리와 파일들에 대해 삭자 명령을 거부할 것이다.
-i, --interactive 매 파일 삭제에 대한 대화형 프롬프트를 실행시켜 준다.
-n, --dry-run 실제 파일을 삭제하는 대신에, 삭제될 파일들의 목록을 표시만 한다.
-q,--quiet 삭제에 성공한 파일들의 목록은 표시하지 않고 에러가 발생한 경우에만 알려준다.

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.18-6.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 18.6: 삭제된 브랜치 복구하기

삭제된 브랜치를 복구하기 위해서는 우선 아래의 명령을 통해 삭제된 브랜치의 head 가 어떤 커밋이었는지를 검색해야 한다.

git reflog

그런 다음, 아래 명령어를 이용해 브랜치를 재생성하도록 한다.

git checkout -b <branch-name> <sha1-of-commit>

그러나 만약 git 의 garbage collector 가 ref 와 연결되어 있지 않은 dangling 커밋들을 삭제해 버린 상태라면 이러한 방법으로도 브랜치를 복구할 수 없을 것이다. 특히 작은 팀이나 기업 내부 프로젝트에서 작업중이라면 항상 저장소를 백업해 놓는 것이 좋을 것이다.

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.18-5.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 18.5: 특정 파일의 예전 버전을 복원하기

특정 파일을 예전 버전으로 복원하기 위해서는 reset 명령어를 사용할 수 있다.

git reset <sha1-of-commit> <file-name>

만약 현재 작업 디렉토리에 해당 파일의 (불필요한) 변경사항이 존재한다면, --hard 옵션을 통해 강제로 덮어쓰기 할 수 있다.

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.18-4.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 18.4: 파일을 삭제 후 커밋한 경우 해당 파일 다시 복원하기

만약 의도치 않게 파일을 삭제 후 커밋을 수행하였는데, 이후에 해당 파일이 다시 필요한 경우에는 아래와 같은 방법을 따르도록 한다.

우선 해당 파일을 삭제한 커밋을 검색한다.

git log --diff-filter=D --summary

위 명령어 수행 시, 파일을 삭제한 커밋들을 정렬하여 보여줄 것이다.

파일 삭제가 수행된 커밋을 찾았다면, 아래와 같이 해당 파일을 복구한다.

git checkout 81eeccf~1 <your-lost-file-name>

(81eeccf 부분은 위에서 검색한 커밋 id 로 대체하라)

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.18-3.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 18.3: 유실된 커밋 복원하기

만약 현재 위치를 예전 커밋으로 되돌리는 바람에 최신 커밋들이 유실되었다면, 해당 유실된 커밋들을 아래 명령어를 통해 복원할 수 있다.

git reflog

이제 유실된 커밋을 목록에서 검색하여, 해당 커밋 위치로 HEAD 를 재설정하면 된다.

git reset HEAD --hard <sha1-of-commit>

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형

+ Recent posts