Git 하위 모듈의 추적되지 않은 상태를 제거하는 방법은 무엇입니까?
Git의 하위 모듈에서 추적되지 않은 내용을 제거할 수 없을 것 같습니다. 중입니다.git status산출량:
분기 마스터에커밋을 위해 준비되지 않은 변경 사항:
(커밋할 내용을 업데이트하려면 "git add..."를 사용합니다.)(작업 디렉토리의 변경사항을 취소하려면 "git checkout --..."을 사용합니다.)(하위 모듈에서 추적되지 않거나 수정된 내용을 커밋 또는 삭제)#수정됨: 번들/스냅메이트(추적되지 않은 콘텐츠)수정됨: 번들/다운로드(추적되지 않은 내용)수정됨: 번들/슬롯-슬롯 공간(추적되지 않은 내용)수정됨: 번들/젠코딩(추적되지 않은 내용)#커밋에 추가된 변경 사항 없음("git add" 및/또는 "git commit -a" 사용)
추가--ignore-submodules매개 변수는 이러한 메시지를 숨깁니다. 하지만 더 적합하고 핵심적인 방식으로 이 오물을 제거할 수 있는 방법이 있는지 궁금합니다.
저는 이 블로그 게시물이 전반적으로 작동하는 것을 발견했습니다.추가를 통해ignore = dirty 항에옵의 각 에 대한 .gitmodulesjava.
[submodule "zen-coding-gedit3"]
path = zen-coding-gedit3
url = git://github.com/leafac/zen-coding-gedit3.git
ignore = dirty
Git 상태는 추적되지 않은 내용을 보고하므로, 상태를 정리하는 실제 방법은 각 하위 모듈에 들어가 다음과 같습니다.
- 추적되지 않은 내용을 추가하고 커밋합니다.
- 또는 추적되지 않은 내용을 참조합니다.
.gitignore각 모듈에 고유합니다. - 서브모듈의을 ignored 내용으로 추가할 수 .
.git/info/excludeasspeci1 보고서가 댓글에 있습니다. 또는 ezraspectre의 답변(업데이트)에 언급된 대로 하위 모듈 사양에 더티를 추가합니다.
git config -f .gitmodules submodule.<path>.ignore untracked또는 글로벌 추가
.gitignorefile)~/.gitignore-global예를들어어..DS_Store제 에는 는또나경우의경우▁or.Carthage/Build마리안 체르니가 댓글에 보고한 것처럼.관리 페이지 참조:
사용자가 모든 상황에서 Git가 무시하기를 원하는 패턴(예: 선택한 사용자의 편집자가 생성한 백업 또는 임시 파일)은 일반적으로 사용자의 웹 페이지에 지정된 파일로 들어갑니다.
~/.gitconfig은 " 값은다같다니습과음기본다"입니다.$XDG_CONFIG_HOME/git/ignore.한다면$XDG_CONFIG_HOME는 설정되지 않았거나 비어 있으며 대신 사용됩니다.
각 하위 모듈 디르로 이동하여 별도의 깃 역할을 수행할 수도 있습니다.예:
cd my/project/submodule
git status
/수정된 파일 목록을 가져옵니다/
git add . //to add all of them to commit into submodule
git commit -m "message to your submodule repo"
또한 원격 하위 모듈 레포를 업데이트할 수 있습니다.
git submodule update
결국.
이 일은 저에게 잘 해결되었습니다.
git update-index --skip-worktree <path>
사용할 수 없는 경우pathname파일 이름을 사용해 보십시오.이것도 당신에게 효과가 있었는지 알려주세요.
그것은 아마도 그것 때문일 것입니다.detached HEAD하위 모듈 분기에 있습니다.이 경우 하위 모듈 경로로 이동합니다(예: ./bundle/snipmate), 그런 다음 실행합니다.git checkout master.
저는 어제 12개에 가까운 하위 모듈이 있는 프로젝트에서 이 문제를 해결할 수 없었습니다.
git status출력을 보여주고 있었습니다.
# On branch master
# Changes not staged for commit:
# (use "git add ..." to update what will be committed)
# (use "git checkout -- ..." to discard changes in working directory)
# (commit or discard the untracked or modified content in submodules)
#
# modified: proj1 (untracked content)
# modified: proj1 (modified content, untracked content)
# ...
추적되지 않은 콘텐츠 오류를 해결하기 위해 모든 서브모듈에서 추적되지 않은 파일을 제거해야 했습니다.*.pyc,*.pyopython에서 생성한 파일)을 사용하여.gitignore.
다른 하나를 해결하기 위해, 나는 도망쳐야 했습니다.git submodule update각 하위 모듈을 업데이트했습니다.
특정 폴더 안에 다른 .git [숨겨진 폴더]가 있을 때 이 문제가 발생할 수 있습니다.
수정됨: ./../ .(수정된 내용, 추적되지 않은 내용)
하위 디렉터리에 이 .git 폴더가 포함되어 있지 않은지 확인합니다.
이 경우 하위 디렉터리에서 .git 폴더를 수동으로 삭제하여 문제를 해결할 수 있습니다.
이 경우 ZF2 환경에서 새 모듈의 시작점으로 모듈을 복제합니다.이렇게 하면 고유한 .git 폴더를 디렉터리에 저장할 수 있습니다.
이 경우 해결책은 .git 폴더를 삭제하는 것입니다(숨겨진 파일을 표시해야 볼 수 있습니다).
저는 SourceTree를 사용하는 것을 선호하기 때문에, 저의 해결책은 추적되지 않은 모든 파일의 목록을 보여주는 SourceTree의 하위 모듈 레포를 여는 것이었습니다.그런 다음 그룹에서 모두 선택한 다음 "제거"를 사용했습니다.
추적되지 않은 모든 파일이 실제로 필요하지 않다는 것을 알고 있었기 때문에 이 작업을 수행할 수 있었습니다.
일시적인 문제인 경우 하위 모듈 폴더로 이동하여 실행할 수 있습니다.git reset HEAD --hard서브모듈 내부의 모든 변경 사항을 잃게 됩니다.
제 경험에 따르면 MacOS의 경우 다음과 같이 나타날 수 있습니다.._파일이 생성되었습니다.그런 경우: 시도dot_clean .
하위 폴더에서 .git 폴더를 삭제하기만 하면 됩니다.
언급URL : https://stackoverflow.com/questions/5126765/how-to-get-rid-of-git-submodules-untracked-status
'programing' 카테고리의 다른 글
| WPF에서 종속성 속성과 연결된 속성의 차이점은 무엇입니까? (0) | 2023.06.21 |
|---|---|
| 원격 저장소의 특정 버전 GitClone (0) | 2023.06.21 |
| C#.net 코드에서 null 변수를 SQL 저장 프로시저로 전달하는 방법 (0) | 2023.06.21 |
| 오류 - 직렬화 가능으로 표시되지 않음 (0) | 2023.06.16 |
| SQL Server에는 패키지가 없기 때문에 프로그래머는 이를 피하기 위해 무엇을 합니까? (0) | 2023.06.16 |