Problem mit node js?
Ich wollte gerade mein projekt in github hochladen doch dann ist mir aufgefallen dass ich den Ordner node_modules nicht hochladen kann weil er zu groß ist. Um diesen Ordner in mein git repository zu bekommen muss ich git installieren. doch wenn ich diesen Command eingebe git branch -m main eingebe, kommt diese fehlermeldung
error: refname refs/heads/master not found
fatal: Branch rename failed
kann mir da jemand helfen?🙃
2 Antworten
Den node_modules ordner kopiert man praktisch niemals irgendwo hin oder lädt ihn in ein repository hoch. Viele Entwickler würden einen Anfall bekommen, wenn sie einen node_modules Ordner in einem Repository sehen. Er enthält in der Regel Unmengen an Dateien, deshalb dauert das selbst auf den schnellsten Rechner oft länger, als einem recht ist, und es verschwendet unnötig Speicherplatz. Deshalb landet er auch nicht im git repository, sondern auf der .gitignore, damit sichergestellt ist, dass er nicht hochgeladen wird.
Es ist auch vollkommen unnötig. Denn vielleicht hast du in deinem Projekt-Verzeichnis mal eine package.json-Datei bemerkt. In der steht drin, welche Node Modules (Packages) benötigt werden.
Deshalb muss man nur die package.json auf das System kopieren, auf dem man das Node,js-Programm ausführen will, und im Terminal einmal den Befehl:
npm i
ausführen. Und schon wird der node_modules Ordner neu angelegt und alle benötigten Daten aus der NPM Registry runtergeladen, was tatsächlich fast immer schneller ist, als es zu kopieren.
Du kannst auch bei Projekten auf deinem PC, and denen du gerade nicht mehr arbeitest, jederzeit einfach den node_modules Ordner löschen, um Speicherplatz freizugeben. Sobald du wieder am Projekt arbeitest, einmal npm i, und es ist wieder alles da.
STOP! Den Ordner node_modules sollte man NIE in Git hochladen.
Dieser Ordner enthält nur die installierten Node Pakete (z.B. von npm). Diese sind jedoch nicht notwendig, um das Projekt zu installieren, dafür reicht die package.json aus. Ansonsten kann es schnell zu Problemen kommen, wenn das Projekt auf einem anderen System installiert wird und der Speicher in Git wird unnötig belastet.
Bitte füge diesen Ordner zur ".gitignore" Datei hinzu (muss ggf. manuell erstellt werden), in dem du folgende Zeile dort einfügst:
node_modules
Dadurch wird der Ordner nicht mehr mit hochgeladen.
wie sieht es dann aber aus mit z.b. ejs? Denn ich möchte die website später hosten und dann brauche ich umbedingt ejs. Sorry bin halt anfänger🙃.