Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Typos and spellings for chapter 1 #110

Merged
merged 10 commits into from
Jun 28, 2020
4 changes: 2 additions & 2 deletions C-git-commands.asc
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ In <<ch04-git-on-the-server#_getting_git_on_a_server>> untersuchen wir die Verwe

In <<ch07-git-tools#_bundling>> verwenden wir ihn, um ein gebündeltes Git-Repository zu entpacken.

Schließlich lernen wir in <<ch07-git-tools#_cloning_submodules>> die Option `--recurse-submodules` kennen, die das Klonen eines Repositories mit Submodulen etwas einfacher macht.
Schließlich lernen wir in <<ch07-git-tools#_cloning_submodules>> die Option `--recurse-submodules` kennen, die das Klonen eines Repositorys mit Submodulen etwas einfacher macht.

Obwohl der Befehl noch an vielen anderen Stellen im Buch verwendet wird, sind das jene, die etwas eigenständig sind oder bei denen er auf eine etwas andere Weise verwendet wird.

Expand Down Expand Up @@ -567,7 +567,7 @@ Der Befehl `git filter-branch` dient dazu, eine Vielzahl von Commits nach bestim

In <<ch07-git-tools#_removing_file_every_commit>> erklären wir den Befehl und untersuchen verschiedene Optionen wie `--commit-filter`, `--subdirectory-filter` und `--tree-filter`.

In <<ch09-git-and-other-systems#_git_p4>> und <<ch09-git-and-other-systems#_git_tfs>> verwenden wir ihn, um importierte externe Repositories zu berichtigen.
In <<ch09-git-and-other-systems#_git_p4>> und <<ch09-git-and-other-systems#_git_tfs>> verwenden wir ihn, um importierte externe Repositorys zu berichtigen.


=== Basisbefehle
Expand Down
2 changes: 1 addition & 1 deletion TRANSLATION_NOTES_DE.asc
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ String; Singular: der String; Plural: die Strings; Vorzugsweise die englische Ve
|Topic|
Thema; Singular: das Thema; Plural: die Themen
|to track|
track; er/sie trackt; wir tracken; Deutsch: versionieren; Zur Versionsverwaltung hinzufügen, auch verfolgen (ev. mit Hinweis: engl. tracked, je nach Kontext)
track; er/sie trackt; wir tracken; Deutsch: versionieren; Zur Versionsverwaltung hinzufügen, auch verfolgen (evtl. mit Hinweis: engl. tracked, je nach Kontext)
|==============================================================================

=== U – Z
Expand Down
6 changes: 3 additions & 3 deletions book/01-introduction/sections/about-version-control.asc
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,11 @@ Diese Art von System war über viele Jahre hinweg der Standard für Versionsverw
image::images/centralized.png[Centralized version control diagram]

Dieser Ansatz hat viele Vorteile, besonders gegenüber lokalen Versionsverwaltungssystemen.
Zum Beispiel weiß jeder mehr oder weniger genau darüber Bescheid, was andere, an einem Projekt Beteiligte gerade tun.
Zum Beispiel weiß jeder mehr oder weniger genau darüber Bescheid, was andere an einem Projekt Beteiligte gerade tun.
Administratoren haben die Möglichkeit, detailliert festzulegen, wer was tun kann. Und es ist sehr viel einfacher, ein CVCS zu administrieren als lokale Datenbanken auf jedem einzelnen Anwenderrechner zu verwalten.

Allerdings hat dieser Aufbau auch einige erhebliche Nachteile.
Der offensichtlichste Nachteil, ist das Risiko eines Systemausfalls, bei Ausfall einer einzelnen Komponente, nämlich dann wenn der zentralisierte Server ausfällt.
Der offensichtlichste Nachteil ist das Risiko eines Systemausfalls bei Ausfall einer einzelnen Komponente, nämlich dann, wenn der zentralisierte Server ausfällt.
Wenn dieser Server nur für eine Stunde nicht verfügbar ist, dann kann in dieser einen Stunde niemand in irgendeiner Form mit anderen zusammenarbeiten oder Dateien, an denen gerade gearbeitet wird, versioniert abspeichern.
Wenn die auf dem zentralen Server eingesetzte Festplatte beschädigt wird und keine Sicherheitskopien erstellt wurden, dann sind all diese Daten unwiederbringlich verloren – die komplette Historie des Projektes, abgesehen natürlich von dem jeweiligen Zustand, den Mitarbeiter gerade zufällig auf ihrem Rechner noch vorliegen haben.
Lokale Versionskontrollsysteme haben natürlich dasselbe Problem: Wenn man die Historie eines Projektes an einer einzigen, zentralen Stelle verwaltet, riskiert man, sie vollständig zu verlieren, wenn irgendetwas an dieser zentralen Stelle ernsthaft schief läuft.
Expand All @@ -57,5 +57,5 @@ Jede Kopie, ein sogenannter Klon (engl. clone), ist ein vollständiges Backup de
.Verteilte Versionsverwaltung
image::images/distributed.png[Distributed version control diagram]

