
Versionsverwaltung mit Git
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
- Von grundlegenden Funktionen über die Handhabung von Branches und Remote-Repositorys bis zu Tipps und Tricks für (nicht nur) alltägliche Funktionen
- Auswahl sinnvoller Workflows und Einsatz in Teams
- Git-Repositorys hosten mit GitHub und GitLab
Git ist in der Softwareentwicklung bereits weit verbreitet - sowohl in Firmen als auch in Open-Source-Projekten. Zum Einstieg lernen Anfänger häufig nur die wichtigsten Befehle, die schnell nicht mehr ausreichen, vor allem wenn die ersten Fehler auftreten.
Dieses Buch behandelt einerseits die gängigen Befehle, die Sie beim täglichen Arbeiten mit Git brauchen. Andererseits geht es dem Autor auch darum, dass Sie Git als Ganzes verstehen, um es effektiv im Entwicklungsprozess einsetzen zu können.
Der Fokus des Buchs liegt auf dem praktischen Arbeiten mit Git. Sie lernen anhand eines Projekts, welche Befehle es gibt, wie diese arbeiten und wie Sie auftretende Probleme lösen können. Neben alltäglichen Funktionen finden Sie auch seltener gebrauchte Kommandos, die aber ebenfalls wichtig sind. Dabei legt der Autor großen Wert auf die Einbindung und Anpassung des Entwicklungsprozesses.
Im zweiten Teil des Buchs werden fortgeschrittene Themen behandelt. Der Schwerpunkt liegt auf dem Einsatz von Git in Teams. Darunter etwa das Hosten verteilter Repositorys mit GitHub und GitLab. Ein weiteres Kapitel behandelt die Workflows, die je nach Anzahl der beteiligten Personen, Branches und Repositorys eines Projekts variieren.
Darüber hinaus gibt Ihnen der Autor hilfreiche Informationen für den Umstieg von Subversion, einen Überblick über grafische Git-Programme, Hinweise für eine langfristig nachvollziehbare Git-Historie sowie eine Einführung in DevOps, wofür Git die technische Grundlage bildet. Ein Kapitel zu häufig gestellten Fragen rundet diesen Praxiseinstieg ab.
Das Buch richtet sich sowohl an blutige Einsteiger als auch an erfahrene Leser.
Aus dem Inhalt:
- Konfiguration
- Arbeiten mit Branches
- Verteilte Repositorys
- Hosting mit GitHub und GitLab
- Workflows
- Hooks
- Umstieg von Subversion
- Zahlreiche Tipps für die tägliche Arbeit
- Grafische Clients
- Tipps für nachvollziehbare Git-Historien
- Frequently Asked Questions
- Einstieg in DevOps
- Befehlsreferenz
More details
Other editions
Additional editions

