Vorbereiten und Hochladen eines vorhandenen Projekts auf GitHub
In dieser Lektion werden wichtige Überlegungen zum Hochladen eines Projekts auf GitHub erörtert.
Warum sollten Sie auf GitHub hochladen?
Es gibt Bände von Literatur, welche die Tugenden von GitHub preisen, und es liegt außerhalb des Umfangs dieses Moduls, Sie davon zu überzeugen, teilzunehmen. In diesem Modul wiederholen wir jedoch einige der wichtigsten Vorteile im Kontext der Themen, die Sie bei der Planung Ihres Uploads berücksichtigen müssen.
Versionskontrolle
GitHub verwendet ausschließlich Git, wohl das beste Versionssteuerungssystem. Git ist jedoch unglaublich anspruchsvoll und kann komplexe Szenarien für das Arbeiten mit Code ermöglichen, mit denen Ihr Team möglicherweise nicht vertraut ist. Branches und Pull Requests sind ein grundlegender Bestandteil des täglichen Lebens für Entwickler, die Git verwenden. Daher ist es wichtig zu verstehen, wann und wie sie effektiv genutzt werden können, um auf GitHub erfolgreich zu sein. Es lohnt sich für Ihr Team, sich zunächst mit dem GitHub Flow vertraut zu machen, um sofort durchstarten zu können.
Code in der Cloud
Ein großer Teil des Projektcodes wird immer noch ausschließlich auf den Rechnern der Entwickler gespeichert. Beim Hochladen auf GitHub verschieben Sie Ihren Code auf die Cloudplattform von GitHub, auf der Teammitglieder problemlos von überall aus darauf zugreifen können. Diese Änderung bietet eine gute Möglichkeit, die Richtlinie Ihres Teams für die Arten von Dateien und Daten zu überprüfen, die Sie in der Versionskontrolle behalten. Als bewährte Methode sollten Sie davon ausgehen, dass alles, was Sie auf GitHub übernehmen, potenziell kompromittiert wird. Achten Sie daher darauf, keine vertraulichen Daten wie API-Schlüssel, Kennwörter oder andere Dateien einzuschließen, die vergleichbare Informationen enthalten.
Hinweis
GitHub bietet sowohl öffentliche als auch private Repositorys sowie detaillierte Zugriffssteuerungen für verschiedene Teile eines Repositorys. Dadurch können Sie steuern, für wen Ihre Projekte sichtbar sind und welche Aktionen ein bestimmter Benutzer durchführen kann.
Zusammenarbeit
GitHub ist durch Features wie Issues, Pull Requests und Code Reviews eine hervorragende Unterstützung für die Zusammenarbeit im Team. Der GitHub-Flow kann sich jedoch von den Praktiken unterscheiden, an die Ihr Team derzeit gewöhnt ist. Es empfiehlt sich, zu überlegen, wie sich Ihr Team an GitHub anpassen wird und ob bestehende Vorgänge beibehalten werden sollen.
Wenn es sich bei Ihrem Projekt um ein Open-Source-Projekt handelt, das externe Mitwirkende zulässt, profitieren Sie mit GitHub von den größtmöglichen Vorteilen.
Hochladen auf GitHub
Überlegungen planen
Das wichtigste vor der Ausführung Ihres Uploads auf GitHub ist zu überlegen, ob Sie etwas über den aktuellen Zustand Ihrer Quelle hinaus beibehalten müssen. Beispielsweise verwenden Sie möglicherweise ein Arbeitsblatt oder eine Projektmanagementsoftware, um Fehler nachzuverfolgen, die Sie korrigieren möchten. Die Unterstützung für die Migration dieser Elemente hängt von der Plattform ab und ist bei Communityprojekten allgemein verfügbar. Dieses Modul deckt nicht die Migration dieses Datentyps ab.
Umgang mit Binärdateien, die derzeit in Ihrem Projekt gespeichert sind
Eine bewährte Methode besteht darin, GitHub-Repositorys auf die Dateien zu beschränken, die zum Erstellen von Projekten benötigt werden. Vermeiden Sie das Übertragen großer Binärdateien wie Buildartefakte. Binärdateien wie Arbeitsblätter und Präsentationen können besser über geeignete Portale zur Verarbeitung und Versionierung nachverfolgt werden. Wenn Sie große Binärdateien verwenden müssen, sollten Sie die Git-Erweiterung Git LFS (Großer Dateispeicher) verwenden.
Erstellen wichtiger Git-Dateien wie .gitignore
Git unterstützt .gitignore
-Dateien zum Erzwingen von Dateirichtlinien für die Versionskontrolle. Diese Dateien definieren die Suchmuster, mit denen Dateien und Ordner aus der Quellcodeverwaltung ausgeschlossen werden. Im folgenden Beispiel werden alle Ordner mit dem Namen "Bin " oder " Bin" und deren Inhalt rekursiv von der Nachverfolgung der Quellcodeverwaltung ausgeschlossen.
[Bb]in/
Erfahren Sie mehr über das Ignorieren von Dateien. Schauen Sie sich auch die Sammlung von Startdateien .gitignore
an, die für verschiedene Plattformen im Gitignore-Repository angeboten werden.
Es gibt viele andere Dateien, die häufig in GitHub-Projekten verwendet werden, um Benutzern und Mitwirkenden von Repositorys unterschiedliche Richtlinien zu erklären. Auch wenn Ihr Projekt privat und auf eine bestimmte Zielgruppe beschränkt ist, kann es dennoch nützlich sein, diese Richtlinien explizit zu formulieren. Obwohl keine dieser Dateien erforderlich ist, sind einige der häufig verwendeten hier aufgeführt.
Datei | Zweck |
---|---|
README.md |
Dies ist die Landing Page für das Verzeichnis. Diese Seite wird gerendert, wenn das zugehörige Verzeichnis auf GitHub angezeigt wird. |
LICENSE.md |
Diese Datei enthält die Lizenz, unter welcher der Code bereitgestellt wird. |
CONTRIBUTING.md |
Diese erläutert, wie Benutzer beim Projekt mitwirken sollten (z. B. Pull Request-Erwartungen). |
SECURITY.md |
Erläutert die Sicherheitsrichtlinie für das Projekt. Diese Datei enthält Anleitungen für Benutzer, die vertraulichen sicherheitsrelevanten Code oder Feedback übermitteln möchten, das nicht öffentlich werden sollte, bevor es behandelt werden konnte. |
Erfahren Sie mehr über das Einrichten Ihres Projekts für gesunde Beiträge.
Wie Sie Ihr Projekt auf GitHub hochladen
Nachdem Sie Ihr Repository für das Hochladen vorbereitet haben, erstellen Sie auf GitHub ein Repository. Navigieren Sie nach der Erstellung zur Registerkarte "Code " Ihres GitHub-Repositorys. Diese Ansicht bietet Ihnen mehrere Möglichkeiten zum Hochladen Ihres Projektcodes.
Es wird empfohlen, den Git-Client oder ein Git-freundliches Tool zum Hochladen Ihrer Quelle zu verwenden. Alternativ können Sie Ihre Dateien manuell hochladen, indem Sie einen neuen Dateilink erstellen . Langfristig stellen Sie wahrscheinlich fest, dass die Verwendung eines Git-Clients die beste Möglichkeit zum Verwalten von Änderungen, Verzweigungen und mehr ist.