So erstellen Sie Pull Requests von Ihrem Terminal aus

Pull Requests (PRs) sind grundlegend für die kollaborative Entwicklung auf GitHub und ermöglichen Code-Reviews und Diskussionen, bevor Änderungen zusammengeführt werden. Diese Anleitung erklärt, wie Sie PRs effizient über das Terminal erstellen und verwalten können, hauptsächlich mit der GitHub CLI (gh
).
Wichtige Erkenntnisse
- Lernen Sie, die GitHub CLI für PR-Management zu nutzen
- Beherrschen Sie terminal-basierte PR-Workflows
- Befolgen Sie Best Practices für die PR-Erstellung
- Bewältigen Sie häufige Problemlösungsszenarien
- Implementieren Sie fortgeschrittene PR-Funktionen
Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes haben:
- Git installiert und konfiguriert (Git herunterladen)
- GitHub CLI (
gh
) installiert (GitHub CLI Dokumentation) - Ein GitHub-Konto (Registrieren)
- Repository-Zugriff und erforderliche Berechtigungen
- Grundlegendes Verständnis von Git-Befehlen
Einrichtung der GitHub CLI
Installation
Wählen Sie Ihr Betriebssystem:
macOS
# Mit Homebrew
brew install gh
# Mit MacPorts
sudo port install gh
Linux
# Debian/Ubuntu
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg
echo ""deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main"" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
sudo apt update
sudo apt install gh
# Fedora
sudo dnf install gh
# Arch Linux
sudo pacman -S github-cli
Windows
# Mit Scoop
scoop install gh
# Mit Winget
winget install --id GitHub.cli
Authentifizierung
Nach der Installation authentifizieren Sie sich bei GitHub:
gh auth login
Folgen Sie den interaktiven Aufforderungen, um die Authentifizierung abzuschließen. Sie können zwischen HTTPS- oder SSH-Protokollen wählen.
Erstellen eines Pull Requests
1. Ihren Branch vorbereiten
# Aktualisieren Sie Ihren lokalen main-Branch
git checkout main
git pull origin main
# Erstellen und wechseln Sie zu einem neuen Feature-Branch
git checkout -b feature/your-feature-name
2. Änderungen vornehmen und committen
# Alle Änderungen stagen
git add .
# Commit mit aussagekräftiger Nachricht erstellen
git commit -m ""feat: implement new feature
- Added new functionality
- Updated documentation
- Fixed related issues""
3. Änderungen pushen
# Ihren Branch zu GitHub pushen
git push -u origin feature/your-feature-name
4. Pull Request erstellen
Mit GitHub CLI (Empfohlen)
Einfache PR-Erstellung
gh pr create --title ""Feature: Implement New Functionality"" --body ""Description of changes""
Erweiterte PR-Erstellung
gh pr create
--title ""Feature: Implement New Functionality""
--body ""## Changes
- Implemented new feature
- Updated tests
- Added documentation
## Related Issues
Closes #123""
--base main
--head feature/your-feature-name
--reviewer username1,username2
--label ""enhancement,documentation""
--milestone ""v1.0.0""
--project ""Project Board""
5. Ihren PR verwalten
# PR im Browser anzeigen
gh pr view --web
# PR-Status prüfen
gh pr status
# Alle PRs auflisten
gh pr list
# Reviewer zu bestehendem PR hinzufügen
gh pr edit --add-reviewer username1,username2
# Labels hinzufügen
gh pr edit --add-label ""priority,bug""
Best Practices
- Branch-Benennung
- Verwenden Sie beschreibende Präfixe:
feature/
,fix/
,docs/
,refactor/
- Fügen Sie gegebenenfalls die Issue-Nummer ein:
feature/123-user-authentication
- Verwenden Sie beschreibende Präfixe:
- Commit-Nachrichten
- Folgen Sie konventionellen Commits (Konvention)
- Geben Sie Bereich und Beschreibung an
- Referenzieren Sie Issues: ""fixes #123""
- PR-Beschreibung
- Verwenden Sie Vorlagen, falls verfügbar
- Fügen Sie Kontext und Begründung hinzu
- Listen Sie verwandte Issues und Abhängigkeiten auf
- Fügen Sie Screenshots für UI-Änderungen hinzu
- Code-Review
- Reagieren Sie zeitnah auf Feedback
- Aktualisieren Sie die PR-Beschreibung bei Bedarf
- Lösen Sie Konflikte schnell
Fehlerbehebung
Häufige Probleme und Lösungen
-
Authentifizierung fehlgeschlagen
gh auth login --web
-
Push abgelehnt
git pull origin main git rebase main git push -f origin feature/your-feature-name
-
Merge-Konflikte
git checkout main git pull git checkout feature/your-feature-name git rebase main # Konflikte lösen und fortfahren git rebase --continue
Erweiterte Funktionen
Entwurfs-PRs
gh pr create --draft
PR-Vorlagen
Erstellen Sie .github/pull_request_template.md
in Ihrem Repository für standardisierte PR-Beschreibungen.
Automatisierung der PR-Erstellung
Sie können Shell-Aliase oder Skripte für häufige PR-Muster erstellen:
# Zu .bashrc oder .zshrc hinzufügen
alias pr-create='gh pr create --template ""template.md"" --label ""needs-review""'
Denken Sie daran, Ihre GitHub CLI für die neuesten Funktionen aktuell zu halten:
# GitHub CLI aktualisieren
gh update
FAQs
[TOGGLE question=""Was tue ich, wenn die Authentifizierung fehlschlägt?""
answer=""Verwenden Sie gh auth login --web
, um sich über Ihren Browser statt über die Terminal-Schnittstelle zu authentifizieren.""]
[TOGGLE question=""Wie gehe ich mit abgelehnten Pushes um?""
answer=""1. Neueste Änderungen ziehen: git pull origin main
n2. Ihren Branch rebasen: git rebase main
n3. Force-Push: git push -f origin feature/your-feature-name
""]
[TOGGLE question=""Wie löse ich Merge-Konflikte?""
answer=""1. Zum main-Branch wechseln: git checkout main
n2. Neueste Änderungen ziehen: git pull
n3. Zu Ihrem Branch wechseln: git checkout feature/your-feature-name
n4. Rebase durchführen: git rebase main
n5. Konflikte lösen und fortfahren: git rebase --continue
""]
[TOGGLE question=""Kann ich Entwurfs-PRs erstellen?""
answer=""Ja, verwenden Sie das Flag --draft
: gh pr create --draft
""]
[TOGGLE question=""Wie verwende ich PR-Vorlagen?""
answer=""Erstellen Sie eine .github/pull_request_template.md
-Datei in Ihrem Repository für standardisierte PR-Beschreibungen.""]
Fazit
Die Beherrschung des terminal-basierten Ansatzes zum Erstellen und Verwalten von Pull Requests kann Ihren Entwicklungsworkflow erheblich verbessern. Die GitHub CLI (gh
) bietet eine leistungsstarke Sammlung von Tools, die den PR-Prozess von der Erstellung bis zum Merge optimieren. Indem Sie die in dieser Anleitung beschriebenen Best Practices befolgen und die Funktionen der GitHub CLI nutzen, können Sie:
- Zeit sparen, indem Sie Kontextwechsel zwischen Terminal und Browser vermeiden
- Eine gleichbleibende PR-Qualität durch Vorlagen und Konventionen gewährleisten
- Häufige PR-Herausforderungen effizient bewältigen
- Wiederkehrende PR-bezogene Aufgaben automatisieren