Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions A-git-in-other-environments.asc
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@ include::book/A-git-in-other-environments/sections/visualstudio.asc[]

include::book/A-git-in-other-environments/sections/visualstudiocode.asc[]

include::book/A-git-in-other-environments/sections/eclipse.asc[]

include::book/A-git-in-other-environments/sections/jetbrainsides.asc[]

include::book/A-git-in-other-environments/sections/sublimetext.asc[]
Expand Down
7 changes: 2 additions & 5 deletions README.asc
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
image:https://travis-ci.org/progit/progit2-de.svg?branch=master["Build Status", link="https://travis-ci.org/progit/progit2-de"]

= Pro Git: Zweite Auflage

Herzlich willkommen bei der zweiten Auflage des Buchs „Pro Git“.
Expand All @@ -17,7 +15,8 @@ In den Dokumenten link:TRANSLATING.md[Pro Git Übersetzung] und link:TRANSLATION
== Wie kann das Buch erstellt werden?

Sie können die E-Book-Dateien manuell mit Asciidoctor erzeugen.
Wenn Sie die folgenden Befehle ausführen, können Sie auch HTML-, Epub-, Mobi- und PDF-Ausgabedateien erhalten:
Früher konnten wir .mobi-Dateien (Kindle) erstellen, können dies aber jetzt nicht mehr. Weitere Informationen finden Sie unter #1496.
Wenn Sie die folgenden Befehle ausführen, können Sie auch HTML-, Epub- und PDF-Ausgabedateien erhalten:

----
$ bundle install
Expand All @@ -26,8 +25,6 @@ Converting to HTML...
-- HTML output at progit.html
Converting to EPub...
-- Epub output at progit.epub
Converting to Mobi (kf8)...
-- Mobi output at progit.mobi
Converting to PDF...
-- PDF output at progit.pdf
----
Expand Down
2 changes: 1 addition & 1 deletion book/02-git-basics/sections/tagging.asc
Original file line number Diff line number Diff line change
Expand Up @@ -282,7 +282,7 @@ Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at 99ada87... Merge pull request #89 from schacon/appendix-final

$ git checkout 2.0-beta-0.1
$ git checkout v2.0-beta-0.1
Previous HEAD position was 99ada87... Merge pull request #89 from schacon/appendix-final
HEAD is now at df3f601... Add atlas.json and cover image
----
Expand Down
5 changes: 3 additions & 2 deletions book/03-git-branching/sections/branch-management.asc
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,10 @@ $ git branch --no-merged master
==== Ändern eines Branchnamens

[CAUTION]
----
====
Benennen Sie keine Branches um, die noch von anderen Mitarbeitern verwendet werden.
Benennen Sie einen Branch wie master / main / mainline nicht um, ohne den Abschnitt „Ändern des Namens des Hauptzweigs“ gelesen zu haben.
----
====

Angenommen, Sie haben einen Branch mit dem Namen _bad-branch-name_ und möchten ihn in _corrected-branch-name_ ändern, während die gesamte Historie beibehalten wird.
Sie möchten auch den Branchnamen auf der Remote-Repository ändern (GitHub, GitLab, anderer Server).
Expand Down Expand Up @@ -177,6 +177,7 @@ Jetzt haben Sie noch ein paar Aufgaben vor sich, um den Übergang abzuschließen
* Schließen oder Mergen sie alle Pull-Anforderungen, die auf den alten Branch abzielen.

Nachdem Sie alle diese Aufgaben erledigt haben und sicher sind, dass der _main_ Branch genau wie der _master_ Branch ausgeführt wird, können Sie den _master_ Branch löschen:

[source, console]
----
$ git push origin --delete master
Expand Down
42 changes: 20 additions & 22 deletions book/04-git-server/sections/gitlab.asc
Original file line number Diff line number Diff line change
@@ -1,27 +1,25 @@
=== GitLab

