Kann mir jemand bitte sagen, warum ich das graue Symbol habe, wenn ich meine Dateien in Github schiebe? Im App-Verzeichnis sollten sich Modelle, Ansichten und Controller befinden, aber im Remote-GitHub kann ich nicht klicken.
Anscheinend haben Sie ein Submodul erstellt, das auf einen nicht erreichbaren Remote-Standort verweist.
Siehe diese Antwort . Wenn dieses Symbol grün ist, zeigt es auf das Untermodul. Ich gehe davon aus, dass es in Ihrem Fall ausgegraut ist, weil das Submodul falsch konfiguriert wurde.
Da .gitmodules
nicht vorhanden ist, muss er gelöscht worden sein, sodass ein Submodul keine Remote-Informationen hat.
Wenn Sie in app
gehen und git remote -v
eingeben, werden Sie sehen, wohin dieses Modul zeigt. Dieser Ort ist derzeit nicht erreichbar.
In einem ähnlichen Szenario habe ich ein Submodul hinzugefügt und .gitmodules
gelöscht. Das Ergebnis auf GitHub sieht folgendermaßen aus:
git rm --cached <folder_name>
Gehen Sie dann in das übergeordnete Verzeichnis und führen Sie Folgendes aus:
git add .
git commit -m "<your_message>"
git Push --all
Es sieht so aus, als hätten Sie git im Ordner initialisiert. Löschen Sie die git-Datei (rm -rf) aus dem Unterordner, erstellen Sie ein neues Repo und initialisieren Sie git erneut.
Git hält es für ein Submodul, da es ein .git-Verzeichnis enthält. Reparieren...
Geändertes Verzeichnis zum fehlerhaften Verzeichnis:
cd <offending git submodule>
Entfernen Sie das .git-Verzeichnis darin:
rm -rf .git
Aktualisieren Sie den Git-Cache:
git rm --cached <offending git submodule>
Wechseln Sie in das übergeordnete Verzeichnis:
cd ..
Fügen Sie das Verzeichnis zu git hinzu:
git add .
git commit -m "Changed submodule to directory"
git Push --all
Sie haben git bereits im App-Verzeichnis initialisiert und die Fernbedienung kann nicht gefunden werden. Löschen Sie die .git-Datei in der App. .
[app(master)]$ Sudo rm -r .git
Oder zeigen Sie die versteckten Dateien im Ordner und führen Sie sie manuell aus. Dann übernehmen Sie die Änderungen des übergeordneten Ordners erneut
Die einfachste Methode, die ich gefunden habe, bestand einfach darin, den Ordner aus dem lokalen Ordner zu entfernen und das Remote-Repo zu aktualisieren. Navigieren Sie zu Ihrem lokalen Verzeichnis und schneiden Sie den Ordner mit dem falsch eingerichteten .git-Unterordner an einen anderen Ort (außerhalb des lokalen Repos, z. B. Desktop), damit Sie das Problem beheben und später erneut kopieren können. Führen Sie dann Folgendes aus:
git submodule update
git add --all
git commit --all
git Push
Dies sollte den Ordner entfernen, der auf dem Remote-Repo grau hinterlegt ist. Kopieren Sie den Ordner anschließend erneut in Ihre lokalen Dateien und führen Sie den Befehl add --all commit --all git Push wie oben beschrieben aus. Achten Sie darauf, zuerst den falsch eingerichteten .git-Ordner aus dem Unterordner zu löschen, um dasselbe Problem zu vermeiden nochmal; Um dies auf Linux-Systemen zu finden, verwenden Sie cntrl-h innerhalb des Ordners, um versteckte Dateien in Ihren Ordnern anzuzeigen. In einem Unterordner, der das Problem verursacht, wird ein .git-Ordner angezeigt. Löschen Sie einfach die Datei, die aufgelöst werden soll
In meinem Fall hatte ich bei der Bereitstellung auf Heroku vor ein Git-Repository im Stammordner (das mit manage.py erstellt) initialisiert, bevor [] ein Git-Repository im übergeordneten Ordner des Projekts eingerichtet wurde.
Beim Erstellen eines neuen Repos im übergeordneten Ordner des Projekts wurde der Stammordner für die Modellansichten und Controller ausgegraut. Folgendes hat für mich gearbeitet:
Führen Sie in Ihrem Stammordner den Ordner mit manage.py Folgendes aus:
git remote hinzufügen Origin "github repo link"
git Push -u Origin master
Es hat bereits ein .git in sich und erscheint daher grau.