417 Stimmen

Keine Submodulzuordnung in .gitmodule für einen Pfad gefunden, der kein Submodul ist

Ich habe ein Projekt, das ein Submodul unter lib/three20

Meine .gitmodule Datei sieht wie folgt aus:

[submodule "lib/three20"]
    path = lib/three20
    url = git://github.com/facebook/three20.git

Ich habe dies in der Vergangenheit ohne Fehler geklont, ( git submodule init gefolgt von einer git submodule update ) und es funktioniert schon seit einer Weile.

Ich habe versucht, diese auf einen neuen Rechner zu klonen, und jetzt erhalte ich diesen Fehler bei git submodule init :

No submodule mapping found in .gitmodules for path 'Classes/Support/Three20'

Dieser Pfad ist nur ein leerer Ordner in Xcode, den ich verwende, um die Projekte aus dem anderen Verzeichnis unterzubringen. Er ist nicht Teil des .gitmodules Datei, also weiß ich nicht, woher der Pfad kommt.

Irgendwelche Ideen?

0voto

user2281802 Punkte 201

In meinem Fall war der Fehler wahrscheinlich auf eine falsche Zusammenführung von .gitmodules auf zwei Zweigen mit unterschiedlichen Submodulkonfigurationen zurückzuführen. Nachdem ich die Anregungen aus diesem Forum aufgegriffen hatte, löste ich das Problem, indem ich die .gitmodules-Datei manuell editierte und den fehlenden Submoduleintrag hinzufügte. Danach wird der Befehl git submodule update --init --recursive ohne Probleme funktioniert.

0voto

Walter Wilfinger Punkte 161

Das Problem für uns war, dass in .gitmodules doppelte Submoduleinträge hinzugefügt worden waren (wahrscheinlich durch eine Zusammenführung). Wir suchten nach dem Pfad, über den sich git in .gitmodules beschwert hatte, und fanden die beiden identischen Abschnitte. Das Löschen eines der Abschnitte löste das Problem für uns.

Was auch immer es wert ist, Git 1.7.1 gab den "no submodule mapping" Fehler, aber Git 2.13.0 schien es nicht zu kümmern.

0voto

Malik Spruill Punkte 1

Fatal: Keine Url für Submodulpfad 'path/to/submodule' gefunden Keine Submodul-Zuordnung in .gitmodules für den Pfad 'path/to/submodule' gefunden

Diese Fehler begannen bei mir, als ich einmal von meinem Root-Verzeichnis-Ordner nach ./resources/css/style.css "cd".

Ich habe git init aus der Datei style.css und erkannte meinen Fehler, nachdem ich bereits git add remote origin <url> .

Also, noch in der Datei style.css in git bash, habe ich git remove remote origin .

Als ich die git remote war die Fernverbindung aufgehoben worden.

Letztendlich, nachdem ich git init für das Root-Verzeichnis und fügte es zu remote hinzu, der resources/css-Pfad lieferte die oben aufgelisteten Submodul-Fehler/fatal errors. Also gab ich im Root-Verzeichnis in der Git-Bash Folgendes ein git rm --cached resources/css , löschte das css-Verzeichnis (speicherte den Code), pushte die Änderungen und fügte ein css-Verzeichnis und die Datei styles.css in einem anderen Zweig (optional) hinzu, um zu sehen, wie das Ergebnis nach dem erneuten Push der Änderungen und der Überprüfung der Bereitstellung auf den Github-Seiten aussehen würde. Es hat funktioniert! Ich weiß, dass das Löschen von Verzeichnissen nicht immer ideal ist, vor allem bei großen Projekten, aber ich wollte nur einen weiteren Weg aufzeigen, um dieses Problem zu beheben!

P.S. Ich bin ziemlich neu bei Stackoverflow, also entschuldige ich mich für den langen Text. #2022 Antwort

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X