>

projects/myRepo 디렉토리에 하위 모듈이있는 git 저장소가 있습니다.  디렉토리 이름을 projects/my-repo 로 바꾸고 싶습니다. .

이 질문에 따르면 mv 로 간단히 수행 할 수 있습니다. . 그러나 하위 모듈이있는 저장소에서는 git이 계속 알려줍니다.

fatal: Not a git repository: projects/myRepo/.git/path/to/submodule```

git status 에 대 한

.

서브 모듈 설정 :

[submodule "path/to/submodule"]  
   path = path/to/submodule  
   url = https://github.com/user/projectName.git 

어떻게 서브 모듈의 '내부 경로'가 업데이트되지 않습니까?! 이 서브 모듈 경로를 업데이트하도록 git에 지시하는 방법이 있습니까?

  • 답변 # 1

    웨스턴의 테스트 (복제 된 저장소에서 하위 모듈의 복제, 초기화 및 업데이트)가 해당 하위 모듈을 포함한 디렉토리의 이름을 바꿀 때 예상대로 작동했기 때문에 하위 모듈 .git 에서 무언가 잘못되었을 것입니다  원래 Git 저장소 하위 모듈에 있습니다.

    ' myRepo 를 참조하는 파일을 비교/찾을 수 있습니다 첫 번째 하위 모듈에서 '. 두 하위 모듈의 내용을 비교할 수도 있습니다 (첫 번째는 이름을 바꾸려고 시도했으며 두 번째는 복제 한 repo에 포함되어 있습니다)

  • 답변 # 2

    프로젝트 디렉토리를 변경 한 후에도 같은 오류가 발생했습니다 . iOS 6 XCode 4 프로젝트가 있지만 중요하지 않습니다.

    각 서브 모듈에 대해, 그것이 생각하는 절대 경로를 변경해야합니다. 경로는 해당 서브 모듈의 .git 파일에 설정됩니다. 하위 모듈의 .git은 표준 git 디렉토리의디렉토리와 달리파일입니다.

    각 서브 모듈에 대해 .git 파일에서 .gitdir 행을 변경하십시오. 내 프로젝트의 예는 다음과 같습니다.

    파일 : /path/to/project/submodules/RestKit/.git

    이전 gitdir :/path/to/project //. git/modules/submodules/RestKit

    이후 gitdir :/path/to/project //. git/modules/submodules/RestKit

  • 답변 # 3

    동일하게 동일한 동작을 경험했습니다. 하위 모듈이있는 디렉토리를 삭제하고 올바른 이름의 빈 디렉토리로 다시 만든 다음 git submodule update --init 를 실행하여 문제를 해결했습니다.  다시 초기화하십시오. 모두 해결되었습니다. 아마도 일부 권한 문제 (이전에는 백업에서 해당 디렉토리를 검색했으며 그에 대한 권한이 때때로 이상합니다).

  • 답변 # 4

    오늘 하위 모듈의 이름을 바꾸는 데 동일한 문제가 있었고 마지막으로 다음 단계를 사용하여 수정했습니다.

    이전 모듈 이름이 old/module 라고 가정  새로운 것은 new/module/path 입니다

    <올>

    레포의 뿌리 ( repo_root ) ), mv old/module new/module/path

    .git/modules 로 이동 <올>

    mv old/module new/module/path  (필요한 경우 먼저 폴더를 만듭니다)

    와이즈 비즈 변경 : new/module/name/config 업데이트  기입. 이 구성 파일에서 worktree 까지의 상대 경로 여야합니다.

    repo_root/new/module/path 로 이동   repo_root 를 편집 , new/module/path/.git 를 변경  이 파일에서 gitdir 까지의 상대 경로

    와이즈 비즈 변경  마스터 리포지토리 : repo_root/.git/modules/new/module/path 가 포함 된 줄 찾기   .git/config 로 업데이트

    [submodule "old/module"]

  • 이전 javascript - 문자열에서 첫 번째 문자 확인
  • 다음 명령형 언어에서 "필요한"재귀 사용