Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,075 of 9,075 pages
About the help in other languages
All help pages

Auf GitHub forken, Schritt für Schritt

Forken Sie das Repository einer Erweiterung auf GitHub, klonen Sie es, fügen Sie das Original als upstream hinzu, arbeiten Sie auf einem Branch und installieren Sie Ihren Fork mit Composer in eine Exponential-Website…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/extension-development/part-5-extend-fork-contribute/forking-on-github.md

On this page

This page is a translation. Read the English original

Auf GitHub forken, Schritt für Schritt

Teil 5, Kapitel 3. Dieses Kapitel führt durch das Forken einer Erweiterung auf GitHub und die Verwendung Ihres Forks in einer Entwicklungs-Website. Es setzt ein GitHub-Konto und Git auf Ihrem Rechner voraus (Mit Git entwickeln behandelt Git selbst). Das Beispiel forkt se7enxweb/expchangeclass; ersetzen Sie es durch das Repository, das Sie brauchen, und your-account durch Ihren GitHub-Benutzer oder Ihre Organisation.

1. Auf GitHub forken

  1. Öffnen Sie die Seite des Repositorys, zum Beispiel https://github.com/se7enxweb/expchangeclass.
  2. Klicken Sie auf Fork (oben rechts).
  3. Wählen Sie Ihr Konto als Eigentümer. Behalten Sie den Namen des Repositorys.
  4. Lassen Sie „Copy the main branch only“ angehakt, sofern Sie keine anderen Branches brauchen.
  5. Klicken Sie auf Create fork.

Sie haben jetzt https://github.com/your-account/expchangeclass, mit der gesamten Historie des Originals und dem Vermerk „forked from se7enxweb/expchangeclass“ unter seinem Namen. Dieser Vermerk ist Teil der Namensnennung: Lassen Sie den Fork verbunden, „lösen“ Sie ihn nicht ab.

2. Ihren Fork klonen

git clone [email protected]:your-account/expchangeclass.git
cd expchangeclass
git remote add upstream https://github.com/se7enxweb/expchangeclass.git
git remote -v

Sie sollten zwei Remotes sehen: origin (Ihr Fork, auf den Sie pushen) und upstream (das Original, von dem Sie holen).

3. Auf einem Branch arbeiten

Arbeiten Sie nie auf main Ihres Forks. Ein Branch je Änderung hält jeden Pull Request sauber:

git switch -c fix-menu-entry-csp
# edit files
git add design/admin/templates/popupmenu/classcontextmenu.tpl
git commit -m "Updated: The context menu entry carries no inline handler"
git push -u origin fix-menu-entry-csp

Benennen Sie den Branch nach der Änderung, nicht nach sich selbst.

4. Ihren Fork in einer Entwicklungs-Website verwenden

Eine mit Composer installierte Website kann die Erweiterung statt von Packagist aus Ihrem Fork beziehen. In der composer.json der Website:

{
    "repositories": [
        { "type": "vcs", "url": "https://github.com/your-account/expchangeclass" }
    ],
    "require": {
        "se7enxweb/expchangeclass": "dev-fix-menu-entry-csp"
    }
}

Dann:

composer update se7enxweb/expchangeclass

dev- plus der Name des Branches installiert diesen Branch. Composer liest den Paketnamen aus der composer.json des Forks, die weiterhin se7enxweb/expchangeclass lautet, daher behält die Anforderung diesen Namen. Leeren Sie danach die Caches und generieren Sie die Autoloads neu, wie bei jeder Änderung an einer Erweiterung.

Warnung Führen Sie composer update nicht auf einer Live-Website aus, um einen Fork zu testen. Verwenden Sie eine Entwicklungskopie. Ein Composer-Lauf kann auch Erweiterungen ersetzen, die Sie von Hand mit Git ausgecheckt haben; wissen Sie, wie Ihre Website installiert wurde, bevor Sie ihn ausführen.

Ohne Composer klonen Sie den Fork direkt nach extension/:

cd extension
git clone -b fix-menu-entry-csp [email protected]:your-account/expchangeclass.git expchangeclass

Der Ordnername muss der Name der Erweiterung sein (expchangeclass), nicht der des Repositorys, falls sie sich unterscheiden.

5. Wie es weitergeht

Was schiefgehen kann

ProblemUrsacheLösung
Permission denied (publickey) beim Klonenkein SSH-Schlüssel bei GitHubdie https-URL verwenden oder Ihren Schlüssel bei GitHub hinzufügen
Composer: „could not find a matching version“der Branch-Name in dev-... ist falsch, oder die composer.json des Forks hat einen anderen Namengit branch -r und das Feld name prüfen
Ihre Änderung ist auf der Website nicht sichtbardie Website verwendet noch das Originalcomposer show se7enxweb/expchangeclass zeigt die Quelle; die Caches leeren

Verwandte Seiten

Werden Sie Exponential-Partner

Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x