Darüber hinaus können derartige Systeme hervorragend mit verschiedenen externen Repositorys, sogenannten Remote-Repositorys, umgehen, sodass man mit verschiedenen Gruppen von Leuten simultan auf verschiedene Art und Weise, an einem Projekt zusammenarbeiten kann.
Darüber hinaus können derartige Systeme hervorragend mit verschiedenen externen Repositorys, sogenannten Remote-Repositorys, umgehen, sodass man mit verschiedenen Gruppen von Leuten simultan auf verschiedene Art und Weise an einem Projekt zusammenarbeiten kann.
Damit ist es möglich, verschiedene Arten von Arbeitsabläufen zu erstellen und anzuwenden, welche mit zentralisierten Systemen nicht möglich wären. Dazu gehören zum Beispiel hierarchische Arbeitsabläufe.
4 changes: 2 additions & 2 deletions book/01-introduction/sections/command-line.asc
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
Es gibt viele verschiedene Möglichkeiten Git einzusetzen.
Auf der einen Seite gibt es die Werkzeuge, die per Kommandozeile bedient werden und auf der anderen, die vielen grafischen Benutzeroberflächen (engl. graphical user interface, GUI), die sich im Leistungsumfang unterscheiden.
In diesem Buch verwenden wir die Kommandozeile.
In der Kommandozeile können nämlich wirklich *alle* vorhandenen Git Befehle ausgeführt werden. Bei den meisten grafischen Oberflächen ist dies nicht möglich, da aus Gründen der Einfachheit nur ein Teil der Git Funktionalitäten zur Verfügung gestellt werden.
In der Kommandozeile können nämlich wirklich *alle* vorhandenen Git Befehle ausgeführt werden. Bei den meisten grafischen Oberflächen ist dies nicht möglich, da aus Gründen der Einfachheit nur ein Teil der Git-Funktionalitäten zur Verfügung gestellt werden.
Wenn Sie sich in der Kommandozeilenversion von Git auskennen, finden Sie sich wahrscheinlich auch in einer GUI-Version relativ schnell zurecht, aber andersherum muss das nicht unbedingt zutreffen.
Außerdem ist die Wahl der grafischen Oberfläche eher Geschmackssache, wohingegen die Kommandozeilenversion auf jedem Rechner installiert und verfügbar ist.

In diesem Buch gehen wir deshalb davon aus, dass Sie wissen, wie man bei einem Mac ein Terminal öffnet, oder wie man unter Windows die Eingabeaufforderung oder die Powershell öffnet.
Sollten Sie jetzt nur Bahnhof verstehen, sollten Sie an dieser Stelle abbrechen und sich schlau machen, was ein Terminal bzw. Eingabeaufforderung ist und wie man diese bedient. Nur so ist sichergestellt, dass Sie unseren Beispielen und Ausführungen im weiteren Verlauf des Buches folgen können.
Sollten Sie jetzt nur Bahnhof verstehen, sollten Sie an dieser Stelle abbrechen und sich schlau machen, was ein Terminal bzw. eine Eingabeaufforderung ist und wie man diese bedient. Nur so ist sichergestellt, dass Sie unseren Beispielen und Ausführungen im weiteren Verlauf des Buches folgen können.
20 changes: 10 additions & 10 deletions book/01-introduction/sections/first-time-setup.asc
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@
[[_first_time]]
=== Git Basis-Konfiguration

