tag:forum.selfhtml.org,2005:/self Wie fremde Scripte von Github einbinden? – SELFHTML-Forum 2021-05-27T20:19:00Z https://forum.selfhtml.org/self/2021/may/27/wie-fremde-scripte-von-github-einbinden/1788748?srt=yes#m1788748 ebody 2021-05-27T17:45:18Z 2021-05-27T17:45:18Z Wie fremde Scripte von Github einbinden? <p>Hallo,</p> <p>ein Beispiel: Ich programmiere lokal eine Anwendung.</p> <p>Die Anwendung soll um eine bestimmte Funktion ergänzt werden. Dafür gibt es auf Github ein (fremdes) Repository bestehend aus verschiedenen Dateien und Verzeichnissen. Dieses möchte ich zu meinem lokalen Ordner hinzufügen und einbinden.</p> <p><strong>Wie geht man jetzt am besten vor?</strong></p> <ol> <li>Zip Datei von Github runterladen, entpacken und in meinen lokalen Ordner kopieren. Wäre aber umständlich, wenn das Repository aktualisiert wird.</li> </ol> <p>Habe ich es richtig verstanden, dass man dafür auch npm nutzen kann?</p> <ol start="2"> <li> <p>Das fremde Github Repository forken und per Git in mein lokales Verzeichnis laden. Ich glaube das heißt dann klonen oder?</p> </li> <li> <p>Das fremde Github Repository extern einbinden. Ist das möglich?</p> </li> </ol> <p>Meine Anwendung soll wiederum ein neues, eigenes Repository werden.</p> <p>Gruß ebody</p> https://forum.selfhtml.org/self/2021/may/27/wie-fremde-scripte-von-github-einbinden/1788750?srt=yes#m1788750 tk 2021-05-27T18:29:36Z 2021-05-27T18:29:36Z Wie fremde Scripte von Github einbinden? <p>Hallo,</p> <blockquote> <ol start="3"> <li>Das fremde Github Repository extern einbinden. Ist das möglich?</li> </ol> </blockquote> <p>Ja. Du musst es auch vorher nicht klonen o.ä., einfach als <a href="https://git-scm.com/book/de/v2/Git-Tools-Submodule" rel="nofollow noopener noreferrer">Submodul</a> einbinden. Alternativ lässt sich eine Abhängigkeit auch über <a href="https://getcomposer.org/doc/01-basic-usage.md" rel="nofollow noopener noreferrer">Composer</a> definieren, je nach dem wie das eigene Projekt und der Fremdcode strukturiert sind, ist das vielleicht sogar die bessere Wahl.</p> <p>Gruß,<br> Tobias</p> https://forum.selfhtml.org/self/2021/may/27/wie-fremde-scripte-von-github-einbinden/1788752?srt=yes#m1788752 dedlfix 2021-05-27T20:19:00Z 2021-05-27T20:19:00Z Wie fremde Scripte von Github einbinden? <p>Tach!</p> <blockquote> <ol> <li>Zip Datei von Github runterladen, entpacken und in meinen lokalen Ordner kopieren. Wäre aber umständlich, wenn das Repository aktualisiert wird.</li> </ol> </blockquote> <p>Als Submodul ins eigene Git-Reposisoty einbinden. Man kann neue Versionen pullen, man muss aber auch nicht zwingend die neueste Version nehmen. Man checkt die Version aus, die man haben möchte und dein Haupt-Repository merkt sich das. So kann man auch bei inkompatiblen Änderungen auf einem kompatiblen Stand bleiben.</p> <p>Wenn dir daran was unklar ist, lies erstmal die Beschreibung zu Submoduls und vielleicht ein Tutorial.</p> <blockquote> <p>Habe ich es richtig verstanden, dass man dafür auch npm nutzen kann?</p> </blockquote> <p>Das ist eine komplett andere Geschichte, die von Git oder anderen Versionsverwaltungstools unabhängig ist.</p> <p>NPM verwaltet Packages, die jemand dort veröffentlich hat.</p> <blockquote> <ol start="2"> <li>Das fremde Github Repository forken und per Git in mein lokales Verzeichnis laden. Ich glaube das heißt dann klonen oder?</li> </ol> </blockquote> <p>Sollte man nur tun, wenn man gedenkt, vom Forkstand ausgehend weitere Entwicklungen vorzunehmen. Ansonsten reicht das Einbinden als Submodul.</p> <blockquote> <ol start="3"> <li>Das fremde Github Repository extern einbinden. Ist das möglich?</li> </ol> </blockquote> <p>Was auch immer du darunter verstehst, aber mit Submodul solltest du bereits gut bedient sein.</p> <blockquote> <p>Meine Anwendung soll wiederum ein neues, eigenes Repository werden.</p> </blockquote> <p>Auch und gerade deswegen ist ein Submodul die vermutlich erst einmal beste Wahl.</p> <p>Allerdings, wenn du dich entscheidest, den NPM-Weg zu gehen, dann ist eh alles ganz anders. Git ist weiterhin dein Versionsverwaltungstool, aber die Abhängigkeiten verwaltet man in der package.json. Auch das wird sicher mit einem Tutorial klarer.</p> <p>dedlfix.</p>