Git에서 로컬 작업 디렉토리를 지우려면 어떻게 해야 하나요?
Git에서 작업 디렉토리를 지우려면 어떻게 해야 하나요?
특정 파일을 마지막으로 커밋된 상태로 리셋하려면(특정 파일에서 커밋되지 않은 변경을 폐기하려면) 다음 절차를 수행합니다.
git checkout thefiletoreset.txt
이것은, 에 기재되어 있습니다.git status
출력:
(use "git checkout -- <file>..." to discard changes in working directory)
전체 리포지토리를 마지막으로 커밋된 상태로 재설정하려면:
git reset --hard
추적되지 않은 파일을 삭제하려면 보통 작업 복사본의 모든 파일을 삭제합니다(단,.git/
폴더!)를 클릭합니다.git reset --hard
그러면 커밋된 파일만 남게 됩니다.
더 좋은 방법은git clean
(경고:-x
다음과 같은 플래그를 지정하면 Git은 무시된 파일을 삭제합니다).
git clean -d -x -f
는 디렉토리를 포함한 추적되지 않은 파일을 삭제합니다(-d
git에 의해 무시된 파일( )-x
를 교환해 주세요.-f
와 언쟁하다.-n
예행연습을 하다-i
인터랙티브모드의 경우는, 삭제 대상이 표시됩니다.
관련 링크:
- git-timeout man 페이지
- git-clean man 페이지
- git ready "추적되지 않은 파일 정리" (Marko가 게시한 대로)
- 스택 오버플로우 질문 "현재 Git 작업 트리에서 로컬(추적되지 않은) 파일을 제거하는 방법"
용도:
git clean -df
광고가 잘 되진 않지만git clean
매우 편리합니다.Git Ready에는 에 대한 좋은 소개가 있습니다.
지금까지의 답변은 모두 로컬 커밋을 유지하고 있습니다.정말로 진지한 경우, 다음을 수행하여 모든 로컬 커밋과 모든 로컬 편집을 취소할 수 있습니다.
git reset --hard origin/branchname
예를 들어 다음과 같습니다.
git reset --hard origin/master
그러면 로컬 저장소가 원본 상태(추적되지 않은 파일 제외)와 정확히 일치합니다.
명령어를 읽고 나서 잘못하면:) git reflog를 사용하여 오래된 커밋을 찾습니다.
빈 작업 복사본을 포함하는 커밋을 만들 수 있습니다.
이것은 브루트 포스 리셋메커니즘을 사용하지 않기 때문에 일반적으로 안전한 비파괴 접근법입니다.먼저 모든 관리 대상 콘텐츠를 숨깁니다.git checkout empty
그러면 관리되지 않는 콘텐츠가 남아 있으면 수동으로 검토하고 제거할 수 있습니다.
## create a stand-alone, tagged, empty commit
true | git mktree | xargs git commit-tree | xargs git tag empty
## clear the working copy
git checkout empty
이제 작업 복사본에 관리되는 컨텐츠가 없습니다.남은 것은 관리되지 않는 파일과.git
폴더 자체입니다.
작업 복사본을 다시 채우려면...
git checkout master ## or whatever branch you will be using
만약 당신이 앞을 내다보는 개인이라면, 모든 것을 처음의 빈 약속에 기초함으로써 저장소의 시작을 잘 할 수 있을 것이다.
git init
git commit --allow-empty --allow-empty-message -m ""
git tag empty
...
태그가 달린 빈 워크트리의 용도는 다양합니다. 것은 뿌리의 수를 입니다.git worktree
서브폴더
커밋되지 않은 변경을 모두 폐기하고 다른 브랜치로 전환하려면(예를 들어 Git의 행 끝 처리가 이상하기 때문에 발생함)
git checkout -f <branchname>
파일이 있는 비어 있습니다).git diff --ignore-space-at-eol
수 것, 명령어로는 지울 수 없는 것.git checkout <branchname>
안 안 -f
(오류)--force
★★★★★★ 。
git 상태가 나타내는 대로 특정 파일을 리셋하려면:
git checkout <filename>
폴더를 재설정하려면
git checkout <foldername>/*
언급URL : https://stackoverflow.com/questions/673407/how-do-i-clear-my-local-working-directory-in-git
'itsource' 카테고리의 다른 글
WPF: 이미지를 원래 크기로 표시하는 방법 (0) | 2023.04.12 |
---|---|
Bash에서 문자열에서 마지막 n자를 제거하려면 어떻게 해야 합니까? (0) | 2023.04.12 |
iOS 업데이트 후에도 이전 시작 화면 및 앱 아이콘 유지 (0) | 2023.04.12 |
현재 위치 권한 대화 상자가 너무 빨리 사라짐 (0) | 2023.04.12 |
NSString에서 번호를 제외한 모든 번호 삭제 (0) | 2023.04.12 |