(((Server-Repositorys, GitLab)))(((GitLab)))
GitWeb ist allerdings ziemlich einfach.
GitWeb ist allerdings ziemlich einfach gehalten.
Wenn Sie nach einem moderneren, voll ausgestatteten Git-Server suchen, gibt es einige Open-Source-Lösungen, die Sie stattdessen installieren können.
Da GitLab eines der beliebtesten ist, werden wir uns mit der Installation im Detail befassen und es als Beispiel verwenden.
Dies ist etwas komplexer als die GitWeb-Option und erfordert wahrscheinlich mehr Wartung, aber es ist eine viel umfassendere Lösung.
Da GitLab einer der beliebtesten ist, werden wir uns mit der Installation im Detail befassen und es als Beispiel verwenden.
Dies ist etwas schwieriger als die GitWeb-Option und erfordert mehr Wartung, aber es ist eine viel umfassendere Lösung.

==== Installation

GitLab ist eine datenbankgestützte Webanwendung, so dass die Installation etwas aufwändiger ist als bei einigen anderen Git-Servern.
Glücklicherweise wird dieser Prozess sehr gut dokumentiert und unterstützt.
Glücklicherweise ist dieser Prozess sehr gut dokumentiert und unterstützt.
GitLab empfiehlt dringend, GitLab über das offizielle Omnibus GitLab-Paket auf zu installieren.

Es gibt einige Möglichkeiten, wie Sie GitLab installieren können.
Um etwas schnell zum Laufen zu bringen, können Sie ein Virtual-Machine-Image oder ein One-Klick-Installationsprogramm von https://bitnami.com/stack/gitlab[] herunterladen und die Konfiguration an Ihre spezielle Umgebung anpassen.
Ein netter Punkt, den Bitnami hinzugefügt hat, ist der Anmeldebildschirm (erreichbar durch Eingabe von alt+ →); er sagt Ihnen die IP-Adresse und den standardmäßigen Benutzernamen und das Passwort für das installierte GitLab.
Die anderen Installationsmethoden sind:

[[bitnami]]
.Der Anmeldebildschirm für die virtuelle Maschine von Bitnami GitLab
image::images/bitnami.png[Der Anmeldebildschirm für die virtuelle Maschine von Bitnami GitLab]
* GitLab Helm-Chart zur Verwendung mit Kubernetes.
* Dockerisierte GitLab-Pakete zur Verwendung mit Docker.
* Direkt sus den Quelldateien.
* Cloud-Anbieter wie AWS, Google Cloud Platform, Azure, OpenShift und Digital Ocean.

Für alles andere beachten Sie bitte die Hinweise in der Readme-Datei der GitLab Community Edition, die Sie unter https://gitlab.com/gitlab-org/gitlab-ce/tree/master finden.
Dort finden Sie Hilfe bei der Installation von GitLab mit Kochrezepten, einer virtuellen Maschine auf Digital Ocean und RPM- und DEB-Paketen (die sich derzeit in der Beta-Version befinden).
Es gibt auch „inoffizielle“ Anleitungen, wie Sie GitLab mit nicht standardmäßigen Betriebssystemen und Datenbanken zum Laufen bringen können – dazu ein vollständig manuelles Installationsskript und viele andere Inhalte.
Weitere Informationen finden Sie in der Readme-Datei https://gitlab.com/gitlab-org/gitlab-foss/-/blob/master/README.md[GitLab Community Edition (CE)].

==== Administration

Expand All @@ -36,9 +34,9 @@ image::images/gitlab-menu.png[Der „Admin-Bereich“ im GitLab-Menü]

===== Benutzer

