Skip to content

Commit e81430d

Browse files
authored
Translated book/10-git-internals/sections/packfiles.asc to german (#37)
* Started translation of book/10-git-internals/sections/packfiles.asc * Started translation of book/10-git-internals/sections/packfiles.asc * Translated book/10-git-internals/sections/packfiles.asc to german Added 'packfile' to TRANSLATION_NOTES_DE.asc Set correct translation status in status.json * Corrected headline in book/10-git-internals/sections/packfiles.asc
1 parent 3cc2125 commit e81430d

File tree

3 files changed

+40
-38
lines changed

3 files changed

+40
-38
lines changed

TRANSLATION_NOTES_DE.asc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,8 @@ Projektbetreuer
122122
betreuen
123123
|to merge|
124124
mergen; er/sie mergt; wir mergen; Vorzugsweise die englische Version nutzen, alternativ kann auch die deutsche Übersetzung "zusammenführen oder verschmelzen" verwendet werden.
125+
|packfile|
126+
packfile; Vorzugsweise die englische Version nutzen, alternativ kann auch die deutsche Übersetzung "Paketdatei" verwendet werden.
125127
|Patch|
126128
Änderung oder auch Patch
127129
|Porcelain commands|

book/10-git-internals/sections/packfiles.asc

Lines changed: 34 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
=== Packfiles
1+
=== Packdateien (engl. Packfiles)
22

3-
If you followed all of the instructions in the example from the previous section, you should now have a test Git repository with 11 objects -- four blobs, three trees, three commits, and one tag:
3+
Wenn Sie alle Anweisungen im Beispiel aus dem vorherigen Abschnitt befolgt haben, sollten Sie jetzt ein Test-Git-Repository mit 11 Objekten haben - vier Blobs, drei Bäumen, drei Commits und einem Tag:
44

55
[source,console]
66
----
@@ -18,9 +18,9 @@ $ find .git/objects -type f
1818
.git/objects/fd/f4fc3344e67ab068f836878b6c4951e3b15f3d # commit 1
1919
----
2020

21-
Git compresses the contents of these files with zlib, and you're not storing much, so all these files collectively take up only 925 bytes.
22-
Now you'll add some more sizable content to the repository to demonstrate an interesting feature of Git.
23-
To demonstrate, we'll add the `repo.rb` file from the Grit library -- this is about a 22K source code file:
21+
Git komprimiert den Inhalt dieser Dateien mit zlib. Alle diese Dateien zusammen belegen nur 925 Byte.
22+
Jetzt fügen Sie dem Repository einige größere Inhalte hinzu, um eine interessante Funktion von Git zu demonstrieren.
23+
Zur Veranschaulichung fügen wir die Datei `repo.rb` aus der Grit-Bibliothek hinzu. Hierbei handelt es sich um eine 22-KB-Quellcodedatei:
2424

2525
[source,console]
2626
----
@@ -35,7 +35,7 @@ $ git commit -m 'added repo.rb'
3535
rewrite test.txt (100%)
3636
----
3737

38-
If you look at the resulting tree, you can see the SHA-1 value that was calculated for your new `repo.rb` blob object:
38+
Wenn Sie sich den resultierenden Baum ansehen, sehen Sie den SHA-1-Wert, der für Ihr neues repo.rb-Blob-Objekt berechnet wurde:
3939

4040
[source,console]
4141
----
@@ -45,15 +45,15 @@ $ git cat-file -p master^{tree}
4545
100644 blob e3f094f522629ae358806b17daf78246c27c007b test.txt
4646
----
4747

48-
You can then use `git cat-file` to see how large that object is:
48+
Sie können dann `git cat-file` verwenden, um zu sehen, wie groß das Objekt ist:
4949

5050
[source,console]
5151
----
5252
$ git cat-file -s 033b4468fa6b2a9547a70d88d1bbe8bf3f9ed0d5
5353
22044
5454
----
5555

56-
At this point, modify that file a little, and see what happens:
56+
Ändern Sie nun diese Datei ein wenig und sehen Sie, was passiert:
5757

5858
[source,console]
5959
----
@@ -63,7 +63,7 @@ $ git commit -am 'modified repo.rb a bit'
6363
1 file changed, 1 insertion(+)
6464
----
6565

66-
Check the tree created by that last commit, and you see something interesting:
66+
Überprüfen Sie den von diesem letzten Commit erstellten Baum. Dabei werden Sie etwas Interessantes sehen:
6767

6868
[source,console]
6969
----
@@ -73,22 +73,22 @@ $ git cat-file -p master^{tree}
7373
100644 blob e3f094f522629ae358806b17daf78246c27c007b test.txt
7474
----
7575

76-
The blob is now a different blob, which means that although you added only a single line to the end of a 400-line file, Git stored that new content as a completely new object:
76+
Der Blob ist jetzt ein anderer Blob. Das bedeutet, dass Git, obwohl Sie nur eine einzelne Zeile am Ende einer Datei mit 400 Zeilen hinzugefügt haben, diesen neuen Inhalt als ein komplett neues Objekt gespeichert hat:
7777

7878
[source,console]
7979
----
8080
$ git cat-file -s b042a60ef7dff760008df33cee372b945b6e884e
8181
22054
8282
----
8383

84-
You have two nearly identical 22K objects on your disk (each compressed to approximately 7K).
85-
Wouldn't it be nice if Git could store one of them in full but then the second object only as the delta between it and the first?
84+
Sie haben jetzt zwei nahezu identische 22-KB-Objekte auf Ihrer Festplatte (jedes auf ca. 7 KB komprimiert).
85+
Wäre es nicht schön, wenn Git eines davon vollständig speichern könnte, aber dann das zweite Objekt nur als Delta zwischen dem ersten und dem anderen?
8686

87-
It turns out that it can.
88-
The initial format in which Git saves objects on disk is called a ``loose'' object format.
89-
However, occasionally Git packs up several of these objects into a single binary file called a ``packfile'' in order to save space and be more efficient.
90-
Git does this if you have too many loose objects around, if you run the `git gc` command manually, or if you push to a remote server.
91-
To see what happens, you can manually ask Git to pack up the objects by calling the `git gc` command:
87+
Wie sich herausstellen wird, geht das.
88+
Das ursprüngliche Format, in dem Git Objekte auf der Festplatte speichert, wird als „loses“ Objektformat bezeichnet.
89+
Allerdings packt Git gelegentlich mehrere dieser Objekte in eine einzige Binärdatei namens „packfile“, um Platz zu sparen und effizienter zu sein.
90+
Git tut dies, wenn Sie zu viele lose Objekte haben, wenn Sie den Befehl `git gc` manuell ausführen oder wenn Sie einen Push an einen Remote-Server senden.
91+
Um zu sehen, was passiert, können Sie Git manuell auffordern, die Objekte zu packen, indem Sie den Befehl `git gc` aufrufen:
9292

9393
[source,console]
9494
----
@@ -100,7 +100,7 @@ Writing objects: 100% (18/18), done.
100100
Total 18 (delta 3), reused 0 (delta 0)
101101
----
102102

103-
If you look in your `objects` directory, you'll find that most of your objects are gone, and a new pair of files has appeared:
103+
Wenn Sie in Ihr `objects`-Verzeichnis schauen, werden Sie feststellen, dass die meisten Ihrer Objekte verschwunden sind und ein paar neue Dateien auftauchen:
104104

105105
[source,console]
106106
----
@@ -112,19 +112,19 @@ $ find .git/objects -type f
112112
.git/objects/pack/pack-978e03944f5c581011e6998cd0e9e30000905586.pack
113113
----
114114

115-
The objects that remain are the blobs that aren't pointed to by any commit -- in this case, the ``what is up, doc?'' example and the ``test content'' example blobs you created earlier.
116-
Because you never added them to any commits, they're considered dangling and aren't packed up in your new packfile.
115+
Die verbleibenden Objekte sind die Blobs, auf die von keinem Commit referenziert werden. In diesem Fall die Blobs „what is up, doc?“ Und „test content“, die Sie zuvor erstellt haben.
116+
Da Sie sie nie zu Commits hinzugefügt haben, gelten sie als unreferenziert und sind nicht in Ihrem neuen Packfile gepackt.
117117

118-
The other files are your new packfile and an index.
119-
The packfile is a single file containing the contents of all the objects that were removed from your filesystem.
120-
The index is a file that contains offsets into that packfile so you can quickly seek to a specific object.
121-
What is cool is that although the objects on disk before you ran the `gc` command were collectively about 15K in size, the new packfile is only 7K.
122-
You've cut your disk usage by half by packing your objects.
118+
Die anderen Dateien sind Ihr neues packfile und ein Index.
119+
Das packfile ist eine einzelne Datei, die den Inhalt aller Objekte enthält, die aus Ihrem Dateisystem entfernt wurden.
120+
Der Index ist eine Datei, die Offsets in diesem packfile enthält, sodass Sie schnell nach einem bestimmten Objekt suchen können.
121+
Ein weiterer Vorteil ist, dass, obwohl die Objekte auf der Festplatte vor dem Ausführen des Befehls `gc` insgesamt etwa 15 KB groß waren, die neue Paketdatei nur 7 KB groß ist.
122+
Sie haben die Festplattennutzung halbiert, indem Sie Ihre Objekte gepackt haben.
123123

124-
How does Git do this?
125-
When Git packs objects, it looks for files that are named and sized similarly, and stores just the deltas from one version of the file to the next.
126-
You can look into the packfile and see what Git did to save space.
127-
The `git verify-pack` plumbing command allows you to see what was packed up:
124+
Wie macht Git das?
125+
Wenn Git Objekte packt, sucht es nach Dateien mit ähnlichen Namen und Größen und speichert nur die Deltas von einer Version der Datei zur nächsten.
126+
Sie können im packfile schauen und sehen, was Git getan hat, um Platz zu sparen.
127+
Mit dem Befehl `git verify-pack` können Sie sehen, was gepackt wurde:
128128

129129
[source,console]
130130
----
@@ -155,9 +155,9 @@ chain length = 1: 3 objects
155155
.git/objects/pack/pack-978e03944f5c581011e6998cd0e9e30000905586.pack: ok
156156
----
157157

158-
Here, the `033b4` blob, which if you remember was the first version of your `repo.rb` file, is referencing the `b042a` blob, which was the second version of the file.
159-
The third column in the output is the size of the object in the pack, so you can see that `b042a` takes up 22K of the file, but that `033b4` only takes up 9 bytes.
160-
What is also interesting is that the second version of the file is the one that is stored intact, whereas the original version is stored as a delta -- this is because you're most likely to need faster access to the most recent version of the file.
158+
Hier verweist der `033b4`-Blob, der, wenn Sie sich erinnern, die erste Version Ihrer `repo.rb`-Datei war, auf den `b042a`-Blob, der die zweite Version der Datei war.
159+
Die dritte Spalte in der Ausgabe ist die Größe des Objekts im Paket. Sie können also sehen, dass `b042a` 22 KB der Datei belegt, `033b4` jedoch nur 9 Byte.
160+
Interessant ist auch, dass die zweite Version der Datei als Ganzes gespeichert wird, während die Originalversion als Delta gespeichert wird. Dies liegt daran, dass Sie mit größter Wahrscheinlichkeit einen schnelleren Zugriff auf die neueste Version der Datei benötigen.
161161

162-
The really nice thing about this is that it can be repacked at any time.
163-
Git will occasionally repack your database automatically, always trying to save more space, but you can also manually repack at any time by running `git gc` by hand.
162+
Das Schöne daran ist, dass es jederzeit umgepackt werden kann.
163+
Git packt Ihre Datenbank gelegentlich automatisch neu und versucht dabei immer, mehr Speicherplatz zu sparen. Sie können das Packen jedoch auch jederzeit manuell durchführen, indem Sie `git gc` manuell ausführen.

status.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -100,10 +100,10 @@
100100
"1-git-internals.asc": 100,
101101
"sections/environment.asc": 0,
102102
"sections/maintenance.asc": 0,
103-
"sections/objects.asc": 0,
104-
"sections/packfiles.asc": 0,
105-
"sections/plumbing-porcelain.asc": 0,
106-
"sections/refs.asc": 0,
103+
"sections/objects.asc": 100,
104+
"sections/packfiles.asc": 100,
105+
"sections/plumbing-porcelain.asc": 100,
106+
"sections/refs.asc": 100,
107107
"sections/refspec.asc": 0,
108108
"sections/transfer-protocols.asc": 0
109109
},

0 commit comments

Comments
 (0)