Hier ist ein Teil des Inhalts meiner .gitmodules
Datei:
[submodule "src/static_management"]
path = src/static_management
url = git://github.com/eykd/django-static-management.git
[submodule "external/pyfacebook"]
path = external/pyfacebook
url = http://github.com/sciyoshi/pyfacebook.git
.git/config
Enthält jedoch nur das erste:
[submodule "src/static_management"]
url = git://github.com/eykd/django-static-management.git
Das zweite Submodul ( external/pyfacebook
) wurde von einem anderen Entwickler in einem Feature-Zweig hinzugefügt. Ich habe die Entwicklung jetzt geerbt und den Feature-Zweig überprüft. Git wird das Submodul jedoch nicht für mich ziehen. Ich habe es versucht:
git submodule init
git submodule update
git submodule update --init
git submodule sync
- Entfernen aller Submoduldefinitionen aus
.git/config
und Ausführengit submodule init
. Es kopiert nur das zuvor vorhandene Submodul und ignoriert das neue. - Neue Submoduldefinitionen
.git/config
manuell eingeben und ausführengit submodule update
. Nur die zuvor vorhandenen Submodule müssen aktualisiert werden.
in verschiedenen Kombinationen, aber git wird einfach nicht .git/config
basierend auf dem neuen Inhalt von aktualisiert .gitmodules
, noch wird es den external/pyfacebook
Ordner erstellen und den Inhalt des Submoduls abrufen.
Was vermisse ich? Ist ein manueller Eingriff (Hinzufügen eines Submoduleintrags von Hand zu .git/config
) wirklich erforderlich, und warum?
Bearbeiten: Manueller Eingriff funktioniert nicht. Das manuelle Hinzufügen des neuen Submoduleintrags zu .git/config
macht nichts. Das neue Submodul wird ignoriert.