Bei den Anwendern in GitLab handelt es sich um Konten, die Personen zugeordnet sind.
Benutzerkonten haben keine große Komplexität; hauptsächlich handelt es sich um eine Sammlung von persönlichen Informationen, die an Login-Daten geknüpft sind.
Jedes Benutzerkonto enthält einen *namespace* (Namensraum), der eine logische Gruppierung von Projekten ist, die diesem Benutzer gehören.
Jeder der Gitlab nutzt muß einen Benutzerkonto besitzen.
Benutzerkonten sind recht simple. Hauptsächlich beinhalten sie persönliche Informationen, die an Login-Daten geknüpft sind.
Jedes Benutzerkonto hat einen *namespace* (Namensraum), der eine logische Gruppierung von Projekten ist, die diesem Benutzer gehören.
Wenn der Benutzer +jane+ ein Projekt mit dem Namen +project+ hätte, wäre die URL dieses Projekts `http://server/jane/project`.

[[gitlab_users]]
Expand All @@ -50,12 +48,12 @@ Das „Blockieren“ eines Benutzers verhindert, dass er sich am GitLab anmeldet

Das „Zerstören“ eines Benutzers hingegen entfernt ihn vollständig aus der Datenbank und dem Dateisystem.
Alle Projekte und Daten in seinem Namensraum werden entfernt, und alle Gruppen, die sich in seinem Besitz befinden, werden ebenfalls entfernt.
Das ist natürlich eine viel dauerhaftere und destruktivere Aktion, die kaum angewendet wird.
Das ist natürlich eine viel dauerhaftere und destruktivere Aktion, die selten angewendet wird.

[[_gitlab_groups_section]]
===== Gruppen

Eine GitLab-Gruppe ist eine Zusammenstellung von Projekten, zusammen mit Daten darüber, wie Benutzer auf diese Projekte zugreifen können.
Eine GitLab-Gruppe ist eine Kollektion von Projekten, zusammen mit Daten darüber, wie Benutzer auf diese Projekte zugreifen können.
Jede Gruppe hat einen Projektnamensraum (genauso wie Benutzer), so dass, wenn die Gruppe +training+ ein Projekt +materials+ hat, die URL `http://server/training/materials` lautet.

[[gitlab_groups]]
Expand All @@ -72,7 +70,7 @@ Ein GitLab-Projekt entspricht in etwa einem einzelnen Git-Repository.
Jedes Projekt gehört zu einem einzigen Namensraum, entweder einem Benutzer oder einer Gruppe.
Wenn das Projekt einem Benutzer gehört, hat der Projektbesitzer die direkte Kontrolle darüber, wer Zugriff auf das Projekt hat; falls das Projekt einer Gruppe gehört, werden auch die Berechtigungen der Gruppe auf Benutzerebene wirksam.

Jedes Projekt hat auch eine Zugriffsebene, die steuert, wer Lesezugriff auf die Seiten und das Repository des Projekts hat.
Jedes Projekt hat eine Zugriffsebene, die steuert, wer Lesezugriff auf die Seiten und das Repository des Projekts hat.
Wenn ein Projekt _privat_ ist, muss der Eigentümer des Projekts bestimmten Benutzern explizit Zugriff gewähren.
Ein _internes_ Projekt ist für jeden angemeldeten Benutzer sichtbar, und ein _öffentliches_ (engl. _public_) Projekt ist für jeden sichtbar.
Beachten Sie, dass dies sowohl den Zugriff auf `git fetch` als auch den Zugriff auf die Web-Benutzeroberfläche für dieses Projekt steuert.
Expand All @@ -88,7 +86,7 @@ Auf diese Weise können Sie Ihre Git-Repositorys und GitLab-Instanzen mit dem Re
Das erste, was Sie mit GitLab anfangen sollten, ist das Erstellen eines neuen Projekts.
Dies geschieht durch Anklicken des Symbols „+“ in der Symbolleiste.
Sie werden nach dem Namen des Projekts gefragt, zu welchem Namensraum es gehören soll und wie hoch seine Sichtbarkeit sein soll.
Das meiste, was Sie hier angeben, ist nicht permanent und kann später über die Einstellungs-Oberfläche neu angepasst werden.
Das meiste, was Sie hier angeben, ist nicht permanent und kann später über die Einstellungs-Oberfläche angepasst werden.
Klicken Sie auf „Projekt erstellen“, und Sie sind fertig.