Nachdem Git jetzt auf Ihrem System installiert ist, sollten Sie Ihre Git Konfiguration noch anpassen.
Nachdem Git jetzt auf Ihrem System installiert ist, sollten Sie Ihre Git-Konfiguration noch anpassen.
Dies muss nur einmalig auf dem jeweiligen System durchgeführt werden. Die Konfiguration bleibt bestehen, wenn Sie Git auf eine neuere Version aktualisieren.
Die Git Konfiguration kann auch jederzeit geändert werden, indem die nachfolgenden Befehle einfach noch einmal ausgeführt werden.
Die Git-Konfiguration kann auch jederzeit geändert werden, indem die nachfolgenden Befehle einfach noch einmal ausgeführt werden.

Git umfasst das Werkzeug `git config`, welches die Möglichkeit bietet, Konfigurationswerte zu verändern. Auf diese Weise können Sie anpassen, wie Git aussieht und arbeitet.(((Git Befehle, config)))
Die Konfiguration ist an drei verschiedenen Orten gespeichert:

1. Die Datei `/etc/gitconfig`: enthält Werte, die für jeden Benutzer auf dem System und alle seine Repositories gelten.
1. Die Datei `/etc/gitconfig`: enthält Werte, die für jeden Benutzer auf dem System und alle seine Repositorys gelten.
Wenn Sie die Option `--system` an `git config` übergeben, liest und schreibt sie spezifisch aus dieser Datei.
(Da es sich um eine Systemkonfigurationsdatei handelt, benötigen Sie Administrator- oder Superuser-Rechte, um Änderungen daran vorzunehmen.)
2. Die Datei `~/.gitconfig` oder `~/.config/git/config`: enthält Werte, die für Sie, den Benutzer, per­sönlich bestimmt sind.
Sie können Git dazu bringen, diese Datei gezielt zu lesen und zu schreiben, indem Sie die Option `--global` übergeben, und dies betrifft _alle_ der Repositories, mit denen Sie auf Ihrem System arbeiten.
3. Die Datei `config` im Git Verzeichnis (also `.git/config`) des jeweiligen Repositories, das Sie gerade verwenden:
Sie können Git dazu bringen, diese Datei gezielt zu lesen und zu schreiben, indem Sie die Option `--global` übergeben, und dies betrifft _alle_ der Repositorys, mit denen Sie auf Ihrem System arbeiten.
3. Die Datei `config` im Git-Verzeichnis (also `.git/config`) des jeweiligen Repositorys, das Sie gerade verwenden:
Sie können Git mit der Option `--local` zwingen, aus dieser Datei zu lesen und in sie zu schreiben, das ist in der Regel die Standardoption.
(Es dürfte Sie nicht überraschen, dass Sie sich irgendwo in einem Git-Repository befinden müssen, damit diese Option ordnungsgemäß funktioniert.)

Jede Ebene überschreibt Werte der vorherigen Ebene, so dass Werte in `.git/config` diejenigen in `/etc/gitconfig` aushebeln.

Auf Windows Systemen sucht Git nach der Datei `.gitconfig` im `$HOME` Verzeichnis (Normalerweise zeigt `$HOME` bei den meisten Systemen auf `C:\Users\$USER`).
Auf Windows-Systemen sucht Git nach der Datei `.gitconfig` im `$HOME`-Verzeichnis (normalerweise zeigt `$HOME` bei den meisten Systemen auf `C:\Users\$USER`).
Git schaut immer nach `/etc/gitconfig`, auch wenn die sich relativ zu dem MSys-Wurzelverzeichnis befindet, dem Verzeichnis in das Sie Git installiert haben.
Wenn Sie eine Version 2.x oder neuer von Git für Windows verwenden, gibt es auch eine Konfigurationsdatei auf Systemebene unter
`C:\Dokumente und Einstellungen\Alle Benutzer\Anwendungsdaten\Git\config` unter Windows XP und unter `C:\ProgramData\Git\config` unter Windows Vista und neuer.
Expand All @@ -34,8 +34,8 @@ $ git config --list --show-origin

==== Ihre Identität