Person
Sujeevan Vijayakumaran ist seit einem Jahrzehnt begeisterter Git-Nutzer und berät seit 2020 als Solutions Architect für GitLab Kunden bei der technologischen Umsetzung von DevOps.
Content
- Cover
- Titel
- Impressum
- Cheat Sheet
- Inhaltsverzeichnis
- Einleitung
- Aufbau des Buches
- Konvention
- Hinweise und Tipps
- Feedback
- Danksagung
- Kapitel 1: Einführung
- 1.1 Lokale Versionsverwaltung
- 1.2 Zentrale Versionsverwaltung
- 1.3 Verteilte Versionsverwaltung
- 1.4 Geschichtliches
- Kapitel 2: Die Grundlagen
- 2.1 Installation
- 2.2 Das erste Repository
- 2.3 Git-Konfiguration
- 2.4 Der erste Commit
- 2.4.1 Versionierte Dateien mit »git mv« verschieben
- 2.5 Änderungen rückgängig machen mit Reset und Revert
- 2.5.1 Revert
- 2.5.2 Reset
- 2.6 Git mit GUI
- 2.6.1 Commits mit Git GUI
- 2.7 Wie Git arbeitet
- 2.8 Git-Hilfe
- 2.9 Zusammenfassung
- Kapitel 3: Arbeiten mit Branches
- 3.1 Allgemeines zum Branching
- 3.2 Branches anlegen
- 3.3 Branches mergen
- 3.4 Merge-Konflikte
- 3.5 Mergetools
- 3.6 Merge-Strategien
- 3.6.1 resolve
- 3.6.2 recursive
- 3.6.3 octopus
- 3.6.4 ours
- 3.6.5 subtree
- 3.7 Rebasing
- 3.8 Stash und Clean
- 3.8.1 Das Arbeitsverzeichnis säubern
- 3.8.2 Dateien ignorieren
- 3.9 Zusammenfassung
- Kapitel 4: Verteilte Repositorys
- 4.1 Projekt mit einem Remote-Repository
- 4.2 Branch-Management
- 4.3 Tracking-Branches
- 4.4 Projekt mit drei Remote-Repositorys
- 4.5 Der Workflow mit drei Repositorys
- 4.6 Zusammenfassung
- Kapitel 5: Git-Hosting
- 5.1 GitHub
- 5.1.1 Repository anlegen
- 5.1.2 SSH-Keys anlegen und hinzufügen
- 5.1.3 SSH-Agent konfigurieren
- 5.1.4 Lokales Git-Repository konfigurieren
- 5.1.5 Repository klonen
- 5.1.6 Der GitHub-Workflow
- 5.1.7 GitHub-Repositorys um externe Tools erweitern
- 5.2 GitLab
- 5.2.1 Installation
- 5.2.2 Konfiguration
- 5.3 Weitere Git-Hosting-Lösungen
- 5.4 CI/CD: Continuous Integration und Continuous Delivery
- 5.4.1 Der Workflow
- 5.4.2 GitHub Actions
- 5.4.3 GitLab CI/CD
- 5.5 Zusammenfassung
- Kapitel 6: Workflows
- 6.1 Interaktives Rebasing
- 6.1.1 Branches pseudo-sichern
- 6.1.2 Den letzten Commit verändern
- 6.1.3 Mehrere Commits verändern
- 6.1.4 Reihenfolge der Commits anpassen
- 6.1.5 Commits ergänzen
- 6.1.6 Commits squashen
- 6.1.7 Commits autosquashen
- 6.1.8 Commits droppen
- 6.1.9 Commit aufteilen
- 6.2 Workflow mit einem Branch und Repository für eine Person
- 6.3 Workflow mit mehreren Personen, einem Repository und einem Branch
- 6.4 Git Flow
- 6.4.1 Feature-Branches
- 6.4.2 Release-Branches
- 6.4.3 Release taggen
- 6.4.4 Hotfix-Branches
- 6.4.5 Zusammenfassung zu Git Flow
- 6.5 Git Flow mit mehr als einem develop-Branch
- 6.6 Git Flow mit mehreren Repositorys
- 6.7 GitHub-Flow
- 6.8 GitLab-Flow
- 6.9 Weitere Aspekte in Workflows
- 6.10 Zusammenfassung
- Kapitel 7: Hooks
- 7.1 Client-seitige Hooks
- 7.1.1 Commit-Hooks
- 7.1.2 E-Mail-Hooks
- 7.1.3 Weitere Hooks
- 7.2 Server-seitige Hooks
- 7.2.1 pre-receive-Hook
- 7.2.2 update-Hook
- 7.2.3 post-receive-Hook
- 7.2.4 Beispiel-Hooks
- 7.3 Git-Attribute
- Kapitel 8: Umstieg von Subversion
- 8.1 Zentrale vs. verteilte Repositorys
- 8.2 Checkout vs. Clone
- 8.3 svn commit vs. git commit & git push
- 8.4 svn add vs. git add
- 8.5 Binärdateien im Repository
- 8.6 SVN- in Git-Repository konvertieren
- 8.6.1 git-svn
- 8.6.2 Nach der Umwandlung
- 8.6.3 Committen mit git-svn
- 8.7 Zusammenfassung
- Kapitel 9: Tipps und Tricks
- 9.1 Große Dateien mit Git LFS verwalten
- 9.2 Partielles Klonen
- 9.3 Aliasse setzen und nutzen
- 9.4 Mehr aus dem Log holen
- 9.4.1 Begrenzte Ausgaben
- 9.4.2 Schönere Logs
- 9.5 Ausgeführte Aktionen im Repository mit git reflog
- 9.6 Garbage Collection mit git gc
- 9.7 Finde den Schuldigen mit git blame
- 9.8 Wortweises diff mit word-diff
- 9.9 Verschobene Zeilen farblich hervorheben mit git diff --color-moved
- 9.10 Datei-Inhalte suchen mit git grep
- 9.11 Änderungen häppchenweise stagen und committen
- 9.12 Auf Fehlersuche mit git bisect
- 9.13 Arbeiten mit Patches
- 9.13.1 Patches erstellen
- 9.13.2 Patches anwenden
- 9.14 Repositorys in Repositorys mit git submodules
- 9.15 Subtree als Alternative für Submodule
- 9.16 Komplette Historie neu schreiben mit git filter-repo
- 9.17 Tippfehler in Git-Befehlen automatisch korrigieren
- 9.18 Git Worktree
- 9.19 Liquid Prompt für Git
- 9.19.1 Installation
- 9.19.2 Im Einsatz mit Git
- 9.20 Zusammenfassung
- Kapitel 10: Grafische Clients
- 10.1 Git GUI
- 10.2 Gitk
- 10.3 SourceTree
- 10.4 GitHub Desktop
- 10.5 Gitg
- 10.6 Tig
- 10.7 TortoiseGit
- 10.8 GitKraken
- 10.9 Weiteres
- Kapitel 11: Nachvollziehbare Git-Historien
- 11.1 Gut dosierte Commits
- 11.2 Gute Commit-Messages
- Kapitel 12: DevOps
- 12.1 DevOps im Überblick
- 12.2 Das Problem
- 12.3 DevOps-Pipeline
- 12.4 DevSecOps
- 12.5 Zusammenfassung
- Kapitel 13: Frequently Asked Questions
- Anhang A: Befehlsreferenz
- A.1 Repository und Arbeitsverzeichnis anlegen
- A.2 Erweiterung und Bearbeitung der Historie
- A.2.1 Arbeiten im Staging-Bereich
- A.2.2 Arbeiten mit Commits und Branches
- A.3 Status-Ausgaben und Fehler-Suche
- A.4 Verteilte Repositorys
- A.5 Hilfsbefehle
- A.6 Sonstige
- Stichwortverzeichnis
System requirements
File format: PDF
Copy protection: Watermark-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Use the free software Adobe Reader, Adobe Digital Editions, or any other PDF viewer of your choice (see eBook Help).
- Tablet/Smartphone (Android; iOS): Install the free app Adobe Digital Editions or another reading app for eBooks, e.g., PocketBook (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Watermark-DRM, a „soft” copy protection. This means that there are no technical restrictions to prevent illegal distribution. However, there is a personalised watermark embedded in the eBook that can be used to identify the purchaser of the eBook in the event of misuse and to provide evidence for legal purposes.
For more information, see our eBook Help page.