Back

So erstellen Sie Pull Requests von Ihrem Terminal aus

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:

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

  1. Branch-Benennung
    • Verwenden Sie beschreibende Präfixe: feature/, fix/, docs/, refactor/
    • Fügen Sie gegebenenfalls die Issue-Nummer ein: feature/123-user-authentication
  2. Commit-Nachrichten
    • Folgen Sie konventionellen Commits (Konvention)
    • Geben Sie Bereich und Beschreibung an
    • Referenzieren Sie Issues: ""fixes #123""
  3. 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
  4. 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

  1. Authentifizierung fehlgeschlagen

    gh auth login --web
    
  2. Push abgelehnt

    git pull origin main
    git rebase main
    git push -f origin feature/your-feature-name
    
  3. 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 mainn2. Ihren Branch rebasen: git rebase mainn3. 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 mainn2. Neueste Änderungen ziehen: git pulln3. Zu Ihrem Branch wechseln: git checkout feature/your-feature-namen4. Rebase durchführen: git rebase mainn5. 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

Listen to your bugs 🧘, with OpenReplay

See how users use your app and resolve issues fast.
Loved by thousands of developers