Remove repeated consecutively words in clone.txt, intro.txt and drawbacks.txt files...
[gitmagic.git] / de / pot / history.po
blob765f4991e0db6bf09d963c41d3ae3ba5d6d19e55
1 # Git Magic - A guide to using Git
2 # This file is distributed under the GNU GENERAL PUBLIC LICENSE Version 3.
3 # Benn Lynn <benlynn@gmail.com>, 2007.
4 # Armin Stebich <armin@lordofbikes.de>, 2010, 2011.
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: Git Magic deutsch\n"
9 "Report-Msgid-Bugs-To: bennlynn@gmail.com\n"
10 "POT-Creation-Date: 2010-10-30 08:21+0300\n"
11 "PO-Revision-Date: 2011-07-03 15:23+0200\n"
12 "Last-Translator: Armin Stebich <armin@lordofbikes.de>\n"
13 "Language-Team: DE <gitmagic@lordofbikes.de>\n"
14 "Language: de\n"
15 "MIME-Version: 1.0\n"
16 "Content-Type: text/plain; charset=UTF-8\n"
17 "Content-Transfer-Encoding: UTF-8\n"
18 "Plural-Forms: \n"
20 #. type: Plain text
21 #: ../en/history.txt:2
22 msgid "== Lessons of History =="
23 msgstr "== Geschichtsstunde =="
25 #. type: Plain text
26 #: ../en/history.txt:8
27 msgid ""
28 "A consequence of Git's distributed nature is that history can be edited "
29 "easily. But if you tamper with the past, take care: only rewrite that part "
30 "of history which you alone possess. Just as nations forever argue over who "
31 "committed what atrocity, if someone else has a clone whose version of "
32 "history differs to yours, you will have trouble reconciling when your trees "
33 "interact."
34 msgstr ""
35 "Eine Folge von Git's verteilter Natur ist, dass die Chronik einfach "
36 "verändert werden kann. Aber, wenn du an der Vergangenheit manipulierst, sei "
37 "vorsichtig: verändere nur den Teil der Chronik, den du ganz alleine hast. So "
38 "wie Nationen ewig diskutieren, wer welche Greueltaten vollbracht hat, wirst "
39 "du beim Abgleichen in Schwierigkeiten geraten, falls jemand einen 'Clone' "
40 "mit abweichender Chronik hat und die Zweige sich austauschen sollen."
42 #. type: Plain text
43 #: ../en/history.txt:14
44 msgid ""
45 "Some developers strongly feel history should be immutable, warts and all.  "
46 "Others feel trees should be made presentable before they are unleashed in "
47 "public. Git accommodates both viewpoints. Like cloning, branching, and "
48 "merging, rewriting history is simply another power Git gives you. It is up "
49 "to you to use it wisely."
50 msgstr ""
51 "Einige Entwickler setzen sich nachhaltig für die Unantastbarkeit der Chronik "
52 "ein, mit allen Fehlern, Nachteilen und Mängeln. Andere denken, daß Zweige "
53 "vorzeigbar gemacht werden sollten, bevor sie auf die Öffentlichkeit "
54 "losgelassen werden. Git versteht beide Gesichtspunkte. Wie 'Clonen', "
55 "'Branchen' und 'Mergen' ist das Umschreiben der Chronik lediglich eine "
56 "weitere Stärke, die Git dir bietet. Es liegt an dir diese weise zu nutzen."
58 #. type: Plain text
59 #: ../en/history.txt:16
60 msgid "=== I Stand Corrected ==="
61 msgstr "=== Ich nehme alles zurück ==="
63 #. type: Plain text
64 #: ../en/history.txt:18
65 msgid ""
66 "Did you just commit, but wish you had typed a different message? Then run:"
67 msgstr ""
68 "Hast du gerade 'commitet', aber du hättest gerne eine andere Beschreibung "
69 "eingegeben? Dann gib ein:"
71 #. type: Plain text
72 #: ../en/history.txt:20 ../en/history.txt:54
73 #, no-wrap
74 msgid " $ git commit --amend\n"
75 msgstr " $ git commit --amend\n"
77 #. type: Plain text
78 #: ../en/history.txt:23
79 msgid ""
80 "to change the last message. Realized you forgot to add a file? Run *git add* "
81 "to add it, and then run the above command."
82 msgstr ""
83 "um die letzte Beschreibung zu ändern. Du merkst, dass du vergessen hast eine "
84 "Datei hinzuzufügen? Führe *git add* aus um sie hinzuzufügen und dann die "
85 "vorhergehende Anweisung."
87 #. type: Plain text
88 #: ../en/history.txt:25
89 msgid ""
90 "Want to include a few more edits in that last commit? Then make those edits "
91 "and run:"
92 msgstr ""
93 "Du willst noch ein paar Änderungen zu deinem letzten 'Commit' hinzufügen? "
94 "Dann mache diese Änderungen und gib ein:"
96 #. type: Plain text
97 #: ../en/history.txt:27
98 #, no-wrap
99 msgid " $ git commit --amend -a\n"
100 msgstr " $ git commit --amend -a\n"
102 #. type: Plain text
103 #: ../en/history.txt:29
104 msgid "=== ... And Then Some ==="
105 msgstr "=== ... und noch viel mehr ==="
107 #. type: Plain text
108 #: ../en/history.txt:31
109 msgid ""
110 "Let's suppose the previous problem is ten times worse. After a lengthy "
111 "session you've made a bunch of commits. But you're not quite happy with the "
112 "way they're organized, and some of those commit messages could use "
113 "rewording. Then type:"
114 msgstr ""
115 "Nehmen wir jetzt an, das vorherige Problem ist zehnmal schlimmer. Nach einer "
116 "längeren Sitzung hast du einen Haufen 'Commits' gemacht. Aber du bist mit "
117 "der Art der Organisation nicht glücklich und einige 'Commits' könnten etwas "
118 "umformuliert werden. Dann gib ein:"
120 #. type: Plain text
121 #: ../en/history.txt:33
122 #, no-wrap
123 msgid " $ git rebase -i HEAD~10\n"
124 msgstr " $ git rebase -i HEAD~10\n"
126 #. type: Plain text
127 #: ../en/history.txt:35
128 msgid ""
129 "and the last 10 commits will appear in your favourite $EDITOR. A sample "
130 "excerpt:"
131 msgstr ""
132 "und die letzten zehn 'Commits' erscheinen in deinem bevorzugten $EDITOR. "
133 "Auszug aus einem Beispiel:"
135 #. type: Plain text
136 #: ../en/history.txt:39
137 #, no-wrap
138 msgid ""
139 "    pick 5c6eb73 Added repo.or.cz link\n"
140 "    pick a311a64 Reordered analogies in \"Work How You Want\"\n"
141 "    pick 100834f Added push target to Makefile\n"
142 msgstr ""
143 "    pick 5c6eb73 Link repo.or.cz hinzugefügt\n"
144 "    pick a311a64 Analogien in \"Arbeite wie du willst\" umorganisiert\n"
145 "    pick 100834f Push-Ziel zum Makefile hinzugefügt\n"
147 #. type: Plain text
148 #: ../en/history.txt:41
149 msgid "Then:"
150 msgstr "Dann:"
152 #. type: Bullet: '- '
153 #: ../en/history.txt:49
154 msgid "Remove commits by deleting lines."
155 msgstr "Entferne 'Commits' durch das Löschen von Zeilen."
157 #. type: Bullet: '- '
158 #: ../en/history.txt:49
159 msgid "Reorder commits by reordering lines."
160 msgstr "Organisiere 'Commits' durch verschieben von Zeilen."
162 #. type: Plain text
163 #: ../en/history.txt:49
164 #, no-wrap
165 msgid ""
166 "- Replace `pick` with:\n"
167 "   * `edit` to mark a commit for amending.\n"
168 "   * `reword` to change the log message.\n"
169 "   * `squash` to merge a commit with the previous one.\n"
170 "   * `fixup` to merge a commit with the previous one and discard the log message.\n"
171 msgstr ""
172 "- Ersetze `pick` mit:\n"
173 "   * `edit` um einen 'Commit' für 'amends' zu markieren.\n"
174 "   * `reword` um die Log-Beschreibung zu ändern.\n"
175 "   * `squash` um einen 'Commit' mit dem vorhergehenden zu vereinen ('merge').\n"
176 "   * `fixup` um einen 'Commit' mit dem vorhergehenden zu vereinen ('merge') und die Log-Beschreibung zu verwerfen.\n"
178 #. type: Plain text
179 #: ../en/history.txt:52
180 msgid "Save and quit. If you marked a commit for editing, then run:"
181 msgstr ""
182 "Speichere und Beende. Wenn du einen 'Commit' mit 'edit' markiert hast, gib "
183 "ein:"
185 #. type: Plain text
186 #: ../en/history.txt:56
187 msgid "Otherwise, run:"
188 msgstr "Ansonsten:"
190 #. type: Plain text
191 #: ../en/history.txt:58
192 #, no-wrap
193 msgid " $ git rebase --continue\n"
194 msgstr " $ git rebase --continue\n"
196 #. type: Plain text
197 #: ../en/history.txt:60
198 msgid "So commit early and commit often: you can tidy up later with rebase."
199 msgstr "Also 'commite' früh und oft: du kannst später mit 'rebase' aufräumen."
201 #. type: Plain text
202 #: ../en/history.txt:62
203 msgid "=== Local Changes Last ==="
204 msgstr "=== Lokale Änderungen zum Schluß ==="
206 #. type: Plain text
207 #: ../en/history.txt:65
208 msgid ""
209 "You're working on an active project. You make some local commits over time, "
210 "and then you sync with the official tree with a merge. This cycle repeats "
211 "itself a few times before you're ready to push to the central tree."
212 msgstr ""
213 "Du arbeitest an einem aktiven Projekt. Über die Zeit haben sich einige "
214 "lokale 'Commits' angesammelt und dann synchronisierst du mit einem 'Merge' "
215 "mit dem offiziellen Zweig. Dieser Zyklus wiederholt sich ein paar Mal bevor "
216 "du zum 'Pushen' in den zentralen Zweig bereit bist."
218 #. type: Plain text
219 #: ../en/history.txt:67
220 msgid ""
221 "But now the history in your local Git clone is a messy jumble of your "
222 "changes and the official changes. You'd prefer to see all your changes in "
223 "one contiguous section, and after all the official changes."
224 msgstr ""
225 "Aber nun ist die Chronik in deinem lokalen Git-'Clone' ein chaotisches "
226 "Durcheinander deiner Änderungen und den Änderungen vom offiziellen Zweig. Du "
227 "willst alle Deine Änderungen lieber in einem fortlaufenden Abschnitt und "
228 "hinter den offiziellen Änderungen sehen."
230 #. type: Plain text
231 #: ../en/history.txt:70
232 msgid ""
233 "This is a job for *git rebase* as described above. In many cases you can use "
234 "the *--onto* flag and avoid interaction."
235 msgstr ""
236 "Das ist eine Aufgabe für *git rebase*, wie oben beschrieben. In vielen "
237 "Fällen kannst du den *--onto* Schalter benutzen um Interaktion zu vermeiden."
239 #. type: Plain text
240 #: ../en/history.txt:72
241 msgid ""
242 "Also see *git help rebase* for detailed examples of this amazing command. "
243 "You can split commits. You can even rearrange branches of a tree."
244 msgstr ""
245 "Siehe auch *git help rebase* für ausführliche Beispiele dieser erstaunlichen "
246 "Anweisung. Du kannst auch 'Commits' aufteilen. Du kannst sogar 'Branches' in "
247 "einem 'Repository' umorganisieren."
249 #. type: Plain text
250 #: ../en/history.txt:74
251 msgid "=== Rewriting History ==="
252 msgstr "=== Chronik umschreiben ==="
254 #. type: Plain text
255 #: ../en/history.txt:82
256 msgid ""
257 "Occasionally, you need the source control equivalent of airbrushing people "
258 "out of official photos, erasing them from history in a Stalinesque fashion. "
259 "For example, suppose we intend to release a project, but it involves a file "
260 "that should be kept private for some reason. Perhaps I left my credit card "
261 "number in a text file and accidentally added it to the project. Deleting the "
262 "file is insufficient, for the file can be accessed from older commits. We "
263 "must remove the file from all commits:"
264 msgstr ""
265 "Gelegentlich brauchst du Versionsverwaltung vergleichbar dem Wegretuschieren "
266 "von Personen aus einem offiziellen Foto, um diese in stalinistischer Art aus "
267 "der Geschichte zu löschen. Stell dir zum Beispiel vor, du willst ein Projekt "
268 "veröffentlichen, aber es enthält eine Datei, die aus irgendwelchen Gründen "
269 "privat bleiben muss. Vielleicht habe ich meine Kreditkartennummer in einer "
270 "Textdatei notiert und diese versehentlich dem Projekt hinzugefügt. Die Datei "
271 "zu löschen ist zwecklos, da über ältere 'Commits' auf sie zugegriffen werden "
272 "könnte. Wir müssen die Datei aus allen 'Commits' entfernen:"
274 #. type: Plain text
275 #: ../en/history.txt:84
276 #, no-wrap
277 msgid " $ git filter-branch --tree-filter 'rm top/secret/file' HEAD\n"
278 msgstr " $ git filter-branch --tree-filter 'rm sehr/geheime/Datei' HEAD\n"
280 #. type: Plain text
281 #: ../en/history.txt:88
282 msgid ""
283 "See *git help filter-branch*, which discusses this example and gives a "
284 "faster method. In general, *filter-branch* lets you alter large sections of "
285 "history with a single command."
286 msgstr ""
287 "Siehe *git help filter-branch*, wo dieses Beispiel erklärt und eine "
288 "schnellere Methode vorstellt wird. Allgemein, *filter-branch* lässt dich "
289 "große Bereiche der Chronik mit einer einzigen Anweisung verändern."
291 #. type: Plain text
292 #: ../en/history.txt:90
293 msgid ""
294 "Afterwards, the +.git/refs/original+ directory describes the state of "
295 "affairs before the operation. Check the filter-branch command did what you "
296 "wanted, then delete this directory if you wish to run more filter-branch "
297 "commands."
298 msgstr ""
299 "Danach beschreibt der Ordner +.git/refs/original+ den Zustand der Lage vor "
300 "der Operation. Prüfe, ob die 'filter-branch' Anweisung getan hat was du "
301 "wolltest, dann lösche dieses Verzeichnis bevor du weitere 'filter-branch' "
302 "Operationen durchführst."
304 #. type: Plain text
305 #: ../en/history.txt:92
306 msgid ""
307 "Lastly, replace clones of your project with your revised version if you want "
308 "to interact with them later."
309 msgstr ""
310 "Zuletzt, ersetze alle 'Clones' deines Projekts mit deiner überarbeiteten "
311 "Version, falls du später mit ihnen interagieren möchtest."
313 #. type: Plain text
314 #: ../en/history.txt:94
315 msgid "=== Making History ==="
316 msgstr "=== Geschichte machen ==="
318 #. type: Plain text
319 #: ../en/history.txt:97
320 msgid ""
321 "[[makinghistory]] Want to migrate a project to Git? If it's managed with one "
322 "of the more well-known systems, then chances are someone has already written "
323 "a script to export the whole history to Git."
324 msgstr ""
325 "[[makinghistory]] Du möchtest ein Projekt zu Git umziehen? Wenn es mit einem "
326 "der bekannteren Systeme verwaltet wird, besteht die Möglichkeit, dass schon "
327 "jemand ein Skript geschrieben hat, das die gesamte Chronik für Git "
328 "exportiert."
330 #. type: Plain text
331 #: ../en/history.txt:102
332 msgid ""
333 "Otherwise, look up *git fast-import*, which reads text input in a specific "
334 "format to create Git history from scratch. Typically a script using this "
335 "command is hastily cobbled together and run once, migrating the project in a "
336 "single shot."
337 msgstr ""
338 "Anderenfalls, sieh dir *git fast-import* an, das Text in einem speziellen "
339 "Format einliest um eine Git Chronik von Anfang an zu erstellen. "
340 "Normalerweise wird ein Skript, das diese Anweisung benutzt, hastig "
341 "zusammengeschustert und einmalig ausgeführt um das Projekt in einem einzigen "
342 "Lauf zu migrieren."
344 #. type: Plain text
345 #: ../en/history.txt:104
346 #, no-wrap
347 msgid ""
348 "As an example, paste the following listing into temporary file, such as `/tmp/history`:\n"
349 "----------------------------------\n"
350 msgstr ""
351 "Erstelle zum Beispiel aus folgendem Listing eine temporäre Datei, z.B. `/tmp/history`:\n"
352 "----------------------------------\n"
354 #. type: Plain text
355 #: ../en/history.txt:110
356 msgid ""
357 "commit refs/heads/master committer Alice <alice@example.com> Thu, 01 Jan "
358 "1970 00:00:00 +0000 data <<EOT Initial commit.  EOT"
359 msgstr ""
360 "commit refs/heads/master committer Alice <alice@example.com> Thu, 01 Jan "
361 "1970 00:00:00 +0000 data <<EOT Initial commit.  EOT"
363 #. type: Plain text
364 #: ../en/history.txt:114
365 msgid "M 100644 inline hello.c data <<EOT #include <stdio.h>"
366 msgstr "M 100644 inline hello.c data <<EOT #include <stdio.h>"
368 #. type: Plain text
369 #: ../en/history.txt:120
370 #, no-wrap
371 msgid ""
372 "int main() {\n"
373 "  printf(\"Hello, world!\\n\");\n"
374 "  return 0;\n"
375 "}\n"
376 "EOT\n"
377 msgstr ""
378 "int main() {\n"
379 "  printf(\"Hallo, Welt!\\n\");\n"
380 "  return 0;\n"
381 "}\n"
382 "EOT\n"
384 #. type: Plain text
385 #: ../en/history.txt:127
386 msgid ""
387 "commit refs/heads/master committer Bob <bob@example.com> Tue, 14 Mar 2000 "
388 "01:59:26 -0800 data <<EOT Replace printf() with write().  EOT"
389 msgstr ""
390 "commit refs/heads/master committer Bob <bob@example.com> Tue, 14 Mar 2000 "
391 "01:59:26 -0800 data <<EOT Ersetze printf() mit write().  EOT"
393 #. type: Plain text
394 #: ../en/history.txt:131
395 msgid "M 100644 inline hello.c data <<EOT #include <unistd.h>"
396 msgstr "M 100644 inline hello.c data <<EOT #include <unistd.h>"
398 #. type: Plain text
399 #: ../en/history.txt:137
400 #, no-wrap
401 msgid ""
402 "int main() {\n"
403 "  write(1, \"Hello, world!\\n\", 14);\n"
404 "  return 0;\n"
405 "}\n"
406 "EOT\n"
407 msgstr ""
408 "int main() {\n"
409 "  write(1, \"Hallo, Welt!\\n\", 14);\n"
410 "  return 0;\n"
411 "}\n"
412 "EOT\n"
414 #. type: Plain text
415 #: ../en/history.txt:138
416 #, no-wrap
417 msgid "----------------------------------\n"
418 msgstr "----------------------------------\n"
420 #. type: Plain text
421 #: ../en/history.txt:141
422 msgid "Then create a Git repository from this temporary file by typing:"
423 msgstr ""
424 "Dann, erstelle ein Git 'Repository' aus dieser temporären Datei, durch "
425 "Eingabe von:"
427 #. type: Plain text
428 #: ../en/history.txt:144
429 #, no-wrap
430 msgid ""
431 " $ mkdir project; cd project; git init\n"
432 " $ git fast-import --date-format=rfc2822 < /tmp/history\n"
433 msgstr ""
434 " $ mkdir project; cd project; git init\n"
435 " $ git fast-import --date-format=rfc2822 < /tmp/history\n"
437 #. type: Plain text
438 #: ../en/history.txt:146
439 msgid "You can checkout the latest version of the project with:"
440 msgstr ""
441 "Die aktuellste Version des Projekts kannst du abrufen ('checkout') mit:"
443 #. type: Plain text
444 #: ../en/history.txt:148
445 #, no-wrap
446 msgid " $ git checkout master .\n"
447 msgstr " $ git checkout master .\n"
449 #. type: Plain text
450 #: ../en/history.txt:153
451 msgid ""
452 "The *git fast-export* command converts any repository to the *git fast-"
453 "import* format, whose output you can study for writing exporters, and also "
454 "to transport repositories in a human-readable format. Indeed, these commands "
455 "can send repositories of text files over text-only channels."
456 msgstr ""
457 "Die Anweisung *git fast-export* konvertiert jedes 'Repository' in das *git "
458 "fast-import* Format, diese Ausgabe kannst du studieren um Exporteure zu "
459 "schreiben und außerdem um 'Repositories' in Klartext zu übertragen.  "
460 "untersuchen wes you can study for writing exporters, and also to transport "
461 "repositories in a human-readable format. Wirklich, diese Anweisung kann "
462 "Klartext-'Repositories' über reine Textkanäle übertragen."
464 #. type: Plain text
465 #: ../en/history.txt:155
466 msgid "=== Where Did It All Go Wrong? ==="
467 msgstr "=== Wo ging alles schief? ==="
469 #. type: Plain text
470 #: ../en/history.txt:157
471 msgid ""
472 "You've just discovered a broken feature in your program which you know for "
473 "sure was working a few months ago. Argh! Where did this bug come from? If "
474 "only you had been testing the feature as you developed."
475 msgstr ""
476 "Du hast gerade ein Funktion in deiner Anwendung entdeckt, die nicht mehr "
477 "funktioniert und du weißt sicher, dass sie vor ein paar Monaten noch ging. "
478 "Argh! Wo kommt dieser Fehler her? Hättest du nur die Funktion während der "
479 "Entwicklung getestet."
481 #. type: Plain text
482 #: ../en/history.txt:160
483 msgid ""
484 "It's too late for that now. However, provided you've been committing often, "
485 "Git can pinpoint the problem:"
486 msgstr ""
487 "Dafür ist es nun zu spät. Wie auch immer, vorausgesetzt du hast oft "
488 "'comittet', kann Git dir sagen, wo das Problem liegt:"
490 #. type: Plain text
491 #: ../en/history.txt:164
492 #, no-wrap
493 msgid ""
494 " $ git bisect start\n"
495 " $ git bisect bad HEAD\n"
496 " $ git bisect good 1b6d\n"
497 msgstr ""
498 " $ git bisect start\n"
499 " $ git bisect bad HEAD\n"
500 " $ git bisect good 1b6d\n"
502 #. type: Plain text
503 #: ../en/history.txt:166
504 msgid ""
505 "Git checks out a state halfway in between. Test the feature, and if it's "
506 "still broken:"
507 msgstr ""
508 "Git ruft eine Stand ab, der genau dazwischen liegt. Teste die Funktion und "
509 "wenn sich immer noch nicht funktioniert:"
511 #. type: Plain text
512 #: ../en/history.txt:168
513 #, no-wrap
514 msgid " $ git bisect bad\n"
515 msgstr " $ git bisect bad\n"
517 #. type: Plain text
518 #: ../en/history.txt:174
519 msgid ""
520 "If not, replace \"bad\" with \"good\". Git again transports you to a state "
521 "halfway between the known good and bad versions, narrowing down the "
522 "possibilities.  After a few iterations, this binary search will lead you to "
523 "the commit that caused the trouble. Once you've finished your investigation, "
524 "return to your original state by typing:"
525 msgstr ""
526 "Wenn nicht, ersetzte \"bad\" mit \"good\". Git versetzt dich wieder auf "
527 "einen Stand genau zwischen den bekannten Versionen \"good\" und \"bad\" und "
528 "reduziert so die Möglichkeiten. Nach ein paar Durchläufen wird dich diese "
529 "binäre Suche zu dem 'Commit' führen, der die Probleme verursacht. Wenn du "
530 "deine Ermittlungen abgeschlossen hast, kehre zum Originalstand zurück mit:"
532 #. type: Plain text
533 #: ../en/history.txt:176
534 #, no-wrap
535 msgid " $ git bisect reset\n"
536 msgstr " $ git bisect reset\n"
538 #. type: Plain text
539 #: ../en/history.txt:178
540 msgid ""
541 "Instead of testing every change by hand, automate the search by running:"
542 msgstr ""
543 "Anstatt jede Änderung per Hand zu untersuchen, automatisiere die Suche durch "
544 "Ausführen von:"
546 #. type: Plain text
547 #: ../en/history.txt:180
548 #, no-wrap
549 msgid " $ git bisect run my_script\n"
550 msgstr " $ git bisect run mein_skript\n"
552 #. type: Plain text
553 #: ../en/history.txt:185
554 msgid ""
555 "Git uses the return value of the given command, typically a one-off script, "
556 "to decide whether a change is good or bad: the command should exit with code "
557 "0 when good, 125 when the change should be skipped, and anything else "
558 "between 1 and 127 if it is bad. A negative return value aborts the bisect."
559 msgstr ""
560 "Git benutzt den Rückgabewert der übergebenen Anweisung, normalerweise ein "
561 "Skript für einmalige Ausführung, um zu entscheiden, ob eine Änderung gut "
562 "('good') oder schlecht ('bad') ist: Das Skript sollte 0 für 'good' "
563 "zurückgeben, 125 wenn die Änderung übersprungen werden soll und irgendetwas "
564 "zwischen 1 und 127 für 'bad'. Ein negativer Rückgabewert beendet die "
565 "'bisect'-Operation sofort."
567 #. type: Plain text
568 #: ../en/history.txt:189
569 msgid ""
570 "You can do much more: the help page explains how to visualize bisects, "
571 "examine or replay the bisect log, and eliminate known innocent changes for a "
572 "speedier search."
573 msgstr ""
574 "Du kannst noch viel mehr machen: die Hilfe erklärt, wie man 'bisect'-"
575 "Operationen visualisiert, das 'bisect'-Log untersucht oder wiedergibt und "
576 "sicher unschuldige Änderungen ausschließt um die Suche zu beschleunigen."
578 #. type: Plain text
579 #: ../en/history.txt:191
580 msgid "=== Who Made It All Go Wrong? ==="
581 msgstr "=== Wer ist verantwortlich? ==="
583 #. type: Plain text
584 #: ../en/history.txt:193
585 msgid "Like many other version control systems, Git has a blame command:"
586 msgstr ""
587 "Wie viele andere Versionsverwaltungssysteme hat Git eine 'blame' Anweisung:"
589 #. type: Plain text
590 #: ../en/history.txt:195
591 #, no-wrap
592 msgid " $ git blame bug.c\n"
593 msgstr " $ git blame bug.c\n"
595 #. type: Plain text
596 #: ../en/history.txt:197
597 msgid ""
598 "which annotates every line in the given file showing who last changed it, "
599 "and when. Unlike many other version control systems, this operation works "
600 "offline, reading only from local disk."
601 msgstr ""
602 "das jede Zeile in der angegebenen Datei kommentiert um anzuzeigen, wer sie "
603 "zuletzt geändert hat und wann. Im Gegensatz zu vielen anderen "
604 "Versionsverwaltungssystemen funktioniert diese Operation offline, es wird "
605 "nur von der lokalen Festplatte gelesen."
607 #. type: Plain text
608 #: ../en/history.txt:199
609 msgid "=== Personal Experience ==="
610 msgstr "=== Persönliche Erfahrungen ==="
612 #. type: Plain text
613 #: ../en/history.txt:206
614 msgid ""
615 "In a centralized version control system, history modification is a difficult "
616 "operation, and only available to administrators. Cloning, branching, and "
617 "merging are impossible without network communication. So are basic "
618 "operations such as browsing history, or committing a change. In some "
619 "systems, users require network connectivity just to view their own changes "
620 "or open a file for editing."
621 msgstr ""
622 "In einem zentralisierten Versionsverwaltungssystem ist das Bearbeiten der "
623 "Chronik eine schwierige Angelegenheit und den Administratoren vorbehalten. "
624 "'Clonen', 'Branchen' und 'Mergen' sind unmöglich ohne Netzwerkverbindung. "
625 "Ebenso grundlegende Funktionen wie das Durchsuchen der Chronik oder das "
626 "'comitten' einer Änderung. In manchen Systemen benötigt der Anwender schon "
627 "eine Netzwerkverbindung nur um seine eigenen Änderungen zu sehen oder um "
628 "eine Datei zum Bearbeiten zu öffnen."
630 #. type: Plain text
631 #: ../en/history.txt:213
632 msgid ""
633 "Centralized systems preclude working offline, and need more expensive "
634 "network infrastructure, especially as the number of developers grows. Most "
635 "importantly, all operations are slower to some degree, usually to the point "
636 "where users shun advanced commands unless absolutely necessary. In extreme "
637 "cases this is true of even the most basic commands. When users must run slow "
638 "commands, productivity suffers because of an interrupted work flow."
639 msgstr ""
640 "Zentralisierte Systeme schließen es aus offline zu arbeiten und benötigen "
641 "teurere Netzwerkinfrastruktur, vor allem, wenn die Zahl der Entwickler "
642 "steigt. Am wichtigsten ist, dass alle Operationen bis zu einem gewissen Grad "
643 "langsamer sind, in der Regel bis zu dem Punkt, wo Anwender erweiterte "
644 "Anweisungen scheuen, bis sie absolut notwendig sind. In extremen Fällen "
645 "trifft das auch auf die grundlegenden Anweisungen zu. Wenn Anwender langsame "
646 "Anweisungen ausführen müssen, sinkt die Produktivität, da der Arbeitsfluss "
647 "unterbrochen wird."
649 #. type: Plain text
650 #: ../en/history.txt:219
651 msgid ""
652 "I experienced these phenomena first-hand. Git was the first version control "
653 "system I used. I quickly grew accustomed to it, taking many features for "
654 "granted. I simply assumed other systems were similar: choosing a version "
655 "control system ought to be no different from choosing a text editor or web "
656 "browser."
657 msgstr ""
658 "Ich habe diese Phänomen aus erster Hand erfahren. Git war das erste "
659 "Versionsverwaltungssystem, das ich benutzt habe. Ich bin schnell in die "
660 "Anwendung hineingewachsen und betrachtete viele Funktionen als "
661 "selbstverständlich. Ich habe einfach vorausgesetzt, dass andere Systeme "
662 "ähnlich sind: die Auswahl eines Versionsverwaltungssystems sollte nicht "
663 "anders sein als die Auswahl eines Texteditors oder Internetbrowser."
665 #. type: Plain text
666 #: ../en/history.txt:225
667 msgid ""
668 "I was shocked when later forced to use a centralized system. A flaky "
669 "internet connection matters little with Git, but makes development "
670 "unbearable when it needs to be as reliable as local disk. Additionally, I "
671 "found myself conditioned to avoid certain commands because of the latencies "
672 "involved, which ultimately prevented me from following my desired work flow."
673 msgstr ""
674 "Ich war geschockt, als ich später gezwungen war ein zentralisiertes System "
675 "zu benutzen. Eine unzuverlässige Internetverbindung stört mit Git nicht "
676 "sehr, aber sie macht die Entwicklung unerträglich, wenn sie so zuverlässig "
677 "wie ein lokale Festplatte sein sollte. Zusätzlich habe ich mich dabei "
678 "ertappt, bestimmte Anweisungen zu vermeiden, um die damit verbundenen "
679 "Wartezeiten zu vermeiden und das hat mich letztendlich davon abgehalten "
680 "meinem gewohnten Arbeitsablauf zu folgen."
682 #. type: Plain text
683 #: ../en/history.txt:232
684 msgid ""
685 "When I had to run a slow command, the interruption to my train of thought "
686 "dealt a disproportionate amount of damage. While waiting for server "
687 "communication to complete, I'd do something else to pass the time, such as "
688 "check email or write documentation. By the time I returned to the original "
689 "task, the command had finished long ago, and I would waste more time trying "
690 "to remember what I was doing. Humans are bad at context switching."
691 msgstr ""
692 "Wenn ich eine langsame Anweisung auszuführen hatte, wurde durch die "
693 "Unterbrechung meiner Gedankengänge dem Arbeitsfluss ein unverhältnismäßiger "
694 "Schaden zugefügt. Während dem Warten auf das Ende der Serverkommunikation "
695 "tat ich etwas anderes um die Wartezeit zu überbrücken, zum Beispiel E-Mails "
696 "lesen oder Dokumentation schreiben. Wenn ich zur ursprünglichen Arbeit "
697 "zurückkehrte, war die Operation längst beendet und ich vergeudete noch mehr "
698 "Zeit beim Versuch mich zu erinnern was ich getan habe. Menschen sind nicht "
699 "gut im Kontextwechsel."
701 #. type: Plain text
702 #: ../en/history.txt:237
703 msgid ""
704 "There was also an interesting tragedy-of-the-commons effect: anticipating "
705 "network congestion, individuals would consume more bandwidth than necessary "
706 "on various operations in an attempt to reduce future delays. The combined "
707 "efforts intensified congestion, encouraging individuals to consume even more "
708 "bandwidth next time to avoid even longer delays."
709 msgstr ""
710 "Da war auch ein interessanter http://de.wikipedia.org/wiki/"
711 "Tragik_der_Allmende[Tragik-der-Allmende] Effekt: Netzwerküberlastungen "
712 "erahnend, verbrauchten einzelne Individuen für diverse Operationen mehr "
713 "Netzwerkbandbreite als erforderlich, um zukünftige Engpässe zu vermeiden. "
714 "Die Summe der Bemühungen verschlimmerte die Überlastungen, was einzelne "
715 "wiederum ermutigte noch mehr Bandbreite zu verbrauchen um noch längere "
716 "Wartezeiten zu verhindern."