Sobald das Projekt existiert, werden Sie es vermutlich mit einem lokalen Git-Repository verbinden wollen.
Expand All @@ -113,9 +111,9 @@ Die Homepage jedes Projekts zeigt die letzten Aktivitäten an, und Links oben f

==== Zusammen arbeiten

Die einfachste Art der Zusammenarbeit bei einem GitLab-Projekt besteht darin, einem anderen Benutzer direkten Push-Zugriff auf das Git-Repository zu ermöglichen.
Die einfachste Art der Zusammenarbeit bei einem GitLab-Projekt besteht darin, jedem Benutzer direkten Push-Zugriff auf das Git-Repository zu ermöglichen.
Sie können einen Benutzer zu einem Projekt hinzufügen, indem Sie im Abschnitt „Mitglieder“ der Einstellungen dieses Projekts den neuen Benutzer einer Zugriffsebene zuordnen (die verschiedenen Zugriffsebenen werden in den <<_gitlab_groups_section,Gruppen>> ein wenig erläutert).
Indem ein Benutzer eine Zugriffsebene von „Developer“ oder höher erhält, kann dieser Benutzer Commits und Branches direkt und ohne Einschränkung in das Repository verschieben.
Indem ein Benutzer eine Zugriffsebene von „Developer“ oder höher erhält, kann dieser Benutzer Commits und Branches direkt und ohne Einschränkung in das Repository pushen.

Eine weitere, stärker entkoppelte Art der Zusammenarbeit ist die Nutzung von Merge-Anfragen.
Diese Funktion ermöglicht es jedem Benutzer, der ein Projekt sehen kann, kontrolliert dazu beizutragen.
Expand Down
4 changes: 2 additions & 2 deletions book/07-git-tools/sections/rewriting-history.asc
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ Jedes Mal hält Git an, lässt Sie den Commit ändern und fährt fort, sobald Si
==== Commits umsortieren

Sie können interaktive Rebases auch verwenden, um Commits neu anzuordnen oder ganz zu entfernen.
Wenn Sie unten den „added cat-file“ Commit entfernen und die Reihenfolge ändern wollen, in der die anderen beiden Commits aufgeführt werden, können Sie das Rebase-Skript so anpassen (vorher):
Wenn Sie unten den „Add cat-file“ Commit entfernen und die Reihenfolge ändern wollen, in der die anderen beiden Commits aufgeführt werden, können Sie das Rebase-Skript so anpassen (vorher):

[source,console]
----
Expand All @@ -190,7 +190,7 @@ pick f7f3f6d Change my name a bit
----

Wenn Sie gespeichert und den Editor verlassen haben, blättert Git Ihren Branch zum Elternteil dieser Commits zurück, wendet `310154e` und dann `f7f3f6d` an und stoppt dann.
Sie ändern effektiv die Reihenfolge dieser Commits und entfernen den „added cat-file“ Commit komplett.
Sie ändern effektiv die Reihenfolge dieser Commits und entfernen den „Add cat-file“ Commit komplett.

[[_squashing]]
==== Commits zusammenfassen
Expand Down
10 changes: 0 additions & 10 deletions book/A-git-in-other-environments/sections/eclipse.asc

This file was deleted.

Binary file removed images/egit.png
Binary file not shown.
1 change: 0 additions & 1 deletion status.json
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,6 @@
"A-git-in-other-environments": {
"1-git-other-environments.asc": 100,
"sections/bash.asc": 100,
"sections/eclipse.asc": 100,
"sections/guis.asc": 100,
"sections/jetbrainsides.asc": 100,
"sections/powershell.asc": 100,
Expand Down