Mitwirkenden-Anleitung
Willkommen bei Casdoor! Dieses Dokument dient als Richtlinie, wie man zu Casdoor beitragen kann.
Wenn du falsche oder fehlende Informationen findest, hinterlasse bitte deine Kommentare oder Vorschläge.
Beteilige dich
Es gibt viele Möglichkeiten, zu Casdoor beizutragen. Hier sind einige Ideen, um anzufangen:
- Verwende Casdoor und melde Probleme. Wenn du Casdoor verwendest, melde alle Probleme - ob es sich um Fehler oder Vorschläge handelt - auf GitHub Discussions oder auf Discord, bevor du ein Issue auf GitHub einreichst.
Bitte verwende Englisch, um die Details deines Problems zu beschreiben, wenn du ein Issue meldest.
Hilf mit bei der Dokumentation. Mit der Dokumentation anzufangen, ist eine gute Wahl für deinen Beitrag.
Hilf bei der Lösung von Problemen. Wir haben eine Tabelle, die einfache Aufgaben für Anfänger unter Casdoor Easy Tasks enthält, mit unterschiedlichen Herausforderungsstufen, die mit verschiedenen Tags gekennzeichnet sind.
Mitwirken
Wenn du bereit bist, einen PR zu erstellen, hier ist der Workflow für Mitwirkende:
Forke zu deinem eigenen Repository.
Klone dein geforktes Repository in ein lokales Repository.
Erstelle einen neuen Branch und arbeite daran.
Halte deinen Branch synchron.
Committe deine Änderungen. Stelle sicher, dass deine Commit-Nachricht prägnant ist.
Pushe deine Commits zu deinem geforkten Repository.
Erstelle einen Pull Request von deinem Branch zu unserem Master-Branch.
Pull Requests
Bevor du anfängst
Casdoor verwendet GitHub als Entwicklungsplattform, und Pull Requests sind die primäre Quelle für Beiträge.
Hier sind einige Dinge, die du wissen musst, bevor du einen Pull Request öffnest:
Du musst das CLA unterschreiben, wenn du zum ersten Mal einen Pull Request erstellst.
Erkläre, warum du den Pull Request einreichst und was er für das Repo tun wird.
Nur ein Commit ist erlaubt. Wenn der PR mehr als eine Sache macht, bitte teile ihn auf.
Wenn es neu hinzugefügte Dateien gibt, bitte füge die Casdoor-Lizenz oben in den neuen Datei(en) hinzu.
// Copyright 2022 The Casdoor Authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
Semantische PRs
Deine Pull Requests sollten der Conventional Commits Spezifikation folgen. Die Grundvoraussetzung ist, dass nur der PR-Titel oder mindestens eine Commit-Nachricht. Zum Beispiel sind unten drei häufig verwendete PR-Titel gegeben:
PR-Titel müssen in Kleinbuchstaben sein.
fix: ein Commit vom Typ
fix
behebt einen Fehler in deiner Codebasis.fix: prevent racing of requests
feat: ein Commit vom Typ
feat
führt ein neues Feature in die Codebasis ein.feat: allow provided config object to extend other configs
docs: ein Commit vom Typ
docs
fügt hinzu oder verbessert die Dokumentation.docs: correct spelling of CHANGELOG
Für weitere Details, siehe bitte die Seite Conventional Commits.
PRs mit Issues verknüpfen
Du kannst einen Pull Request mit einem Issue verknüpfen, um zu zeigen, dass eine Lösung in Arbeit ist und um das Issue automatisch zu schließen, wenn der Pull Request gemerged wird.
Einen Pull Request mit einem Issue verknüpfen unter Verwendung eines Schlüsselworts
Du kannst einen Pull Request mit einem Issue verknüpfen, indem du ein unterstütztes Schlüsselwort in der Beschreibung des Pull Requests oder in einer Commit-Nachricht verwendest. Der Pull Request muss im Standardbranch sein.
- close
- fix
- resolve
Ein Issue im selben Repository, zum Beispiel:
Fix: #902
Für weitere Details, siehe bitte Linking a Pull Request to an Issue.
PRs ändern
Dein PR könnte eine Überarbeitung benötigen. Bitte ändere denselben PR, wenn der Code Änderungen benötigt; schließe den PR nicht und öffne einen neuen. Hier ist ein Beispiel:
Ändere den Code lokal.
Ändere deinen Commit.
git commit --amend
- Pushe zu deinem entfernten Repository.
git push --force
Dann hast du erfolgreich den PR geändert!
Codebezogen
Einige Prinzipien:
- Lesbarkeit: Wichtiger Code sollte gut dokumentiert sein. Der Code-Stil sollte mit dem bestehenden übereinstimmen.
Namenskonvention
Zum Beispiel signupUrl
für Variablennamen, Signup URL
für die Benutzeroberfläche.
Wie aktualisiert man i18n-Daten?
Bitte beachte, dass wir Crowdin als Übersetzungsplattform und i18next als Übersetzungstool verwenden. Wenn du Strings mit i18next im Verzeichnis web/
hinzufügst, kannst du i18n/generate_test.go
ausführen, um web/src/locales/**/data.json
automatisch zu generieren.
Führe i18n/generate_test.go
aus:
cd i18n && go test
Alle Sprachen sind standardmäßig auf Englisch ausgefüllt. Nachdem dein PR gemerged wurde, bist du ermutigt, bei der Übersetzung der neu hinzugefügten Strings in web/src/locales/zh/data.json
durch Crowdin zu helfen.
Wenn du mit einer Sprache nicht vertraut bist, übersetze sie bitte nicht; behalte die Datei, wie sie ist.
Lizenz
Indem du zu Casdoor beiträgst, stimmst du zu, dass deine Beiträge unter der Apache-Lizenz lizenziert werden.