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.
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"
16 "Content-Type: text/plain; charset=UTF-8\n"
17 "Content-Transfer-Encoding: UTF-8\n"
21 #: ../en/history.txt:2
22 msgid "== Lessons of History =="
23 msgstr "== Geschichtsstunde =="
26 #: ../en/history.txt:8
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 "
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."
43 #: ../en/history.txt:14
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."
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."
59 #: ../en/history.txt:16
60 msgid "=== I Stand Corrected ==="
61 msgstr "=== Ich nehme alles zurück ==="
64 #: ../en/history.txt:18
66 "Did you just commit, but wish you had typed a different message? Then run:"
68 "Hast du gerade 'commitet', aber du hättest gerne eine andere Beschreibung "
69 "eingegeben? Dann gib ein:"
72 #: ../en/history.txt:20 ../en/history.txt:54
74 msgid " $ git commit --amend\n"
75 msgstr " $ git commit --amend\n"
78 #: ../en/history.txt:23
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."
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."
88 #: ../en/history.txt:25
90 "Want to include a few more edits in that last commit? Then make those edits "
93 "Du willst noch ein paar Änderungen zu deinem letzten 'Commit' hinzufügen? "
94 "Dann mache diese Änderungen und gib ein:"
97 #: ../en/history.txt:27
99 msgid " $ git commit --amend -a\n"
100 msgstr " $ git commit --amend -a\n"
103 #: ../en/history.txt:29
104 msgid "=== ... And Then Some ==="
105 msgstr "=== ... und noch viel mehr ==="
108 #: ../en/history.txt:31
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:"
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:"
121 #: ../en/history.txt:33
123 msgid " $ git rebase -i HEAD~10\n"
124 msgstr " $ git rebase -i HEAD~10\n"
127 #: ../en/history.txt:35
129 "and the last 10 commits will appear in your favourite $EDITOR. A sample "
132 "und die letzten zehn 'Commits' erscheinen in deinem bevorzugten $EDITOR. "
133 "Auszug aus einem Beispiel:"
136 #: ../en/history.txt:39
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"
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"
148 #: ../en/history.txt:41
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."
163 #: ../en/history.txt:49
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"
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"
179 #: ../en/history.txt:52
180 msgid "Save and quit. If you marked a commit for editing, then run:"
182 "Speichere und Beende. Wenn du einen 'Commit' mit 'edit' markiert hast, gib "
186 #: ../en/history.txt:56
187 msgid "Otherwise, run:"
191 #: ../en/history.txt:58
193 msgid " $ git rebase --continue\n"
194 msgstr " $ git rebase --continue\n"
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."
202 #: ../en/history.txt:62
203 msgid "=== Local Changes Last ==="
204 msgstr "=== Lokale Änderungen zum Schluß ==="
207 #: ../en/history.txt:65
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."
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."
219 #: ../en/history.txt:67
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."
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."
231 #: ../en/history.txt:70
233 "This is a job for *git rebase* as described above. In many cases you can use "
234 "the *--onto* flag and avoid interaction."
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."
240 #: ../en/history.txt:72
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."
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."
250 #: ../en/history.txt:74
251 msgid "=== Rewriting History ==="
252 msgstr "=== Chronik umschreiben ==="
255 #: ../en/history.txt:82
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:"
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:"
275 #: ../en/history.txt:84
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"
281 #: ../en/history.txt:88
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."
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."
292 #: ../en/history.txt:90
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 "
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."
305 #: ../en/history.txt:92
307 "Lastly, replace clones of your project with your revised version if you want "
308 "to interact with them later."
310 "Zuletzt, ersetze alle 'Clones' deines Projekts mit deiner überarbeiteten "
311 "Version, falls du später mit ihnen interagieren möchtest."
314 #: ../en/history.txt:94
315 msgid "=== Making History ==="
316 msgstr "=== Geschichte machen ==="
319 #: ../en/history.txt:97
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."
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 "
331 #: ../en/history.txt:102
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 "
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 "
345 #: ../en/history.txt:104
348 "As an example, paste the following listing into temporary file, such as `/tmp/history`:\n"
349 "----------------------------------\n"
351 "Erstelle zum Beispiel aus folgendem Listing eine temporäre Datei, z.B. `/tmp/history`:\n"
352 "----------------------------------\n"
355 #: ../en/history.txt:110
357 "commit refs/heads/master committer Alice <alice@example.com> Thu, 01 Jan "
358 "1970 00:00:00 +0000 data <<EOT Initial commit. EOT"
360 "commit refs/heads/master committer Alice <alice@example.com> Thu, 01 Jan "
361 "1970 00:00:00 +0000 data <<EOT Initial commit. EOT"
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>"
369 #: ../en/history.txt:120
373 " printf(\"Hello, world!\\n\");\n"
379 " printf(\"Hallo, Welt!\\n\");\n"
385 #: ../en/history.txt:127
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"
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"
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>"
399 #: ../en/history.txt:137
403 " write(1, \"Hello, world!\\n\", 14);\n"
409 " write(1, \"Hallo, Welt!\\n\", 14);\n"
415 #: ../en/history.txt:138
417 msgid "----------------------------------\n"
418 msgstr "----------------------------------\n"
421 #: ../en/history.txt:141
422 msgid "Then create a Git repository from this temporary file by typing:"
424 "Dann, erstelle ein Git 'Repository' aus dieser temporären Datei, durch "
428 #: ../en/history.txt:144
431 " $ mkdir project; cd project; git init\n"
432 " $ git fast-import --date-format=rfc2822 < /tmp/history\n"
434 " $ mkdir project; cd project; git init\n"
435 " $ git fast-import --date-format=rfc2822 < /tmp/history\n"
438 #: ../en/history.txt:146
439 msgid "You can checkout the latest version of the project with:"
441 "Die aktuellste Version des Projekts kannst du abrufen ('checkout') mit:"
444 #: ../en/history.txt:148
446 msgid " $ git checkout master .\n"
447 msgstr " $ git checkout master .\n"
450 #: ../en/history.txt:153
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."
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."
465 #: ../en/history.txt:155
466 msgid "=== Where Did It All Go Wrong? ==="
467 msgstr "=== Wo ging alles schief? ==="
470 #: ../en/history.txt:157
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."
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."
482 #: ../en/history.txt:160
484 "It's too late for that now. However, provided you've been committing often, "
485 "Git can pinpoint the problem:"
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:"
491 #: ../en/history.txt:164
494 " $ git bisect start\n"
495 " $ git bisect bad HEAD\n"
496 " $ git bisect good 1b6d\n"
498 " $ git bisect start\n"
499 " $ git bisect bad HEAD\n"
500 " $ git bisect good 1b6d\n"
503 #: ../en/history.txt:166
505 "Git checks out a state halfway in between. Test the feature, and if it's "
508 "Git ruft eine Stand ab, der genau dazwischen liegt. Teste die Funktion und "
509 "wenn sich immer noch nicht funktioniert:"
512 #: ../en/history.txt:168
514 msgid " $ git bisect bad\n"
515 msgstr " $ git bisect bad\n"
518 #: ../en/history.txt:174
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:"
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:"
533 #: ../en/history.txt:176
535 msgid " $ git bisect reset\n"
536 msgstr " $ git bisect reset\n"
539 #: ../en/history.txt:178
541 "Instead of testing every change by hand, automate the search by running:"
543 "Anstatt jede Änderung per Hand zu untersuchen, automatisiere die Suche durch "
547 #: ../en/history.txt:180
549 msgid " $ git bisect run my_script\n"
550 msgstr " $ git bisect run mein_skript\n"
553 #: ../en/history.txt:185
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."
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."
568 #: ../en/history.txt:189
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 "
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."
579 #: ../en/history.txt:191
580 msgid "=== Who Made It All Go Wrong? ==="
581 msgstr "=== Wer ist verantwortlich? ==="
584 #: ../en/history.txt:193
585 msgid "Like many other version control systems, Git has a blame command:"
587 "Wie viele andere Versionsverwaltungssysteme hat Git eine 'blame' Anweisung:"
590 #: ../en/history.txt:195
592 msgid " $ git blame bug.c\n"
593 msgstr " $ git blame bug.c\n"
596 #: ../en/history.txt:197
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."
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."
608 #: ../en/history.txt:199
609 msgid "=== Personal Experience ==="
610 msgstr "=== Persönliche Erfahrungen ==="
613 #: ../en/history.txt:206
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."
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."
631 #: ../en/history.txt:213
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."
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 "
650 #: ../en/history.txt:219
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 "
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."
666 #: ../en/history.txt:225
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."
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."
683 #: ../en/history.txt:232
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."
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."
702 #: ../en/history.txt:237
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."
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."