Nachdem Sie Git installiert haben, sollten Sie als aller erstes Ihren Namen und E-Mail Adresse in Git konfigurieren.
Das ist insofern wichtig,da jeder Git-Commit diese Informationen verwendet und sie unveränderlich in die Commits eingearbeitet werden, die Sie erstellen:
Nachdem Sie Git installiert haben, sollten Sie als allererstes Ihren Namen und Ihre E-Mail-Adresse in Git konfigurieren.
Das ist insofern wichtig, da jeder Git-Commit diese Informationen verwendet und sie unveränderlich in die Commits eingearbeitet werden, die Sie erstellen:

[source,console]
----
Expand All @@ -44,7 +44,7 @@ $ git config --global user.email johndoe@example.com
----

Wie schon erwähnt, brauchen Sie diese Konfiguration nur einmal vorzunehmen, wenn Sie die Option `--global` verwenden. Auf Grund der oben erwähnten Prioritäten gilt das dann für alle Ihre Projekte.
Wenn Sie für ein spezielles Projekt einen anderen Namen oder eine andere E-Mail Adresse verwenden möchten, können Sie den Befehl ohne die `--global` Option innerhalb des Projektes ausführen.
Wenn Sie für ein spezielles Projekt einen anderen Namen oder eine andere E-Mail-Adresse verwenden möchten, können Sie den Befehl ohne die `--global`-Option innerhalb des Projektes ausführen.

Viele der grafischen Oberflächen helfen einem bei diesem Schritt, wenn Sie sie zum ersten Mal ausführen.

Expand Down Expand Up @@ -115,7 +115,7 @@ John Doe
[NOTE]
====
Da Git möglicherweise den gleichen Wert der Konfigurationsvariablen aus mehr als einer Datei liest, ist es möglich, dass Sie einen unerwarteten Wert für einen dieser Werte haben und nicht wissen, warum.
In solchen Fällen können Sie Git nach dem _Ursprung (origin)_ für diesen Wert fragen, und es wird Ihnen sagen, mit welcher Konfigurationsdatei der Wert letztendlich festgelegt wurde:
In solchen Fällen können Sie Git nach dem _Ursprung_ (engl. origin) für diesen Wert fragen, und es wird Ihnen sagen, mit welcher Konfigurationsdatei der Wert letztendlich festgelegt wurde:

[source,console]
----
Expand Down
8 changes: 4 additions & 4 deletions book/01-introduction/sections/help.asc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[[_git_help]]
=== Hilfe finden

Falls Sie einmal Hilfe bei der Anwendung von Git benötigen, gibt es drei Möglichkeiten, die entsprechende Seite aus der Dokumentation (engl. manpage) für jeden Git Befehl anzuzeigen:
Falls Sie einmal Hilfe bei der Anwendung von Git benötigen, gibt es drei Möglichkeiten, die entsprechende Seite aus der Dokumentation (engl. manpage) für jeden Git-Befehl anzuzeigen:

[source,console]
----
Expand All @@ -10,18 +10,18 @@ $ git <verb> --help
$ man git-<verb>
----

Beispielweise erhalten Sie die Hilfeseite für den `git config` Befehl folgendermaßen:(((Git Befehle, help)))
Beispielweise erhalten Sie die Hilfeseite für den `git config`-Befehl folgendermaßen:(((Git Befehle, help)))

[source,console]
----
$ git help config
----

Diese Befehle sind nützlich, weil Sie sich die Hilfe jederzeit anzeigen lassen können, auch wenn Sie einmal offline sind.
Wenn die Hilfeseiten und dieses Buch nicht ausreichen und Sie persönliche Hilfe brauchen, können Sie den `#git` oder `#github` Kanal auf dem Freenode IRC Server probieren, der unter https://freenode.net zu finden ist.
Wenn die Hilfeseiten und dieses Buch nicht ausreichen und Sie persönliche Hilfe brauchen, können Sie einen der Kanäle `#git` oder `#github` auf dem Freenode-IRC-Server probieren, der unter https://freenode.net zu finden ist.
Diese Kanäle sind in der Regel sehr gut besucht. Normalerweise findet sich unter den vielen Anwendern, die oft sehr viel Erfahrung mit Git haben, irgendjemand, der Ihnen weiterhelfen kann.(((IRC-Chat)))

Wenn Sie nicht die vollständige Manpage-Hilfe benötigen, sondern nur eine kurze Beschreibung der verfügbaren Optionen für einen Git-Befehl, können Sie auch in den kompakteren „Hilfeseiten“ mit der `-h` oder `--help` Option nachschauen, wie in:
Wenn Sie nicht die vollständige Manpage-Hilfe benötigen, sondern nur eine kurze Beschreibung der verfügbaren Optionen für einen Git-Befehl, können Sie auch in den kompakteren „Hilfeseiten“ mit der Option `-h` oder `--help` nachschauen, wie in:

[source,console]
----
Expand Down
14 changes: 7 additions & 7 deletions book/01-introduction/sections/history.asc
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,18 @@

Wie viele großartige Dinge im Leben, entstand Git aus einer Prise kreativem Chaos und hitziger Diskussion.

Der Linux Kernel ist ein Open Source Software Projekt von erheblichem Umfang.(((Linux)))
Während der gesamten Entwicklungszeit des Linux Kernels von 1991 bis 2002 wurden Änderungen an diesem, in Form von Patches und archivierten Dateien herumgereicht. 2002 begann man dann, ein proprietäres DVCS mit dem Namen Bitkeeper zu verwenden.(((BitKeeper)))
Der Linux-Kernel ist ein Open-Source-Software-Projekt von erheblichem Umfang.(((Linux)))
Während der gesamten Entwicklungszeit des Linux-Kernels von 1991 bis 2002 wurden Änderungen an diesem, in Form von Patches und archivierten Dateien, herumgereicht. 2002 begann man dann, ein proprietäres DVCS mit dem Namen Bitkeeper zu verwenden.(((BitKeeper)))

2005 ging die Beziehung zwischen der Community, die den Linux Kernel entwickelte, und des kommerziell ausgerichteten Unternehmens, das BitKeeper entwickelte, in die Brüche. Die zuvor ausgesprochene Erlaubnis, BitKeeper kostenlos zu verwenden, wurde widerrufen.
Dies war für die Linux Entwickler Community (und besonders für Linus Torvalds, der Erfinder von Linux) der Auslöser dafür, ein eigenes Tool zu entwickeln, das auf den Erfahrungen mit BitKeeper basierte.(((Linus Torvalds)))
2005 ging die Beziehung zwischen der Community, die den Linux-Kernel entwickelte, und des kommerziell ausgerichteten Unternehmens, das BitKeeper entwickelte, in die Brüche. Die zuvor ausgesprochene Erlaubnis, BitKeeper kostenlos zu verwenden, wurde widerrufen.
Dies war für die Linux-Entwickler-Community (und besonders für Linus Torvalds, dem Erfinder von Linux) der Auslöser dafür, ein eigenes Tool zu entwickeln, das auf den Erfahrungen mit BitKeeper basierte.(((Linus Torvalds)))
Die Ziele des neuen Systems waren unter anderem:

* Geschwindigkeit
* Einfaches Design
* Gute Unterstützung von nicht-linearer Entwicklung (tausende parallele Entwicklungszweige)
* Vollständig dezentrale Struktur
* Fähigkeit große Projekte, wie den Linux Kernel, effektiv zu verwalten (Geschwindigkeit und Datenumfang)
* Fähigkeit, große Projekte, wie den Linux Kernel, effektiv zu verwalten (Geschwindigkeit und Datenumfang)

Seit seiner Geburt 2005, entwickelte sich Git kontinuierlich weiter und reifte zu einem System heran, das einfach zu bedienen ist, die ursprünglichen Ziele dabei aber weiter beibehält.
Es ist unglaublich schnell, äußerst effizient, wenn es um große Projekte geht, und es hat ein fantastisches Branching Konzept für nicht-lineare Entwicklung (siehe Kapitel 3 <<ch03-git-branching#ch03-git-branching,Git Branching>>).
Seit seiner Geburt 2005 entwickelte sich Git kontinuierlich weiter und reifte zu einem System heran, das einfach zu bedienen ist, die ursprünglichen Ziele dabei aber weiter beibehält.
Es ist unglaublich schnell, äußerst effizient, wenn es um große Projekte geht, und es hat ein fantastisches Branching-Konzept für nicht-lineare Entwicklung (siehe Kapitel 3 <<ch03-git-branching#ch03-git-branching,Git Branching>>).
Loading