From 93ba78d6f4632ef1c5228965e3edc8c0faf88c1e Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Tue, 26 May 2020 00:06:52 +0100 Subject: revert(3p/git): Revert merge of git upstream at v2.26.2 This causes cgit to serve error pages, which is undesirable. This reverts commit 5229c9b232de5bfa959ad6ebbb4c8192ac513352, reversing changes made to f2b211131f2347342dde63975b09cf603149f1a3. --- third_party/git/git-gui/README.md | 174 - third_party/git/git-gui/git-gui--askpass | 5 - third_party/git/git-gui/git-gui.sh | 235 +- third_party/git/git-gui/lib/blame.tcl | 24 +- third_party/git/git-gui/lib/branch.tcl | 2 - third_party/git/git-gui/lib/checkout_op.tcl | 21 +- third_party/git/git-gui/lib/choose_repository.tcl | 120 +- third_party/git/git-gui/lib/chord.tcl | 158 - third_party/git/git-gui/lib/commit.tcl | 4 +- third_party/git/git-gui/lib/console.tcl | 2 - third_party/git/git-gui/lib/diff.tcl | 129 +- third_party/git/git-gui/lib/index.tcl | 533 +-- third_party/git/git-gui/lib/merge.tcl | 14 +- third_party/git/git-gui/lib/status_bar.tcl | 231 +- third_party/git/git-gui/po/de.po | 3668 +++++++++----------- third_party/git/git-gui/po/git-gui.pot | 2526 ++++++-------- third_party/git/git-gui/po/glossary/de.po | 315 +- .../git/git-gui/po/glossary/git-gui-glossary.pot | 250 +- .../git/git-gui/po/glossary/git-gui-glossary.txt | 101 +- third_party/git/git-gui/po/ja.po | 9 +- 20 files changed, 3212 insertions(+), 5309 deletions(-) delete mode 100644 third_party/git/git-gui/README.md delete mode 100644 third_party/git/git-gui/lib/chord.tcl (limited to 'third_party/git/git-gui') diff --git a/third_party/git/git-gui/README.md b/third_party/git/git-gui/README.md deleted file mode 100644 index 5ce2122fbc61..000000000000 --- a/third_party/git/git-gui/README.md +++ /dev/null @@ -1,174 +0,0 @@ -# Git GUI - A graphical user interface for Git - -Git GUI allows you to use the [Git source control management -tools](https://git-scm.com/) via a GUI. This includes staging, committing, -adding, pushing, etc. It can also be used as a blame viewer, a tree browser, -and a citool (make exactly one commit before exiting and returning to shell). -More details about Git GUI can be found in its manual page by either running -`man git-gui`, or by visiting the [online manual -page](https://git-scm.com/docs/git-gui). - -Git GUI was initially written by Shawn O. Pearce, and is distributed with the -standard Git installation. - -# Building and installing - -You need to have the following dependencies installed before you begin: - -- Git -- Tcl -- Tk -- wish -- Gitk (needed for browsing history) -- msgfmt - -Most of Git GUI is written in Tcl, so there is no compilation involved. Still, -some things do need to be done (mostly some substitutions), so you do need to -"build" it. - -You can build Git GUI using: - -``` -make -``` - -And then install it using: - -``` -make install -``` - -You probably need to have root/admin permissions to install. - -# Contributing - -The project is currently maintained by Pratyush Yadav over at -https://github.com/prati0100/git-gui. Even though the project is hosted at -GitHub, the development does not happen over GitHub Issues and Pull Requests. -Instead, an email based workflow is used. The Git mailing list -[git@vger.kernel.org](mailto:git@vger.kernel.org) is where the patches are -discussed and reviewed. - -More information about the Git mailing list and instructions to subscribe can -be found [here](https://git.wiki.kernel.org/index.php/GitCommunity). - -## Sending your changes - -Since the development happens over email, you need to send in your commits in -text format. Commits can be converted to emails via the two tools provided by -Git: `git-send-email` and `git-format-patch`. - -You can use `git-format-patch` to generate patches in mbox format from your -commits that can then be sent via email. Let's say you are working on a branch -called 'foo' that was created on top of 'master'. You can run: - -``` -git format-patch -o output_dir master..foo -``` - -to convert all the extra commits in 'foo' into a set of patches saved in the -folder `output_dir`. - -If you are sending multiple patches, it is recommended to include a cover -letter. A cover letter is an email explaining in brief what the series is -supposed to do. A cover letter template can be generated by passing -`--cover-letter` to `git-format-patch`. - -After you send your patches, you might get a review suggesting some changes. -Make those changes, and re-send your patch(es) in reply to the first patch of -your initial version. Also please mention the version of the patch. This can be -done by passing `-v X` to `git-format-patch`, where 'X' is the version number -of the patch(es). - -### Using git-send-email - -You can use `git-send-email` to send patches generated via `git-format-patch`. -While you can directly send patches via `git-send-email`, it is recommended -that you first use `git-format-patch` to generate the emails, audit them, and -then send them via `git-send-email`. - -A pretty good guide to configuring and using `git-send-email` can be found -[here](https://www.freedesktop.org/wiki/Software/PulseAudio/HowToUseGitSendEmail/) - -### Using your email client - -If your email client supports sending mbox format emails, you can use -`git-format-patch` to get an mbox file for each commit, and then send them. If -there is more than one patch in the series, then all patches after the first -patch (or the cover letter) need to be sent as replies to the first. -`git-send-email` does this by default. - -### Using GitGitGadget - -Since some people prefer a GitHub pull request based workflow, they can use -[GitGitGadget](https://gitgitgadget.github.io/) to send in patches. The tool -was originally written for sending patches to the Git project, but it now also -supports sending patches for git-gui. - -Instructions for using GitGitGadget to send git-gui patches, courtesy of -Johannes Schindelin: - -If you don't already have a fork of the [git/git](https://github.com/git/git) -repo, you need to make one. Then clone your fork: - -``` -git clone https://github.com//git -``` - -Then add GitGitGadget as a remote: - -``` -git remote add gitgitgadget https://github.com/gitgitgadget/git -``` - -Then fetch the git-gui branch: - -``` -git fetch gitgitgadget git-gui/master -``` - -Then create a new branch based on git-gui/master: - -``` -git checkout -b git-gui/master -``` - -Make whatever commits you need to, push them to your fork, and then head over -to https://github.com/gitgitgadget/git/pulls and open a Pull Request targeting -git-gui/master. - -GitGitGadget will welcome you with a (hopefully) helpful message. - -## Signing off - -You need to sign off your commits before sending them to the list. You can do -that by passing the `-s` option to `git-commit`. You can also use the "Sign -Off" option in Git GUI. - -A sign-off is a simple 'Signed-off-by: A U Thor \' line at -the end of the commit message, after your explanation of the commit. - -A sign-off means that you are legally allowed to send the code, and it serves -as a certificate of origin. More information can be found at -[developercertificate.org](https://developercertificate.org/). - -## Responding to review comments - -It is quite likely your patches will get review comments. Those comments are -sent on the Git mailing list as replies to your patch, and you will usually be -Cc'ed in those replies. - -You are expected to respond by either explaining your code further to convince -the reviewer what you are doing is correct, or acknowledge the comments and -re-send the patches with those comments addressed. - -Some tips for those not familiar with communication on a mailing list: - -- Use only plain text emails. No HTML at all. -- Wrap lines at around 75 characters. -- Do not send attachments. If you do need to send some files, consider using a - hosting service, and paste the link in your email. -- Do not [top post](http://www.idallen.com/topposting.html). -- Always "reply all". Keep all correspondents and the list in Cc. If you reply - directly to a reviewer, and not Cc the list, other people would not be able - to chime in. diff --git a/third_party/git/git-gui/git-gui--askpass b/third_party/git/git-gui/git-gui--askpass index 1c99ee8ca20d..4277f30c4116 100755 --- a/third_party/git/git-gui/git-gui--askpass +++ b/third_party/git/git-gui/git-gui--askpass @@ -56,11 +56,6 @@ proc finish {} { } } - # On Windows, force the encoding to UTF-8: it is what `git.exe` expects - if {$::tcl_platform(platform) eq {windows}} { - set ::answer [encoding convertto utf-8 $::answer] - } - puts $::answer set ::rc 0 } diff --git a/third_party/git/git-gui/git-gui.sh b/third_party/git/git-gui/git-gui.sh index 4610e4ca72a8..6de74ce639ce 100755 --- a/third_party/git/git-gui/git-gui.sh +++ b/third_party/git/git-gui/git-gui.sh @@ -30,8 +30,8 @@ along with this program; if not, see .}] ## ## Tcl/Tk sanity check -if {[catch {package require Tcl 8.5} err] - || [catch {package require Tk 8.5} err] +if {[catch {package require Tcl 8.4} err] + || [catch {package require Tk 8.4} err] } { catch {wm withdraw .} tk_messageBox \ @@ -684,7 +684,6 @@ proc load_current_branch {} { global current_branch is_detached set fd [open [gitdir HEAD] r] - fconfigure $fd -translation binary -encoding utf-8 if {[gets $fd ref] < 1} { set ref {} } @@ -1341,7 +1340,6 @@ set HEAD {} set PARENT {} set MERGE_HEAD [list] set commit_type {} -set commit_type_is_amend 0 set empty_tree {} set current_branch {} set is_detached 0 @@ -1349,9 +1347,8 @@ set current_diff_path {} set is_3way_diff 0 set is_submodule_diff 0 set is_conflict_diff 0 +set selected_commit_type new set diff_empty_count 0 -set last_revert {} -set last_revert_enc {} set nullid "0000000000000000000000000000000000000000" set nullid2 "0000000000000000000000000000000000000001" @@ -1437,7 +1434,7 @@ proc PARENT {} { } proc force_amend {} { - global commit_type_is_amend + global selected_commit_type global HEAD PARENT MERGE_HEAD commit_type repository_state newType newHEAD newMERGE_HEAD @@ -1446,7 +1443,7 @@ proc force_amend {} { set MERGE_HEAD $newMERGE_HEAD set commit_type $newType - set commit_type_is_amend 1 + set selected_commit_type amend do_select_commit_type } @@ -1798,10 +1795,10 @@ proc ui_status {msg} { } } -proc ui_ready {} { +proc ui_ready {{test {}}} { global main_status if {[info exists main_status]} { - $main_status show [mc "Ready."] + $main_status show [mc "Ready."] $test } } @@ -2151,6 +2148,8 @@ proc incr_font_size {font {amt 1}} { ## ## ui commands +set starting_gitk_msg [mc "Starting gitk... please wait..."] + proc do_gitk {revs {is_submodule false}} { global current_diff_path file_states current_diff_side ui_index global _gitdir _gitworktree @@ -2205,12 +2204,9 @@ proc do_gitk {revs {is_submodule false}} { set env(GIT_WORK_TREE) $_gitworktree cd $pwd - if {[info exists main_status]} { - set status_operation [$::main_status \ - start \ - [mc "Starting %s... please wait..." "gitk"]] - - after 3500 [list $status_operation stop] + ui_status $::starting_gitk_msg + after 10000 { + ui_ready $starting_gitk_msg } } } @@ -2242,16 +2238,16 @@ proc do_git_gui {} { set env(GIT_WORK_TREE) $_gitworktree cd $pwd - set status_operation [$::main_status \ - start \ - [mc "Starting %s... please wait..." "git-gui"]] - - after 3500 [list $status_operation stop] + ui_status $::starting_gitk_msg + after 10000 { + ui_ready $starting_gitk_msg + } } } -# Get the system-specific explorer app/command. -proc get_explorer {} { +proc do_explore {} { + global _gitworktree + set explorer {} if {[is_Cygwin] || [is_Windows]} { set explorer "explorer.exe" } elseif {[is_MacOSX]} { @@ -2260,23 +2256,9 @@ proc get_explorer {} { # freedesktop.org-conforming system is our best shot set explorer "xdg-open" } - return $explorer -} - -proc do_explore {} { - global _gitworktree - set explorer [get_explorer] eval exec $explorer [list [file nativename $_gitworktree]] & } -# Open file relative to the working tree by the default associated app. -proc do_file_open {file} { - global _gitworktree - set explorer [get_explorer] - set full_file_path [file join $_gitworktree $file] - exec $explorer [file nativename $full_file_path] & -} - set is_quitting 0 set ret_code 1 @@ -2512,7 +2494,7 @@ proc force_first_diff {after} { proc toggle_or_diff {mode w args} { global file_states file_lists current_diff_path ui_index ui_workdir - global last_clicked selected_paths file_lists_last_clicked + global last_clicked selected_paths if {$mode eq "click"} { foreach {x y} $args break @@ -2569,8 +2551,6 @@ proc toggle_or_diff {mode w args} { $ui_index tag remove in_sel 0.0 end $ui_workdir tag remove in_sel 0.0 end - set file_lists_last_clicked($w) $path - # Determine the state of the file if {[info exists file_states($path)]} { set state [lindex $file_states($path) 0] @@ -2684,32 +2664,6 @@ proc show_less_context {} { } } -proc focus_widget {widget} { - global file_lists last_clicked selected_paths - global file_lists_last_clicked - - if {[llength $file_lists($widget)] > 0} { - set path $file_lists_last_clicked($widget) - set index [lsearch -sorted -exact $file_lists($widget) $path] - if {$index < 0} { - set index 0 - set path [lindex $file_lists($widget) $index] - } - - focus $widget - set last_clicked [list $widget [expr $index + 1]] - array unset selected_paths - set selected_paths($path) 1 - show_diff $path $widget - } -} - -proc toggle_commit_type {} { - global commit_type_is_amend - set commit_type_is_amend [expr !$commit_type_is_amend] - do_select_commit_type -} - ###################################################################### ## ## ui construction @@ -2752,18 +2706,10 @@ if {![is_bare]} { } if {[is_Windows]} { - # Use /git-bash.exe if available - set normalized [file normalize $::argv0] - regsub "/mingw../libexec/git-core/git-gui$" \ - $normalized "/git-bash.exe" cmdLine - if {$cmdLine != $normalized && [file exists $cmdLine]} { - set cmdLine [list "Git Bash" $cmdLine &] - } else { - set cmdLine [list "Git Bash" bash --login -l &] - } .mbar.repository add command \ -label [mc "Git Bash"] \ - -command {eval exec [auto_execok start] $cmdLine} + -command {eval exec [auto_execok start] \ + [list "Git Bash" bash --login -l &]} } if {[is_Windows] || ![is_bare]} { @@ -2906,11 +2852,19 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} { menu .mbar.commit if {![is_enabled nocommit]} { - .mbar.commit add checkbutton \ + .mbar.commit add radiobutton \ + -label [mc "New Commit"] \ + -command do_select_commit_type \ + -variable selected_commit_type \ + -value new + lappend disable_on_lock \ + [list .mbar.commit entryconf [.mbar.commit index last] -state] + + .mbar.commit add radiobutton \ -label [mc "Amend Last Commit"] \ - -accelerator $M1T-E \ - -variable commit_type_is_amend \ - -command do_select_commit_type + -command do_select_commit_type \ + -variable selected_commit_type \ + -value amend lappend disable_on_lock \ [list .mbar.commit entryconf [.mbar.commit index last] -state] @@ -3076,23 +3030,8 @@ unset doc_path doc_url wm protocol . WM_DELETE_WINDOW do_quit bind all <$M1B-Key-q> do_quit bind all <$M1B-Key-Q> do_quit - -set m1b_w_script { - set toplvl_win [winfo toplevel %W] - - # If we are destroying the main window, we should call do_quit to take - # care of cleanup before exiting the program. - if {$toplvl_win eq "."} { - do_quit - } else { - destroy $toplvl_win - } -} - -bind all <$M1B-Key-w> $m1b_w_script -bind all <$M1B-Key-W> $m1b_w_script - -unset m1b_w_script +bind all <$M1B-Key-w> {destroy [winfo toplevel %W]} +bind all <$M1B-Key-W> {destroy [winfo toplevel %W]} set subcommand_args {} proc usage {} { @@ -3398,10 +3337,18 @@ set ui_comm .vpane.lower.commarea.buffer.frame.t set ui_coml .vpane.lower.commarea.buffer.header.l if {![is_enabled nocommit]} { - ${NS}::checkbutton .vpane.lower.commarea.buffer.header.amend \ + ${NS}::radiobutton .vpane.lower.commarea.buffer.header.new \ + -text [mc "New Commit"] \ + -command do_select_commit_type \ + -variable selected_commit_type \ + -value new + lappend disable_on_lock \ + [list .vpane.lower.commarea.buffer.header.new conf -state] + ${NS}::radiobutton .vpane.lower.commarea.buffer.header.amend \ -text [mc "Amend Last Commit"] \ - -variable commit_type_is_amend \ - -command do_select_commit_type + -command do_select_commit_type \ + -variable selected_commit_type \ + -value amend lappend disable_on_lock \ [list .vpane.lower.commarea.buffer.header.amend conf -state] } @@ -3426,6 +3373,7 @@ pack $ui_coml -side left -fill x if {![is_enabled nocommit]} { pack .vpane.lower.commarea.buffer.header.amend -side right + pack .vpane.lower.commarea.buffer.header.new -side right } textframe .vpane.lower.commarea.buffer.frame @@ -3439,16 +3387,10 @@ ttext $ui_comm -background white -foreground black \ -relief sunken \ -width $repo_config(gui.commitmsgwidth) -height 9 -wrap none \ -font font_diff \ - -xscrollcommand {.vpane.lower.commarea.buffer.frame.sbx set} \ -yscrollcommand {.vpane.lower.commarea.buffer.frame.sby set} -${NS}::scrollbar .vpane.lower.commarea.buffer.frame.sbx \ - -orient horizontal \ - -command [list $ui_comm xview] ${NS}::scrollbar .vpane.lower.commarea.buffer.frame.sby \ - -orient vertical \ -command [list $ui_comm yview] -pack .vpane.lower.commarea.buffer.frame.sbx -side bottom -fill x pack .vpane.lower.commarea.buffer.frame.sby -side right -fill y pack $ui_comm -side left -fill y pack .vpane.lower.commarea.buffer.header -side top -fill x @@ -3528,11 +3470,9 @@ tlabel .vpane.lower.diff.header.file \ -justify left tlabel .vpane.lower.diff.header.path \ -background gold \ - -foreground blue \ + -foreground black \ -anchor w \ - -justify left \ - -font [eval font create [font configure font_ui] -underline 1] \ - -cursor hand2 + -justify left pack .vpane.lower.diff.header.status -side left pack .vpane.lower.diff.header.file -side left pack .vpane.lower.diff.header.path -fill x @@ -3547,12 +3487,8 @@ $ctxm add command \ -type STRING \ -- $current_diff_path } -$ctxm add command \ - -label [mc Open] \ - -command {do_file_open $current_diff_path} lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state] bind_button3 .vpane.lower.diff.header.path "tk_popup $ctxm %X %Y" -bind .vpane.lower.diff.header.path {do_file_open $current_diff_path} # -- Diff Body # @@ -3611,9 +3547,6 @@ $ui_diff tag conf d_s- \ $ui_diff tag conf d< \ -foreground orange \ -font font_diffbold -$ui_diff tag conf d| \ - -foreground orange \ - -font font_diffbold $ui_diff tag conf d= \ -foreground orange \ -font font_diffbold @@ -3673,31 +3606,15 @@ set ctxm .vpane.lower.diff.body.ctxm menu $ctxm -tearoff 0 $ctxm add command \ -label [mc "Apply/Reverse Hunk"] \ - -command {apply_or_revert_hunk $cursorX $cursorY 0} + -command {apply_hunk $cursorX $cursorY} set ui_diff_applyhunk [$ctxm index last] lappend diff_actions [list $ctxm entryconf $ui_diff_applyhunk -state] $ctxm add command \ -label [mc "Apply/Reverse Line"] \ - -command {apply_or_revert_range_or_line $cursorX $cursorY 0; do_rescan} + -command {apply_range_or_line $cursorX $cursorY; do_rescan} set ui_diff_applyline [$ctxm index last] lappend diff_actions [list $ctxm entryconf $ui_diff_applyline -state] $ctxm add separator -$ctxm add command \ - -label [mc "Revert Hunk"] \ - -command {apply_or_revert_hunk $cursorX $cursorY 1} -set ui_diff_reverthunk [$ctxm index last] -lappend diff_actions [list $ctxm entryconf $ui_diff_reverthunk -state] -$ctxm add command \ - -label [mc "Revert Line"] \ - -command {apply_or_revert_range_or_line $cursorX $cursorY 1; do_rescan} -set ui_diff_revertline [$ctxm index last] -lappend diff_actions [list $ctxm entryconf $ui_diff_revertline -state] -$ctxm add command \ - -label [mc "Undo Last Revert"] \ - -command {undo_last_revert; do_rescan} -set ui_diff_undorevert [$ctxm index last] -lappend diff_actions [list $ctxm entryconf $ui_diff_undorevert -state] -$ctxm add separator $ctxm add command \ -label [mc "Show Less Context"] \ -command show_less_context @@ -3776,7 +3693,7 @@ proc has_textconv {path} { } proc popup_diff_menu {ctxm ctxmmg ctxmsm x y X Y} { - global current_diff_path file_states last_revert + global current_diff_path file_states set ::cursorX $x set ::cursorY $y if {[info exists file_states($current_diff_path)]} { @@ -3790,28 +3707,19 @@ proc popup_diff_menu {ctxm ctxmmg ctxmsm x y X Y} { tk_popup $ctxmsm $X $Y } else { set has_range [expr {[$::ui_diff tag nextrange sel 0.0] != {}}] - set u [mc "Undo Last Revert"] if {$::ui_index eq $::current_diff_side} { set l [mc "Unstage Hunk From Commit"] - set h [mc "Revert Hunk"] - if {$has_range} { set t [mc "Unstage Lines From Commit"] - set r [mc "Revert Lines"] } else { set t [mc "Unstage Line From Commit"] - set r [mc "Revert Line"] } } else { set l [mc "Stage Hunk For Commit"] - set h [mc "Revert Hunk"] - if {$has_range} { set t [mc "Stage Lines For Commit"] - set r [mc "Revert Lines"] } else { set t [mc "Stage Line For Commit"] - set r [mc "Revert Line"] } } if {$::is_3way_diff @@ -3822,35 +3730,11 @@ proc popup_diff_menu {ctxm ctxmmg ctxmsm x y X Y} { || [string match {T?} $state] || [has_textconv $current_diff_path]} { set s disabled - set revert_state disabled } else { set s normal - - # Only allow reverting changes in the working tree. If - # the user wants to revert changes in the index, they - # need to unstage those first. - if {$::ui_workdir eq $::current_diff_side} { - set revert_state normal - } else { - set revert_state disabled - } } - - if {$last_revert eq {}} { - set undo_state disabled - } else { - set undo_state normal - } - $ctxm entryconf $::ui_diff_applyhunk -state $s -label $l $ctxm entryconf $::ui_diff_applyline -state $s -label $t - $ctxm entryconf $::ui_diff_revertline -state $revert_state \ - -label $r - $ctxm entryconf $::ui_diff_reverthunk -state $revert_state \ - -label $h - $ctxm entryconf $::ui_diff_undorevert -state $undo_state \ - -label $u - tk_popup $ctxm $X $Y } } @@ -3977,8 +3861,6 @@ bind . <$M1B-Key-j> do_revert_selection bind . <$M1B-Key-J> do_revert_selection bind . <$M1B-Key-i> do_add_all bind . <$M1B-Key-I> do_add_all -bind . <$M1B-Key-e> toggle_commit_type -bind . <$M1B-Key-E> toggle_commit_type bind . <$M1B-Key-minus> {show_less_context;break} bind . <$M1B-Key-KP_Subtract> {show_less_context;break} bind . <$M1B-Key-equal> {show_more_context;break} @@ -3995,14 +3877,6 @@ foreach i [list $ui_index $ui_workdir] { } unset i -bind . {focus_widget $::ui_workdir} -bind . {focus_widget $::ui_index} -bind . {focus $::ui_diff} -bind . {focus $::ui_comm} - -set file_lists_last_clicked($ui_index) {} -set file_lists_last_clicked($ui_workdir) {} - set file_lists($ui_index) [list] set file_lists($ui_workdir) [list] @@ -4181,9 +4055,6 @@ if {$picked && [is_config_true gui.autoexplore]} { do_explore } -# Clear "Initializing..." status -after 500 {$main_status show ""} - # Local variables: # mode: tcl # indent-tabs-mode: t diff --git a/third_party/git/git-gui/lib/blame.tcl b/third_party/git/git-gui/lib/blame.tcl index 62ec08366768..a1aeb8b96e2d 100644 --- a/third_party/git/git-gui/lib/blame.tcl +++ b/third_party/git/git-gui/lib/blame.tcl @@ -24,7 +24,6 @@ field w_cviewer ; # pane showing commit message field finder ; # find mini-dialog frame field gotoline ; # line goto mini-dialog frame field status ; # status mega-widget instance -field status_operation ; # operation displayed by status mega-widget field old_height ; # last known height of $w.file_pane @@ -275,7 +274,6 @@ constructor new {i_commit i_path i_jump} { pack $w_cviewer -expand 1 -fill both set status [::status_bar::new $w.status] - set status_operation {} menu $w.ctxm -tearoff 0 $w.ctxm add command \ @@ -604,23 +602,16 @@ method _exec_blame {cur_w cur_d options cur_s} { } else { lappend options $commit } - - # We may recurse in from another call to _exec_blame and already have - # a status operation. - if {$status_operation == {}} { - set status_operation [$status start \ - $cur_s \ - [mc "lines annotated"]] - } else { - $status_operation restart $cur_s - } - lappend options -- $path set fd [eval git_read --nice blame $options] fconfigure $fd -blocking 0 -translation lf -encoding utf-8 fileevent $fd readable [cb _read_blame $fd $cur_w $cur_d] set current_fd $fd set blame_lines 0 + + $status start \ + $cur_s \ + [mc "lines annotated"] } method _read_blame {fd cur_w cur_d} { @@ -815,11 +806,10 @@ method _read_blame {fd cur_w cur_d} { [mc "Loading original location annotations..."] } else { set current_fd {} - $status_operation stop [mc "Annotation complete."] - set status_operation {} + $status stop [mc "Annotation complete."] } } else { - $status_operation update $blame_lines $total_lines + $status update $blame_lines $total_lines } } ifdeleted { catch {close $fd} } @@ -1134,7 +1124,7 @@ method _blameparent {} { set diffcmd [list diff-tree --unified=0 $cparent $cmit -- $new_path] } if {[catch {set fd [eval git_read $diffcmd]} err]} { - $status_operation stop [mc "Unable to display parent"] + $status stop [mc "Unable to display parent"] error_popup [strcat [mc "Error loading diff:"] "\n\n$err"] return } diff --git a/third_party/git/git-gui/lib/branch.tcl b/third_party/git/git-gui/lib/branch.tcl index 8b0c4858890f..777eeb79c135 100644 --- a/third_party/git/git-gui/lib/branch.tcl +++ b/third_party/git/git-gui/lib/branch.tcl @@ -8,7 +8,6 @@ proc load_all_heads {} { set rh_len [expr {[string length $rh] + 1}] set all_heads [list] set fd [git_read for-each-ref --format=%(refname) $rh] - fconfigure $fd -translation binary -encoding utf-8 while {[gets $fd line] > 0} { if {!$some_heads_tracking || ![is_tracking_branch $line]} { lappend all_heads [string range $line $rh_len end] @@ -25,7 +24,6 @@ proc load_all_tags {} { --sort=-taggerdate \ --format=%(refname) \ refs/tags] - fconfigure $fd -translation binary -encoding utf-8 while {[gets $fd line] > 0} { if {![regsub ^refs/tags/ $line {} name]} continue lappend all_tags $name diff --git a/third_party/git/git-gui/lib/checkout_op.tcl b/third_party/git/git-gui/lib/checkout_op.tcl index 21ea768d8036..9e7412c446f7 100644 --- a/third_party/git/git-gui/lib/checkout_op.tcl +++ b/third_party/git/git-gui/lib/checkout_op.tcl @@ -341,9 +341,9 @@ method _readtree {} { global HEAD set readtree_d {} - set status_bar_operation [$::main_status start \ + $::main_status start \ [mc "Updating working directory to '%s'..." [_name $this]] \ - [mc "files checked out"]] + [mc "files checked out"] set fd [git_read --stderr read-tree \ -m \ @@ -354,27 +354,26 @@ method _readtree {} { $new_hash \ ] fconfigure $fd -blocking 0 -translation binary - fileevent $fd readable [cb _readtree_wait $fd $status_bar_operation] + fileevent $fd readable [cb _readtree_wait $fd] } -method _readtree_wait {fd status_bar_operation} { +method _readtree_wait {fd} { global current_branch set buf [read $fd] - $status_bar_operation update_meter $buf + $::main_status update_meter $buf append readtree_d $buf fconfigure $fd -blocking 1 if {![eof $fd]} { fconfigure $fd -blocking 0 - $status_bar_operation stop return } if {[catch {close $fd}]} { set err $readtree_d regsub {^fatal: } $err {} err - $status_bar_operation stop [mc "Aborted checkout of '%s' (file level merging is required)." [_name $this]] + $::main_status stop [mc "Aborted checkout of '%s' (file level merging is required)." [_name $this]] warn_popup [strcat [mc "File level merge required."] " $err @@ -385,12 +384,12 @@ $err return } - $status_bar_operation stop + $::main_status stop _after_readtree $this } method _after_readtree {} { - global commit_type HEAD MERGE_HEAD PARENT + global selected_commit_type commit_type HEAD MERGE_HEAD PARENT global current_branch is_detached global ui_comm @@ -491,12 +490,12 @@ method _update_repo_state {} { # amend mode our file lists are accurate and we can avoid # the rescan. # - global commit_type_is_amend commit_type HEAD MERGE_HEAD PARENT + global selected_commit_type commit_type HEAD MERGE_HEAD PARENT global ui_comm unlock_index set name [_name $this] - set commit_type_is_amend 0 + set selected_commit_type new if {[string match amend* $commit_type]} { $ui_comm delete 0.0 end $ui_comm edit reset diff --git a/third_party/git/git-gui/lib/choose_repository.tcl b/third_party/git/git-gui/lib/choose_repository.tcl index e54f3e66d8f0..80f5a59bbbfc 100644 --- a/third_party/git/git-gui/lib/choose_repository.tcl +++ b/third_party/git/git-gui/lib/choose_repository.tcl @@ -9,18 +9,6 @@ field w_body ; # Widget holding the center content field w_next ; # Next button field w_quit ; # Quit button field o_cons ; # Console object (if active) - -# Status mega-widget instance during _do_clone2 (used by _copy_files and -# _link_files). Widget is destroyed before _do_clone2 calls -# _do_clone_checkout -field o_status - -# Operation displayed by status mega-widget during _do_clone_checkout => -# _readtree_wait => _postcheckout_wait => _do_clone_submodules => -# _do_validate_submodule_cloning. The status mega-widget is a different -# instance than that stored in $o_status in earlier operations. -field o_status_op - field w_types ; # List of type buttons in clone field w_recentlist ; # Listbox containing recent repositories field w_localpath ; # Entry widget bound to local_path @@ -671,12 +659,12 @@ method _do_clone2 {} { switch -exact -- $clone_type { hardlink { - set o_status [status_bar::two_line $w_body] + set o_cons [status_bar::two_line $w_body] pack $w_body -fill x -padx 10 -pady 10 - set status_op [$o_status start \ + $o_cons start \ [mc "Counting objects"] \ - [mc "buckets"]] + [mc "buckets"] update if {[file exists [file join $objdir info alternates]]} { @@ -701,7 +689,6 @@ method _do_clone2 {} { } err]} { catch {cd $pwd} _clone_failed $this [mc "Unable to copy objects/info/alternates: %s" $err] - $status_op stop return } } @@ -713,7 +700,7 @@ method _do_clone2 {} { -directory [file join $objdir] ??] set bcnt [expr {[llength $buckets] + 2}] set bcur 1 - $status_op update $bcur $bcnt + $o_cons update $bcur $bcnt update file mkdir [file join .git objects pack] @@ -721,7 +708,7 @@ method _do_clone2 {} { -directory [file join $objdir pack] *] { lappend tolink [file join pack $i] } - $status_op update [incr bcur] $bcnt + $o_cons update [incr bcur] $bcnt update foreach i $buckets { @@ -730,10 +717,10 @@ method _do_clone2 {} { -directory [file join $objdir $i] *] { lappend tolink [file join $i $j] } - $status_op update [incr bcur] $bcnt + $o_cons update [incr bcur] $bcnt update } - $status_op stop + $o_cons stop if {$tolink eq {}} { info_popup [strcat \ @@ -760,8 +747,6 @@ method _do_clone2 {} { if {!$i} return destroy $w_body - - set o_status {} } full { set o_cons [console::embed \ @@ -796,9 +781,9 @@ method _do_clone2 {} { } method _copy_files {objdir tocopy} { - set status_op [$o_status start \ + $o_cons start \ [mc "Copying objects"] \ - [mc "KiB"]] + [mc "KiB"] set tot 0 set cmp 0 foreach p $tocopy { @@ -813,7 +798,7 @@ method _copy_files {objdir tocopy} { while {![eof $f_in]} { incr cmp [fcopy $f_in $f_cp -size 16384] - $status_op update \ + $o_cons update \ [expr {$cmp / 1024}] \ [expr {$tot / 1024}] update @@ -823,19 +808,17 @@ method _copy_files {objdir tocopy} { close $f_cp } err]} { _clone_failed $this [mc "Unable to copy object: %s" $err] - $status_op stop return 0 } } - $status_op stop return 1 } method _link_files {objdir tolink} { set total [llength $tolink] - set status_op [$o_status start \ + $o_cons start \ [mc "Linking objects"] \ - [mc "objects"]] + [mc "objects"] for {set i 0} {$i < $total} {} { set p [lindex $tolink $i] if {[catch { @@ -844,17 +827,15 @@ method _link_files {objdir tolink} { [file join $objdir $p] } err]} { _clone_failed $this [mc "Unable to hardlink object: %s" $err] - $status_op stop return 0 } incr i if {$i % 5 == 0} { - $status_op update $i $total + $o_cons update $i $total update } } - $status_op stop return 1 } @@ -977,26 +958,11 @@ method _do_clone_checkout {HEAD} { return } - set status [status_bar::two_line $w_body] + set o_cons [status_bar::two_line $w_body] pack $w_body -fill x -padx 10 -pady 10 - - # We start the status operation here. - # - # This function calls _readtree_wait as a callback. - # - # _readtree_wait in turn either calls _do_clone_submodules directly, - # or calls _postcheckout_wait as a callback which then calls - # _do_clone_submodules. - # - # _do_clone_submodules calls _do_validate_submodule_cloning. - # - # _do_validate_submodule_cloning stops the status operation. - # - # There are no other calls into this chain from other code. - - set o_status_op [$status start \ + $o_cons start \ [mc "Creating working directory"] \ - [mc "files"]] + [mc "files"] set readtree_err {} set fd [git_read --stderr read-tree \ @@ -1010,9 +976,33 @@ method _do_clone_checkout {HEAD} { fileevent $fd readable [cb _readtree_wait $fd] } +method _do_validate_submodule_cloning {ok} { + if {$ok} { + $o_cons done $ok + set done 1 + } else { + _clone_failed $this [mc "Cannot clone submodules."] + } +} + +method _do_clone_submodules {} { + if {$recursive eq {true}} { + destroy $w_body + set o_cons [console::embed \ + $w_body \ + [mc "Cloning submodules"]] + pack $w_body -fill both -expand 1 -padx 10 + $o_cons exec \ + [list git submodule update --init --recursive] \ + [cb _do_validate_submodule_cloning] + } else { + set done 1 + } +} + method _readtree_wait {fd} { set buf [read $fd] - $o_status_op update_meter $buf + $o_cons update_meter $buf append readtree_err $buf fconfigure $fd -blocking 1 @@ -1060,34 +1050,6 @@ method _postcheckout_wait {fd_ph} { fconfigure $fd_ph -blocking 0 } -method _do_clone_submodules {} { - if {$recursive eq {true}} { - $o_status_op stop - set o_status_op {} - - destroy $w_body - - set o_cons [console::embed \ - $w_body \ - [mc "Cloning submodules"]] - pack $w_body -fill both -expand 1 -padx 10 - $o_cons exec \ - [list git submodule update --init --recursive] \ - [cb _do_validate_submodule_cloning] - } else { - set done 1 - } -} - -method _do_validate_submodule_cloning {ok} { - if {$ok} { - $o_cons done $ok - set done 1 - } else { - _clone_failed $this [mc "Cannot clone submodules."] - } -} - ###################################################################### ## ## Open Existing Repository diff --git a/third_party/git/git-gui/lib/chord.tcl b/third_party/git/git-gui/lib/chord.tcl deleted file mode 100644 index e21e7d3d0b79..000000000000 --- a/third_party/git/git-gui/lib/chord.tcl +++ /dev/null @@ -1,158 +0,0 @@ -# Simple Chord for Tcl -# -# A "chord" is a method with more than one entrypoint and only one body, such -# that the body runs only once all the entrypoints have been called by -# different asynchronous tasks. In this implementation, the chord is defined -# dynamically for each invocation. A SimpleChord object is created, supplying -# body script to be run when the chord is completed, and then one or more notes -# are added to the chord. Each note can be called like a proc, and returns -# immediately if the chord isn't yet complete. When the last remaining note is -# called, the body runs before the note returns. -# -# The SimpleChord class has a constructor that takes the body script, and a -# method add_note that returns a note object. Since the body script does not -# run in the context of the procedure that defined it, a mechanism is provided -# for injecting variables into the chord for use by the body script. The -# activation of a note is idempotent; multiple calls have the same effect as -# a simple call. -# -# If you are invoking asynchronous operations with chord notes as completion -# callbacks, and there is a possibility that earlier operations could complete -# before later ones are started, it is a good practice to create a "common" -# note on the chord that prevents it from being complete until you're certain -# you've added all the notes you need. -# -# Example: -# -# # Turn off the UI while running a couple of async operations. -# lock_ui -# -# set chord [SimpleChord::new { -# unlock_ui -# # Note: $notice here is not referenced in the calling scope -# if {$notice} { info_popup $notice } -# } -# -# # Configure a note to keep the chord from completing until -# # all operations have been initiated. -# set common_note [$chord add_note] -# -# # Activate notes in 'after' callbacks to other operations -# set newnote [$chord add_note] -# async_operation $args [list $newnote activate] -# -# # Communicate with the chord body -# if {$condition} { -# # This sets $notice in the same context that the chord body runs in. -# $chord eval { set notice "Something interesting" } -# } -# -# # Activate the common note, making the chord eligible to complete -# $common_note activate -# -# At this point, the chord will complete at some unknown point in the future. -# The common note might have been the first note activated, or the async -# operations might have completed synchronously and the common note is the -# last one, completing the chord before this code finishes, or anything in -# between. The purpose of the chord is to not have to worry about the order. - -# SimpleChord class: -# Represents a procedure that conceptually has multiple entrypoints that must -# all be called before the procedure executes. Each entrypoint is called a -# "note". The chord is only "completed" when all the notes are "activated". -class SimpleChord { - field notes - field body - field is_completed - field eval_ns - - # Constructor: - # set chord [SimpleChord::new {body}] - # Creates a new chord object with the specified body script. The - # body script is evaluated at most once, when a note is activated - # and the chord has no other non-activated notes. - constructor new {i_body} { - set notes [list] - set body $i_body - set is_completed 0 - set eval_ns "[namespace qualifiers $this]::eval" - return $this - } - - # Method: - # $chord eval {script} - # Runs the specified script in the same context (namespace) in which - # the chord body will be evaluated. This can be used to set variable - # values for the chord body to use. - method eval {script} { - namespace eval $eval_ns $script - } - - # Method: - # set note [$chord add_note] - # Adds a new note to the chord, an instance of ChordNote. Raises an - # error if the chord is already completed, otherwise the chord is - # updated so that the new note must also be activated before the - # body is evaluated. - method add_note {} { - if {$is_completed} { error "Cannot add a note to a completed chord" } - - set note [ChordNote::new $this] - - lappend notes $note - - return $note - } - - # This method is for internal use only and is intentionally undocumented. - method notify_note_activation {} { - if {!$is_completed} { - foreach note $notes { - if {![$note is_activated]} { return } - } - - set is_completed 1 - - namespace eval $eval_ns $body - delete_this - } - } -} - -# ChordNote class: -# Represents a note within a chord, providing a way to activate it. When the -# final note of the chord is activated (this can be any note in the chord, -# with all other notes already previously activated in any order), the chord's -# body is evaluated. -class ChordNote { - field chord - field is_activated - - # Constructor: - # Instances of ChordNote are created internally by calling add_note on - # SimpleChord objects. - constructor new {c} { - set chord $c - set is_activated 0 - return $this - } - - # Method: - # [$note is_activated] - # Returns true if this note has already been activated. - method is_activated {} { - return $is_activated - } - - # Method: - # $note activate - # Activates the note, if it has not already been activated, and - # completes the chord if there are no other notes awaiting - # activation. Subsequent calls will have no further effect. - method activate {} { - if {!$is_activated} { - set is_activated 1 - $chord notify_note_activation - } - } -} diff --git a/third_party/git/git-gui/lib/commit.tcl b/third_party/git/git-gui/lib/commit.tcl index b516aa299069..75ea965dacd7 100644 --- a/third_party/git/git-gui/lib/commit.tcl +++ b/third_party/git/git-gui/lib/commit.tcl @@ -333,7 +333,7 @@ proc commit_writetree {curHEAD msg_p} { proc commit_committree {fd_wt curHEAD msg_p} { global HEAD PARENT MERGE_HEAD commit_type commit_author global current_branch - global ui_comm commit_type_is_amend + global ui_comm selected_commit_type global file_states selected_paths rescan_active global repo_config global env @@ -467,8 +467,8 @@ A rescan will be automatically started now. # -- Update in memory status # + set selected_commit_type new set commit_type normal - set commit_type_is_amend 0 set HEAD $cmt_id set PARENT $cmt_id set MERGE_HEAD [list] diff --git a/third_party/git/git-gui/lib/console.tcl b/third_party/git/git-gui/lib/console.tcl index bb6b9c889e20..1f3248ffd113 100644 --- a/third_party/git/git-gui/lib/console.tcl +++ b/third_party/git/git-gui/lib/console.tcl @@ -203,8 +203,6 @@ method done {ok} { focus $w.ok } } - - bind $w "destroy $w;break" } method _sb_set {sb orient first last} { diff --git a/third_party/git/git-gui/lib/diff.tcl b/third_party/git/git-gui/lib/diff.tcl index 871ad488c2a1..68c4a6c7366f 100644 --- a/third_party/git/git-gui/lib/diff.tcl +++ b/third_party/git/git-gui/lib/diff.tcl @@ -55,7 +55,7 @@ proc reshow_diff {{after {}}} { proc force_diff_encoding {enc} { global current_diff_path - + if {$current_diff_path ne {}} { force_path_encoding $current_diff_path $enc reshow_diff @@ -270,6 +270,19 @@ proc show_other_diff {path w m cont_info} { } } +proc get_conflict_marker_size {path} { + set size 7 + catch { + set fd_rc [eval [list git_read check-attr "conflict-marker-size" -- $path]] + set ret [gets $fd_rc line] + close $fd_rc + if {$ret > 0} { + regexp {.*: conflict-marker-size: (\d+)$} $line line size + } + } + return $size +} + proc start_show_diff {cont_info {add_opts {}}} { global file_states file_lists global is_3way_diff is_submodule_diff diff_active repo_config @@ -285,7 +298,7 @@ proc start_show_diff {cont_info {add_opts {}}} { set is_submodule_diff 0 set diff_active 1 set current_diff_header {} - set conflict_size [gitattr $path conflict-marker-size 7] + set conflict_size [get_conflict_marker_size $path] set cmd [list] if {$w eq $ui_index} { @@ -347,10 +360,6 @@ proc start_show_diff {cont_info {add_opts {}}} { } set ::current_diff_inheader 1 - # Detect pre-image lines of the diff3 conflict-style. They are just - # '++' lines which is not bijective. Thus, we need to maintain a state - # across lines. - set ::conflict_in_pre_image 0 fconfigure $fd \ -blocking 0 \ -encoding [get_path_encoding $path] \ @@ -453,23 +462,11 @@ proc read_diff {fd conflict_size cont_info} { {--} {set tags d_--} {++} { set regexp [string map [list %conflict_size $conflict_size]\ - {^\+\+([<>=|]){%conflict_size}(?: |$)}] + {^\+\+([<>=]){%conflict_size}(?: |$)}] if {[regexp $regexp $line _g op]} { set is_conflict_diff 1 set line [string replace $line 0 1 { }] set tags d$op - - # The ||| conflict-marker marks the start of the pre-image. - # All those lines are also prefixed with '++'. Thus we need - # to maintain this state. - set ::conflict_in_pre_image [expr {$op eq {|}}] - } elseif {$::conflict_in_pre_image} { - # This is a pre-image line. It is the one which both sides - # are based on. As it has also the '++' line start, it is - # normally shown as 'added'. Invert this to '--' to make - # it a 'removed' line. - set line [string replace $line 0 1 {--}] - set tags d_-- } else { set tags d_++ } @@ -570,31 +567,24 @@ proc read_diff {fd conflict_size cont_info} { } } -proc apply_or_revert_hunk {x y revert} { +proc apply_hunk {x y} { global current_diff_path current_diff_header current_diff_side - global ui_diff ui_index file_states last_revert last_revert_enc + global ui_diff ui_index file_states if {$current_diff_path eq {} || $current_diff_header eq {}} return if {![lock_index apply_hunk]} return - set apply_cmd {apply --whitespace=nowarn} + set apply_cmd {apply --cached --whitespace=nowarn} set mi [lindex $file_states($current_diff_path) 0] if {$current_diff_side eq $ui_index} { set failed_msg [mc "Failed to unstage selected hunk."] - lappend apply_cmd --reverse --cached + lappend apply_cmd --reverse if {[string index $mi 0] ne {M}} { unlock_index return } } else { - if {$revert} { - set failed_msg [mc "Failed to revert selected hunk."] - lappend apply_cmd --reverse - } else { - set failed_msg [mc "Failed to stage selected hunk."] - lappend apply_cmd --cached - } - + set failed_msg [mc "Failed to stage selected hunk."] if {[string index $mi 1] ne {M}} { unlock_index return @@ -613,40 +603,29 @@ proc apply_or_revert_hunk {x y revert} { set e_lno end } - set wholepatch "$current_diff_header[$ui_diff get $s_lno $e_lno]" - if {[catch { set enc [get_path_encoding $current_diff_path] set p [eval git_write $apply_cmd] fconfigure $p -translation binary -encoding $enc - puts -nonewline $p $wholepatch + puts -nonewline $p $current_diff_header + puts -nonewline $p [$ui_diff get $s_lno $e_lno] close $p} err]} { error_popup "$failed_msg\n\n$err" unlock_index return } - if {$revert} { - # Save a copy of this patch for undoing reverts. - set last_revert $wholepatch - set last_revert_enc $enc - } - $ui_diff conf -state normal $ui_diff delete $s_lno $e_lno $ui_diff conf -state disabled - # Check if the hunk was the last one in the file. if {[$ui_diff get 1.0 end] eq "\n"} { set o _ } else { set o ? } - # Update the status flags. - if {$revert} { - set mi [string index $mi 0]$o - } elseif {$current_diff_side eq $ui_index} { + if {$current_diff_side eq $ui_index} { set mi ${o}M } elseif {[string index $mi 0] eq {_}} { set mi M$o @@ -661,9 +640,9 @@ proc apply_or_revert_hunk {x y revert} { } } -proc apply_or_revert_range_or_line {x y revert} { +proc apply_range_or_line {x y} { global current_diff_path current_diff_header current_diff_side - global ui_diff ui_index file_states last_revert + global ui_diff ui_index file_states set selected [$ui_diff tag nextrange sel 0.0] @@ -681,27 +660,19 @@ proc apply_or_revert_range_or_line {x y revert} { if {$current_diff_path eq {} || $current_diff_header eq {}} return if {![lock_index apply_hunk]} return - set apply_cmd {apply --whitespace=nowarn} + set apply_cmd {apply --cached --whitespace=nowarn} set mi [lindex $file_states($current_diff_path) 0] if {$current_diff_side eq $ui_index} { set failed_msg [mc "Failed to unstage selected line."] set to_context {+} - lappend apply_cmd --reverse --cached + lappend apply_cmd --reverse if {[string index $mi 0] ne {M}} { unlock_index return } } else { - if {$revert} { - set failed_msg [mc "Failed to revert selected line."] - set to_context {+} - lappend apply_cmd --reverse - } else { - set failed_msg [mc "Failed to stage selected line."] - set to_context {-} - lappend apply_cmd --cached - } - + set failed_msg [mc "Failed to stage selected line."] + set to_context {-} if {[string index $mi 1] ne {M}} { unlock_index return @@ -859,47 +830,7 @@ proc apply_or_revert_range_or_line {x y revert} { puts -nonewline $p $wholepatch close $p} err]} { error_popup "$failed_msg\n\n$err" - unlock_index - return - } - - if {$revert} { - # Save a copy of this patch for undoing reverts. - set last_revert $current_diff_header$wholepatch - set last_revert_enc $enc - } - - unlock_index -} - -# Undo the last line/hunk reverted. When hunks and lines are reverted, a copy -# of the diff applied is saved. Re-apply that diff to undo the revert. -# -# Right now, we only use a single variable to hold the copy, and not a -# stack/deque for simplicity, so multiple undos are not possible. Maybe this -# can be added if the need for something like this is felt in the future. -proc undo_last_revert {} { - global last_revert current_diff_path current_diff_header - global last_revert_enc - - if {$last_revert eq {}} return - if {![lock_index apply_hunk]} return - - set apply_cmd {apply --whitespace=nowarn} - set failed_msg [mc "Failed to undo last revert."] - - if {[catch { - set enc $last_revert_enc - set p [eval git_write $apply_cmd] - fconfigure $p -translation binary -encoding $enc - puts -nonewline $p $last_revert - close $p} err]} { - error_popup "$failed_msg\n\n$err" - unlock_index - return } - set last_revert {} - unlock_index } diff --git a/third_party/git/git-gui/lib/index.tcl b/third_party/git/git-gui/lib/index.tcl index 1fc5b42300d6..b588db11d9fc 100644 --- a/third_party/git/git-gui/lib/index.tcl +++ b/third_party/git/git-gui/lib/index.tcl @@ -7,74 +7,67 @@ proc _delete_indexlock {} { } } -proc close_and_unlock_index {fd after} { - if {![catch {_close_updateindex $fd} err]} { +proc _close_updateindex {fd after} { + global use_ttk NS + fconfigure $fd -blocking 1 + if {[catch {close $fd} err]} { + set w .indexfried + Dialog $w + wm withdraw $w + wm title $w [strcat "[appname] ([reponame]): " [mc "Index Error"]] + wm geometry $w "+[winfo rootx .]+[winfo rooty .]" + set s [mc "Updating the Git index failed. A rescan will be automatically started to resynchronize git-gui."] + text $w.msg -yscrollcommand [list $w.vs set] \ + -width [string length $s] -relief flat \ + -borderwidth 0 -highlightthickness 0 \ + -background [get_bg_color $w] + $w.msg tag configure bold -font font_uibold -justify center + ${NS}::scrollbar $w.vs -command [list $w.msg yview] + $w.msg insert end $s bold \n\n$err {} + $w.msg configure -state disabled + + ${NS}::button $w.continue \ + -text [mc "Continue"] \ + -command [list destroy $w] + ${NS}::button $w.unlock \ + -text [mc "Unlock Index"] \ + -command "destroy $w; _delete_indexlock" + grid $w.msg - $w.vs -sticky news + grid $w.unlock $w.continue - -sticky se -padx 2 -pady 2 + grid columnconfigure $w 0 -weight 1 + grid rowconfigure $w 0 -weight 1 + + wm protocol $w WM_DELETE_WINDOW update + bind $w.continue " + grab $w + focus %W + " + wm deiconify $w + tkwait window $w + + $::main_status stop unlock_index - uplevel #0 $after - } else { - rescan_on_error $err $after + rescan $after 0 + return } -} -proc _close_updateindex {fd} { - fconfigure $fd -blocking 1 - close $fd -} - -proc rescan_on_error {err {after {}}} { - global use_ttk NS - - set w .indexfried - Dialog $w - wm withdraw $w - wm title $w [strcat "[appname] ([reponame]): " [mc "Index Error"]] - wm geometry $w "+[winfo rootx .]+[winfo rooty .]" - set s [mc "Updating the Git index failed. A rescan will be automatically started to resynchronize git-gui."] - text $w.msg -yscrollcommand [list $w.vs set] \ - -width [string length $s] -relief flat \ - -borderwidth 0 -highlightthickness 0 \ - -background [get_bg_color $w] - $w.msg tag configure bold -font font_uibold -justify center - ${NS}::scrollbar $w.vs -command [list $w.msg yview] - $w.msg insert end $s bold \n\n$err {} - $w.msg configure -state disabled - - ${NS}::button $w.continue \ - -text [mc "Continue"] \ - -command [list destroy $w] - ${NS}::button $w.unlock \ - -text [mc "Unlock Index"] \ - -command "destroy $w; _delete_indexlock" - grid $w.msg - $w.vs -sticky news - grid $w.unlock $w.continue - -sticky se -padx 2 -pady 2 - grid columnconfigure $w 0 -weight 1 - grid rowconfigure $w 0 -weight 1 - - wm protocol $w WM_DELETE_WINDOW update - bind $w.continue " - grab $w - focus %W - " - wm deiconify $w - tkwait window $w - - $::main_status stop_all + $::main_status stop unlock_index - rescan [concat $after [list ui_ready]] 0 + uplevel #0 $after } -proc update_indexinfo {msg path_list after} { +proc update_indexinfo {msg pathList after} { global update_index_cp if {![lock_index update]} return set update_index_cp 0 - set path_list [lsort $path_list] - set total_cnt [llength $path_list] - set batch [expr {int($total_cnt * .01) + 1}] + set pathList [lsort $pathList] + set totalCnt [llength $pathList] + set batch [expr {int($totalCnt * .01) + 1}] if {$batch > 25} {set batch 25} - set status_bar_operation [$::main_status start $msg [mc "files"]] + $::main_status start $msg [mc "files"] set fd [git_write update-index -z --index-info] fconfigure $fd \ -blocking 0 \ @@ -85,29 +78,26 @@ proc update_indexinfo {msg path_list after} { fileevent $fd writable [list \ write_update_indexinfo \ $fd \ - $path_list \ - $total_cnt \ + $pathList \ + $totalCnt \ $batch \ - $status_bar_operation \ $after \ ] } -proc write_update_indexinfo {fd path_list total_cnt batch status_bar_operation \ - after} { +proc write_update_indexinfo {fd pathList totalCnt batch after} { global update_index_cp global file_states current_diff_path - if {$update_index_cp >= $total_cnt} { - $status_bar_operation stop - close_and_unlock_index $fd $after + if {$update_index_cp >= $totalCnt} { + _close_updateindex $fd $after return } for {set i $batch} \ - {$update_index_cp < $total_cnt && $i > 0} \ + {$update_index_cp < $totalCnt && $i > 0} \ {incr i -1} { - set path [lindex $path_list $update_index_cp] + set path [lindex $pathList $update_index_cp] incr update_index_cp set s $file_states($path) @@ -129,21 +119,21 @@ proc write_update_indexinfo {fd path_list total_cnt batch status_bar_operation \ display_file $path $new } - $status_bar_operation update $update_index_cp $total_cnt + $::main_status update $update_index_cp $totalCnt } -proc update_index {msg path_list after} { +proc update_index {msg pathList after} { global update_index_cp if {![lock_index update]} return set update_index_cp 0 - set path_list [lsort $path_list] - set total_cnt [llength $path_list] - set batch [expr {int($total_cnt * .01) + 1}] + set pathList [lsort $pathList] + set totalCnt [llength $pathList] + set batch [expr {int($totalCnt * .01) + 1}] if {$batch > 25} {set batch 25} - set status_bar_operation [$::main_status start $msg [mc "files"]] + $::main_status start $msg [mc "files"] set fd [git_write update-index --add --remove -z --stdin] fconfigure $fd \ -blocking 0 \ @@ -154,29 +144,26 @@ proc update_index {msg path_list after} { fileevent $fd writable [list \ write_update_index \ $fd \ - $path_list \ - $total_cnt \ + $pathList \ + $totalCnt \ $batch \ - $status_bar_operation \ $after \ ] } -proc write_update_index {fd path_list total_cnt batch status_bar_operation \ - after} { +proc write_update_index {fd pathList totalCnt batch after} { global update_index_cp global file_states current_diff_path - if {$update_index_cp >= $total_cnt} { - $status_bar_operation stop - close_and_unlock_index $fd $after + if {$update_index_cp >= $totalCnt} { + _close_updateindex $fd $after return } for {set i $batch} \ - {$update_index_cp < $total_cnt && $i > 0} \ + {$update_index_cp < $totalCnt && $i > 0} \ {incr i -1} { - set path [lindex $path_list $update_index_cp] + set path [lindex $pathList $update_index_cp] incr update_index_cp switch -glob -- [lindex $file_states($path) 0] { @@ -203,21 +190,21 @@ proc write_update_index {fd path_list total_cnt batch status_bar_operation \ display_file $path $new } - $status_bar_operation update $update_index_cp $total_cnt + $::main_status update $update_index_cp $totalCnt } -proc checkout_index {msg path_list after capture_error} { +proc checkout_index {msg pathList after} { global update_index_cp if {![lock_index update]} return set update_index_cp 0 - set path_list [lsort $path_list] - set total_cnt [llength $path_list] - set batch [expr {int($total_cnt * .01) + 1}] + set pathList [lsort $pathList] + set totalCnt [llength $pathList] + set batch [expr {int($totalCnt * .01) + 1}] if {$batch > 25} {set batch 25} - set status_bar_operation [$::main_status start $msg [mc "files"]] + $::main_status start $msg [mc "files"] set fd [git_write checkout-index \ --index \ --quiet \ @@ -234,45 +221,26 @@ proc checkout_index {msg path_list after capture_error} { fileevent $fd writable [list \ write_checkout_index \ $fd \ - $path_list \ - $total_cnt \ + $pathList \ + $totalCnt \ $batch \ - $status_bar_operation \ $after \ - $capture_error \ ] } -proc write_checkout_index {fd path_list total_cnt batch status_bar_operation \ - after capture_error} { +proc write_checkout_index {fd pathList totalCnt batch after} { global update_index_cp global file_states current_diff_path - if {$update_index_cp >= $total_cnt} { - $status_bar_operation stop - - # We do not unlock the index directly here because this - # operation expects to potentially run in parallel with file - # deletions scheduled by revert_helper. We're done with the - # update index, so we close it, but actually unlocking the index - # and dealing with potential errors is deferred to the chord - # body that runs when all async operations are completed. - # - # (See after_chord in revert_helper.) - - if {[catch {_close_updateindex $fd} err]} { - uplevel #0 $capture_error [list $err] - } - - uplevel #0 $after - + if {$update_index_cp >= $totalCnt} { + _close_updateindex $fd $after return } for {set i $batch} \ - {$update_index_cp < $total_cnt && $i > 0} \ + {$update_index_cp < $totalCnt && $i > 0} \ {incr i -1} { - set path [lindex $path_list $update_index_cp] + set path [lindex $pathList $update_index_cp] incr update_index_cp switch -glob -- [lindex $file_states($path) 0] { U? {continue} @@ -285,7 +253,7 @@ proc write_checkout_index {fd path_list total_cnt batch status_bar_operation \ } } - $status_bar_operation update $update_index_cp $total_cnt + $::main_status update $update_index_cp $totalCnt } proc unstage_helper {txt paths} { @@ -293,7 +261,7 @@ proc unstage_helper {txt paths} { if {![lock_index begin-update]} return - set path_list [list] + set pathList [list] set after {} foreach path $paths { switch -glob -- [lindex $file_states($path) 0] { @@ -301,19 +269,19 @@ proc unstage_helper {txt paths} { M? - T? - D? { - lappend path_list $path + lappend pathList $path if {$path eq $current_diff_path} { set after {reshow_diff;} } } } } - if {$path_list eq {}} { + if {$pathList eq {}} { unlock_index } else { update_indexinfo \ $txt \ - $path_list \ + $pathList \ [concat $after [list ui_ready]] } } @@ -337,7 +305,7 @@ proc add_helper {txt paths} { if {![lock_index begin-update]} return - set path_list [list] + set pathList [list] set after {} foreach path $paths { switch -glob -- [lindex $file_states($path) 0] { @@ -353,19 +321,19 @@ proc add_helper {txt paths} { ?M - ?D - ?T { - lappend path_list $path + lappend pathList $path if {$path eq $current_diff_path} { set after {reshow_diff;} } } } } - if {$path_list eq {}} { + if {$pathList eq {}} { unlock_index } else { update_index \ $txt \ - $path_list \ + $pathList \ [concat $after {ui_status [mc "Ready to commit."]}] } } @@ -420,303 +388,66 @@ proc do_add_all {} { add_helper [mc "Adding all changed files"] $paths } -# Copied from TclLib package "lambda". -proc lambda {arguments body args} { - return [list ::apply [list $arguments $body] {*}$args] -} - proc revert_helper {txt paths} { global file_states current_diff_path if {![lock_index begin-update]} return - # Common "after" functionality that waits until multiple asynchronous - # operations are complete (by waiting for them to activate their notes - # on the chord). - # - # The asynchronous operations are each indicated below by a comment - # before the code block that starts the async operation. - set after_chord [SimpleChord::new { - if {[string trim $err] != ""} { - rescan_on_error $err - } else { - unlock_index - if {$should_reshow_diff} { reshow_diff } - ui_ready - } - }] - - $after_chord eval { set should_reshow_diff 0 } - - # This function captures an error for processing when after_chord is - # completed. (The chord is curried into the lambda function.) - set capture_error [lambda \ - {chord error} \ - { $chord eval [list set err $error] } \ - $after_chord] - - # We don't know how many notes we're going to create (it's dynamic based - # on conditional paths below), so create a common note that will delay - # the chord's completion until we activate it, and then activate it - # after all the other notes have been created. - set after_common_note [$after_chord add_note] - - set path_list [list] - set untracked_list [list] - + set pathList [list] + set after {} foreach path $paths { switch -glob -- [lindex $file_states($path) 0] { U? {continue} - ?O { - lappend untracked_list $path - } ?M - ?T - ?D { - lappend path_list $path + lappend pathList $path if {$path eq $current_diff_path} { - $after_chord eval { set should_reshow_diff 1 } + set after {reshow_diff;} } } } } - set path_cnt [llength $path_list] - set untracked_cnt [llength $untracked_list] - - # Asynchronous operation: revert changes by checking them out afresh - # from the index. - if {$path_cnt > 0} { - # Split question between singular and plural cases, because - # such distinction is needed in some languages. Previously, the - # code used "Revert changes in" for both, but that can't work - # in languages where 'in' must be combined with word from - # rest of string (in different way for both cases of course). - # - # FIXME: Unfortunately, even that isn't enough in some languages - # as they have quite complex plural-form rules. Unfortunately, - # msgcat doesn't seem to support that kind of string - # translation. - # - if {$path_cnt == 1} { - set query [mc \ - "Revert changes in file %s?" \ - [short_path [lindex $path_list]] \ - ] - } else { - set query [mc \ - "Revert changes in these %i files?" \ - $path_cnt] - } - - set reply [tk_dialog \ - .confirm_revert \ - "[appname] ([reponame])" \ - "$query - -[mc "Any unstaged changes will be permanently lost by the revert."]" \ - question \ - 1 \ - [mc "Do Nothing"] \ - [mc "Revert Changes"] \ - ] - - if {$reply == 1} { - set note [$after_chord add_note] - checkout_index \ - $txt \ - $path_list \ - [list $note activate] \ - $capture_error - } - } - - # Asynchronous operation: Deletion of untracked files. - if {$untracked_cnt > 0} { - # Split question between singular and plural cases, because - # such distinction is needed in some languages. - # - # FIXME: Unfortunately, even that isn't enough in some languages - # as they have quite complex plural-form rules. Unfortunately, - # msgcat doesn't seem to support that kind of string - # translation. - # - if {$untracked_cnt == 1} { - set query [mc \ - "Delete untracked file %s?" \ - [short_path [lindex $untracked_list]] \ - ] - } else { - set query [mc \ - "Delete these %i untracked files?" \ - $untracked_cnt \ - ] - } - - set reply [tk_dialog \ - .confirm_revert \ - "[appname] ([reponame])" \ - "$query - -[mc "Files will be permanently deleted."]" \ - question \ - 1 \ - [mc "Do Nothing"] \ - [mc "Delete Files"] \ - ] - - if {$reply == 1} { - $after_chord eval { set should_reshow_diff 1 } - set note [$after_chord add_note] - delete_files $untracked_list [list $note activate] - } - } - - # Activate the common note. If no other notes were created, this - # completes the chord. If other notes were created, then this common - # note prevents a race condition where the chord might complete early. - $after_common_note activate -} - -# Delete all of the specified files, performing deletion in batches to allow the -# UI to remain responsive and updated. -proc delete_files {path_list after} { - # Enable progress bar status updates - set status_bar_operation [$::main_status \ - start \ - [mc "Deleting"] \ - [mc "files"]] - - set path_index 0 - set deletion_errors [list] - set batch_size 50 - - delete_helper \ - $path_list \ - $path_index \ - $deletion_errors \ - $batch_size \ - $status_bar_operation \ - $after -} - -# Helper function to delete a list of files in batches. Each call deletes one -# batch of files, and then schedules a call for the next batch after any UI -# messages have been processed. -proc delete_helper {path_list path_index deletion_errors batch_size \ - status_bar_operation after} { - global file_states - - set path_cnt [llength $path_list] - - set batch_remaining $batch_size - - while {$batch_remaining > 0} { - if {$path_index >= $path_cnt} { break } - - set path [lindex $path_list $path_index] - - set deletion_failed [catch {file delete -- $path} deletion_error] - - if {$deletion_failed} { - lappend deletion_errors [list "$deletion_error"] - } else { - remove_empty_directories [file dirname $path] - - # Don't assume the deletion worked. Remove the file from - # the UI, but only if it no longer exists. - if {![path_exists $path]} { - unset file_states($path) - display_file $path __ - } - } - - incr path_index 1 - incr batch_remaining -1 - } - - # Update the progress bar to indicate that this batch has been - # completed. The update will be visible when this procedure returns - # and allows the UI thread to process messages. - $status_bar_operation update $path_index $path_cnt - - if {$path_index < $path_cnt} { - # The Tcler's Wiki lists this as the best practice for keeping - # a UI active and processing messages during a long-running - # operation. - - after idle [list after 0 [list \ - delete_helper \ - $path_list \ - $path_index \ - $deletion_errors \ - $batch_size \ - $status_bar_operation \ - $after - ]] + # Split question between singular and plural cases, because + # such distinction is needed in some languages. Previously, the + # code used "Revert changes in" for both, but that can't work + # in languages where 'in' must be combined with word from + # rest of string (in different way for both cases of course). + # + # FIXME: Unfortunately, even that isn't enough in some languages + # as they have quite complex plural-form rules. Unfortunately, + # msgcat doesn't seem to support that kind of string translation. + # + set n [llength $pathList] + if {$n == 0} { + unlock_index + return + } elseif {$n == 1} { + set query [mc "Revert changes in file %s?" [short_path [lindex $pathList]]] } else { - # Finish the status bar operation. - $status_bar_operation stop - - # Report error, if any, based on how many deletions failed. - set deletion_error_cnt [llength $deletion_errors] - - if {($deletion_error_cnt > 0) - && ($deletion_error_cnt <= [MAX_VERBOSE_FILES_IN_DELETION_ERROR])} { - set error_text [mc "Encountered errors deleting files:\n"] - - foreach deletion_error $deletion_errors { - append error_text "* [lindex $deletion_error 0]\n" - } - - error_popup $error_text - } elseif {$deletion_error_cnt == $path_cnt} { - error_popup [mc \ - "None of the %d selected files could be deleted." \ - $path_cnt \ - ] - } elseif {$deletion_error_cnt > 1} { - error_popup [mc \ - "%d of the %d selected files could not be deleted." \ - $deletion_error_cnt \ - $path_cnt \ - ] - } - - uplevel #0 $after + set query [mc "Revert changes in these %i files?" $n] } -} -proc MAX_VERBOSE_FILES_IN_DELETION_ERROR {} { return 10; } - -# This function is from the TCL documentation: -# -# https://wiki.tcl-lang.org/page/file+exists -# -# [file exists] returns false if the path does exist but is a symlink to a path -# that doesn't exist. This proc returns true if the path exists, regardless of -# whether it is a symlink and whether it is broken. -proc path_exists {name} { - expr {![catch {file lstat $name finfo}]} -} - -# Remove as many empty directories as we can starting at the specified path, -# walking up the directory tree. If we encounter a directory that is not -# empty, or if a directory deletion fails, then we stop the operation and -# return to the caller. Even if this procedure fails to delete any -# directories at all, it does not report failure. -proc remove_empty_directories {directory_path} { - set parent_path [file dirname $directory_path] - - while {$parent_path != $directory_path} { - set contents [glob -nocomplain -dir $directory_path *] + set reply [tk_dialog \ + .confirm_revert \ + "[appname] ([reponame])" \ + "$query - if {[llength $contents] > 0} { break } - if {[catch {file delete -- $directory_path}]} { break } - - set directory_path $parent_path - set parent_path [file dirname $directory_path] +[mc "Any unstaged changes will be permanently lost by the revert."]" \ + question \ + 1 \ + [mc "Do Nothing"] \ + [mc "Revert Changes"] \ + ] + if {$reply == 1} { + checkout_index \ + $txt \ + $pathList \ + [concat $after [list ui_ready]] + } else { + unlock_index } } @@ -735,19 +466,19 @@ proc do_revert_selection {} { } proc do_select_commit_type {} { - global commit_type commit_type_is_amend + global commit_type selected_commit_type - if {$commit_type_is_amend == 0 + if {$selected_commit_type eq {new} && [string match amend* $commit_type]} { create_new_commit - } elseif {$commit_type_is_amend == 1 + } elseif {$selected_commit_type eq {amend} && ![string match amend* $commit_type]} { load_last_commit # The amend request was rejected... # if {![string match amend* $commit_type]} { - set commit_type_is_amend 0 + set selected_commit_type new } } } diff --git a/third_party/git/git-gui/lib/merge.tcl b/third_party/git/git-gui/lib/merge.tcl index 664803cf3fd1..9f253db5b37e 100644 --- a/third_party/git/git-gui/lib/merge.tcl +++ b/third_party/git/git-gui/lib/merge.tcl @@ -241,27 +241,23 @@ Continue with resetting the current changes?"] if {[ask_popup $op_question] eq {yes}} { set fd [git_read --stderr read-tree --reset -u -v HEAD] fconfigure $fd -blocking 0 -translation binary - set status_bar_operation [$::main_status \ - start \ - [mc "Aborting"] \ - [mc "files reset"]] - fileevent $fd readable [namespace code [list \ - _reset_wait $fd $status_bar_operation]] + fileevent $fd readable [namespace code [list _reset_wait $fd]] + $::main_status start [mc "Aborting"] [mc "files reset"] } else { unlock_index } } -proc _reset_wait {fd status_bar_operation} { +proc _reset_wait {fd} { global ui_comm - $status_bar_operation update_meter [read $fd] + $::main_status update_meter [read $fd] fconfigure $fd -blocking 1 if {[eof $fd]} { set fail [catch {close $fd} err] + $::main_status stop unlock_index - $status_bar_operation stop $ui_comm delete 0.0 end $ui_comm edit modified false diff --git a/third_party/git/git-gui/lib/status_bar.tcl b/third_party/git/git-gui/lib/status_bar.tcl index d32b14142ff8..02111a1742f9 100644 --- a/third_party/git/git-gui/lib/status_bar.tcl +++ b/third_party/git/git-gui/lib/status_bar.tcl @@ -1,42 +1,16 @@ # git-gui status bar mega-widget # Copyright (C) 2007 Shawn Pearce -# The status_bar class manages the entire status bar. It is possible for -# multiple overlapping asynchronous operations to want to display status -# simultaneously. Each one receives a status_bar_operation when it calls the -# start method, and the status bar combines all active operations into the -# line of text it displays. Most of the time, there will be at most one -# ongoing operation. -# -# Note that the entire status bar can be either in single-line or two-line -# mode, depending on the constructor. Multiple active operations are only -# supported for single-line status bars. - class status_bar { -field allow_multiple ; # configured at construction - field w ; # our own window path field w_l ; # text widget we draw messages into field w_c ; # canvas we draw a progress bar into field c_pack ; # script to pack the canvas with - -field baseline_text ; # text to show if there are no operations -field status_bar_text ; # combined text for all operations - -field operations ; # list of current ongoing operations - -# The status bar can display a progress bar, updated when consumers call the -# update method on their status_bar_operation. When there are multiple -# operations, the status bar shows the combined status of all operations. -# -# When an overlapping operation completes, the progress bar is going to -# abruptly have one fewer operation in the calculation, causing a discontinuity. -# Therefore, whenever an operation completes, if it is not the last operation, -# this counter is increased, and the progress bar is calculated as though there -# were still another operation at 100%. When the last operation completes, this -# is reset to 0. -field completed_operation_count +field status {}; # single line of text we show +field prefix {}; # text we format into status +field units {}; # unit of progress +field meter {}; # current core git progress meter (if active) constructor new {path} { global use_ttk NS @@ -44,19 +18,12 @@ constructor new {path} { set w_l $w.l set w_c $w.c - # Standard single-line status bar: Permit overlapping operations - set allow_multiple 1 - - set baseline_text "" - set operations [list] - set completed_operation_count 0 - ${NS}::frame $w if {!$use_ttk} { $w configure -borderwidth 1 -relief sunken } ${NS}::label $w_l \ - -textvariable @status_bar_text \ + -textvariable @status \ -anchor w \ -justify left pack $w_l -side left @@ -77,16 +44,9 @@ constructor two_line {path} { set w_l $w.l set w_c $w.c - # Two-line status bar: Only one ongoing operation permitted. - set allow_multiple 0 - - set baseline_text "" - set operations [list] - set completed_operation_count 0 - ${NS}::frame $w ${NS}::label $w_l \ - -textvariable @status_bar_text \ + -textvariable @status \ -anchor w \ -justify left pack $w_l -anchor w -fill x @@ -96,7 +56,7 @@ constructor two_line {path} { return $this } -method ensure_canvas {} { +method start {msg uds} { if {[winfo exists $w_c]} { $w_c coords bar 0 0 0 20 } else { @@ -108,170 +68,31 @@ method ensure_canvas {} { $w_c create rectangle 0 0 0 20 -tags bar -fill navy eval $c_pack } -} - -method show {msg} { - $this ensure_canvas - set baseline_text $msg - $this refresh -} - -method start {msg {uds {}}} { - set baseline_text "" - - if {!$allow_multiple && [llength $operations]} { - return [lindex $operations 0] - } - - $this ensure_canvas - - set operation [status_bar_operation::new $this $msg $uds] - - lappend operations $operation - - $this refresh - - return $operation -} - -method refresh {} { - set new_text "" - - set total [expr $completed_operation_count * 100] - set have $total - - foreach operation $operations { - if {$new_text != ""} { - append new_text " / " - } - - append new_text [$operation get_status] - - set total [expr $total + 100] - set have [expr $have + [$operation get_progress]] - } - - if {$new_text == ""} { - set new_text $baseline_text - } - - set status_bar_text $new_text - - if {[winfo exists $w_c]} { - set pixel_width 0 - if {$have > 0} { - set pixel_width [expr {[winfo width $w_c] * $have / $total}] - } - - $w_c coords bar 0 0 $pixel_width 20 - } -} - -method stop {operation stop_msg} { - set idx [lsearch $operations $operation] - - if {$idx >= 0} { - set operations [lreplace $operations $idx $idx] - set completed_operation_count [expr \ - $completed_operation_count + 1] - - if {[llength $operations] == 0} { - set completed_operation_count 0 - - destroy $w_c - if {$stop_msg ne {}} { - set baseline_text $stop_msg - } - } - - $this refresh - } -} - -method stop_all {{stop_msg {}}} { - # This makes the operation's call to stop a no-op. - set operations_copy $operations - set operations [list] - - foreach operation $operations_copy { - $operation stop - } - - if {$stop_msg ne {}} { - set baseline_text $stop_msg - } - - $this refresh -} - -method _delete {current} { - if {$current eq $w} { - delete_this - } -} - -} - -# The status_bar_operation class tracks a single consumer's ongoing status bar -# activity, with the context that there are a few situations where multiple -# overlapping asynchronous operations might want to display status information -# simultaneously. Instances of status_bar_operation are created by calling -# start on the status_bar, and when the caller is done with its stauts bar -# operation, it calls stop on the operation. - -class status_bar_operation { - -field status_bar; # reference back to the status_bar that owns this object - -field is_active; - -field status {}; # single line of text we show -field progress {}; # current progress (0 to 100) -field prefix {}; # text we format into status -field units {}; # unit of progress -field meter {}; # current core git progress meter (if active) - -constructor new {owner msg uds} { - set status_bar $owner set status $msg - set progress 0 set prefix $msg set units $uds set meter {} - - set is_active 1 - - return $this } -method get_is_active {} { return $is_active } -method get_status {} { return $status } -method get_progress {} { return $progress } - method update {have total} { - if {!$is_active} { return } - - set progress 0 - + set pdone 0 + set cdone 0 if {$total > 0} { - set progress [expr {100 * $have / $total}] + set pdone [expr {100 * $have / $total}] + set cdone [expr {[winfo width $w_c] * $have / $total}] } set prec [string length [format %i $total]] - set status [mc "%s ... %*i of %*i %s (%3i%%)" \ $prefix \ $prec $have \ $prec $total \ - $units $progress] - - $status_bar refresh + $units $pdone] + $w_c coords bar 0 0 $cdone 20 } method update_meter {buf} { - if {!$is_active} { return } - append meter $buf set r [string last "\r" $meter] if {$r == -1} { @@ -288,25 +109,23 @@ method update_meter {buf} { } } -method stop {{stop_msg {}}} { - if {$is_active} { - set is_active 0 - $status_bar stop $this $stop_msg +method stop {{msg {}}} { + destroy $w_c + if {$msg ne {}} { + set status $msg } } -method restart {msg} { - if {!$is_active} { return } - - set status $msg - set prefix $msg - set meter {} - $status_bar refresh +method show {msg {test {}}} { + if {$test eq {} || $status eq $test} { + set status $msg + } } -method _delete {} { - stop - delete_this +method _delete {current} { + if {$current eq $w} { + delete_this + } } } diff --git a/third_party/git/git-gui/po/de.po b/third_party/git/git-gui/po/de.po index a8d5f61ca36c..baebff2ffff7 100644 --- a/third_party/git/git-gui/po/de.po +++ b/third_party/git/git-gui/po/de.po @@ -7,42 +7,41 @@ msgid "" msgstr "" "Project-Id-Version: git-gui\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-02-08 22:54+0100\n" -"PO-Revision-Date: 2020-02-09 22:40+0100\n" -"Last-Translator: Christian Stimming \n" +"POT-Creation-Date: 2010-01-26 22:22+0100\n" +"PO-Revision-Date: 2010-01-26 22:25+0100\n" +"Last-Translator: Christian Stimming \n" "Language-Team: German\n" -"Language: de_DE\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: git-gui.sh:847 +#: git-gui.sh:41 git-gui.sh:793 git-gui.sh:807 git-gui.sh:820 git-gui.sh:903 +#: git-gui.sh:922 +msgid "git-gui: fatal error" +msgstr "git-gui: Programmfehler" + +#: git-gui.sh:743 #, tcl-format msgid "Invalid font specified in %s:" msgstr "Ungültige Zeichensatz-Angabe in %s:" -#: git-gui.sh:901 +#: git-gui.sh:779 msgid "Main Font" msgstr "Programmschriftart" -#: git-gui.sh:902 +#: git-gui.sh:780 msgid "Diff/Console Font" msgstr "Vergleich-Schriftart" -#: git-gui.sh:917 git-gui.sh:931 git-gui.sh:944 git-gui.sh:1034 git-gui.sh:1053 -#: git-gui.sh:3212 -msgid "git-gui: fatal error" -msgstr "git-gui: Programmfehler" - -#: git-gui.sh:918 +#: git-gui.sh:794 msgid "Cannot find git in PATH." msgstr "Git kann im PATH nicht gefunden werden." -#: git-gui.sh:945 +#: git-gui.sh:821 msgid "Cannot parse Git version string:" msgstr "Git Versionsangabe kann nicht erkannt werden:" -#: git-gui.sh:970 +#: git-gui.sh:839 #, tcl-format msgid "" "Git version cannot be determined.\n" @@ -61,524 +60,479 @@ msgstr "" "\n" "Soll angenommen werden, »%s« sei Version 1.5.0?\n" -#: git-gui.sh:1267 +#: git-gui.sh:1128 msgid "Git directory not found:" msgstr "Git-Verzeichnis nicht gefunden:" -#: git-gui.sh:1301 +#: git-gui.sh:1146 msgid "Cannot move to top of working directory:" msgstr "" "Es konnte nicht in das oberste Verzeichnis der Arbeitskopie gewechselt " "werden:" -#: git-gui.sh:1309 +#: git-gui.sh:1154 msgid "Cannot use bare repository:" -msgstr "Bloßes Repository kann nicht benutzt werden:" +msgstr "Bloßes Projektarchiv kann nicht benutzt werden:" -#: git-gui.sh:1317 +#: git-gui.sh:1162 msgid "No working directory" msgstr "Kein Arbeitsverzeichnis" -#: git-gui.sh:1491 lib/checkout_op.tcl:306 +#: git-gui.sh:1334 lib/checkout_op.tcl:306 msgid "Refreshing file status..." msgstr "Dateistatus aktualisieren..." -#: git-gui.sh:1551 +#: git-gui.sh:1390 msgid "Scanning for modified files ..." msgstr "Nach geänderten Dateien suchen..." -#: git-gui.sh:1629 +#: git-gui.sh:1454 msgid "Calling prepare-commit-msg hook..." -msgstr "Aufrufen des »prepare-commit-msg hook«..." +msgstr "Aufrufen der Eintragen-Vorbereiten-Kontrolle (»prepare-commit hook«)..." -#: git-gui.sh:1646 +#: git-gui.sh:1471 msgid "Commit declined by prepare-commit-msg hook." -msgstr "Commit abgelehnt durch »prepare-commit-msg hook«." +msgstr "" +"Eintragen abgelehnt durch Eintragen-Vorbereiten-Kontrolle (»prepare-commit " +"hook«)." -#: git-gui.sh:1804 lib/browser.tcl:252 +#: git-gui.sh:1629 lib/browser.tcl:246 msgid "Ready." msgstr "Bereit." -#: git-gui.sh:1968 +#: git-gui.sh:1787 #, tcl-format -msgid "" -"Display limit (gui.maxfilesdisplayed = %s) reached, not showing all %s files." -msgstr "" -"Anzeigelimit erreicht (gui.maxfilesdisplayed = %s) für Anzahl Einträge. Es " -"werden nicht alle %s Dateien gezeigt." +msgid "Displaying only %s of %s files." +msgstr "Nur %s von %s Dateien werden angezeigt." -#: git-gui.sh:2091 +#: git-gui.sh:1913 msgid "Unmodified" msgstr "Unverändert" -#: git-gui.sh:2093 +#: git-gui.sh:1915 msgid "Modified, not staged" msgstr "Verändert, nicht bereitgestellt" -#: git-gui.sh:2094 git-gui.sh:2106 +#: git-gui.sh:1916 git-gui.sh:1924 msgid "Staged for commit" -msgstr "Bereitgestellt zum Committen" +msgstr "Bereitgestellt zum Eintragen" -#: git-gui.sh:2095 git-gui.sh:2107 +#: git-gui.sh:1917 git-gui.sh:1925 msgid "Portions staged for commit" -msgstr "Teilweise bereitgestellt zum Committen" +msgstr "Teilweise bereitgestellt zum Eintragen" -#: git-gui.sh:2096 git-gui.sh:2108 +#: git-gui.sh:1918 git-gui.sh:1926 msgid "Staged for commit, missing" -msgstr "Bereitgestellt zum Committen, fehlend" +msgstr "Bereitgestellt zum Eintragen, fehlend" -#: git-gui.sh:2098 +#: git-gui.sh:1920 msgid "File type changed, not staged" msgstr "Dateityp geändert, nicht bereitgestellt" -#: git-gui.sh:2099 git-gui.sh:2100 -msgid "File type changed, old type staged for commit" -msgstr "Dateityp geändert, alter Dateityp bereitgestellt" - -#: git-gui.sh:2101 +#: git-gui.sh:1921 msgid "File type changed, staged" msgstr "Dateityp geändert, bereitgestellt" -#: git-gui.sh:2102 -msgid "File type change staged, modification not staged" -msgstr "Dateityp-Änderung bereitgestellt, Inhaltsänderung nicht bereitgestellt" - -#: git-gui.sh:2103 -msgid "File type change staged, file missing" -msgstr "Dateityp-Änderung bereitgestellt, Datei gelöscht" - -#: git-gui.sh:2105 +#: git-gui.sh:1923 msgid "Untracked, not staged" -msgstr "Unversioniert, nicht bereitgestellt" +msgstr "Nicht unter Versionskontrolle, nicht bereitgestellt" -#: git-gui.sh:2110 +#: git-gui.sh:1928 msgid "Missing" msgstr "Fehlend" -#: git-gui.sh:2111 +#: git-gui.sh:1929 msgid "Staged for removal" msgstr "Bereitgestellt zum Löschen" -#: git-gui.sh:2112 +#: git-gui.sh:1930 msgid "Staged for removal, still present" msgstr "Bereitgestellt zum Löschen, trotzdem vorhanden" -#: git-gui.sh:2114 git-gui.sh:2115 git-gui.sh:2116 git-gui.sh:2117 -#: git-gui.sh:2118 git-gui.sh:2119 +#: git-gui.sh:1932 git-gui.sh:1933 git-gui.sh:1934 git-gui.sh:1935 +#: git-gui.sh:1936 git-gui.sh:1937 msgid "Requires merge resolution" msgstr "Konfliktauflösung nötig" -#: git-gui.sh:2164 +#: git-gui.sh:1972 +msgid "Starting gitk... please wait..." +msgstr "Gitk wird gestartet... bitte warten." + +#: git-gui.sh:1984 msgid "Couldn't find gitk in PATH" msgstr "Gitk kann im PATH nicht gefunden werden." -#: git-gui.sh:2210 git-gui.sh:2245 -#, tcl-format -msgid "Starting %s... please wait..." -msgstr "%s wird gestartet... bitte warten." - -#: git-gui.sh:2224 +#: git-gui.sh:2043 msgid "Couldn't find git gui in PATH" msgstr "»Git gui« kann im PATH nicht gefunden werden." -#: git-gui.sh:2726 lib/choose_repository.tcl:53 +#: git-gui.sh:2455 lib/choose_repository.tcl:36 msgid "Repository" -msgstr "Repository" +msgstr "Projektarchiv" -#: git-gui.sh:2727 +#: git-gui.sh:2456 msgid "Edit" msgstr "Bearbeiten" -#: git-gui.sh:2729 lib/choose_rev.tcl:567 +#: git-gui.sh:2458 lib/choose_rev.tcl:561 msgid "Branch" -msgstr "Branch" +msgstr "Zweig" -#: git-gui.sh:2732 lib/choose_rev.tcl:554 +#: git-gui.sh:2461 lib/choose_rev.tcl:548 msgid "Commit@@noun" -msgstr "Commit" +msgstr "Version" -#: git-gui.sh:2735 lib/merge.tcl:127 lib/merge.tcl:174 +#: git-gui.sh:2464 lib/merge.tcl:121 lib/merge.tcl:150 lib/merge.tcl:168 msgid "Merge" msgstr "Zusammenführen" -#: git-gui.sh:2736 lib/choose_rev.tcl:563 +#: git-gui.sh:2465 lib/choose_rev.tcl:557 msgid "Remote" -msgstr "Extern" +msgstr "Externe Archive" -#: git-gui.sh:2739 +#: git-gui.sh:2468 msgid "Tools" msgstr "Werkzeuge" -#: git-gui.sh:2748 +#: git-gui.sh:2477 msgid "Explore Working Copy" -msgstr "Arbeitskopie im Dateimanager öffnen" +msgstr "Arbeitskopie im Dateimanager" -#: git-gui.sh:2763 -msgid "Git Bash" -msgstr "Git Bash" - -#: git-gui.sh:2772 +#: git-gui.sh:2483 msgid "Browse Current Branch's Files" -msgstr "Aktuellen Branch durchblättern" +msgstr "Aktuellen Zweig durchblättern" -#: git-gui.sh:2776 +#: git-gui.sh:2487 msgid "Browse Branch Files..." -msgstr "Branch durchblättern..." +msgstr "Einen Zweig durchblättern..." -#: git-gui.sh:2781 +#: git-gui.sh:2492 msgid "Visualize Current Branch's History" -msgstr "Aktuellen Branch darstellen" +msgstr "Aktuellen Zweig darstellen" -#: git-gui.sh:2785 +#: git-gui.sh:2496 msgid "Visualize All Branch History" -msgstr "Historie aller Branches darstellen" +msgstr "Alle Zweige darstellen" -#: git-gui.sh:2792 +#: git-gui.sh:2503 #, tcl-format msgid "Browse %s's Files" -msgstr "Branch »%s« durchblättern" +msgstr "Zweig »%s« durchblättern" -#: git-gui.sh:2794 +#: git-gui.sh:2505 #, tcl-format msgid "Visualize %s's History" msgstr "Historie von »%s« darstellen" -#: git-gui.sh:2799 lib/database.tcl:40 +#: git-gui.sh:2510 lib/database.tcl:27 lib/database.tcl:67 msgid "Database Statistics" msgstr "Datenbankstatistik" -#: git-gui.sh:2802 lib/database.tcl:33 +#: git-gui.sh:2513 lib/database.tcl:34 msgid "Compress Database" msgstr "Datenbank komprimieren" -#: git-gui.sh:2805 +#: git-gui.sh:2516 msgid "Verify Database" msgstr "Datenbank überprüfen" -#: git-gui.sh:2812 git-gui.sh:2816 git-gui.sh:2820 +#: git-gui.sh:2523 git-gui.sh:2527 git-gui.sh:2531 lib/shortcut.tcl:8 +#: lib/shortcut.tcl:40 lib/shortcut.tcl:72 msgid "Create Desktop Icon" msgstr "Desktop-Icon erstellen" -#: git-gui.sh:2828 lib/choose_repository.tcl:209 lib/choose_repository.tcl:217 +#: git-gui.sh:2539 lib/choose_repository.tcl:183 lib/choose_repository.tcl:191 msgid "Quit" msgstr "Beenden" -#: git-gui.sh:2836 +#: git-gui.sh:2547 msgid "Undo" msgstr "Rückgängig" -#: git-gui.sh:2839 +#: git-gui.sh:2550 msgid "Redo" msgstr "Wiederholen" -#: git-gui.sh:2843 git-gui.sh:3461 +#: git-gui.sh:2554 git-gui.sh:3109 msgid "Cut" msgstr "Ausschneiden" -#: git-gui.sh:2846 git-gui.sh:3464 git-gui.sh:3540 git-gui.sh:3633 +#: git-gui.sh:2557 git-gui.sh:3112 git-gui.sh:3186 git-gui.sh:3259 #: lib/console.tcl:69 msgid "Copy" msgstr "Kopieren" -#: git-gui.sh:2849 git-gui.sh:3467 +#: git-gui.sh:2560 git-gui.sh:3115 msgid "Paste" msgstr "Einfügen" -#: git-gui.sh:2852 git-gui.sh:3470 lib/remote_branch_delete.tcl:39 -#: lib/branch_delete.tcl:28 +#: git-gui.sh:2563 git-gui.sh:3118 lib/branch_delete.tcl:26 +#: lib/remote_branch_delete.tcl:38 msgid "Delete" msgstr "Löschen" -#: git-gui.sh:2856 git-gui.sh:3474 git-gui.sh:3637 lib/console.tcl:71 +#: git-gui.sh:2567 git-gui.sh:3122 git-gui.sh:3263 lib/console.tcl:71 msgid "Select All" msgstr "Alle auswählen" -#: git-gui.sh:2865 +#: git-gui.sh:2576 msgid "Create..." msgstr "Erstellen..." -#: git-gui.sh:2871 +#: git-gui.sh:2582 msgid "Checkout..." -msgstr "Auschecken..." +msgstr "Umstellen..." -#: git-gui.sh:2877 +#: git-gui.sh:2588 msgid "Rename..." msgstr "Umbenennen..." -#: git-gui.sh:2882 +#: git-gui.sh:2593 msgid "Delete..." msgstr "Löschen..." -#: git-gui.sh:2887 +#: git-gui.sh:2598 msgid "Reset..." -msgstr "Änderungen verwerfen..." +msgstr "Zurücksetzen..." -#: git-gui.sh:2897 +#: git-gui.sh:2608 msgid "Done" msgstr "Fertig" -#: git-gui.sh:2899 +#: git-gui.sh:2610 msgid "Commit@@verb" -msgstr "Committen" +msgstr "Eintragen" + +#: git-gui.sh:2619 git-gui.sh:3050 +msgid "New Commit" +msgstr "Neue Version" -#: git-gui.sh:2908 git-gui.sh:3400 +#: git-gui.sh:2627 git-gui.sh:3057 msgid "Amend Last Commit" -msgstr "Letzten Commit nachbessern" +msgstr "Letzte nachbessern" -#: git-gui.sh:2918 git-gui.sh:3361 lib/remote_branch_delete.tcl:101 +#: git-gui.sh:2637 git-gui.sh:3011 lib/remote_branch_delete.tcl:99 msgid "Rescan" msgstr "Neu laden" -#: git-gui.sh:2924 +#: git-gui.sh:2643 msgid "Stage To Commit" -msgstr "Für Commit bereitstellen" +msgstr "Zum Eintragen bereitstellen" -#: git-gui.sh:2930 +#: git-gui.sh:2649 msgid "Stage Changed Files To Commit" -msgstr "Geänderte Dateien für Commit bereitstellen" +msgstr "Geänderte Dateien bereitstellen" -#: git-gui.sh:2936 +#: git-gui.sh:2655 msgid "Unstage From Commit" -msgstr "Aus Commit-Bereitstellung herausnehmen" +msgstr "Aus der Bereitstellung herausnehmen" -#: git-gui.sh:2942 lib/index.tcl:521 +#: git-gui.sh:2661 lib/index.tcl:412 msgid "Revert Changes" msgstr "Änderungen verwerfen" -#: git-gui.sh:2950 git-gui.sh:3700 git-gui.sh:3731 +#: git-gui.sh:2669 git-gui.sh:3310 git-gui.sh:3341 msgid "Show Less Context" msgstr "Weniger Zeilen anzeigen" -#: git-gui.sh:2954 git-gui.sh:3704 git-gui.sh:3735 +#: git-gui.sh:2673 git-gui.sh:3314 git-gui.sh:3345 msgid "Show More Context" msgstr "Mehr Zeilen anzeigen" -#: git-gui.sh:2961 git-gui.sh:3374 git-gui.sh:3485 +#: git-gui.sh:2680 git-gui.sh:3024 git-gui.sh:3133 msgid "Sign Off" msgstr "Abzeichnen" -#: git-gui.sh:2977 +#: git-gui.sh:2696 msgid "Local Merge..." msgstr "Lokales Zusammenführen..." -#: git-gui.sh:2982 +#: git-gui.sh:2701 msgid "Abort Merge..." msgstr "Zusammenführen abbrechen..." -#: git-gui.sh:2994 git-gui.sh:3022 +#: git-gui.sh:2713 git-gui.sh:2741 msgid "Add..." -msgstr "Neues hinzufügen..." +msgstr "Hinzufügen..." -#: git-gui.sh:2998 +#: git-gui.sh:2717 msgid "Push..." msgstr "Versenden..." -#: git-gui.sh:3002 +#: git-gui.sh:2721 msgid "Delete Branch..." -msgstr "Branch löschen..." +msgstr "Zweig löschen..." -#: git-gui.sh:3012 git-gui.sh:3666 +#: git-gui.sh:2731 git-gui.sh:3292 msgid "Options..." msgstr "Optionen..." -#: git-gui.sh:3023 +#: git-gui.sh:2742 msgid "Remove..." msgstr "Entfernen..." -#: git-gui.sh:3032 lib/choose_repository.tcl:67 +#: git-gui.sh:2751 lib/choose_repository.tcl:50 msgid "Help" msgstr "Hilfe" -#: git-gui.sh:3036 git-gui.sh:3040 lib/choose_repository.tcl:61 -#: lib/choose_repository.tcl:70 lib/about.tcl:14 +#: git-gui.sh:2755 git-gui.sh:2759 lib/about.tcl:14 +#: lib/choose_repository.tcl:44 lib/choose_repository.tcl:53 #, tcl-format msgid "About %s" msgstr "Über %s" -#: git-gui.sh:3064 +#: git-gui.sh:2783 msgid "Online Documentation" msgstr "Online-Dokumentation" -#: git-gui.sh:3067 lib/choose_repository.tcl:64 lib/choose_repository.tcl:73 +#: git-gui.sh:2786 lib/choose_repository.tcl:47 lib/choose_repository.tcl:56 msgid "Show SSH Key" msgstr "SSH-Schlüssel anzeigen" -#: git-gui.sh:3097 git-gui.sh:3229 -msgid "usage:" -msgstr "Verwendung:" - -#: git-gui.sh:3101 git-gui.sh:3233 -msgid "Usage" -msgstr "Verwendung" - -#: git-gui.sh:3182 lib/blame.tcl:575 -msgid "Error" -msgstr "Fehler" - -#: git-gui.sh:3213 +#: git-gui.sh:2893 #, tcl-format msgid "fatal: cannot stat path %s: No such file or directory" msgstr "" "Fehler: Verzeichnis »%s« kann nicht gelesen werden: Datei oder Verzeichnis " "nicht gefunden" -#: git-gui.sh:3246 +#: git-gui.sh:2926 msgid "Current Branch:" -msgstr "Aktueller Branch:" +msgstr "Aktueller Zweig:" + +#: git-gui.sh:2947 +msgid "Staged Changes (Will Commit)" +msgstr "Bereitstellung (zum Eintragen)" -#: git-gui.sh:3271 +#: git-gui.sh:2967 msgid "Unstaged Changes" msgstr "Nicht bereitgestellte Änderungen" -#: git-gui.sh:3293 -msgid "Staged Changes (Will Commit)" -msgstr "Bereitstellung (zum Committen)" - -#: git-gui.sh:3367 +#: git-gui.sh:3017 msgid "Stage Changed" msgstr "Alles bereitstellen" -#: git-gui.sh:3386 lib/transport.tcl:137 +#: git-gui.sh:3036 lib/transport.tcl:104 lib/transport.tcl:193 msgid "Push" msgstr "Versenden" -#: git-gui.sh:3413 +#: git-gui.sh:3071 msgid "Initial Commit Message:" -msgstr "Erste Commit-Beschreibung:" +msgstr "Erste Versionsbeschreibung:" -#: git-gui.sh:3414 +#: git-gui.sh:3072 msgid "Amended Commit Message:" msgstr "Nachgebesserte Beschreibung:" -#: git-gui.sh:3415 +#: git-gui.sh:3073 msgid "Amended Initial Commit Message:" msgstr "Nachgebesserte erste Beschreibung:" -#: git-gui.sh:3416 +#: git-gui.sh:3074 msgid "Amended Merge Commit Message:" msgstr "Nachgebesserte Zusammenführungs-Beschreibung:" -#: git-gui.sh:3417 +#: git-gui.sh:3075 msgid "Merge Commit Message:" msgstr "Zusammenführungs-Beschreibung:" -#: git-gui.sh:3418 +#: git-gui.sh:3076 msgid "Commit Message:" -msgstr "Commit-Beschreibung:" +msgstr "Versionsbeschreibung:" -#: git-gui.sh:3477 git-gui.sh:3641 lib/console.tcl:73 +#: git-gui.sh:3125 git-gui.sh:3267 lib/console.tcl:73 msgid "Copy All" msgstr "Alle kopieren" -#: git-gui.sh:3501 lib/blame.tcl:106 +#: git-gui.sh:3149 lib/blame.tcl:104 msgid "File:" msgstr "Datei:" -#: git-gui.sh:3549 lib/choose_repository.tcl:1100 -msgid "Open" -msgstr "Öffnen" - -#: git-gui.sh:3629 +#: git-gui.sh:3255 msgid "Refresh" msgstr "Aktualisieren" -#: git-gui.sh:3650 +#: git-gui.sh:3276 msgid "Decrease Font Size" msgstr "Schriftgröße verkleinern" -#: git-gui.sh:3654 +#: git-gui.sh:3280 msgid "Increase Font Size" msgstr "Schriftgröße vergrößern" -#: git-gui.sh:3662 lib/blame.tcl:296 +#: git-gui.sh:3288 lib/blame.tcl:281 msgid "Encoding" msgstr "Zeichenkodierung" -#: git-gui.sh:3673 +#: git-gui.sh:3299 msgid "Apply/Reverse Hunk" -msgstr "Patch-Block anwenden/zurücknehmen" +msgstr "Kontext anwenden/umkehren" -#: git-gui.sh:3678 +#: git-gui.sh:3304 msgid "Apply/Reverse Line" -msgstr "Zeile anwenden/zurücknehmen" - -#: git-gui.sh:3684 git-gui.sh:3794 git-gui.sh:3805 -msgid "Revert Hunk" -msgstr "Patch-Block zurücknehmen" - -#: git-gui.sh:3689 git-gui.sh:3801 git-gui.sh:3812 -msgid "Revert Line" -msgstr "Zeilenänderungen zurücknehmen" +msgstr "Zeile anwenden/umkehren" -#: git-gui.sh:3694 git-gui.sh:3791 -msgid "Undo Last Revert" -msgstr "Letztes Zurücknehmen rückgängig" - -#: git-gui.sh:3713 +#: git-gui.sh:3323 msgid "Run Merge Tool" msgstr "Zusammenführungswerkzeug" -#: git-gui.sh:3718 +#: git-gui.sh:3328 msgid "Use Remote Version" msgstr "Externe Version benutzen" -#: git-gui.sh:3722 +#: git-gui.sh:3332 msgid "Use Local Version" msgstr "Lokale Version benutzen" -#: git-gui.sh:3726 +#: git-gui.sh:3336 msgid "Revert To Base" -msgstr "Zurücksetzen auf ursprünglichen Commit" +msgstr "Ursprüngliche Version benutzen" -#: git-gui.sh:3744 +#: git-gui.sh:3354 msgid "Visualize These Changes In The Submodule" -msgstr "Diese Änderungen im Submodul darstellen" +msgstr "Diese Änderungen im Untermodul darstellen" -#: git-gui.sh:3748 +#: git-gui.sh:3358 msgid "Visualize Current Branch History In The Submodule" -msgstr "Aktuellen Branch im Submodul darstellen" +msgstr "Aktuellen Zweig im Untermodul darstellen" -#: git-gui.sh:3752 +#: git-gui.sh:3362 msgid "Visualize All Branch History In The Submodule" -msgstr "Alle Branches im Submodul darstellen" +msgstr "Alle Zweige im Untermodul darstellen" -#: git-gui.sh:3757 +#: git-gui.sh:3367 msgid "Start git gui In The Submodule" -msgstr "Git gui im Submodul starten" +msgstr "Git gui im Untermodul starten" -#: git-gui.sh:3793 +#: git-gui.sh:3389 msgid "Unstage Hunk From Commit" -msgstr "Patch-Block aus Bereitstellung herausnehmen" +msgstr "Kontext aus Bereitstellung herausnehmen" -#: git-gui.sh:3797 +#: git-gui.sh:3391 msgid "Unstage Lines From Commit" msgstr "Zeilen aus der Bereitstellung herausnehmen" -#: git-gui.sh:3798 git-gui.sh:3809 -msgid "Revert Lines" -msgstr "Zeilenänderung zurücknehmen" - -#: git-gui.sh:3800 +#: git-gui.sh:3393 msgid "Unstage Line From Commit" msgstr "Zeile aus der Bereitstellung herausnehmen" -#: git-gui.sh:3804 +#: git-gui.sh:3396 msgid "Stage Hunk For Commit" -msgstr "Patch-Block zur Bereitstellung hinzufügen" +msgstr "Kontext zur Bereitstellung hinzufügen" -#: git-gui.sh:3808 +#: git-gui.sh:3398 msgid "Stage Lines For Commit" msgstr "Zeilen zur Bereitstellung hinzufügen" -#: git-gui.sh:3811 +#: git-gui.sh:3400 msgid "Stage Line For Commit" msgstr "Zeile zur Bereitstellung hinzufügen" -#: git-gui.sh:3861 +#: git-gui.sh:3424 msgid "Initializing..." msgstr "Initialisieren..." -#: git-gui.sh:4017 +#: git-gui.sh:3541 #, tcl-format msgid "" "Possible environment issues exist.\n" @@ -594,7 +548,7 @@ msgstr "" "von %s an Git weitergegeben werden:\n" "\n" -#: git-gui.sh:4046 +#: git-gui.sh:3570 msgid "" "\n" "This is due to a known issue with the\n" @@ -604,7 +558,7 @@ msgstr "" "Dies ist ein bekanntes Problem der Tcl-Version, die\n" "in Cygwin mitgeliefert wird." -#: git-gui.sh:4051 +#: git-gui.sh:3575 #, tcl-format msgid "" "\n" @@ -620,291 +574,447 @@ msgstr "" "gewünschten Werte für die Einstellung user.name und \n" "user.email in Ihre Datei ~/.gitconfig einfügen.\n" -#: lib/spellcheck.tcl:57 -msgid "Unsupported spell checker" -msgstr "Rechtschreibprüfungsprogramm nicht unterstützt" +#: lib/about.tcl:26 +msgid "git-gui - a graphical user interface for Git." +msgstr "git-gui - eine grafische Oberfläche für Git." -#: lib/spellcheck.tcl:65 -msgid "Spell checking is unavailable" -msgstr "Rechtschreibprüfung nicht verfügbar" +#: lib/blame.tcl:72 +msgid "File Viewer" +msgstr "Datei-Browser" -#: lib/spellcheck.tcl:68 -msgid "Invalid spell checking configuration" -msgstr "Unbenutzbare Konfiguration der Rechtschreibprüfung" +#: lib/blame.tcl:78 +msgid "Commit:" +msgstr "Version:" -#: lib/spellcheck.tcl:70 +#: lib/blame.tcl:271 +msgid "Copy Commit" +msgstr "Version kopieren" + +#: lib/blame.tcl:275 +msgid "Find Text..." +msgstr "Text suchen..." + +#: lib/blame.tcl:284 +msgid "Do Full Copy Detection" +msgstr "Volle Kopie-Erkennung" + +#: lib/blame.tcl:288 +msgid "Show History Context" +msgstr "Historien-Kontext anzeigen" + +#: lib/blame.tcl:291 +msgid "Blame Parent Commit" +msgstr "Elternversion annotieren" + +#: lib/blame.tcl:450 #, tcl-format -msgid "Reverting dictionary to %s." -msgstr "Wörterbuch auf %s zurückgesetzt." +msgid "Reading %s..." +msgstr "%s lesen..." -#: lib/spellcheck.tcl:73 -msgid "Spell checker silently failed on startup" -msgstr "Rechtschreibprüfungsprogramm mit Fehler abgebrochen" +#: lib/blame.tcl:557 +msgid "Loading copy/move tracking annotations..." +msgstr "Annotierungen für Kopieren/Verschieben werden geladen..." -#: lib/spellcheck.tcl:80 -msgid "Unrecognized spell checker" -msgstr "Unbekanntes Rechtschreibprüfungsprogramm" +#: lib/blame.tcl:577 +msgid "lines annotated" +msgstr "Zeilen annotiert" -#: lib/spellcheck.tcl:186 -msgid "No Suggestions" -msgstr "Keine Vorschläge" +#: lib/blame.tcl:769 +msgid "Loading original location annotations..." +msgstr "Annotierungen für ursprünglichen Ort werden geladen..." -#: lib/spellcheck.tcl:388 -msgid "Unexpected EOF from spell checker" -msgstr "Unerwartetes EOF vom Rechtschreibprüfungsprogramm" +#: lib/blame.tcl:772 +msgid "Annotation complete." +msgstr "Annotierung vollständig." -#: lib/spellcheck.tcl:392 -msgid "Spell Checker Failed" -msgstr "Rechtschreibprüfung fehlgeschlagen" +#: lib/blame.tcl:802 +msgid "Busy" +msgstr "Verarbeitung läuft" -#: lib/transport.tcl:6 lib/remote_add.tcl:132 -#, tcl-format -msgid "fetch %s" -msgstr "»%s« anfordern" +#: lib/blame.tcl:803 +msgid "Annotation process is already running." +msgstr "Annotierung läuft bereits." -#: lib/transport.tcl:7 -#, tcl-format -msgid "Fetching new changes from %s" -msgstr "Neue Änderungen von »%s« holen" +#: lib/blame.tcl:842 +msgid "Running thorough copy detection..." +msgstr "Intensive Kopie-Erkennung läuft..." -#: lib/transport.tcl:18 -#, tcl-format -msgid "remote prune %s" -msgstr "Gelöschte externe Branches aus »%s« entfernen" +#: lib/blame.tcl:910 +msgid "Loading annotation..." +msgstr "Annotierung laden..." -#: lib/transport.tcl:19 -#, tcl-format -msgid "Pruning tracking branches deleted from %s" -msgstr "Gelöschte externe Trackingbranches aus »%s« werden entfernt" +#: lib/blame.tcl:963 +msgid "Author:" +msgstr "Autor:" -#: lib/transport.tcl:25 -msgid "fetch all remotes" -msgstr "Abrufen aller externen" +#: lib/blame.tcl:967 +msgid "Committer:" +msgstr "Eintragender:" -#: lib/transport.tcl:26 -msgid "Fetching new changes from all remotes" -msgstr "Neue Änderungen von allen externen anfordern" +#: lib/blame.tcl:972 +msgid "Original File:" +msgstr "Ursprüngliche Datei:" -#: lib/transport.tcl:40 -msgid "remote prune all remotes" -msgstr "Extern veraltete Branches entfernen aller Repositories" +#: lib/blame.tcl:1020 +msgid "Cannot find HEAD commit:" +msgstr "Zweigspitze (»HEAD«) kann nicht gefunden werden:" -#: lib/transport.tcl:41 -msgid "Pruning tracking branches deleted from all remotes" -msgstr "" -"Gelöschte externe Trackingbranches aus allen Repositories werden entfernt" +#: lib/blame.tcl:1075 +msgid "Cannot find parent commit:" +msgstr "Elternversion kann nicht gefunden werden:" -#: lib/transport.tcl:54 lib/transport.tcl:92 lib/transport.tcl:110 -#: lib/remote_add.tcl:162 -#, tcl-format -msgid "push %s" -msgstr "»%s« versenden..." +#: lib/blame.tcl:1090 +msgid "Unable to display parent" +msgstr "Elternversion kann nicht angezeigt werden" -#: lib/transport.tcl:55 -#, tcl-format -msgid "Pushing changes to %s" -msgstr "Änderungen nach »%s« versenden" +#: lib/blame.tcl:1091 lib/diff.tcl:320 +msgid "Error loading diff:" +msgstr "Fehler beim Laden des Vergleichs:" -#: lib/transport.tcl:93 -#, tcl-format -msgid "Mirroring to %s" -msgstr "Spiegeln nach %s" +#: lib/blame.tcl:1231 +msgid "Originally By:" +msgstr "Ursprünglich von:" -#: lib/transport.tcl:111 -#, tcl-format -msgid "Pushing %s %s to %s" -msgstr "%s %s nach %s versenden" +#: lib/blame.tcl:1237 +msgid "In File:" +msgstr "In Datei:" -#: lib/transport.tcl:132 -msgid "Push Branches" -msgstr "Branches versenden" +#: lib/blame.tcl:1242 +msgid "Copied Or Moved Here By:" +msgstr "Kopiert oder verschoben durch:" + +#: lib/branch_checkout.tcl:14 lib/branch_checkout.tcl:19 +msgid "Checkout Branch" +msgstr "Auf Zweig umstellen" -#: lib/transport.tcl:141 lib/checkout_op.tcl:580 lib/remote_add.tcl:34 -#: lib/browser.tcl:292 lib/branch_checkout.tcl:30 lib/branch_rename.tcl:32 -#: lib/choose_font.tcl:45 lib/option.tcl:127 lib/tools_dlg.tcl:41 -#: lib/tools_dlg.tcl:202 lib/tools_dlg.tcl:345 lib/remote_branch_delete.tcl:43 -#: lib/branch_create.tcl:37 lib/branch_delete.tcl:34 lib/merge.tcl:178 +#: lib/branch_checkout.tcl:23 +msgid "Checkout" +msgstr "Umstellen" + +#: lib/branch_checkout.tcl:27 lib/branch_create.tcl:35 +#: lib/branch_delete.tcl:32 lib/branch_rename.tcl:30 lib/browser.tcl:282 +#: lib/checkout_op.tcl:579 lib/choose_font.tcl:43 lib/merge.tcl:172 +#: lib/option.tcl:125 lib/remote_add.tcl:32 lib/remote_branch_delete.tcl:42 +#: lib/tools_dlg.tcl:40 lib/tools_dlg.tcl:204 lib/tools_dlg.tcl:352 +#: lib/transport.tcl:108 msgid "Cancel" msgstr "Abbrechen" -#: lib/transport.tcl:147 -msgid "Source Branches" -msgstr "Lokale Branches" +#: lib/branch_checkout.tcl:32 lib/browser.tcl:287 lib/tools_dlg.tcl:328 +msgid "Revision" +msgstr "Version" -#: lib/transport.tcl:162 -msgid "Destination Repository" -msgstr "Ziel-Repository" +#: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:280 +msgid "Options" +msgstr "Optionen" -#: lib/transport.tcl:165 lib/remote_branch_delete.tcl:51 -msgid "Remote:" -msgstr "Externes Repository:" +#: lib/branch_checkout.tcl:39 lib/branch_create.tcl:92 +msgid "Fetch Tracking Branch" +msgstr "Übernahmezweig anfordern" -#: lib/transport.tcl:187 lib/remote_branch_delete.tcl:72 -msgid "Arbitrary Location:" -msgstr "Beliebige Adresse:" +#: lib/branch_checkout.tcl:44 +msgid "Detach From Local Branch" +msgstr "Verbindung zu lokalem Zweig lösen" -#: lib/transport.tcl:205 -msgid "Transfer Options" -msgstr "Netzwerk-Einstellungen" +#: lib/branch_create.tcl:22 +msgid "Create Branch" +msgstr "Zweig erstellen" -#: lib/transport.tcl:207 -msgid "Force overwrite existing branch (may discard changes)" -msgstr "" -"Überschreiben von existierenden Branches erzwingen (könnte Änderungen " -"löschen)" +#: lib/branch_create.tcl:27 +msgid "Create New Branch" +msgstr "Neuen Zweig erstellen" -#: lib/transport.tcl:211 -msgid "Use thin pack (for slow network connections)" -msgstr "Kompaktes Datenformat benutzen (für langsame Netzverbindungen)" +#: lib/branch_create.tcl:31 lib/choose_repository.tcl:381 +msgid "Create" +msgstr "Erstellen" -#: lib/transport.tcl:215 -msgid "Include tags" -msgstr "Mit Tags versenden" +#: lib/branch_create.tcl:40 +msgid "Branch Name" +msgstr "Zweigname" -#: lib/transport.tcl:229 -#, tcl-format -msgid "%s (%s): Push" -msgstr "%s (%s): Versenden" +#: lib/branch_create.tcl:43 lib/remote_add.tcl:39 lib/tools_dlg.tcl:50 +msgid "Name:" +msgstr "Name:" -#: lib/checkout_op.tcl:85 -#, tcl-format -msgid "Fetching %s from %s" -msgstr "Änderungen »%s« von »%s« anfordern" +#: lib/branch_create.tcl:58 +msgid "Match Tracking Branch Name" +msgstr "Passend zu Übernahmezweig-Name" -#: lib/checkout_op.tcl:133 -#, tcl-format -msgid "fatal: Cannot resolve %s" -msgstr "Fehler: »%s« kann nicht als Branch oder Version erkannt werden" +#: lib/branch_create.tcl:66 +msgid "Starting Revision" +msgstr "Anfangsversion" -#: lib/checkout_op.tcl:146 lib/sshkey.tcl:58 lib/console.tcl:81 -#: lib/database.tcl:30 -msgid "Close" -msgstr "Schließen" +#: lib/branch_create.tcl:72 +msgid "Update Existing Branch:" +msgstr "Existierenden Zweig aktualisieren:" -#: lib/checkout_op.tcl:175 -#, tcl-format -msgid "Branch '%s' does not exist." -msgstr "Branch »%s« existiert nicht." +#: lib/branch_create.tcl:75 +msgid "No" +msgstr "Nein" -#: lib/checkout_op.tcl:194 -#, tcl-format -msgid "Failed to configure simplified git-pull for '%s'." -msgstr "Fehler beim Einrichten der vereinfachten git-pull für »%s«." +#: lib/branch_create.tcl:80 +msgid "Fast Forward Only" +msgstr "Nur Schnellzusammenführung" -#: lib/checkout_op.tcl:202 lib/branch_rename.tcl:102 -#, tcl-format -msgid "Branch '%s' already exists." -msgstr "Branch »%s« existiert bereits." +#: lib/branch_create.tcl:85 lib/checkout_op.tcl:571 +msgid "Reset" +msgstr "Zurücksetzen" -#: lib/checkout_op.tcl:229 -#, tcl-format -msgid "" -"Branch '%s' already exists.\n" -"\n" -"It cannot fast-forward to %s.\n" -"A merge is required." -msgstr "" -"Branch »%s« existiert bereits.\n" -"\n" -"Branch kann nicht auf »%s« vorgespult werden. Reguläres Zusammenführen ist " -"notwendig." +#: lib/branch_create.tcl:97 +msgid "Checkout After Creation" +msgstr "Arbeitskopie umstellen nach Erstellen" -#: lib/checkout_op.tcl:243 +#: lib/branch_create.tcl:131 +msgid "Please select a tracking branch." +msgstr "Bitte wählen Sie einen Übernahmezweig." + +#: lib/branch_create.tcl:140 #, tcl-format -msgid "Merge strategy '%s' not supported." -msgstr "Zusammenführungsmethode »%s« nicht unterstützt." +msgid "Tracking branch %s is not a branch in the remote repository." +msgstr "Übernahmezweig »%s« ist kein Zweig im externen Projektarchiv." -#: lib/checkout_op.tcl:262 +#: lib/branch_create.tcl:153 lib/branch_rename.tcl:86 +msgid "Please supply a branch name." +msgstr "Bitte geben Sie einen Zweignamen an." + +#: lib/branch_create.tcl:164 lib/branch_rename.tcl:106 #, tcl-format -msgid "Failed to update '%s'." -msgstr "Aktualisieren von »%s« fehlgeschlagen." +msgid "'%s' is not an acceptable branch name." +msgstr "»%s« ist kein zulässiger Zweigname." -#: lib/checkout_op.tcl:274 -msgid "Staging area (index) is already locked." -msgstr "Bereitstellung (»index«) ist zur Bearbeitung gesperrt (»locked«)." +#: lib/branch_delete.tcl:15 +msgid "Delete Branch" +msgstr "Zweig löschen" -#: lib/checkout_op.tcl:289 +#: lib/branch_delete.tcl:20 +msgid "Delete Local Branch" +msgstr "Lokalen Zweig löschen" + +#: lib/branch_delete.tcl:37 +msgid "Local Branches" +msgstr "Lokale Zweige" + +#: lib/branch_delete.tcl:52 +msgid "Delete Only If Merged Into" +msgstr "Nur löschen, wenn zusammengeführt nach" + +#: lib/branch_delete.tcl:54 lib/remote_branch_delete.tcl:119 +msgid "Always (Do not perform merge checks)" +msgstr "Immer (Keine Zusammenführungsprüfung)" + +#: lib/branch_delete.tcl:103 +#, tcl-format +msgid "The following branches are not completely merged into %s:" +msgstr "Folgende Zweige sind noch nicht mit »%s« zusammengeführt:" + +#: lib/branch_delete.tcl:115 lib/remote_branch_delete.tcl:217 msgid "" -"Last scanned state does not match repository state.\n" -"\n" -"Another Git program has modified this repository since the last scan. A " -"rescan must be performed before the current branch can be changed.\n" +"Recovering deleted branches is difficult.\n" "\n" -"The rescan will be automatically started now.\n" +"Delete the selected branches?" msgstr "" -"Der letzte geladene Status stimmt nicht mehr mit dem Repository überein.\n" -"\n" -"Ein anderes Git-Programm hat das Repository seit dem letzten Laden " -"geändert. Vor dem Wechseln des lokalen Branches muss neu geladen werden.\n" +"Das Wiederherstellen von gelöschten Zweigen ist nur mit größerem Aufwand " +"möglich.\n" "\n" -"Es wird gleich neu geladen.\n" +"Sollen die ausgewählten Zweige gelöscht werden?" -#: lib/checkout_op.tcl:345 +#: lib/branch_delete.tcl:141 #, tcl-format -msgid "Updating working directory to '%s'..." -msgstr "Arbeitskopie aktualisieren auf »%s«..." - -#: lib/checkout_op.tcl:346 -msgid "files checked out" -msgstr "Dateien aktualisiert" +msgid "" +"Failed to delete branches:\n" +"%s" +msgstr "" +"Fehler beim Löschen der Zweige:\n" +"%s" -#: lib/checkout_op.tcl:377 +#: lib/branch_rename.tcl:14 lib/branch_rename.tcl:22 +msgid "Rename Branch" +msgstr "Zweig umbenennen" + +#: lib/branch_rename.tcl:26 +msgid "Rename" +msgstr "Umbenennen" + +#: lib/branch_rename.tcl:36 +msgid "Branch:" +msgstr "Zweig:" + +#: lib/branch_rename.tcl:39 +msgid "New Name:" +msgstr "Neuer Name:" + +#: lib/branch_rename.tcl:75 +msgid "Please select a branch to rename." +msgstr "Bitte wählen Sie einen Zweig zum umbenennen." + +#: lib/branch_rename.tcl:96 lib/checkout_op.tcl:202 +#, tcl-format +msgid "Branch '%s' already exists." +msgstr "Zweig »%s« existiert bereits." + +#: lib/branch_rename.tcl:117 +#, tcl-format +msgid "Failed to rename '%s'." +msgstr "Fehler beim Umbenennen von »%s«." + +#: lib/browser.tcl:17 +msgid "Starting..." +msgstr "Starten..." + +#: lib/browser.tcl:26 +msgid "File Browser" +msgstr "Datei-Browser" + +#: lib/browser.tcl:126 lib/browser.tcl:143 +#, tcl-format +msgid "Loading %s..." +msgstr "%s laden..." + +#: lib/browser.tcl:187 +msgid "[Up To Parent]" +msgstr "[Nach oben]" + +#: lib/browser.tcl:267 lib/browser.tcl:273 +msgid "Browse Branch Files" +msgstr "Dateien des Zweigs durchblättern" + +#: lib/browser.tcl:278 lib/choose_repository.tcl:398 +#: lib/choose_repository.tcl:486 lib/choose_repository.tcl:497 +#: lib/choose_repository.tcl:1028 +msgid "Browse" +msgstr "Blättern" + +#: lib/checkout_op.tcl:85 +#, tcl-format +msgid "Fetching %s from %s" +msgstr "Änderungen »%s« von »%s« anfordern" + +#: lib/checkout_op.tcl:133 +#, tcl-format +msgid "fatal: Cannot resolve %s" +msgstr "Fehler: »%s« kann nicht als Zweig oder Version erkannt werden" + +#: lib/checkout_op.tcl:146 lib/console.tcl:81 lib/database.tcl:31 +#: lib/sshkey.tcl:53 +msgid "Close" +msgstr "Schließen" + +#: lib/checkout_op.tcl:175 +#, tcl-format +msgid "Branch '%s' does not exist." +msgstr "Zweig »%s« existiert nicht." + +#: lib/checkout_op.tcl:194 +#, tcl-format +msgid "Failed to configure simplified git-pull for '%s'." +msgstr "Fehler beim Einrichten der vereinfachten git-pull für »%s«." + +#: lib/checkout_op.tcl:229 +#, tcl-format +msgid "" +"Branch '%s' already exists.\n" +"\n" +"It cannot fast-forward to %s.\n" +"A merge is required." +msgstr "" +"Zweig »%s« existiert bereits.\n" +"\n" +"Zweig kann nicht mit »%s« schnellzusammengeführt werden. Reguläres " +"Zusammenführen ist notwendig." + +#: lib/checkout_op.tcl:243 +#, tcl-format +msgid "Merge strategy '%s' not supported." +msgstr "Zusammenführungsmethode »%s« nicht unterstützt." + +#: lib/checkout_op.tcl:262 +#, tcl-format +msgid "Failed to update '%s'." +msgstr "Aktualisieren von »%s« fehlgeschlagen." + +#: lib/checkout_op.tcl:274 +msgid "Staging area (index) is already locked." +msgstr "Bereitstellung (»index«) ist zur Bearbeitung gesperrt (»locked«)." + +#: lib/checkout_op.tcl:289 +msgid "" +"Last scanned state does not match repository state.\n" +"\n" +"Another Git program has modified this repository since the last scan. A " +"rescan must be performed before the current branch can be changed.\n" +"\n" +"The rescan will be automatically started now.\n" +msgstr "" +"Der letzte geladene Status stimmt nicht mehr mit dem Projektarchiv überein.\n" +"\n" +"Ein anderes Git-Programm hat das Projektarchiv seit dem letzten Laden " +"geändert. Vor dem Wechseln des lokalen Zweigs muss neu geladen werden.\n" +"\n" +"Es wird gleich neu geladen.\n" + +#: lib/checkout_op.tcl:345 +#, tcl-format +msgid "Updating working directory to '%s'..." +msgstr "Arbeitskopie umstellen auf »%s«..." + +#: lib/checkout_op.tcl:346 +msgid "files checked out" +msgstr "Dateien aktualisiert" + +#: lib/checkout_op.tcl:376 #, tcl-format msgid "Aborted checkout of '%s' (file level merging is required)." msgstr "" -"Branch »%s« Auschecken abgebrochen (Zusammenführen der Dateien ist " +"Auf Zweig »%s« umstellen abgebrochen (Zusammenführen der Dateien ist " "notwendig)." -#: lib/checkout_op.tcl:378 +#: lib/checkout_op.tcl:377 msgid "File level merge required." msgstr "Zusammenführen der Dateien ist notwendig." -#: lib/checkout_op.tcl:382 +#: lib/checkout_op.tcl:381 #, tcl-format msgid "Staying on branch '%s'." -msgstr "Es wird auf Branch »%s« verblieben." +msgstr "Es wird auf Zweig »%s« verblieben." -#: lib/checkout_op.tcl:453 +#: lib/checkout_op.tcl:452 msgid "" "You are no longer on a local branch.\n" "\n" "If you wanted to be on a branch, create one now starting from 'This Detached " "Checkout'." msgstr "" -"Die Arbeitskopie ist nicht auf einem lokalen Branch.\n" +"Die Arbeitskopie ist nicht auf einem lokalen Zweig.\n" "\n" -"Wenn Sie auf einem Branch arbeiten möchten, erstellen Sie bitte jetzt einen " -"Branch mit der Auswahl »Losgelöste Arbeitskopie-Version«." +"Wenn Sie auf einem Zweig arbeiten möchten, erstellen Sie bitte jetzt einen " +"Zweig mit der Auswahl »Abgetrennte Arbeitskopie-Version«." -#: lib/checkout_op.tcl:504 lib/checkout_op.tcl:508 +#: lib/checkout_op.tcl:503 lib/checkout_op.tcl:507 #, tcl-format msgid "Checked out '%s'." msgstr "Umgestellt auf »%s«." -#: lib/checkout_op.tcl:536 +#: lib/checkout_op.tcl:535 #, tcl-format msgid "Resetting '%s' to '%s' will lose the following commits:" -msgstr "Umsetzen von »%s« nach »%s« wird folgende Commits verlieren:" +msgstr "Zurücksetzen von »%s« nach »%s« wird folgende Versionen verwerfen:" -#: lib/checkout_op.tcl:558 +#: lib/checkout_op.tcl:557 msgid "Recovering lost commits may not be easy." msgstr "" -"Verlorene Commits können nur mit größerem Aufwand wiederhergestellt werden." +"Verworfene Versionen können nur mit größerem Aufwand wiederhergestellt " +"werden." -#: lib/checkout_op.tcl:563 +#: lib/checkout_op.tcl:562 #, tcl-format msgid "Reset '%s'?" -msgstr "»%s« umsetzen?" +msgstr "»%s« zurücksetzen?" -#: lib/checkout_op.tcl:568 lib/tools_dlg.tcl:336 lib/merge.tcl:170 +#: lib/checkout_op.tcl:567 lib/merge.tcl:164 lib/tools_dlg.tcl:343 msgid "Visualize" msgstr "Darstellen" -#: lib/checkout_op.tcl:572 lib/branch_create.tcl:85 -msgid "Reset" -msgstr "Umsetzen (Reset)" - -#: lib/checkout_op.tcl:636 +#: lib/checkout_op.tcl:635 #, tcl-format msgid "" "Failed to set current branch.\n" @@ -914,7 +1024,7 @@ msgid "" "\n" "This should not have occurred. %s will now close and give up." msgstr "" -"Lokaler Branch kann nicht gesetzt werden.\n" +"Lokaler Zweig kann nicht gesetzt werden.\n" "\n" "Diese Arbeitskopie ist nur teilweise umgestellt. Die Dateien sind korrekt " "aktualisiert, aber einige interne Git-Dateien konnten nicht geändert " @@ -922,505 +1032,658 @@ msgstr "" "\n" "Dies ist ein interner Programmfehler von %s. Programm wird jetzt abgebrochen." -#: lib/remote_add.tcl:20 -#, tcl-format -msgid "%s (%s): Add Remote" -msgstr "%s (%s): Externes Repository hinzufügen" - -#: lib/remote_add.tcl:25 -msgid "Add New Remote" -msgstr "Neues externes Repository hinzufügen" +#: lib/choose_font.tcl:39 +msgid "Select" +msgstr "Auswählen" -#: lib/remote_add.tcl:30 lib/tools_dlg.tcl:37 -msgid "Add" -msgstr "Hinzufügen" +#: lib/choose_font.tcl:53 +msgid "Font Family" +msgstr "Schriftfamilie" -#: lib/remote_add.tcl:39 -msgid "Remote Details" -msgstr "Einzelheiten des externen Repository" +#: lib/choose_font.tcl:74 +msgid "Font Size" +msgstr "Schriftgröße" -#: lib/remote_add.tcl:41 lib/tools_dlg.tcl:51 lib/branch_create.tcl:44 -msgid "Name:" -msgstr "Name:" +#: lib/choose_font.tcl:91 +msgid "Font Example" +msgstr "Schriftbeispiel" -#: lib/remote_add.tcl:50 -msgid "Location:" -msgstr "Adresse:" +#: lib/choose_font.tcl:103 +msgid "" +"This is example text.\n" +"If you like this text, it can be your font." +msgstr "" +"Dies ist ein Beispieltext.\n" +"Wenn Ihnen dieser Text gefällt, sollten Sie diese Schriftart wählen." -#: lib/remote_add.tcl:60 -msgid "Further Action" -msgstr "Weitere Aktion" +#: lib/choose_repository.tcl:28 +msgid "Git Gui" +msgstr "Git Gui" -#: lib/remote_add.tcl:63 -msgid "Fetch Immediately" -msgstr "Jetzt anfordern" +#: lib/choose_repository.tcl:87 lib/choose_repository.tcl:386 +msgid "Create New Repository" +msgstr "Neues Projektarchiv" -#: lib/remote_add.tcl:69 -msgid "Initialize Remote Repository and Push" -msgstr "Externes Repository initialisieren und dahin versenden" +#: lib/choose_repository.tcl:93 +msgid "New..." +msgstr "Neu..." -#: lib/remote_add.tcl:75 -msgid "Do Nothing Else Now" -msgstr "Keine weitere Aktion" +#: lib/choose_repository.tcl:100 lib/choose_repository.tcl:471 +msgid "Clone Existing Repository" +msgstr "Projektarchiv klonen" -#: lib/remote_add.tcl:100 -msgid "Please supply a remote name." -msgstr "Bitte geben Sie einen Namen des externen Repository an." +#: lib/choose_repository.tcl:106 +msgid "Clone..." +msgstr "Klonen..." -#: lib/remote_add.tcl:113 -#, tcl-format -msgid "'%s' is not an acceptable remote name." -msgstr "»%s« ist kein zulässiger Name eines externen Repository." +#: lib/choose_repository.tcl:113 lib/choose_repository.tcl:1016 +msgid "Open Existing Repository" +msgstr "Projektarchiv öffnen" -#: lib/remote_add.tcl:124 -#, tcl-format -msgid "Failed to add remote '%s' of location '%s'." -msgstr "Fehler beim Hinzufügen des externen Repository »%s« aus Adresse »%s«." +#: lib/choose_repository.tcl:119 +msgid "Open..." +msgstr "Öffnen..." -#: lib/remote_add.tcl:133 -#, tcl-format -msgid "Fetching the %s" -msgstr "»%s« anfordern" +#: lib/choose_repository.tcl:132 +msgid "Recent Repositories" +msgstr "Zuletzt benutzte Projektarchive" -#: lib/remote_add.tcl:156 -#, tcl-format -msgid "Do not know how to initialize repository at location '%s'." -msgstr "" -"Initialisieren eines externen Repositories an Adresse »%s« ist nicht möglich." +#: lib/choose_repository.tcl:138 +msgid "Open Recent Repository:" +msgstr "Zuletzt benutztes Projektarchiv öffnen:" -#: lib/remote_add.tcl:163 +#: lib/choose_repository.tcl:306 lib/choose_repository.tcl:313 +#: lib/choose_repository.tcl:320 #, tcl-format -msgid "Setting up the %s (at %s)" -msgstr "Einrichten von »%s« an »%s«" +msgid "Failed to create repository %s:" +msgstr "Projektarchiv »%s« konnte nicht erstellt werden:" -#: lib/browser.tcl:17 -msgid "Starting..." -msgstr "Starten..." +#: lib/choose_repository.tcl:391 +msgid "Directory:" +msgstr "Verzeichnis:" -#: lib/browser.tcl:27 -#, tcl-format -msgid "%s (%s): File Browser" -msgstr "%s (%s): Datei-Browser" +#: lib/choose_repository.tcl:423 lib/choose_repository.tcl:550 +#: lib/choose_repository.tcl:1052 +msgid "Git Repository" +msgstr "Git Projektarchiv" -#: lib/browser.tcl:132 lib/browser.tcl:149 +#: lib/choose_repository.tcl:448 #, tcl-format -msgid "Loading %s..." -msgstr "%s laden..." - -#: lib/browser.tcl:193 -msgid "[Up To Parent]" -msgstr "[Nach oben]" +msgid "Directory %s already exists." +msgstr "Verzeichnis »%s« existiert bereits." -#: lib/browser.tcl:275 +#: lib/choose_repository.tcl:452 #, tcl-format -msgid "%s (%s): Browse Branch Files" -msgstr "%s (%s): Dateien des Branches durchblättern" - -#: lib/browser.tcl:282 -msgid "Browse Branch Files" -msgstr "Dateien des Branches durchblättern" - -#: lib/browser.tcl:288 lib/choose_repository.tcl:437 -#: lib/choose_repository.tcl:524 lib/choose_repository.tcl:533 -#: lib/choose_repository.tcl:1115 -msgid "Browse" -msgstr "Blättern" - -#: lib/browser.tcl:297 lib/branch_checkout.tcl:35 lib/tools_dlg.tcl:321 -msgid "Revision" -msgstr "Version" +msgid "File %s already exists." +msgstr "Datei »%s« existiert bereits." -#: lib/index.tcl:6 -msgid "Unable to unlock the index." -msgstr "Bereitstellung kann nicht wieder freigegeben werden." +#: lib/choose_repository.tcl:466 +msgid "Clone" +msgstr "Klonen" -#: lib/index.tcl:30 -msgid "Index Error" -msgstr "Fehler in Bereitstellung" +#: lib/choose_repository.tcl:479 +msgid "Source Location:" +msgstr "Herkunft:" -#: lib/index.tcl:32 -msgid "" -"Updating the Git index failed. A rescan will be automatically started to " -"resynchronize git-gui." -msgstr "" -"Das Aktualisieren der Git-Bereitstellung ist fehlgeschlagen. Eine allgemeine " -"Git-Aktualisierung wird jetzt gestartet, um git-gui wieder mit git zu " -"synchronisieren." +#: lib/choose_repository.tcl:490 +msgid "Target Directory:" +msgstr "Zielverzeichnis:" -#: lib/index.tcl:43 -msgid "Continue" -msgstr "Fortsetzen" +#: lib/choose_repository.tcl:502 +msgid "Clone Type:" +msgstr "Art des Klonens:" -#: lib/index.tcl:46 -msgid "Unlock Index" -msgstr "Bereitstellung freigeben" +#: lib/choose_repository.tcl:508 +msgid "Standard (Fast, Semi-Redundant, Hardlinks)" +msgstr "Standard (schnell, teilweise redundant, Hardlinks)" -#: lib/index.tcl:77 lib/index.tcl:146 lib/index.tcl:220 lib/index.tcl:587 -#: lib/choose_repository.tcl:999 -msgid "files" -msgstr "Dateien" +#: lib/choose_repository.tcl:514 +msgid "Full Copy (Slower, Redundant Backup)" +msgstr "Alles kopieren (langsamer, volle Redundanz)" -#: lib/index.tcl:326 -msgid "Unstaging selected files from commit" -msgstr "Gewählte Dateien aus der Bereitstellung herausnehmen" +#: lib/choose_repository.tcl:520 +msgid "Shared (Fastest, Not Recommended, No Backup)" +msgstr "Verknüpft (schnell, nicht empfohlen, kein Backup)" -#: lib/index.tcl:330 +#: lib/choose_repository.tcl:556 lib/choose_repository.tcl:603 +#: lib/choose_repository.tcl:749 lib/choose_repository.tcl:819 +#: lib/choose_repository.tcl:1058 lib/choose_repository.tcl:1066 #, tcl-format -msgid "Unstaging %s from commit" -msgstr "Datei »%s« aus der Bereitstellung herausnehmen" +msgid "Not a Git repository: %s" +msgstr "Kein Git-Projektarchiv in »%s« gefunden." -#: lib/index.tcl:369 -msgid "Ready to commit." -msgstr "Bereit zum Committen." +#: lib/choose_repository.tcl:592 +msgid "Standard only available for local repository." +msgstr "Standard ist nur für lokale Projektarchive verfügbar." -#: lib/index.tcl:378 -msgid "Adding selected files" -msgstr "Gewählte Dateien hinzufügen" +#: lib/choose_repository.tcl:596 +msgid "Shared only available for local repository." +msgstr "Verknüpft ist nur für lokale Projektarchive verfügbar." -#: lib/index.tcl:382 +#: lib/choose_repository.tcl:617 #, tcl-format -msgid "Adding %s" -msgstr "»%s« hinzufügen" +msgid "Location %s already exists." +msgstr "Projektarchiv »%s« existiert bereits." -#: lib/index.tcl:412 -#, tcl-format -msgid "Stage %d untracked files?" -msgstr "%d unversionierte Dateien bereitstellen?" +#: lib/choose_repository.tcl:628 +msgid "Failed to configure origin" +msgstr "Der Ursprungsort konnte nicht eingerichtet werden" + +#: lib/choose_repository.tcl:640 +msgid "Counting objects" +msgstr "Objekte werden gezählt" -#: lib/index.tcl:420 -msgid "Adding all changed files" -msgstr "Alle geänderten Dateien hinzufügen" +#: lib/choose_repository.tcl:641 +msgid "buckets" +msgstr "Buckets" -#: lib/index.tcl:503 +#: lib/choose_repository.tcl:665 #, tcl-format -msgid "Revert changes in file %s?" -msgstr "Änderungen in Datei »%s« verwerfen?" +msgid "Unable to copy objects/info/alternates: %s" +msgstr "Kopien von Objekten/Info/Alternates konnten nicht erstellt werden: %s" -#: lib/index.tcl:508 +#: lib/choose_repository.tcl:701 #, tcl-format -msgid "Revert changes in these %i files?" -msgstr "Änderungen in diesen %i Dateien verwerfen?" +msgid "Nothing to clone from %s." +msgstr "Von »%s« konnte nichts geklont werden." -#: lib/index.tcl:517 -msgid "Any unstaged changes will be permanently lost by the revert." -msgstr "" -"Alle nicht bereitgestellten Änderungen werden beim Verwerfen verloren gehen." +#: lib/choose_repository.tcl:703 lib/choose_repository.tcl:917 +#: lib/choose_repository.tcl:929 +msgid "The 'master' branch has not been initialized." +msgstr "Der »master«-Zweig wurde noch nicht initialisiert." -#: lib/index.tcl:520 lib/index.tcl:563 -msgid "Do Nothing" -msgstr "Nichts tun" +#: lib/choose_repository.tcl:716 +msgid "Hardlinks are unavailable. Falling back to copying." +msgstr "Hardlinks nicht verfügbar. Stattdessen wird kopiert." -#: lib/index.tcl:545 +#: lib/choose_repository.tcl:728 #, tcl-format -msgid "Delete untracked file %s?" -msgstr "Unversionierte Datei »%s« löschen?" +msgid "Cloning from %s" +msgstr "Kopieren von »%s«" -#: lib/index.tcl:550 -#, tcl-format -msgid "Delete these %i untracked files?" -msgstr "Diese %i unversionierten Dateien löschen?" - -#: lib/index.tcl:560 -msgid "Files will be permanently deleted." -msgstr "Dateien werden endgültig gelöscht." - -#: lib/index.tcl:564 -msgid "Delete Files" -msgstr "Dateien löschen" - -#: lib/index.tcl:586 -msgid "Deleting" -msgstr "Löschen" +#: lib/choose_repository.tcl:759 +msgid "Copying objects" +msgstr "Objektdatenbank kopieren" -#: lib/index.tcl:665 -msgid "Encountered errors deleting files:\n" -msgstr "Fehler beim Löschen der Dateien:\n" +#: lib/choose_repository.tcl:760 +msgid "KiB" +msgstr "KB" -#: lib/index.tcl:674 +#: lib/choose_repository.tcl:784 #, tcl-format -msgid "None of the %d selected files could be deleted." -msgstr "Keine der %d gewählten Dateien konnten gelöscht werden." +msgid "Unable to copy object: %s" +msgstr "Objekt kann nicht kopiert werden: %s" -#: lib/index.tcl:679 -#, tcl-format -msgid "%d of the %d selected files could not be deleted." -msgstr "%d der %d gewählten Dateien konnten nicht gelöscht werden." +#: lib/choose_repository.tcl:794 +msgid "Linking objects" +msgstr "Objekte verlinken" -#: lib/index.tcl:726 -msgid "Reverting selected files" -msgstr "Änderungen in gewählten Dateien verwerfen" +#: lib/choose_repository.tcl:795 +msgid "objects" +msgstr "Objekte" -#: lib/index.tcl:730 +#: lib/choose_repository.tcl:803 #, tcl-format -msgid "Reverting %s" -msgstr "Änderungen in %s verwerfen" +msgid "Unable to hardlink object: %s" +msgstr "Für Objekt konnte kein Hardlink erstellt werden: %s" -#: lib/branch_checkout.tcl:16 -#, tcl-format -msgid "%s (%s): Checkout Branch" -msgstr "%s (%s): Branch auschecken" +#: lib/choose_repository.tcl:858 +msgid "Cannot fetch branches and objects. See console output for details." +msgstr "" +"Zweige und Objekte konnten nicht angefordert werden. Kontrollieren Sie die " +"Ausgaben auf der Konsole für weitere Angaben." -#: lib/branch_checkout.tcl:21 -msgid "Checkout Branch" -msgstr "Branch auschecken" +#: lib/choose_repository.tcl:869 +msgid "Cannot fetch tags. See console output for details." +msgstr "" +"Markierungen konnten nicht angefordert werden. Kontrollieren Sie die " +"Ausgaben auf der Konsole für weitere Angaben." -#: lib/branch_checkout.tcl:26 -msgid "Checkout" -msgstr "Auschecken" +#: lib/choose_repository.tcl:893 +msgid "Cannot determine HEAD. See console output for details." +msgstr "" +"Die Zweigspitze (HEAD) konnte nicht gefunden werden. Kontrollieren Sie die " +"Ausgaben auf der Konsole für weitere Angaben." -#: lib/branch_checkout.tcl:39 lib/option.tcl:310 lib/branch_create.tcl:69 -msgid "Options" -msgstr "Optionen" +#: lib/choose_repository.tcl:902 +#, tcl-format +msgid "Unable to cleanup %s" +msgstr "Verzeichnis »%s« kann nicht aufgeräumt werden." -#: lib/branch_checkout.tcl:42 lib/branch_create.tcl:92 -msgid "Fetch Tracking Branch" -msgstr "Trackingbranch anfordern" +#: lib/choose_repository.tcl:908 +msgid "Clone failed." +msgstr "Klonen fehlgeschlagen." -#: lib/branch_checkout.tcl:47 -msgid "Detach From Local Branch" -msgstr "Verbindung zu lokalem Branch lösen" +#: lib/choose_repository.tcl:915 +msgid "No default branch obtained." +msgstr "Kein voreingestellter Zweig gefunden." -#: lib/status_bar.tcl:263 +#: lib/choose_repository.tcl:926 #, tcl-format -msgid "%s ... %*i of %*i %s (%3i%%)" -msgstr "%s ... %*i von %*i %s (%3i%%)" +msgid "Cannot resolve %s as a commit." +msgstr "»%s« wurde nicht als Version gefunden." -#: lib/remote.tcl:200 -msgid "Push to" -msgstr "Versenden nach" +#: lib/choose_repository.tcl:938 +msgid "Creating working directory" +msgstr "Arbeitskopie erstellen" -#: lib/remote.tcl:218 -msgid "Remove Remote" -msgstr "Externes Repository entfernen" +#: lib/choose_repository.tcl:939 lib/index.tcl:67 lib/index.tcl:130 +#: lib/index.tcl:198 +msgid "files" +msgstr "Dateien" -#: lib/remote.tcl:223 -msgid "Prune from" -msgstr "Veraltete Branches entfernen" +#: lib/choose_repository.tcl:968 +msgid "Initial file checkout failed." +msgstr "Erstellen der Arbeitskopie fehlgeschlagen." -#: lib/remote.tcl:228 -msgid "Fetch from" -msgstr "Anfordern" +#: lib/choose_repository.tcl:1011 +msgid "Open" +msgstr "Öffnen" -#: lib/remote.tcl:249 lib/remote.tcl:253 lib/remote.tcl:258 lib/remote.tcl:264 -msgid "All" -msgstr "Alle" +#: lib/choose_repository.tcl:1021 +msgid "Repository:" +msgstr "Projektarchiv:" -#: lib/branch_rename.tcl:15 +#: lib/choose_repository.tcl:1072 #, tcl-format -msgid "%s (%s): Rename Branch" -msgstr "%s (%s): Branch umbenennen" - -#: lib/branch_rename.tcl:23 -msgid "Rename Branch" -msgstr "Branch umbenennen" +msgid "Failed to open repository %s:" +msgstr "Projektarchiv »%s« konnte nicht geöffnet werden." -#: lib/branch_rename.tcl:28 -msgid "Rename" -msgstr "Umbenennen" +#: lib/choose_rev.tcl:53 +msgid "This Detached Checkout" +msgstr "Abgetrennte Arbeitskopie-Version" -#: lib/branch_rename.tcl:38 -msgid "Branch:" -msgstr "Branch:" +#: lib/choose_rev.tcl:60 +msgid "Revision Expression:" +msgstr "Version Regexp-Ausdruck:" -#: lib/branch_rename.tcl:46 -msgid "New Name:" -msgstr "Neuer Name:" +#: lib/choose_rev.tcl:74 +msgid "Local Branch" +msgstr "Lokaler Zweig" -#: lib/branch_rename.tcl:81 -msgid "Please select a branch to rename." -msgstr "Bitte wählen Sie einen Branch zum umbenennen." +#: lib/choose_rev.tcl:79 +msgid "Tracking Branch" +msgstr "Übernahmezweig" -#: lib/branch_rename.tcl:92 lib/branch_create.tcl:154 -msgid "Please supply a branch name." -msgstr "Bitte geben Sie einen Branchnamen an." +#: lib/choose_rev.tcl:84 lib/choose_rev.tcl:538 +msgid "Tag" +msgstr "Markierung" -#: lib/branch_rename.tcl:112 lib/branch_create.tcl:165 +#: lib/choose_rev.tcl:317 #, tcl-format -msgid "'%s' is not an acceptable branch name." -msgstr "»%s« ist kein zulässiger Branchname." +msgid "Invalid revision: %s" +msgstr "Ungültige Version: %s" -#: lib/branch_rename.tcl:123 -#, tcl-format -msgid "Failed to rename '%s'." -msgstr "Fehler beim Umbenennen von »%s«." +#: lib/choose_rev.tcl:338 +msgid "No revision selected." +msgstr "Keine Version ausgewählt." -#: lib/choose_font.tcl:41 -msgid "Select" -msgstr "Auswählen" +#: lib/choose_rev.tcl:346 +msgid "Revision expression is empty." +msgstr "Versions-Ausdruck ist leer." -#: lib/choose_font.tcl:55 -msgid "Font Family" -msgstr "Schriftfamilie" +#: lib/choose_rev.tcl:531 +msgid "Updated" +msgstr "Aktualisiert" -#: lib/choose_font.tcl:76 -msgid "Font Size" -msgstr "Schriftgröße" +#: lib/choose_rev.tcl:559 +msgid "URL" +msgstr "URL" -#: lib/choose_font.tcl:93 -msgid "Font Example" -msgstr "Schriftbeispiel" +#: lib/commit.tcl:9 +msgid "" +"There is nothing to amend.\n" +"\n" +"You are about to create the initial commit. There is no commit before this " +"to amend.\n" +msgstr "" +"Keine Version zur Nachbesserung vorhanden.\n" +"\n" +"Sie sind dabei, die erste Version zu übertragen. Es gibt keine existierende " +"Version, die Sie nachbessern könnten.\n" -#: lib/choose_font.tcl:105 +#: lib/commit.tcl:18 msgid "" -"This is example text.\n" -"If you like this text, it can be your font." +"Cannot amend while merging.\n" +"\n" +"You are currently in the middle of a merge that has not been fully " +"completed. You cannot amend the prior commit unless you first abort the " +"current merge activity.\n" msgstr "" -"Dies ist ein Beispieltext.\n" -"Wenn Ihnen dieser Text gefällt, sollten Sie diese Schriftart wählen." +"Nachbesserung währen Zusammenführung nicht möglich.\n" +"\n" +"Sie haben das Zusammenführen von Versionen angefangen, aber noch nicht " +"beendet. Sie können keine vorige Übertragung nachbessern, solange eine " +"unfertige Zusammenführung existiert. Dazu müssen Sie die Zusammenführung " +"beenden oder abbrechen.\n" -#: lib/option.tcl:11 -#, tcl-format -msgid "Invalid global encoding '%s'" -msgstr "Ungültige globale Zeichenkodierung »%s«" +#: lib/commit.tcl:48 +msgid "Error loading commit data for amend:" +msgstr "Fehler beim Laden der Versionsdaten für Nachbessern:" -#: lib/option.tcl:19 +#: lib/commit.tcl:75 +msgid "Unable to obtain your identity:" +msgstr "Benutzername konnte nicht bestimmt werden:" + +#: lib/commit.tcl:80 +msgid "Invalid GIT_COMMITTER_IDENT:" +msgstr "Ungültiger Wert von GIT_COMMITTER_INDENT:" + +#: lib/commit.tcl:129 #, tcl-format -msgid "Invalid repo encoding '%s'" -msgstr "Ungültige Repository-Zeichenkodierung »%s«" +msgid "warning: Tcl does not support encoding '%s'." +msgstr "Warning: Tcl/Tk unterstützt die Zeichencodierung »%s« nicht." -#: lib/option.tcl:119 -msgid "Restore Defaults" -msgstr "Voreinstellungen wiederherstellen" +#: lib/commit.tcl:149 +msgid "" +"Last scanned state does not match repository state.\n" +"\n" +"Another Git program has modified this repository since the last scan. A " +"rescan must be performed before another commit can be created.\n" +"\n" +"The rescan will be automatically started now.\n" +msgstr "" +"Der letzte geladene Status stimmt nicht mehr mit dem Projektarchiv überein.\n" +"\n" +"Ein anderes Git-Programm hat das Projektarchiv seit dem letzten Laden " +"geändert. Vor dem Eintragen einer neuen Version muss neu geladen werden.\n" +"\n" +"Es wird gleich neu geladen.\n" -#: lib/option.tcl:123 -msgid "Save" -msgstr "Speichern" +#: lib/commit.tcl:172 +#, tcl-format +msgid "" +"Unmerged files cannot be committed.\n" +"\n" +"File %s has merge conflicts. You must resolve them and stage the file " +"before committing.\n" +msgstr "" +"Nicht zusammengeführte Dateien können nicht eingetragen werden.\n" +"\n" +"Die Datei »%s« hat noch nicht aufgelöste Zusammenführungs-Konflikte. Sie " +"müssen diese Konflikte auflösen, bevor Sie eintragen können.\n" -#: lib/option.tcl:133 +#: lib/commit.tcl:180 #, tcl-format -msgid "%s Repository" -msgstr "%s Repository" +msgid "" +"Unknown file state %s detected.\n" +"\n" +"File %s cannot be committed by this program.\n" +msgstr "" +"Unbekannter Dateizustand »%s«.\n" +"\n" +"Datei »%s« kann nicht eingetragen werden.\n" -#: lib/option.tcl:134 -msgid "Global (All Repositories)" -msgstr "Global (Alle Repositories)" +#: lib/commit.tcl:188 +msgid "" +"No changes to commit.\n" +"\n" +"You must stage at least 1 file before you can commit.\n" +msgstr "" +"Keine Änderungen vorhanden, die eingetragen werden könnten.\n" +"\n" +"Sie müssen mindestens eine Datei bereitstellen, bevor Sie eintragen können.\n" -#: lib/option.tcl:140 -msgid "User Name" -msgstr "Benutzername" +#: lib/commit.tcl:203 +msgid "" +"Please supply a commit message.\n" +"\n" +"A good commit message has the following format:\n" +"\n" +"- First line: Describe in one sentence what you did.\n" +"- Second line: Blank\n" +"- Remaining lines: Describe why this change is good.\n" +msgstr "" +"Bitte geben Sie eine Versionsbeschreibung ein.\n" +"\n" +"Eine gute Versionsbeschreibung enthält folgende Abschnitte:\n" +"\n" +"- Erste Zeile: Eine Zusammenfassung, was man gemacht hat.\n" +"\n" +"- Zweite Zeile: Leerzeile\n" +"\n" +"- Rest: Eine ausführliche Beschreibung, warum diese Änderung hilfreich ist.\n" -#: lib/option.tcl:141 -msgid "Email Address" -msgstr "E-Mail-Adresse" +#: lib/commit.tcl:234 +msgid "Calling pre-commit hook..." +msgstr "Aufrufen der Vor-Eintragen-Kontrolle (»pre-commit hook«)..." -#: lib/option.tcl:143 -msgid "Summarize Merge Commits" -msgstr "Zusammenführungs-Commits zusammenfassen" +#: lib/commit.tcl:249 +msgid "Commit declined by pre-commit hook." +msgstr "Eintragen abgelehnt durch Vor-Eintragen-Kontrolle (»pre-commit hook«)." -#: lib/option.tcl:144 -msgid "Merge Verbosity" -msgstr "Ausführlichkeit der Zusammenführen-Meldungen" +#: lib/commit.tcl:272 +msgid "Calling commit-msg hook..." +msgstr "Aufrufen der Versionsbeschreibungs-Kontrolle (»commit-message hook«)..." -#: lib/option.tcl:145 -msgid "Show Diffstat After Merge" -msgstr "Vergleichsstatistik nach Zusammenführen anzeigen" +#: lib/commit.tcl:287 +msgid "Commit declined by commit-msg hook." +msgstr "" +"Eintragen abgelehnt durch Versionsbeschreibungs-Kontrolle (»commit-message " +"hook«)." -#: lib/option.tcl:146 -msgid "Use Merge Tool" -msgstr "Zusammenführungswerkzeug" +#: lib/commit.tcl:300 +msgid "Committing changes..." +msgstr "Änderungen eintragen..." -#: lib/option.tcl:148 -msgid "Trust File Modification Timestamps" -msgstr "Auf Dateiänderungsdatum verlassen" +#: lib/commit.tcl:316 +msgid "write-tree failed:" +msgstr "write-tree fehlgeschlagen:" -#: lib/option.tcl:149 -msgid "Prune Tracking Branches During Fetch" -msgstr "Veraltete Trackingbranches entfernen während Anforderung" +#: lib/commit.tcl:317 lib/commit.tcl:361 lib/commit.tcl:382 +msgid "Commit failed." +msgstr "Eintragen fehlgeschlagen." -#: lib/option.tcl:150 -msgid "Match Tracking Branches" -msgstr "Neue Branches automatisch als Trackingbranch" +#: lib/commit.tcl:334 +#, tcl-format +msgid "Commit %s appears to be corrupt" +msgstr "Version »%s« scheint beschädigt zu sein" -#: lib/option.tcl:151 -msgid "Use Textconv For Diffs and Blames" -msgstr "Benutze »textconv« für Vergleich und Annotieren" +#: lib/commit.tcl:339 +msgid "" +"No changes to commit.\n" +"\n" +"No files were modified by this commit and it was not a merge commit.\n" +"\n" +"A rescan will be automatically started now.\n" +msgstr "" +"Keine Änderungen einzutragen.\n" +"\n" +"Es gibt keine geänderte Datei bei dieser Version und es wurde auch nichts " +"zusammengeführt.\n" +"\n" +"Das Arbeitsverzeichnis wird daher jetzt neu geladen.\n" -#: lib/option.tcl:152 -msgid "Blame Copy Only On Changed Files" -msgstr "Kopie-Annotieren nur bei geänderten Dateien" +#: lib/commit.tcl:346 +msgid "No changes to commit." +msgstr "Keine Änderungen, die eingetragen werden können." -#: lib/option.tcl:153 -msgid "Maximum Length of Recent Repositories List" -msgstr "Anzahl Einträge in »Letzte Repositories«" +#: lib/commit.tcl:360 +msgid "commit-tree failed:" +msgstr "commit-tree fehlgeschlagen:" -#: lib/option.tcl:154 -msgid "Minimum Letters To Blame Copy On" -msgstr "Mindestzahl Zeichen für Kopie-Annotieren" +#: lib/commit.tcl:381 +msgid "update-ref failed:" +msgstr "update-ref fehlgeschlagen:" -#: lib/option.tcl:155 -msgid "Blame History Context Radius (days)" -msgstr "Anzahl Tage für Annotieren-Historien-Kontext" +#: lib/commit.tcl:469 +#, tcl-format +msgid "Created commit %s: %s" +msgstr "Version %s übertragen: %s" -#: lib/option.tcl:156 -msgid "Number of Diff Context Lines" -msgstr "Anzahl der Kontextzeilen beim Vergleich" +#: lib/console.tcl:59 +msgid "Working... please wait..." +msgstr "Verarbeitung. Bitte warten..." -#: lib/option.tcl:157 -msgid "Additional Diff Parameters" -msgstr "Zusätzliche Vergleich-/diff-Parameter" +#: lib/console.tcl:186 +msgid "Success" +msgstr "Erfolgreich" -#: lib/option.tcl:158 -msgid "Commit Message Text Width" -msgstr "Textbreite der Commit-Beschreibung" +#: lib/console.tcl:200 +msgid "Error: Command Failed" +msgstr "Fehler: Kommando fehlgeschlagen" -#: lib/option.tcl:159 -msgid "New Branch Name Template" -msgstr "Namensvorlage für neue Branches" +#: lib/database.tcl:43 +msgid "Number of loose objects" +msgstr "Anzahl unverknüpfter Objekte" -#: lib/option.tcl:160 -msgid "Default File Contents Encoding" -msgstr "Voreingestellte Zeichenkodierung" +#: lib/database.tcl:44 +msgid "Disk space used by loose objects" +msgstr "Festplattenplatz von unverknüpften Objekten" + +#: lib/database.tcl:45 +msgid "Number of packed objects" +msgstr "Anzahl komprimierter Objekte" + +#: lib/database.tcl:46 +msgid "Number of packs" +msgstr "Anzahl Komprimierungseinheiten" -#: lib/option.tcl:161 -msgid "Warn before committing to a detached head" -msgstr "Warnen vor Committen auf losgelöste Branchspitze" +#: lib/database.tcl:47 +msgid "Disk space used by packed objects" +msgstr "Festplattenplatz von komprimierten Objekten" -#: lib/option.tcl:162 -msgid "Staging of untracked files" -msgstr "Unversionierte Dateien bereitstellen" +#: lib/database.tcl:48 +msgid "Packed objects waiting for pruning" +msgstr "Komprimierte Objekte, die zum Aufräumen vorgesehen sind" + +#: lib/database.tcl:49 +msgid "Garbage files" +msgstr "Dateien im Mülleimer" -#: lib/option.tcl:163 -msgid "Show untracked files" -msgstr "Unversionierte Dateien anzeigen" +#: lib/database.tcl:72 +msgid "Compressing the object database" +msgstr "Objektdatenbank komprimieren" -#: lib/option.tcl:164 -msgid "Tab spacing" -msgstr "Tabulator-Breite" +#: lib/database.tcl:83 +msgid "Verifying the object database with fsck-objects" +msgstr "Die Objektdatenbank durch »fsck-objects« überprüfen lassen" -#: lib/option.tcl:182 lib/option.tcl:197 lib/option.tcl:220 lib/option.tcl:282 -#: lib/database.tcl:57 +#: lib/database.tcl:107 #, tcl-format -msgid "%s:" -msgstr "%s:" +msgid "" +"This repository currently has approximately %i loose objects.\n" +"\n" +"To maintain optimal performance it is strongly recommended that you compress " +"the database.\n" +"\n" +"Compress the database now?" +msgstr "" +"Dieses Projektarchiv enthält ungefähr %i nicht verknüpfte Objekte.\n" +"\n" +"Für eine optimale Performance wird empfohlen, die Datenbank des Projektarchivs zu komprimieren.\n" +"\n" +"Soll die Datenbank jetzt komprimiert werden?" -#: lib/option.tcl:210 -msgid "Change" -msgstr "Ändern" +#: lib/date.tcl:25 +#, tcl-format +msgid "Invalid date from Git: %s" +msgstr "Ungültiges Datum von Git: %s" -#: lib/option.tcl:254 -msgid "Spelling Dictionary:" -msgstr "Wörterbuch Rechtschreibprüfung:" +#: lib/diff.tcl:64 +#, tcl-format +msgid "" +"No differences detected.\n" +"\n" +"%s has no changes.\n" +"\n" +"The modification date of this file was updated by another application, but " +"the content within the file was not changed.\n" +"\n" +"A rescan will be automatically started to find other files which may have " +"the same state." +msgstr "" +"Keine Änderungen feststellbar.\n" +"\n" +"»%s« enthält keine Änderungen. Zwar wurde das Änderungsdatum dieser Datei von " +"einem anderen Programm modifiziert, aber der Inhalt der Datei ist " +"unverändert.\n" +"\n" +"Das Arbeitsverzeichnis wird jetzt neu geladen, um diese Änderung bei allen " +"Dateien zu prüfen." -#: lib/option.tcl:284 -msgid "Change Font" -msgstr "Schriftart ändern" +#: lib/diff.tcl:104 +#, tcl-format +msgid "Loading diff of %s..." +msgstr "Vergleich von »%s« laden..." -#: lib/option.tcl:288 +#: lib/diff.tcl:125 +msgid "" +"LOCAL: deleted\n" +"REMOTE:\n" +msgstr "" +"LOKAL: gelöscht\n" +"ANDERES:\n" + +#: lib/diff.tcl:130 +msgid "" +"REMOTE: deleted\n" +"LOCAL:\n" +msgstr "" +"ANDERES: gelöscht\n" +"LOKAL:\n" + +#: lib/diff.tcl:137 +msgid "LOCAL:\n" +msgstr "LOKAL:\n" + +#: lib/diff.tcl:140 +msgid "REMOTE:\n" +msgstr "ANDERES:\n" + +#: lib/diff.tcl:202 lib/diff.tcl:319 #, tcl-format -msgid "Choose %s" -msgstr "%s wählen" +msgid "Unable to display %s" +msgstr "Datei »%s« kann nicht angezeigt werden" -#: lib/option.tcl:294 -msgid "pt." -msgstr "pt." +#: lib/diff.tcl:203 +msgid "Error loading file:" +msgstr "Fehler beim Laden der Datei:" -#: lib/option.tcl:308 -msgid "Preferences" -msgstr "Einstellungen" +#: lib/diff.tcl:210 +msgid "Git Repository (subproject)" +msgstr "Git-Projektarchiv (Unterprojekt)" -#: lib/option.tcl:345 -msgid "Failed to completely save options:" -msgstr "Optionen konnten nicht gespeichert werden:" +#: lib/diff.tcl:222 +msgid "* Binary file (not showing content)." +msgstr "* Binärdatei (Inhalt wird nicht angezeigt)" + +#: lib/diff.tcl:227 +#, tcl-format +msgid "" +"* Untracked file is %d bytes.\n" +"* Showing only first %d bytes.\n" +msgstr "" +"* Datei nicht unter Versionskontrolle, Dateigröße %d Bytes.\n" +"* Nur erste %d Bytes werden angezeigt.\n" + +#: lib/diff.tcl:233 +#, tcl-format +msgid "" +"\n" +"* Untracked file clipped here by %s.\n" +"* To see the entire file, use an external editor.\n" +msgstr "" +"\n" +"* Datei nicht unter Versionskontrolle, hier abgeschnitten durch %s.\n" +"* Zum Ansehen der vollständigen Datei externen Editor benutzen.\n" + +#: lib/diff.tcl:482 +msgid "Failed to unstage selected hunk." +msgstr "" +"Fehler beim Herausnehmen des gewählten Kontexts aus der Bereitstellung." + +#: lib/diff.tcl:489 +msgid "Failed to stage selected hunk." +msgstr "Fehler beim Bereitstellen des gewählten Kontexts." + +#: lib/diff.tcl:568 +msgid "Failed to unstage selected line." +msgstr "Fehler beim Herausnehmen der gewählten Zeile aus der Bereitstellung." + +#: lib/diff.tcl:576 +msgid "Failed to stage selected line." +msgstr "Fehler beim Bereitstellen der gewählten Zeile." #: lib/encoding.tcl:443 msgid "Default" @@ -1435,40 +1698,229 @@ msgstr "Systemweit (%s)" msgid "Other" msgstr "Andere" -#: lib/tools.tcl:76 +#: lib/error.tcl:20 lib/error.tcl:114 +msgid "error" +msgstr "Fehler" + +#: lib/error.tcl:36 +msgid "warning" +msgstr "Warnung" + +#: lib/error.tcl:94 +msgid "You must correct the above errors before committing." +msgstr "" +"Sie müssen die obigen Fehler zuerst beheben, bevor Sie eintragen können." + +#: lib/index.tcl:6 +msgid "Unable to unlock the index." +msgstr "Bereitstellung kann nicht wieder freigegeben werden." + +#: lib/index.tcl:15 +msgid "Index Error" +msgstr "Fehler in Bereitstellung" + +#: lib/index.tcl:17 +msgid "" +"Updating the Git index failed. A rescan will be automatically started to " +"resynchronize git-gui." +msgstr "" +"Das Aktualisieren der Git-Bereitstellung ist fehlgeschlagen. Eine allgemeine " +"Git-Aktualisierung wird jetzt gestartet, um git-gui wieder mit git zu " +"synchronisieren." + +#: lib/index.tcl:28 +msgid "Continue" +msgstr "Fortsetzen" + +#: lib/index.tcl:31 +msgid "Unlock Index" +msgstr "Bereitstellung freigeben" + +#: lib/index.tcl:289 #, tcl-format -msgid "Running %s requires a selected file." -msgstr "Um »%s« zu starten, muss eine Datei ausgewählt sein." +msgid "Unstaging %s from commit" +msgstr "Datei »%s« aus der Bereitstellung herausnehmen" -#: lib/tools.tcl:92 +#: lib/index.tcl:328 +msgid "Ready to commit." +msgstr "Bereit zum Eintragen." + +#: lib/index.tcl:341 #, tcl-format -msgid "Are you sure you want to run %1$s on file \"%2$s\"?" -msgstr "Wollen Sie %1$s wirklich auf Datei »%2$s« starten?" +msgid "Adding %s" +msgstr "»%s« hinzufügen..." -#: lib/tools.tcl:96 +#: lib/index.tcl:398 #, tcl-format -msgid "Are you sure you want to run %s?" -msgstr "Wollen Sie %s wirklich starten?" +msgid "Revert changes in file %s?" +msgstr "Änderungen in Datei »%s« verwerfen?" + +#: lib/index.tcl:400 +#, tcl-format +msgid "Revert changes in these %i files?" +msgstr "Änderungen in den gewählten %i Dateien verwerfen?" + +#: lib/index.tcl:408 +msgid "Any unstaged changes will be permanently lost by the revert." +msgstr "" +"Alle nicht bereitgestellten Änderungen werden beim Verwerfen verloren gehen." + +#: lib/index.tcl:411 +msgid "Do Nothing" +msgstr "Nichts tun" + +#: lib/index.tcl:429 +msgid "Reverting selected files" +msgstr "Änderungen in gewählten Dateien verwerfen" + +#: lib/index.tcl:433 +#, tcl-format +msgid "Reverting %s" +msgstr "Änderungen in %s verwerfen" + +#: lib/merge.tcl:13 +msgid "" +"Cannot merge while amending.\n" +"\n" +"You must finish amending this commit before starting any type of merge.\n" +msgstr "" +"Zusammenführen kann nicht gleichzeitig mit Nachbessern durchgeführt werden.\n" +"\n" +"Sie müssen zuerst die Nachbesserungs-Version abschließen, bevor Sie " +"zusammenführen können.\n" + +#: lib/merge.tcl:27 +msgid "" +"Last scanned state does not match repository state.\n" +"\n" +"Another Git program has modified this repository since the last scan. A " +"rescan must be performed before a merge can be performed.\n" +"\n" +"The rescan will be automatically started now.\n" +msgstr "" +"Der letzte geladene Status stimmt nicht mehr mit dem Projektarchiv überein.\n" +"\n" +"Ein anderes Git-Programm hat das Projektarchiv seit dem letzten Laden " +"geändert. Vor einem Zusammenführen muss neu geladen werden.\n" +"\n" +"Es wird gleich neu geladen.\n" + +#: lib/merge.tcl:45 +#, tcl-format +msgid "" +"You are in the middle of a conflicted merge.\n" +"\n" +"File %s has merge conflicts.\n" +"\n" +"You must resolve them, stage the file, and commit to complete the current " +"merge. Only then can you begin another merge.\n" +msgstr "" +"Zusammenführung mit Konflikten.\n" +"\n" +"Die Datei »%s« enthält Konflikte beim Zusammenführen. Sie müssen diese " +"Konflikte per Hand auflösen. Anschließend müssen Sie die Datei wieder " +"bereitstellen und eintragen, um die Zusammenführung abzuschließen. Erst " +"danach kann eine neue Zusammenführung begonnen werden.\n" + +#: lib/merge.tcl:55 +#, tcl-format +msgid "" +"You are in the middle of a change.\n" +"\n" +"File %s is modified.\n" +"\n" +"You should complete the current commit before starting a merge. Doing so " +"will help you abort a failed merge, should the need arise.\n" +msgstr "" +"Es liegen Änderungen vor.\n" +"\n" +"Die Datei »%s« wurde geändert. Sie sollten zuerst die bereitgestellte " +"Version abschließen, bevor Sie eine Zusammenführung beginnen. Mit dieser " +"Reihenfolge können Sie mögliche Konflikte beim Zusammenführen wesentlich " +"einfacher beheben oder abbrechen.\n" + +#: lib/merge.tcl:107 +#, tcl-format +msgid "%s of %s" +msgstr "%s von %s" + +#: lib/merge.tcl:120 +#, tcl-format +msgid "Merging %s and %s..." +msgstr "Zusammenführen von %s und %s..." + +#: lib/merge.tcl:131 +msgid "Merge completed successfully." +msgstr "Zusammenführen erfolgreich abgeschlossen." + +#: lib/merge.tcl:133 +msgid "Merge failed. Conflict resolution is required." +msgstr "Zusammenführen fehlgeschlagen. Konfliktauflösung ist notwendig." + +#: lib/merge.tcl:158 +#, tcl-format +msgid "Merge Into %s" +msgstr "Zusammenführen in »%s«" + +#: lib/merge.tcl:177 +msgid "Revision To Merge" +msgstr "Zusammenzuführende Version" + +#: lib/merge.tcl:212 +msgid "" +"Cannot abort while amending.\n" +"\n" +"You must finish amending this commit.\n" +msgstr "" +"Abbruch der Nachbesserung ist nicht möglich.\n" +"\n" +"Sie müssen die Nachbesserung der Version abschließen.\n" + +#: lib/merge.tcl:222 +msgid "" +"Abort merge?\n" +"\n" +"Aborting the current merge will cause *ALL* uncommitted changes to be lost.\n" +"\n" +"Continue with aborting the current merge?" +msgstr "" +"Zusammenführen abbrechen?\n" +"\n" +"Wenn Sie abbrechen, gehen alle noch nicht eingetragenen Änderungen " +"verloren.\n" +"\n" +"Zusammenführen jetzt abbrechen?" + +#: lib/merge.tcl:228 +msgid "" +"Reset changes?\n" +"\n" +"Resetting the changes will cause *ALL* uncommitted changes to be lost.\n" +"\n" +"Continue with resetting the current changes?" +msgstr "" +"Änderungen zurücksetzen?\n" +"\n" +"Wenn Sie zurücksetzen, gehen alle noch nicht eingetragenen Änderungen " +"verloren.\n" +"\n" +"Änderungen jetzt zurücksetzen?" -#: lib/tools.tcl:118 -#, tcl-format -msgid "Tool: %s" -msgstr "Werkzeug: %s" +#: lib/merge.tcl:239 +msgid "Aborting" +msgstr "Abbruch" -#: lib/tools.tcl:119 -#, tcl-format -msgid "Running: %s" -msgstr "Starten: %s" +#: lib/merge.tcl:239 +msgid "files reset" +msgstr "Dateien zurückgesetzt" -#: lib/tools.tcl:158 -#, tcl-format -msgid "Tool completed successfully: %s" -msgstr "Werkzeug erfolgreich abgeschlossen: %s" +#: lib/merge.tcl:267 +msgid "Abort failed." +msgstr "Abbruch fehlgeschlagen." -#: lib/tools.tcl:160 -#, tcl-format -msgid "Tool failed: %s" -msgstr "Werkzeug fehlgeschlagen: %s" +#: lib/merge.tcl:269 +msgid "Abort completed. Ready." +msgstr "Abbruch durchgeführt. Bereit." #: lib/mergetool.tcl:8 msgid "Force resolution to the base version?" @@ -1476,11 +1928,11 @@ msgstr "Konflikt durch Basisversion ersetzen?" #: lib/mergetool.tcl:9 msgid "Force resolution to this branch?" -msgstr "Konflikt durch diesen Branch ersetzen?" +msgstr "Konflikt durch diesen Zweig ersetzen?" #: lib/mergetool.tcl:10 msgid "Force resolution to the other branch?" -msgstr "Konflikt durch anderen Branch ersetzen?" +msgstr "Konflikt durch anderen Zweig ersetzen?" #: lib/mergetool.tcl:14 #, tcl-format @@ -1518,21 +1970,21 @@ msgstr "" msgid "Conflict file does not exist" msgstr "Konflikt-Datei existiert nicht" -#: lib/mergetool.tcl:246 +#: lib/mergetool.tcl:264 #, tcl-format msgid "Not a GUI merge tool: '%s'" msgstr "Kein GUI Zusammenführungswerkzeug: »%s«" -#: lib/mergetool.tcl:275 +#: lib/mergetool.tcl:268 #, tcl-format msgid "Unsupported merge tool '%s'" msgstr "Unbekanntes Zusammenführungswerkzeug: »%s«" -#: lib/mergetool.tcl:310 +#: lib/mergetool.tcl:303 msgid "Merge tool is already running, terminate it?" msgstr "Zusammenführungswerkzeug läuft bereits. Soll es abgebrochen werden?" -#: lib/mergetool.tcl:330 +#: lib/mergetool.tcl:323 #, tcl-format msgid "" "Error retrieving versions:\n" @@ -1541,7 +1993,7 @@ msgstr "" "Fehler beim Abrufen der Dateiversionen:\n" "%s" -#: lib/mergetool.tcl:350 +#: lib/mergetool.tcl:343 #, tcl-format msgid "" "Could not start the merge tool:\n" @@ -1552,726 +2004,384 @@ msgstr "" "\n" "%s" -#: lib/mergetool.tcl:354 -msgid "Running merge tool..." -msgstr "Zusammenführungswerkzeug starten..." - -#: lib/mergetool.tcl:382 lib/mergetool.tcl:390 -msgid "Merge tool failed." -msgstr "Zusammenführungswerkzeug fehlgeschlagen." - -#: lib/tools_dlg.tcl:22 -#, tcl-format -msgid "%s (%s): Add Tool" -msgstr "%s (%s): Werkzeug hinzufügen" - -#: lib/tools_dlg.tcl:28 -msgid "Add New Tool Command" -msgstr "Neues Kommando für Werkzeug hinzufügen" - -#: lib/tools_dlg.tcl:34 -msgid "Add globally" -msgstr "Global hinzufügen" - -#: lib/tools_dlg.tcl:46 -msgid "Tool Details" -msgstr "Einzelheiten des Werkzeugs" - -#: lib/tools_dlg.tcl:49 -msgid "Use '/' separators to create a submenu tree:" -msgstr "Benutzen Sie einen Schrägstrich »/«, um Untermenüs zu erstellen:" - -#: lib/tools_dlg.tcl:60 -msgid "Command:" -msgstr "Kommando:" - -#: lib/tools_dlg.tcl:71 -msgid "Show a dialog before running" -msgstr "Bestätigungsfrage vor Starten anzeigen" - -#: lib/tools_dlg.tcl:77 -msgid "Ask the user to select a revision (sets $REVISION)" -msgstr "Benutzer nach Version fragen (setzt $REVISION)" - -#: lib/tools_dlg.tcl:82 -msgid "Ask the user for additional arguments (sets $ARGS)" -msgstr "Benutzer nach zusätzlichen Argumenten fragen (setzt $ARGS)" - -#: lib/tools_dlg.tcl:89 -msgid "Don't show the command output window" -msgstr "Kein Ausgabefenster zeigen" - -#: lib/tools_dlg.tcl:94 -msgid "Run only if a diff is selected ($FILENAME not empty)" -msgstr "Nur starten, wenn ein Vergleich gewählt ist ($FILENAME ist nicht leer)" - -#: lib/tools_dlg.tcl:118 -msgid "Please supply a name for the tool." -msgstr "Bitte geben Sie einen Werkzeugnamen an." - -#: lib/tools_dlg.tcl:126 -#, tcl-format -msgid "Tool '%s' already exists." -msgstr "Werkzeug »%s« existiert bereits." - -#: lib/tools_dlg.tcl:148 -#, tcl-format -msgid "" -"Could not add tool:\n" -"%s" -msgstr "" -"Werkzeug konnte nicht hinzugefügt werden:\n" -"\n" -"%s" - -#: lib/tools_dlg.tcl:187 -#, tcl-format -msgid "%s (%s): Remove Tool" -msgstr "%s (%s): Werkzeug entfernen" - -#: lib/tools_dlg.tcl:193 -msgid "Remove Tool Commands" -msgstr "Werkzeugkommandos entfernen" - -#: lib/tools_dlg.tcl:198 -msgid "Remove" -msgstr "Entfernen" - -#: lib/tools_dlg.tcl:231 -msgid "(Blue denotes repository-local tools)" -msgstr "(Werkzeuge für lokales Repository werden in Blau angezeigt)" - -#: lib/tools_dlg.tcl:283 -#, tcl-format -msgid "%s (%s):" -msgstr "%s (%s):" - -#: lib/tools_dlg.tcl:292 -#, tcl-format -msgid "Run Command: %s" -msgstr "Kommando aufrufen: %s" - -#: lib/tools_dlg.tcl:306 -msgid "Arguments" -msgstr "Argumente" - -#: lib/tools_dlg.tcl:341 -msgid "OK" -msgstr "Ok" - -#: lib/search.tcl:48 -msgid "Find:" -msgstr "Suchen:" - -#: lib/search.tcl:50 -msgid "Next" -msgstr "Nächster" - -#: lib/search.tcl:51 -msgid "Prev" -msgstr "Voriger" - -#: lib/search.tcl:52 -msgid "RegExp" -msgstr "RegAusdruck" - -#: lib/search.tcl:54 -msgid "Case" -msgstr "Groß/klein" - -#: lib/shortcut.tcl:8 lib/shortcut.tcl:43 lib/shortcut.tcl:75 -#, tcl-format -msgid "%s (%s): Create Desktop Icon" -msgstr "%s (%s): Desktop-Icon erstellen" - -#: lib/shortcut.tcl:24 lib/shortcut.tcl:65 -msgid "Cannot write shortcut:" -msgstr "Fehler beim Schreiben der Verknüpfung:" - -#: lib/shortcut.tcl:140 -msgid "Cannot write icon:" -msgstr "Fehler beim Erstellen des Icons:" - -#: lib/remote_branch_delete.tcl:29 -#, tcl-format -msgid "%s (%s): Delete Branch Remotely" -msgstr "%s (%s): Branch in externem Repository löschen" - -#: lib/remote_branch_delete.tcl:34 -msgid "Delete Branch Remotely" -msgstr "Branch in externem Repository löschen" - -#: lib/remote_branch_delete.tcl:48 -msgid "From Repository" -msgstr "In Repository" - -#: lib/remote_branch_delete.tcl:88 -msgid "Branches" -msgstr "Branches" - -#: lib/remote_branch_delete.tcl:110 -msgid "Delete Only If" -msgstr "Nur löschen, wenn" - -#: lib/remote_branch_delete.tcl:112 -msgid "Merged Into:" -msgstr "Zusammengeführt mit:" - -#: lib/remote_branch_delete.tcl:120 lib/branch_delete.tcl:53 -msgid "Always (Do not perform merge checks)" -msgstr "Immer (Keine Zusammenführungsprüfung)" - -#: lib/remote_branch_delete.tcl:153 -msgid "A branch is required for 'Merged Into'." -msgstr "Für »Zusammenführen mit« muss ein Branch angegeben werden." - -#: lib/remote_branch_delete.tcl:185 -#, tcl-format -msgid "" -"The following branches are not completely merged into %s:\n" -"\n" -" - %s" -msgstr "" -"Folgende Branches sind noch nicht mit »%s« zusammengeführt:\n" -"\n" -" - %s" - -#: lib/remote_branch_delete.tcl:190 -#, tcl-format -msgid "" -"One or more of the merge tests failed because you have not fetched the " -"necessary commits. Try fetching from %s first." -msgstr "" -"Ein oder mehrere Zusammenführungen sind fehlgeschlagen, da Sie nicht die " -"notwendigen Commits vorher angefordert haben. Sie sollten versuchen, zuerst " -"von »%s« anzufordern." - -#: lib/remote_branch_delete.tcl:208 -msgid "Please select one or more branches to delete." -msgstr "Bitte wählen Sie mindestens einen Branch, der gelöscht werden soll." - -#: lib/remote_branch_delete.tcl:218 lib/branch_delete.tcl:115 -msgid "" -"Recovering deleted branches is difficult.\n" -"\n" -"Delete the selected branches?" -msgstr "" -"Das Wiederherstellen von gelöschten Branches ist nur mit größerem Aufwand " -"möglich.\n" -"\n" -"Sollen die ausgewählten Branches gelöscht werden?" - -#: lib/remote_branch_delete.tcl:227 -#, tcl-format -msgid "Deleting branches from %s" -msgstr "Branches auf »%s« werden gelöscht" - -#: lib/remote_branch_delete.tcl:300 -msgid "No repository selected." -msgstr "Kein Repository ausgewählt." - -#: lib/remote_branch_delete.tcl:305 -#, tcl-format -msgid "Scanning %s..." -msgstr "»%s« laden..." - -#: lib/choose_repository.tcl:45 -msgid "Git Gui" -msgstr "Git Gui" - -#: lib/choose_repository.tcl:104 lib/choose_repository.tcl:427 -msgid "Create New Repository" -msgstr "Repository neu erstellen" - -#: lib/choose_repository.tcl:110 -msgid "New..." -msgstr "Neu..." - -#: lib/choose_repository.tcl:117 lib/choose_repository.tcl:511 -msgid "Clone Existing Repository" -msgstr "Repository klonen" - -#: lib/choose_repository.tcl:128 -msgid "Clone..." -msgstr "Klonen..." - -#: lib/choose_repository.tcl:135 lib/choose_repository.tcl:1105 -msgid "Open Existing Repository" -msgstr "Repository öffnen" - -#: lib/choose_repository.tcl:141 -msgid "Open..." -msgstr "Öffnen..." - -#: lib/choose_repository.tcl:154 -msgid "Recent Repositories" -msgstr "Letzte Repositories" - -#: lib/choose_repository.tcl:164 -msgid "Open Recent Repository:" -msgstr "Zuletzt benutztes Repository öffnen:" - -#: lib/choose_repository.tcl:331 lib/choose_repository.tcl:338 -#: lib/choose_repository.tcl:345 -#, tcl-format -msgid "Failed to create repository %s:" -msgstr "Repository »%s« konnte nicht erstellt werden:" - -#: lib/choose_repository.tcl:422 lib/branch_create.tcl:33 -msgid "Create" -msgstr "Erstellen" - -#: lib/choose_repository.tcl:432 -msgid "Directory:" -msgstr "Verzeichnis:" - -#: lib/choose_repository.tcl:462 lib/choose_repository.tcl:588 -#: lib/choose_repository.tcl:1139 -msgid "Git Repository" -msgstr "Git Repository" - -#: lib/choose_repository.tcl:487 -#, tcl-format -msgid "Directory %s already exists." -msgstr "Verzeichnis »%s« existiert bereits." - -#: lib/choose_repository.tcl:491 -#, tcl-format -msgid "File %s already exists." -msgstr "Datei »%s« existiert bereits." - -#: lib/choose_repository.tcl:506 -msgid "Clone" -msgstr "Klonen" - -#: lib/choose_repository.tcl:519 -msgid "Source Location:" -msgstr "Herkunfts-Adresse:" - -#: lib/choose_repository.tcl:528 -msgid "Target Directory:" -msgstr "Zielverzeichnis:" - -#: lib/choose_repository.tcl:538 -msgid "Clone Type:" -msgstr "Art des Klonens:" - -#: lib/choose_repository.tcl:543 -msgid "Standard (Fast, Semi-Redundant, Hardlinks)" -msgstr "Standard (schnell, teilweise redundant, Hardlinks)" - -#: lib/choose_repository.tcl:548 -msgid "Full Copy (Slower, Redundant Backup)" -msgstr "Alles kopieren (langsamer, volle Redundanz)" - -#: lib/choose_repository.tcl:553 -msgid "Shared (Fastest, Not Recommended, No Backup)" -msgstr "Verknüpft (schnell, nicht empfohlen, kein Backup)" - -#: lib/choose_repository.tcl:560 -msgid "Recursively clone submodules too" -msgstr "Rekursiv weitere Submodule klonen" - -#: lib/choose_repository.tcl:594 lib/choose_repository.tcl:641 -#: lib/choose_repository.tcl:790 lib/choose_repository.tcl:864 -#: lib/choose_repository.tcl:1145 lib/choose_repository.tcl:1153 -#, tcl-format -msgid "Not a Git repository: %s" -msgstr "Kein Git-Repository: %s" - -#: lib/choose_repository.tcl:630 -msgid "Standard only available for local repository." -msgstr "Standard ist nur für lokale Repositories verfügbar." - -#: lib/choose_repository.tcl:634 -msgid "Shared only available for local repository." -msgstr "Verknüpft ist nur für lokale Repositories verfügbar." - -#: lib/choose_repository.tcl:655 -#, tcl-format -msgid "Location %s already exists." -msgstr "Adresse »%s« existiert bereits." - -#: lib/choose_repository.tcl:666 -msgid "Failed to configure origin" -msgstr "Der Ursprungsort konnte nicht eingerichtet werden" - -#: lib/choose_repository.tcl:678 -msgid "Counting objects" -msgstr "Objekte werden gezählt" +#: lib/mergetool.tcl:347 +msgid "Running merge tool..." +msgstr "Zusammenführungswerkzeug starten..." -#: lib/choose_repository.tcl:679 -msgid "buckets" -msgstr "Buckets" +#: lib/mergetool.tcl:375 lib/mergetool.tcl:383 +msgid "Merge tool failed." +msgstr "Zusammenführungswerkzeug fehlgeschlagen." -#: lib/choose_repository.tcl:703 +#: lib/option.tcl:11 #, tcl-format -msgid "Unable to copy objects/info/alternates: %s" -msgstr "Kopien von Objekten/Info/Alternates konnten nicht erstellt werden: %s" +msgid "Invalid global encoding '%s'" +msgstr "Ungültige globale Zeichenkodierung »%s«" -#: lib/choose_repository.tcl:740 +#: lib/option.tcl:19 #, tcl-format -msgid "Nothing to clone from %s." -msgstr "Von »%s« konnte nichts geklont werden." +msgid "Invalid repo encoding '%s'" +msgstr "Ungültige Archiv-Zeichenkodierung »%s«" -#: lib/choose_repository.tcl:742 lib/choose_repository.tcl:962 -#: lib/choose_repository.tcl:974 -msgid "The 'master' branch has not been initialized." -msgstr "Der »master«-Branch wurde noch nicht initialisiert." +#: lib/option.tcl:117 +msgid "Restore Defaults" +msgstr "Voreinstellungen wiederherstellen" -#: lib/choose_repository.tcl:755 -msgid "Hardlinks are unavailable. Falling back to copying." -msgstr "Hardlinks nicht verfügbar. Stattdessen wird kopiert." +#: lib/option.tcl:121 +msgid "Save" +msgstr "Speichern" -#: lib/choose_repository.tcl:769 +#: lib/option.tcl:131 #, tcl-format -msgid "Cloning from %s" -msgstr "Kopieren von »%s«" +msgid "%s Repository" +msgstr "Projektarchiv %s" -#: lib/choose_repository.tcl:800 -msgid "Copying objects" -msgstr "Objektdatenbank kopieren" +#: lib/option.tcl:132 +msgid "Global (All Repositories)" +msgstr "Global (Alle Projektarchive)" -#: lib/choose_repository.tcl:801 -msgid "KiB" -msgstr "KB" +#: lib/option.tcl:138 +msgid "User Name" +msgstr "Benutzername" -#: lib/choose_repository.tcl:825 -#, tcl-format -msgid "Unable to copy object: %s" -msgstr "Objekt kann nicht kopiert werden: %s" +#: lib/option.tcl:139 +msgid "Email Address" +msgstr "E-Mail-Adresse" -#: lib/choose_repository.tcl:837 -msgid "Linking objects" -msgstr "Objekte verlinken" +#: lib/option.tcl:141 +msgid "Summarize Merge Commits" +msgstr "Zusammenführungs-Versionen zusammenfassen" -#: lib/choose_repository.tcl:838 -msgid "objects" -msgstr "Objekte" +#: lib/option.tcl:142 +msgid "Merge Verbosity" +msgstr "Ausführlichkeit der Zusammenführen-Meldungen" -#: lib/choose_repository.tcl:846 -#, tcl-format -msgid "Unable to hardlink object: %s" -msgstr "Für Objekt konnte kein Hardlink erstellt werden: %s" +#: lib/option.tcl:143 +msgid "Show Diffstat After Merge" +msgstr "Vergleichsstatistik nach Zusammenführen anzeigen" -#: lib/choose_repository.tcl:903 -msgid "Cannot fetch branches and objects. See console output for details." -msgstr "" -"Branches und Objekte konnten nicht angefordert werden. Kontrollieren Sie " -"die Ausgaben auf der Konsole für weitere Angaben." +#: lib/option.tcl:144 +msgid "Use Merge Tool" +msgstr "Zusammenführungswerkzeug" -#: lib/choose_repository.tcl:914 -msgid "Cannot fetch tags. See console output for details." -msgstr "" -"Tags konnten nicht angefordert werden. Kontrollieren Sie die Ausgaben auf " -"der Konsole für weitere Angaben." +#: lib/option.tcl:146 +msgid "Trust File Modification Timestamps" +msgstr "Auf Dateiänderungsdatum verlassen" -#: lib/choose_repository.tcl:938 -msgid "Cannot determine HEAD. See console output for details." -msgstr "" -"Die Branchspitze (HEAD) konnte nicht gefunden werden. Kontrollieren Sie die " -"Ausgaben auf der Konsole für weitere Angaben." +#: lib/option.tcl:147 +msgid "Prune Tracking Branches During Fetch" +msgstr "Übernahmezweige aufräumen während Anforderung" -#: lib/choose_repository.tcl:947 -#, tcl-format -msgid "Unable to cleanup %s" -msgstr "Verzeichnis »%s« kann nicht aufgeräumt werden." +#: lib/option.tcl:148 +msgid "Match Tracking Branches" +msgstr "Passend zu Übernahmezweig" -#: lib/choose_repository.tcl:953 -msgid "Clone failed." -msgstr "Klonen fehlgeschlagen." +#: lib/option.tcl:149 +msgid "Blame Copy Only On Changed Files" +msgstr "Kopie-Annotieren nur bei geänderten Dateien" -#: lib/choose_repository.tcl:960 -msgid "No default branch obtained." -msgstr "Kein voreingestellter Branch gefunden." +#: lib/option.tcl:150 +msgid "Minimum Letters To Blame Copy On" +msgstr "Mindestzahl Zeichen für Kopie-Annotieren" -#: lib/choose_repository.tcl:971 -#, tcl-format -msgid "Cannot resolve %s as a commit." -msgstr "»%s« wurde nicht als Commit gefunden." +#: lib/option.tcl:151 +msgid "Blame History Context Radius (days)" +msgstr "Anzahl Tage für Historien-Kontext" -#: lib/choose_repository.tcl:998 -msgid "Creating working directory" -msgstr "Arbeitskopie erstellen" +#: lib/option.tcl:152 +msgid "Number of Diff Context Lines" +msgstr "Anzahl der Kontextzeilen beim Vergleich" -#: lib/choose_repository.tcl:1028 -msgid "Initial file checkout failed." -msgstr "Erstellen der Arbeitskopie fehlgeschlagen." +#: lib/option.tcl:153 +msgid "Commit Message Text Width" +msgstr "Textbreite der Versionsbeschreibung" -#: lib/choose_repository.tcl:1072 -msgid "Cloning submodules" -msgstr "Klone Submodul" +#: lib/option.tcl:154 +msgid "New Branch Name Template" +msgstr "Namensvorschlag für neue Zweige" -#: lib/choose_repository.tcl:1087 -msgid "Cannot clone submodules." -msgstr "Submodul konnte nicht geklont werden." +#: lib/option.tcl:155 +msgid "Default File Contents Encoding" +msgstr "Voreingestellte Zeichenkodierung" -#: lib/choose_repository.tcl:1110 -msgid "Repository:" -msgstr "Repository:" +#: lib/option.tcl:203 +msgid "Change" +msgstr "Ändern" -#: lib/choose_repository.tcl:1159 -#, tcl-format -msgid "Failed to open repository %s:" -msgstr "Repository »%s« konnte nicht geöffnet werden." +#: lib/option.tcl:230 +msgid "Spelling Dictionary:" +msgstr "Wörterbuch Rechtschreibprüfung:" -#: lib/about.tcl:26 -msgid "git-gui - a graphical user interface for Git." -msgstr "git-gui - eine grafische Oberfläche für Git." +#: lib/option.tcl:254 +msgid "Change Font" +msgstr "Schriftart ändern" -#: lib/blame.tcl:74 +#: lib/option.tcl:258 #, tcl-format -msgid "%s (%s): File Viewer" -msgstr "%s (%s): Datei-Browser" +msgid "Choose %s" +msgstr "%s wählen" -#: lib/blame.tcl:80 -msgid "Commit:" -msgstr "Commit:" +#: lib/option.tcl:264 +msgid "pt." +msgstr "pt." -#: lib/blame.tcl:282 -msgid "Copy Commit" -msgstr "Commit kopieren" +#: lib/option.tcl:278 +msgid "Preferences" +msgstr "Einstellungen" -#: lib/blame.tcl:286 -msgid "Find Text..." -msgstr "Text suchen..." +#: lib/option.tcl:314 +msgid "Failed to completely save options:" +msgstr "Optionen konnten nicht gespeichert werden:" -#: lib/blame.tcl:290 -msgid "Goto Line..." -msgstr "Gehe zu Zeile..." +#: lib/remote_add.tcl:19 +msgid "Add Remote" +msgstr "Externes Archiv hinzufügen" -#: lib/blame.tcl:299 -msgid "Do Full Copy Detection" -msgstr "Volle Kopie-Erkennung" +#: lib/remote_add.tcl:24 +msgid "Add New Remote" +msgstr "Neues externes Archiv hinzufügen" -#: lib/blame.tcl:303 -msgid "Show History Context" -msgstr "Historien-Kontext anzeigen" +#: lib/remote_add.tcl:28 lib/tools_dlg.tcl:36 +msgid "Add" +msgstr "Hinzufügen" -#: lib/blame.tcl:306 -msgid "Blame Parent Commit" -msgstr "Elterncommit annotieren" +#: lib/remote_add.tcl:37 +msgid "Remote Details" +msgstr "Einzelheiten des externen Archivs" -#: lib/blame.tcl:468 -#, tcl-format -msgid "Reading %s..." -msgstr "%s lesen..." +#: lib/remote_add.tcl:50 +msgid "Location:" +msgstr "Adresse:" -#: lib/blame.tcl:596 -msgid "Loading copy/move tracking annotations..." -msgstr "Annotierungen für Kopieren/Verschieben werden geladen..." +#: lib/remote_add.tcl:62 +msgid "Further Action" +msgstr "Weitere Aktion jetzt" -#: lib/blame.tcl:613 -msgid "lines annotated" -msgstr "Zeilen annotiert" +#: lib/remote_add.tcl:65 +msgid "Fetch Immediately" +msgstr "Gleich anfordern" -#: lib/blame.tcl:815 -msgid "Loading original location annotations..." -msgstr "Annotierungen für ursprünglichen Ort werden geladen..." +#: lib/remote_add.tcl:71 +msgid "Initialize Remote Repository and Push" +msgstr "Externes Archiv initialisieren und dahin versenden" -#: lib/blame.tcl:818 -msgid "Annotation complete." -msgstr "Annotierung vollständig." +#: lib/remote_add.tcl:77 +msgid "Do Nothing Else Now" +msgstr "Nichts tun" -#: lib/blame.tcl:849 -msgid "Busy" -msgstr "Verarbeitung läuft" +#: lib/remote_add.tcl:101 +msgid "Please supply a remote name." +msgstr "Bitte geben Sie einen Namen des externen Archivs an." -#: lib/blame.tcl:850 -msgid "Annotation process is already running." -msgstr "Annotierung läuft bereits." +#: lib/remote_add.tcl:114 +#, tcl-format +msgid "'%s' is not an acceptable remote name." +msgstr "»%s« ist kein zulässiger Name eines externen Archivs." -#: lib/blame.tcl:889 -msgid "Running thorough copy detection..." -msgstr "Intensive Kopie-Erkennung läuft..." +#: lib/remote_add.tcl:125 +#, tcl-format +msgid "Failed to add remote '%s' of location '%s'." +msgstr "Fehler beim Hinzufügen des externen Archivs »%s« aus Herkunftsort »%s«." -#: lib/blame.tcl:957 -msgid "Loading annotation..." -msgstr "Annotierung laden..." +#: lib/remote_add.tcl:133 lib/transport.tcl:6 +#, tcl-format +msgid "fetch %s" +msgstr "»%s« anfordern" -#: lib/blame.tcl:1010 -msgid "Author:" -msgstr "Autor:" +#: lib/remote_add.tcl:134 +#, tcl-format +msgid "Fetching the %s" +msgstr "»%s« anfordern" -#: lib/blame.tcl:1014 -msgid "Committer:" -msgstr "Committer:" +#: lib/remote_add.tcl:157 +#, tcl-format +msgid "Do not know how to initialize repository at location '%s'." +msgstr "Initialisieren eines externen Archivs an Adresse »%s« ist nicht möglich." -#: lib/blame.tcl:1019 -msgid "Original File:" -msgstr "Ursprüngliche Datei:" +#: lib/remote_add.tcl:163 lib/transport.tcl:25 lib/transport.tcl:63 +#: lib/transport.tcl:81 +#, tcl-format +msgid "push %s" +msgstr "»%s« versenden..." -#: lib/blame.tcl:1067 -msgid "Cannot find HEAD commit:" -msgstr "Branchspitze (»HEAD commit«) kann nicht gefunden werden:" +#: lib/remote_add.tcl:164 +#, tcl-format +msgid "Setting up the %s (at %s)" +msgstr "Einrichten von »%s« an »%s«" -#: lib/blame.tcl:1122 -msgid "Cannot find parent commit:" -msgstr "Elterncommit kann nicht gefunden werden:" +#: lib/remote_branch_delete.tcl:29 lib/remote_branch_delete.tcl:34 +msgid "Delete Branch Remotely" +msgstr "Zweig in externem Archiv löschen" -#: lib/blame.tcl:1137 -msgid "Unable to display parent" -msgstr "Elterncommit kann nicht angezeigt werden" +#: lib/remote_branch_delete.tcl:47 +msgid "From Repository" +msgstr "In Projektarchiv" -#: lib/blame.tcl:1138 lib/diff.tcl:345 -msgid "Error loading diff:" -msgstr "Fehler beim Laden des Vergleichs:" +#: lib/remote_branch_delete.tcl:50 lib/transport.tcl:134 +msgid "Remote:" +msgstr "Externes Archiv:" -#: lib/blame.tcl:1279 -msgid "Originally By:" -msgstr "Ursprünglich von:" +#: lib/remote_branch_delete.tcl:66 lib/transport.tcl:149 +msgid "Arbitrary Location:" +msgstr "Adresse:" -#: lib/blame.tcl:1285 -msgid "In File:" -msgstr "In Datei:" +#: lib/remote_branch_delete.tcl:84 +msgid "Branches" +msgstr "Zweige" -#: lib/blame.tcl:1290 -msgid "Copied Or Moved Here By:" -msgstr "Kopiert oder verschoben durch:" +#: lib/remote_branch_delete.tcl:109 +msgid "Delete Only If" +msgstr "Nur löschen, wenn" + +#: lib/remote_branch_delete.tcl:111 +msgid "Merged Into:" +msgstr "Zusammengeführt mit:" + +#: lib/remote_branch_delete.tcl:152 +msgid "A branch is required for 'Merged Into'." +msgstr "Für »Zusammenführen mit« muss ein Zweig angegeben werden." -#: lib/diff.tcl:77 +#: lib/remote_branch_delete.tcl:184 #, tcl-format msgid "" -"No differences detected.\n" -"\n" -"%s has no changes.\n" -"\n" -"The modification date of this file was updated by another application, but " -"the content within the file was not changed.\n" +"The following branches are not completely merged into %s:\n" "\n" -"A rescan will be automatically started to find other files which may have " -"the same state." +" - %s" msgstr "" -"Keine Änderungen feststellbar.\n" -"\n" -"»%s« enthält keine Änderungen. Zwar wurde das Änderungsdatum dieser Datei " -"von einem anderen Programm modifiziert, aber der Inhalt der Datei ist " -"unverändert.\n" +"Folgende Zweige sind noch nicht mit »%s« zusammengeführt:\n" "\n" -"Das Arbeitsverzeichnis wird jetzt neu geladen, um diese Änderung bei allen " -"Dateien zu prüfen." +" - %s" -#: lib/diff.tcl:117 +#: lib/remote_branch_delete.tcl:189 #, tcl-format -msgid "Loading diff of %s..." -msgstr "Vergleich von »%s« laden..." - -#: lib/diff.tcl:143 msgid "" -"LOCAL: deleted\n" -"REMOTE:\n" +"One or more of the merge tests failed because you have not fetched the " +"necessary commits. Try fetching from %s first." msgstr "" -"LOKAL: gelöscht\n" -"EXTERN:\n" +"Ein oder mehrere Zusammenführungen sind fehlgeschlagen, da Sie nicht die " +"notwendigen Versionen vorher angefordert haben. Sie sollten versuchen, " +"zuerst von »%s« anzufordern." -#: lib/diff.tcl:148 -msgid "" -"REMOTE: deleted\n" -"LOCAL:\n" -msgstr "" -"EXTERN: gelöscht\n" -"LOKAL:\n" +#: lib/remote_branch_delete.tcl:207 +msgid "Please select one or more branches to delete." +msgstr "Bitte wählen Sie mindestens einen Zweig, der gelöscht werden soll." + +#: lib/remote_branch_delete.tcl:226 +#, tcl-format +msgid "Deleting branches from %s" +msgstr "Zweige auf »%s« werden gelöscht" + +#: lib/remote_branch_delete.tcl:292 +msgid "No repository selected." +msgstr "Kein Projektarchiv ausgewählt." + +#: lib/remote_branch_delete.tcl:297 +#, tcl-format +msgid "Scanning %s..." +msgstr "»%s« laden..." + +#: lib/remote.tcl:163 +msgid "Remove Remote" +msgstr "Externes Archiv entfernen" + +#: lib/remote.tcl:168 +msgid "Prune from" +msgstr "Aufräumen von" + +#: lib/remote.tcl:173 +msgid "Fetch from" +msgstr "Anfordern von" -#: lib/diff.tcl:155 -msgid "LOCAL:\n" -msgstr "LOKAL:\n" +#: lib/remote.tcl:215 +msgid "Push to" +msgstr "Versenden nach" -#: lib/diff.tcl:158 -msgid "REMOTE:\n" -msgstr "EXTERN:\n" +#: lib/search.tcl:21 +msgid "Find:" +msgstr "Suchen:" -#: lib/diff.tcl:220 lib/diff.tcl:344 -#, tcl-format -msgid "Unable to display %s" -msgstr "Datei »%s« kann nicht angezeigt werden" +#: lib/search.tcl:23 +msgid "Next" +msgstr "Nächster" -#: lib/diff.tcl:221 -msgid "Error loading file:" -msgstr "Fehler beim Laden der Datei:" +#: lib/search.tcl:24 +msgid "Prev" +msgstr "Voriger" -#: lib/diff.tcl:227 -msgid "Git Repository (subproject)" -msgstr "Git-Repository (Subprojekt)" +#: lib/search.tcl:25 +msgid "Case-Sensitive" +msgstr "Groß-/Kleinschreibung unterscheiden" -#: lib/diff.tcl:239 -msgid "* Binary file (not showing content)." -msgstr "* Binärdatei (Inhalt wird nicht angezeigt)" +#: lib/shortcut.tcl:21 lib/shortcut.tcl:62 +msgid "Cannot write shortcut:" +msgstr "Fehler beim Schreiben der Verknüpfung:" -#: lib/diff.tcl:244 -#, tcl-format -msgid "" -"* Untracked file is %d bytes.\n" -"* Showing only first %d bytes.\n" -msgstr "" -"* Unversionierte Datei hat %d Bytes.\n" -"* Nur erste %d Bytes werden angezeigt.\n" +#: lib/shortcut.tcl:137 +msgid "Cannot write icon:" +msgstr "Fehler beim Erstellen des Icons:" -#: lib/diff.tcl:250 -#, tcl-format -msgid "" -"\n" -"* Untracked file clipped here by %s.\n" -"* To see the entire file, use an external editor.\n" -msgstr "" -"\n" -"* Unversionierte Datei, hier abgeschnitten durch %s.\n" -"* Zum Ansehen der vollständigen Datei externen Editor benutzen.\n" +#: lib/spellcheck.tcl:57 +msgid "Unsupported spell checker" +msgstr "Rechtschreibprüfungsprogramm nicht unterstützt" -#: lib/diff.tcl:583 -msgid "Failed to unstage selected hunk." -msgstr "" -"Fehler beim Herausnehmen des gewählten Patch-Blocks aus der Bereitstellung." +#: lib/spellcheck.tcl:65 +msgid "Spell checking is unavailable" +msgstr "Rechtschreibprüfung nicht verfügbar" -#: lib/diff.tcl:591 -msgid "Failed to revert selected hunk." -msgstr "Fehler beim Zurücknehmen des gewählten Patch-Blocks." +#: lib/spellcheck.tcl:68 +msgid "Invalid spell checking configuration" +msgstr "Unbenutzbare Konfiguration der Rechtschreibprüfung" -#: lib/diff.tcl:594 -msgid "Failed to stage selected hunk." -msgstr "Fehler beim Bereitstellen des gewählten Patch-Blocks." +#: lib/spellcheck.tcl:70 +#, tcl-format +msgid "Reverting dictionary to %s." +msgstr "Wörterbuch auf %s zurückgesetzt." -#: lib/diff.tcl:687 -msgid "Failed to unstage selected line." -msgstr "Fehler beim Herausnehmen der gewählten Zeile aus der Bereitstellung." +#: lib/spellcheck.tcl:73 +msgid "Spell checker silently failed on startup" +msgstr "Rechtschreibprüfungsprogramm mit Fehler abgebrochen" -#: lib/diff.tcl:696 -msgid "Failed to revert selected line." -msgstr "Fehler beim Zurücknehmen der gewählten Zeile." +#: lib/spellcheck.tcl:80 +msgid "Unrecognized spell checker" +msgstr "Unbekanntes Rechtschreibprüfungsprogramm" -#: lib/diff.tcl:700 -msgid "Failed to stage selected line." -msgstr "Fehler beim Bereitstellen der gewählten Zeile." +#: lib/spellcheck.tcl:186 +msgid "No Suggestions" +msgstr "Keine Vorschläge" -#: lib/diff.tcl:889 -msgid "Failed to undo last revert." -msgstr "Fehler beim Rückgängigmachen des letzten Zurücknehmen-Commits" +#: lib/spellcheck.tcl:388 +msgid "Unexpected EOF from spell checker" +msgstr "Unerwartetes EOF vom Rechtschreibprüfungsprogramm" -#: lib/sshkey.tcl:34 +#: lib/spellcheck.tcl:392 +msgid "Spell Checker Failed" +msgstr "Rechtschreibprüfung fehlgeschlagen" + +#: lib/sshkey.tcl:31 msgid "No keys found." msgstr "Keine Schlüssel gefunden." -#: lib/sshkey.tcl:37 +#: lib/sshkey.tcl:34 #, tcl-format msgid "Found a public key in: %s" msgstr "Öffentlicher Schlüssel gefunden in: %s" -#: lib/sshkey.tcl:43 +#: lib/sshkey.tcl:40 msgid "Generate Key" msgstr "Schlüssel erzeugen" -#: lib/sshkey.tcl:61 +#: lib/sshkey.tcl:56 msgid "Copy To Clipboard" msgstr "In Zwischenablage kopieren" -#: lib/sshkey.tcl:75 +#: lib/sshkey.tcl:70 msgid "Your OpenSSH Public Key" msgstr "Ihr OpenSSH öffenlicher Schlüssel" -#: lib/sshkey.tcl:83 +#: lib/sshkey.tcl:78 msgid "Generating..." msgstr "Erzeugen..." -#: lib/sshkey.tcl:89 +#: lib/sshkey.tcl:84 #, tcl-format msgid "" "Could not start ssh-keygen:\n" @@ -2282,593 +2392,201 @@ msgstr "" "\n" "%s" -#: lib/sshkey.tcl:116 +#: lib/sshkey.tcl:111 msgid "Generation failed." msgstr "Schlüsselerzeugung fehlgeschlagen." -#: lib/sshkey.tcl:123 +#: lib/sshkey.tcl:118 msgid "Generation succeeded, but no keys found." msgstr "Schlüsselerzeugung erfolgreich, aber keine Schlüssel gefunden." -#: lib/sshkey.tcl:126 +#: lib/sshkey.tcl:121 #, tcl-format msgid "Your key is in: %s" msgstr "Ihr Schlüssel ist abgelegt in: %s" -#: lib/branch_create.tcl:23 -#, tcl-format -msgid "%s (%s): Create Branch" -msgstr "%s (%s): Branch erstellen" - -#: lib/branch_create.tcl:28 -msgid "Create New Branch" -msgstr "Neuen Branch erstellen" - -#: lib/branch_create.tcl:42 -msgid "Branch Name" -msgstr "Branchname" - -#: lib/branch_create.tcl:57 -msgid "Match Tracking Branch Name" -msgstr "Passend zu Trackingbranch-Name" - -#: lib/branch_create.tcl:66 -msgid "Starting Revision" -msgstr "Anfangsversion" - -#: lib/branch_create.tcl:72 -msgid "Update Existing Branch:" -msgstr "Existierenden Branch aktualisieren:" - -#: lib/branch_create.tcl:75 -msgid "No" -msgstr "Nein" - -#: lib/branch_create.tcl:80 -msgid "Fast Forward Only" -msgstr "Nur Vorspulen" - -#: lib/branch_create.tcl:97 -msgid "Checkout After Creation" -msgstr "Branch auschecken nach Erstellen" - -#: lib/branch_create.tcl:132 -msgid "Please select a tracking branch." -msgstr "Bitte wählen Sie einen Trackingbranch." - -#: lib/branch_create.tcl:141 -#, tcl-format -msgid "Tracking branch %s is not a branch in the remote repository." -msgstr "Trackingbranch »%s« ist kein Branch im externen Repository." - -#: lib/console.tcl:59 -msgid "Working... please wait..." -msgstr "Verarbeitung. Bitte warten..." - -#: lib/console.tcl:186 -msgid "Success" -msgstr "Erfolgreich" - -#: lib/console.tcl:200 -msgid "Error: Command Failed" -msgstr "Fehler: Kommando fehlgeschlagen" - -#: lib/line.tcl:17 -msgid "Goto Line:" -msgstr "Gehe zu Zeile:" - -#: lib/line.tcl:23 -msgid "Go" -msgstr "Gehe" - -#: lib/choose_rev.tcl:52 -msgid "This Detached Checkout" -msgstr "Losgelöste Arbeitskopie-Version" - -#: lib/choose_rev.tcl:60 -msgid "Revision Expression:" -msgstr "Version Regex-Ausdruck:" - -#: lib/choose_rev.tcl:72 -msgid "Local Branch" -msgstr "Lokaler Branch" - -#: lib/choose_rev.tcl:77 -msgid "Tracking Branch" -msgstr "Trackingbranch" - -#: lib/choose_rev.tcl:82 lib/choose_rev.tcl:544 -msgid "Tag" -msgstr "Tag" - -#: lib/choose_rev.tcl:321 -#, tcl-format -msgid "Invalid revision: %s" -msgstr "Ungültige Version: %s" - -#: lib/choose_rev.tcl:342 -msgid "No revision selected." -msgstr "Keine Version ausgewählt." - -#: lib/choose_rev.tcl:350 -msgid "Revision expression is empty." -msgstr "Versions-Ausdruck ist leer." - -#: lib/choose_rev.tcl:537 -msgid "Updated" -msgstr "Aktualisiert" - -#: lib/choose_rev.tcl:565 -msgid "URL" -msgstr "URL" - -#: lib/commit.tcl:9 -msgid "" -"There is nothing to amend.\n" -"\n" -"You are about to create the initial commit. There is no commit before this " -"to amend.\n" -msgstr "" -"Kein Commit zur Nachbesserung vorhanden.\n" -"\n" -"Sie sind dabei, den ersten Commit zu erstellen. Es gibt keinen existierenden " -"Commit, den Sie nachbessern könnten.\n" - -#: lib/commit.tcl:18 -msgid "" -"Cannot amend while merging.\n" -"\n" -"You are currently in the middle of a merge that has not been fully " -"completed. You cannot amend the prior commit unless you first abort the " -"current merge activity.\n" -msgstr "" -"Nachbesserung bei Zusammenführung nicht möglich.\n" -"\n" -"Sie haben das Zusammenführen von Commits angefangen, aber noch nicht " -"beendet. Sie können keinen vorigen Commit nachbessern, solange eine " -"unfertige Zusammenführung existiert. Dazu müssen Sie die Zusammenführung " -"beenden oder abbrechen.\n" - -#: lib/commit.tcl:56 -msgid "Error loading commit data for amend:" -msgstr "Fehler beim Laden der Commitdaten für Nachbessern:" - -#: lib/commit.tcl:83 -msgid "Unable to obtain your identity:" -msgstr "Benutzername konnte nicht bestimmt werden:" - -#: lib/commit.tcl:88 -msgid "Invalid GIT_COMMITTER_IDENT:" -msgstr "Ungültiger Wert von GIT_COMMITTER_INDENT:" - -#: lib/commit.tcl:138 -#, tcl-format -msgid "warning: Tcl does not support encoding '%s'." -msgstr "Warning: Tcl/Tk unterstützt die Zeichencodierung »%s« nicht." - -#: lib/commit.tcl:158 -msgid "" -"Last scanned state does not match repository state.\n" -"\n" -"Another Git program has modified this repository since the last scan. A " -"rescan must be performed before another commit can be created.\n" -"\n" -"The rescan will be automatically started now.\n" -msgstr "" -"Der letzte geladene Status stimmt nicht mehr mit dem Repository überein.\n" -"\n" -"Ein anderes Git-Programm hat das Repository seit dem letzten Laden " -"geändert. Vor dem nächsten Commit muss neu geladen werden.\n" -"\n" -"Es wird gleich neu geladen.\n" - -#: lib/commit.tcl:182 -#, tcl-format -msgid "" -"Unmerged files cannot be committed.\n" -"\n" -"File %s has merge conflicts. You must resolve them and stage the file " -"before committing.\n" -msgstr "" -"Nicht zusammengeführte Dateien können nicht committet werden.\n" -"\n" -"Die Datei »%s« hat noch nicht aufgelöste Zusammenführungs-Konflikte. Sie " -"müssen diese Konflikte auflösen und die Dateien in die Bereitstellung " -"hinzufügen, bevor Sie committen können.\n" - -#: lib/commit.tcl:190 +#: lib/status_bar.tcl:83 #, tcl-format -msgid "" -"Unknown file state %s detected.\n" -"\n" -"File %s cannot be committed by this program.\n" -msgstr "" -"Unbekannter Dateizustand »%s«.\n" -"\n" -"Datei »%s« kann nicht committet werden.\n" - -#: lib/commit.tcl:198 -msgid "" -"No changes to commit.\n" -"\n" -"You must stage at least 1 file before you can commit.\n" -msgstr "" -"Keine Änderungen vorhanden, die committet werden könnten.\n" -"\n" -"Sie müssen mindestens eine Datei bereitstellen, bevor Sie committen können.\n" - -#: lib/commit.tcl:213 -msgid "" -"Please supply a commit message.\n" -"\n" -"A good commit message has the following format:\n" -"\n" -"- First line: Describe in one sentence what you did.\n" -"- Second line: Blank\n" -"- Remaining lines: Describe why this change is good.\n" -msgstr "" -"Bitte geben Sie eine Versionsbeschreibung ein.\n" -"\n" -"Eine gute Versionsbeschreibung enthält folgende Abschnitte:\n" -"\n" -"- Erste Zeile: Eine Zusammenfassung, was man gemacht hat.\n" -"\n" -"- Zweite Zeile: Leerzeile\n" -"\n" -"- Rest: Eine ausführliche Beschreibung, warum diese Änderung hilfreich ist.\n" - -#: lib/commit.tcl:244 -msgid "Calling pre-commit hook..." -msgstr "Aufrufen des »pre-commit hook«..." - -#: lib/commit.tcl:259 -msgid "Commit declined by pre-commit hook." -msgstr "Committen abgelehnt durch »pre-commit hook«." - -#: lib/commit.tcl:278 -msgid "" -"You are about to commit on a detached head. This is a potentially dangerous " -"thing to do because if you switch to another branch you will lose your " -"changes and it can be difficult to retrieve them later from the reflog. You " -"should probably cancel this commit and create a new branch to continue.\n" -" \n" -" Do you really want to proceed with your Commit?" -msgstr "" -"Sie sind dabei, einen Commit auf losgelöste Branchspitze (»commit to " -"detached head«) zu erstellen. Das ist riskant, denn wenn Sie zu einem " -"anderen Branch wechseln, würden Sie diese Änderungen verlieren und es ist " -"nachträglich schwierig, diese aus dem Commit-Log (»reflog«) wiederzufinden. " -"Es wird empfohlen, diesen Commit abzubrechen und zunächst einen neuen Branch " -"zu erstellen.\n" -"\n" -" Wollen Sie den Commit trotzdem in dieser Form erstellen?" - -#: lib/commit.tcl:299 -msgid "Calling commit-msg hook..." -msgstr "Aufrufen des »commit-msg hook«..." - -#: lib/commit.tcl:314 -msgid "Commit declined by commit-msg hook." -msgstr "Committen abgelehnt durch »commit-msg hook«." - -#: lib/commit.tcl:327 -msgid "Committing changes..." -msgstr "Änderungen committen..." - -#: lib/commit.tcl:344 -msgid "write-tree failed:" -msgstr "write-tree fehlgeschlagen:" +msgid "%s ... %*i of %*i %s (%3i%%)" +msgstr "%s ... %*i von %*i %s (%3i%%)" -#: lib/commit.tcl:345 lib/commit.tcl:395 lib/commit.tcl:422 -msgid "Commit failed." -msgstr "Committen fehlgeschlagen." +#: lib/tools_dlg.tcl:22 +msgid "Add Tool" +msgstr "Werkzeug hinzufügen" -#: lib/commit.tcl:362 -#, tcl-format -msgid "Commit %s appears to be corrupt" -msgstr "Version »%s« scheint beschädigt zu sein" +#: lib/tools_dlg.tcl:28 +msgid "Add New Tool Command" +msgstr "Neues Kommando für Werkzeug hinzufügen" -#: lib/commit.tcl:367 -msgid "" -"No changes to commit.\n" -"\n" -"No files were modified by this commit and it was not a merge commit.\n" -"\n" -"A rescan will be automatically started now.\n" -msgstr "" -"Keine Änderungen zum committen.\n" -"\n" -"Es gibt keine geänderte Datei in diesem Commit und es wurde auch nichts " -"zusammengeführt.\n" -"\n" -"Das Arbeitsverzeichnis wird daher jetzt neu geladen.\n" +#: lib/tools_dlg.tcl:33 +msgid "Add globally" +msgstr "Global hinzufügen" -#: lib/commit.tcl:374 -msgid "No changes to commit." -msgstr "Keine Änderungen, die committet werden können." +#: lib/tools_dlg.tcl:45 +msgid "Tool Details" +msgstr "Einzelheiten des Werkzeugs" -#: lib/commit.tcl:394 -msgid "commit-tree failed:" -msgstr "commit-tree fehlgeschlagen:" +#: lib/tools_dlg.tcl:48 +msgid "Use '/' separators to create a submenu tree:" +msgstr "Benutzen Sie einen Schrägstrich »/«, um Untermenüs zu erstellen:" -#: lib/commit.tcl:421 -msgid "update-ref failed:" -msgstr "update-ref fehlgeschlagen:" +#: lib/tools_dlg.tcl:61 +msgid "Command:" +msgstr "Kommando:" -#: lib/commit.tcl:514 -#, tcl-format -msgid "Created commit %s: %s" -msgstr "Commit %s erstellt: %s" +#: lib/tools_dlg.tcl:74 +msgid "Show a dialog before running" +msgstr "Bestätigungsfrage vor Starten anzeigen" -#: lib/branch_delete.tcl:16 -#, tcl-format -msgid "%s (%s): Delete Branch" -msgstr "%s (%s): Branch löschen" +#: lib/tools_dlg.tcl:80 +msgid "Ask the user to select a revision (sets $REVISION)" +msgstr "Benutzer nach Version fragen (setzt $REVISION)" -#: lib/branch_delete.tcl:21 -msgid "Delete Local Branch" -msgstr "Lokalen Branch löschen" +#: lib/tools_dlg.tcl:85 +msgid "Ask the user for additional arguments (sets $ARGS)" +msgstr "Benutzer nach zusätzlichen Argumenten fragen (setzt $ARGS)" -#: lib/branch_delete.tcl:39 -msgid "Local Branches" -msgstr "Lokale Branches" +#: lib/tools_dlg.tcl:92 +msgid "Don't show the command output window" +msgstr "Kein Ausgabefenster zeigen" -#: lib/branch_delete.tcl:51 -msgid "Delete Only If Merged Into" -msgstr "Nur löschen, wenn zusammengeführt nach" +#: lib/tools_dlg.tcl:97 +msgid "Run only if a diff is selected ($FILENAME not empty)" +msgstr "Nur starten, wenn ein Vergleich gewählt ist ($FILENAME ist nicht leer)" -#: lib/branch_delete.tcl:103 -#, tcl-format -msgid "The following branches are not completely merged into %s:" -msgstr "Folgende Branches sind noch nicht mit »%s« zusammengeführt:" +#: lib/tools_dlg.tcl:121 +msgid "Please supply a name for the tool." +msgstr "Bitte geben Sie einen Werkzeugnamen an." -#: lib/branch_delete.tcl:131 +#: lib/tools_dlg.tcl:129 #, tcl-format -msgid " - %s:" -msgstr " - %s:" +msgid "Tool '%s' already exists." +msgstr "Werkzeug »%s« existiert bereits." -#: lib/branch_delete.tcl:141 +#: lib/tools_dlg.tcl:151 #, tcl-format msgid "" -"Failed to delete branches:\n" +"Could not add tool:\n" "%s" msgstr "" -"Fehler beim Löschen der Branches:\n" +"Werkzeug konnte nicht hinzugefügt werden:\n" +"\n" "%s" -#: lib/date.tcl:25 -#, tcl-format -msgid "Invalid date from Git: %s" -msgstr "Ungültiges Datum von Git: %s" - -#: lib/database.tcl:42 -msgid "Number of loose objects" -msgstr "Anzahl unverknüpfter Objekte" - -#: lib/database.tcl:43 -msgid "Disk space used by loose objects" -msgstr "Festplattenplatz von unverknüpften Objekten" - -#: lib/database.tcl:44 -msgid "Number of packed objects" -msgstr "Anzahl komprimierter Objekte" - -#: lib/database.tcl:45 -msgid "Number of packs" -msgstr "Anzahl Komprimierungseinheiten" +#: lib/tools_dlg.tcl:190 +msgid "Remove Tool" +msgstr "Werkzeug entfernen" -#: lib/database.tcl:46 -msgid "Disk space used by packed objects" -msgstr "Festplattenplatz von komprimierten Objekten" +#: lib/tools_dlg.tcl:196 +msgid "Remove Tool Commands" +msgstr "Werkzeugkommandos entfernen" -#: lib/database.tcl:47 -msgid "Packed objects waiting for pruning" -msgstr "Komprimierte Objekte, die zum Aufräumen vorgesehen sind" +#: lib/tools_dlg.tcl:200 +msgid "Remove" +msgstr "Entfernen" -#: lib/database.tcl:48 -msgid "Garbage files" -msgstr "Dateien im Mülleimer" +#: lib/tools_dlg.tcl:236 +msgid "(Blue denotes repository-local tools)" +msgstr "(Werkzeuge für lokales Archiv werden in Blau angezeigt)" -#: lib/database.tcl:66 +#: lib/tools_dlg.tcl:297 #, tcl-format -msgid "%s (%s): Database Statistics" -msgstr "%s (%s): Datenbankstatistik" +msgid "Run Command: %s" +msgstr "Kommando aufrufen: %s" -#: lib/database.tcl:72 -msgid "Compressing the object database" -msgstr "Objektdatenbank komprimieren" +#: lib/tools_dlg.tcl:311 +msgid "Arguments" +msgstr "Argumente" -#: lib/database.tcl:83 -msgid "Verifying the object database with fsck-objects" -msgstr "Die Objektdatenbank durch »fsck-objects« überprüfen lassen" +#: lib/tools_dlg.tcl:348 +msgid "OK" +msgstr "Ok" -#: lib/database.tcl:107 +#: lib/tools.tcl:75 #, tcl-format -msgid "" -"This repository currently has approximately %i loose objects.\n" -"\n" -"To maintain optimal performance it is strongly recommended that you compress " -"the database.\n" -"\n" -"Compress the database now?" -msgstr "" -"Dieses Repository enthält ungefähr %i nicht verknüpfte Objekte.\n" -"\n" -"Für eine optimale Performance wird empfohlen, die Datenbank des Repository " -"zu komprimieren.\n" -"\n" -"Soll die Datenbank jetzt komprimiert werden?" +msgid "Running %s requires a selected file." +msgstr "Um »%s« zu starten, muss eine Datei ausgewählt sein." -#: lib/error.tcl:20 +#: lib/tools.tcl:90 #, tcl-format -msgid "%s: error" -msgstr "%s: Fehler" +msgid "Are you sure you want to run %s?" +msgstr "Wollen Sie %s wirklich starten?" -#: lib/error.tcl:36 +#: lib/tools.tcl:110 #, tcl-format -msgid "%s: warning" -msgstr "%s: Warnung" +msgid "Tool: %s" +msgstr "Werkzeug: %s" -#: lib/error.tcl:80 +#: lib/tools.tcl:111 #, tcl-format -msgid "%s hook failed:" -msgstr "%s hook fehlgeschlagen:" - -#: lib/error.tcl:96 -msgid "You must correct the above errors before committing." -msgstr "" -"Sie müssen die obigen Fehler zuerst beheben, bevor Sie committen können." +msgid "Running: %s" +msgstr "Starten: %s" -#: lib/error.tcl:116 +#: lib/tools.tcl:149 #, tcl-format -msgid "%s (%s): error" -msgstr "%s (%s): Fehler" - -#: lib/merge.tcl:13 -msgid "" -"Cannot merge while amending.\n" -"\n" -"You must finish amending this commit before starting any type of merge.\n" -msgstr "" -"Zusammenführen kann nicht gleichzeitig mit Nachbessern durchgeführt werden.\n" -"\n" -"Sie müssen zuerst den Nachbesserungs-Commit abschließen, bevor Sie " -"zusammenführen können.\n" - -#: lib/merge.tcl:27 -msgid "" -"Last scanned state does not match repository state.\n" -"\n" -"Another Git program has modified this repository since the last scan. A " -"rescan must be performed before a merge can be performed.\n" -"\n" -"The rescan will be automatically started now.\n" -msgstr "" -"Der letzte geladene Status stimmt nicht mehr mit dem Repository überein.\n" -"\n" -"Ein anderes Git-Programm hat das Repository seit dem letzten Laden " -"geändert. Vor einem Zusammenführen muss neu geladen werden.\n" -"\n" -"Es wird gleich neu geladen.\n" +msgid "Tool completed successfully: %s" +msgstr "Werkzeug erfolgreich abgeschlossen: %s" -#: lib/merge.tcl:45 +#: lib/tools.tcl:151 #, tcl-format -msgid "" -"You are in the middle of a conflicted merge.\n" -"\n" -"File %s has merge conflicts.\n" -"\n" -"You must resolve them, stage the file, and commit to complete the current " -"merge. Only then can you begin another merge.\n" -msgstr "" -"Zusammenführung mit Konflikten.\n" -"\n" -"Die Datei »%s« enthält Konflikte beim Zusammenführen.\n" -"\n" -"Sie müssen diese Konflikte per Hand auflösen. Anschließend müssen Sie die " -"Datei wieder bereitstellen und committen, um die Zusammenführung " -"abzuschließen. Erst danach kann eine neue Zusammenführung begonnen werden.\n" +msgid "Tool failed: %s" +msgstr "Werkzeug fehlgeschlagen: %s" -#: lib/merge.tcl:55 +#: lib/transport.tcl:7 #, tcl-format -msgid "" -"You are in the middle of a change.\n" -"\n" -"File %s is modified.\n" -"\n" -"You should complete the current commit before starting a merge. Doing so " -"will help you abort a failed merge, should the need arise.\n" -msgstr "" -"Es liegen Änderungen vor.\n" -"\n" -"Die Datei »%s« wurde geändert.\n" -"\n" -"Sie sollten zuerst den bereitgestellten Commit abschließen, bevor Sie eine " -"Zusammenführung beginnen. Mit dieser Reihenfolge können Sie mögliche " -"Konflikte beim Zusammenführen wesentlich einfacher beheben oder abbrechen.\n" +msgid "Fetching new changes from %s" +msgstr "Neue Änderungen von »%s« holen" -#: lib/merge.tcl:108 +#: lib/transport.tcl:18 #, tcl-format -msgid "%s of %s" -msgstr "%s von %s" +msgid "remote prune %s" +msgstr "Aufräumen von »%s«" -#: lib/merge.tcl:126 +#: lib/transport.tcl:19 #, tcl-format -msgid "Merging %s and %s..." -msgstr "Zusammenführen von %s und %s..." - -#: lib/merge.tcl:137 -msgid "Merge completed successfully." -msgstr "Zusammenführen erfolgreich abgeschlossen." - -#: lib/merge.tcl:139 -msgid "Merge failed. Conflict resolution is required." -msgstr "Zusammenführen fehlgeschlagen. Konfliktauflösung ist notwendig." +msgid "Pruning tracking branches deleted from %s" +msgstr "Übernahmezweige aufräumen und entfernen, die in »%s« gelöscht wurden" -#: lib/merge.tcl:156 +#: lib/transport.tcl:26 #, tcl-format -msgid "%s (%s): Merge" -msgstr "%s (%s): Zusammenführen" +msgid "Pushing changes to %s" +msgstr "Änderungen nach »%s« versenden" -#: lib/merge.tcl:164 +#: lib/transport.tcl:64 #, tcl-format -msgid "Merge Into %s" -msgstr "Zusammenführen in »%s«" +msgid "Mirroring to %s" +msgstr "Spiegeln nach %s" -#: lib/merge.tcl:183 -msgid "Revision To Merge" -msgstr "Zusammenzuführende Version" +#: lib/transport.tcl:82 +#, tcl-format +msgid "Pushing %s %s to %s" +msgstr "%s %s nach %s versenden" -#: lib/merge.tcl:218 -msgid "" -"Cannot abort while amending.\n" -"\n" -"You must finish amending this commit.\n" -msgstr "" -"Abbruch der Nachbesserung ist nicht möglich.\n" -"\n" -"Sie müssen die Nachbesserung diese Commits abschließen.\n" +#: lib/transport.tcl:100 +msgid "Push Branches" +msgstr "Zweige versenden" -#: lib/merge.tcl:228 -msgid "" -"Abort merge?\n" -"\n" -"Aborting the current merge will cause *ALL* uncommitted changes to be lost.\n" -"\n" -"Continue with aborting the current merge?" -msgstr "" -"Zusammenführen abbrechen?\n" -"\n" -"Wenn Sie abbrechen, gehen alle noch nicht committeten Änderungen verloren.\n" -"\n" -"Zusammenführen jetzt abbrechen?" +#: lib/transport.tcl:114 +msgid "Source Branches" +msgstr "Lokale Zweige" -#: lib/merge.tcl:234 -msgid "" -"Reset changes?\n" -"\n" -"Resetting the changes will cause *ALL* uncommitted changes to be lost.\n" -"\n" -"Continue with resetting the current changes?" -msgstr "" -"Änderungen verwerfen?\n" -"\n" -"Alle noch nicht committeten Änderungen würden verloren gehen.\n" -"\n" -"Änderungen jetzt verwerfen?" +#: lib/transport.tcl:131 +msgid "Destination Repository" +msgstr "Ziel-Projektarchiv" -#: lib/merge.tcl:246 -msgid "Aborting" -msgstr "Abbruch" +#: lib/transport.tcl:169 +msgid "Transfer Options" +msgstr "Netzwerk-Einstellungen" -#: lib/merge.tcl:247 -msgid "files reset" -msgstr "Dateien zurückgesetzt" +#: lib/transport.tcl:171 +msgid "Force overwrite existing branch (may discard changes)" +msgstr "" +"Überschreiben von existierenden Zweigen erzwingen (könnte Änderungen löschen)" -#: lib/merge.tcl:277 -msgid "Abort failed." -msgstr "Abbruch fehlgeschlagen." +#: lib/transport.tcl:175 +msgid "Use thin pack (for slow network connections)" +msgstr "Kompaktes Datenformat benutzen (für langsame Netzverbindungen)" -#: lib/merge.tcl:279 -msgid "Abort completed. Ready." -msgstr "Abbruch durchgeführt. Bereit." +#: lib/transport.tcl:179 +msgid "Include tags" +msgstr "Mit Markierungen übertragen" diff --git a/third_party/git/git-gui/po/git-gui.pot b/third_party/git/git-gui/po/git-gui.pot index b79ed4e133df..0c94f9c2c6df 100644 --- a/third_party/git/git-gui/po/git-gui.pot +++ b/third_party/git/git-gui/po/git-gui.pot @@ -8,42 +8,41 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-02-08 22:54+0100\n" +"POT-Creation-Date: 2010-01-26 15:47-0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" -"Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: git-gui.sh:847 +#: git-gui.sh:41 git-gui.sh:793 git-gui.sh:807 git-gui.sh:820 git-gui.sh:903 +#: git-gui.sh:922 +msgid "git-gui: fatal error" +msgstr "" + +#: git-gui.sh:743 #, tcl-format msgid "Invalid font specified in %s:" msgstr "" -#: git-gui.sh:901 +#: git-gui.sh:779 msgid "Main Font" msgstr "" -#: git-gui.sh:902 +#: git-gui.sh:780 msgid "Diff/Console Font" msgstr "" -#: git-gui.sh:917 git-gui.sh:931 git-gui.sh:944 git-gui.sh:1034 git-gui.sh:1053 -#: git-gui.sh:3212 -msgid "git-gui: fatal error" -msgstr "" - -#: git-gui.sh:918 +#: git-gui.sh:794 msgid "Cannot find git in PATH." msgstr "" -#: git-gui.sh:945 +#: git-gui.sh:821 msgid "Cannot parse Git version string:" msgstr "" -#: git-gui.sh:970 +#: git-gui.sh:839 #, tcl-format msgid "" "Git version cannot be determined.\n" @@ -55,518 +54,473 @@ msgid "" "Assume '%s' is version 1.5.0?\n" msgstr "" -#: git-gui.sh:1267 +#: git-gui.sh:1128 msgid "Git directory not found:" msgstr "" -#: git-gui.sh:1301 +#: git-gui.sh:1146 msgid "Cannot move to top of working directory:" msgstr "" -#: git-gui.sh:1309 +#: git-gui.sh:1154 msgid "Cannot use bare repository:" msgstr "" -#: git-gui.sh:1317 +#: git-gui.sh:1162 msgid "No working directory" msgstr "" -#: git-gui.sh:1491 lib/checkout_op.tcl:306 +#: git-gui.sh:1334 lib/checkout_op.tcl:306 msgid "Refreshing file status..." msgstr "" -#: git-gui.sh:1551 +#: git-gui.sh:1390 msgid "Scanning for modified files ..." msgstr "" -#: git-gui.sh:1629 +#: git-gui.sh:1454 msgid "Calling prepare-commit-msg hook..." msgstr "" -#: git-gui.sh:1646 +#: git-gui.sh:1471 msgid "Commit declined by prepare-commit-msg hook." msgstr "" -#: git-gui.sh:1804 lib/browser.tcl:252 +#: git-gui.sh:1629 lib/browser.tcl:246 msgid "Ready." msgstr "" -#: git-gui.sh:1968 +#: git-gui.sh:1787 #, tcl-format -msgid "" -"Display limit (gui.maxfilesdisplayed = %s) reached, not showing all %s files." +msgid "Displaying only %s of %s files." msgstr "" -#: git-gui.sh:2091 +#: git-gui.sh:1913 msgid "Unmodified" msgstr "" -#: git-gui.sh:2093 +#: git-gui.sh:1915 msgid "Modified, not staged" msgstr "" -#: git-gui.sh:2094 git-gui.sh:2106 +#: git-gui.sh:1916 git-gui.sh:1924 msgid "Staged for commit" msgstr "" -#: git-gui.sh:2095 git-gui.sh:2107 +#: git-gui.sh:1917 git-gui.sh:1925 msgid "Portions staged for commit" msgstr "" -#: git-gui.sh:2096 git-gui.sh:2108 +#: git-gui.sh:1918 git-gui.sh:1926 msgid "Staged for commit, missing" msgstr "" -#: git-gui.sh:2098 +#: git-gui.sh:1920 msgid "File type changed, not staged" msgstr "" -#: git-gui.sh:2099 git-gui.sh:2100 -msgid "File type changed, old type staged for commit" -msgstr "" - -#: git-gui.sh:2101 +#: git-gui.sh:1921 msgid "File type changed, staged" msgstr "" -#: git-gui.sh:2102 -msgid "File type change staged, modification not staged" -msgstr "" - -#: git-gui.sh:2103 -msgid "File type change staged, file missing" -msgstr "" - -#: git-gui.sh:2105 +#: git-gui.sh:1923 msgid "Untracked, not staged" msgstr "" -#: git-gui.sh:2110 +#: git-gui.sh:1928 msgid "Missing" msgstr "" -#: git-gui.sh:2111 +#: git-gui.sh:1929 msgid "Staged for removal" msgstr "" -#: git-gui.sh:2112 +#: git-gui.sh:1930 msgid "Staged for removal, still present" msgstr "" -#: git-gui.sh:2114 git-gui.sh:2115 git-gui.sh:2116 git-gui.sh:2117 -#: git-gui.sh:2118 git-gui.sh:2119 +#: git-gui.sh:1932 git-gui.sh:1933 git-gui.sh:1934 git-gui.sh:1935 +#: git-gui.sh:1936 git-gui.sh:1937 msgid "Requires merge resolution" msgstr "" -#: git-gui.sh:2164 -msgid "Couldn't find gitk in PATH" +#: git-gui.sh:1972 +msgid "Starting gitk... please wait..." msgstr "" -#: git-gui.sh:2210 git-gui.sh:2245 -#, tcl-format -msgid "Starting %s... please wait..." +#: git-gui.sh:1984 +msgid "Couldn't find gitk in PATH" msgstr "" -#: git-gui.sh:2224 +#: git-gui.sh:2043 msgid "Couldn't find git gui in PATH" msgstr "" -#: git-gui.sh:2726 lib/choose_repository.tcl:53 +#: git-gui.sh:2455 lib/choose_repository.tcl:36 msgid "Repository" msgstr "" -#: git-gui.sh:2727 +#: git-gui.sh:2456 msgid "Edit" msgstr "" -#: git-gui.sh:2729 lib/choose_rev.tcl:567 +#: git-gui.sh:2458 lib/choose_rev.tcl:561 msgid "Branch" msgstr "" -#: git-gui.sh:2732 lib/choose_rev.tcl:554 +#: git-gui.sh:2461 lib/choose_rev.tcl:548 msgid "Commit@@noun" msgstr "" -#: git-gui.sh:2735 lib/merge.tcl:127 lib/merge.tcl:174 +#: git-gui.sh:2464 lib/merge.tcl:121 lib/merge.tcl:150 lib/merge.tcl:168 msgid "Merge" msgstr "" -#: git-gui.sh:2736 lib/choose_rev.tcl:563 +#: git-gui.sh:2465 lib/choose_rev.tcl:557 msgid "Remote" msgstr "" -#: git-gui.sh:2739 +#: git-gui.sh:2468 msgid "Tools" msgstr "" -#: git-gui.sh:2748 +#: git-gui.sh:2477 msgid "Explore Working Copy" msgstr "" -#: git-gui.sh:2763 -msgid "Git Bash" -msgstr "" - -#: git-gui.sh:2772 +#: git-gui.sh:2483 msgid "Browse Current Branch's Files" msgstr "" -#: git-gui.sh:2776 +#: git-gui.sh:2487 msgid "Browse Branch Files..." msgstr "" -#: git-gui.sh:2781 +#: git-gui.sh:2492 msgid "Visualize Current Branch's History" msgstr "" -#: git-gui.sh:2785 +#: git-gui.sh:2496 msgid "Visualize All Branch History" msgstr "" -#: git-gui.sh:2792 +#: git-gui.sh:2503 #, tcl-format msgid "Browse %s's Files" msgstr "" -#: git-gui.sh:2794 +#: git-gui.sh:2505 #, tcl-format msgid "Visualize %s's History" msgstr "" -#: git-gui.sh:2799 lib/database.tcl:40 +#: git-gui.sh:2510 lib/database.tcl:27 lib/database.tcl:67 msgid "Database Statistics" msgstr "" -#: git-gui.sh:2802 lib/database.tcl:33 +#: git-gui.sh:2513 lib/database.tcl:34 msgid "Compress Database" msgstr "" -#: git-gui.sh:2805 +#: git-gui.sh:2516 msgid "Verify Database" msgstr "" -#: git-gui.sh:2812 git-gui.sh:2816 git-gui.sh:2820 +#: git-gui.sh:2523 git-gui.sh:2527 git-gui.sh:2531 lib/shortcut.tcl:8 +#: lib/shortcut.tcl:40 lib/shortcut.tcl:72 msgid "Create Desktop Icon" msgstr "" -#: git-gui.sh:2828 lib/choose_repository.tcl:209 lib/choose_repository.tcl:217 +#: git-gui.sh:2539 lib/choose_repository.tcl:183 lib/choose_repository.tcl:191 msgid "Quit" msgstr "" -#: git-gui.sh:2836 +#: git-gui.sh:2547 msgid "Undo" msgstr "" -#: git-gui.sh:2839 +#: git-gui.sh:2550 msgid "Redo" msgstr "" -#: git-gui.sh:2843 git-gui.sh:3461 +#: git-gui.sh:2554 git-gui.sh:3109 msgid "Cut" msgstr "" -#: git-gui.sh:2846 git-gui.sh:3464 git-gui.sh:3540 git-gui.sh:3633 +#: git-gui.sh:2557 git-gui.sh:3112 git-gui.sh:3186 git-gui.sh:3259 #: lib/console.tcl:69 msgid "Copy" msgstr "" -#: git-gui.sh:2849 git-gui.sh:3467 +#: git-gui.sh:2560 git-gui.sh:3115 msgid "Paste" msgstr "" -#: git-gui.sh:2852 git-gui.sh:3470 lib/remote_branch_delete.tcl:39 -#: lib/branch_delete.tcl:28 +#: git-gui.sh:2563 git-gui.sh:3118 lib/branch_delete.tcl:26 +#: lib/remote_branch_delete.tcl:38 msgid "Delete" msgstr "" -#: git-gui.sh:2856 git-gui.sh:3474 git-gui.sh:3637 lib/console.tcl:71 +#: git-gui.sh:2567 git-gui.sh:3122 git-gui.sh:3263 lib/console.tcl:71 msgid "Select All" msgstr "" -#: git-gui.sh:2865 +#: git-gui.sh:2576 msgid "Create..." msgstr "" -#: git-gui.sh:2871 +#: git-gui.sh:2582 msgid "Checkout..." msgstr "" -#: git-gui.sh:2877 +#: git-gui.sh:2588 msgid "Rename..." msgstr "" -#: git-gui.sh:2882 +#: git-gui.sh:2593 msgid "Delete..." msgstr "" -#: git-gui.sh:2887 +#: git-gui.sh:2598 msgid "Reset..." msgstr "" -#: git-gui.sh:2897 +#: git-gui.sh:2608 msgid "Done" msgstr "" -#: git-gui.sh:2899 +#: git-gui.sh:2610 msgid "Commit@@verb" msgstr "" -#: git-gui.sh:2908 git-gui.sh:3400 +#: git-gui.sh:2619 git-gui.sh:3050 +msgid "New Commit" +msgstr "" + +#: git-gui.sh:2627 git-gui.sh:3057 msgid "Amend Last Commit" msgstr "" -#: git-gui.sh:2918 git-gui.sh:3361 lib/remote_branch_delete.tcl:101 +#: git-gui.sh:2637 git-gui.sh:3011 lib/remote_branch_delete.tcl:99 msgid "Rescan" msgstr "" -#: git-gui.sh:2924 +#: git-gui.sh:2643 msgid "Stage To Commit" msgstr "" -#: git-gui.sh:2930 +#: git-gui.sh:2649 msgid "Stage Changed Files To Commit" msgstr "" -#: git-gui.sh:2936 +#: git-gui.sh:2655 msgid "Unstage From Commit" msgstr "" -#: git-gui.sh:2942 lib/index.tcl:521 +#: git-gui.sh:2661 lib/index.tcl:412 msgid "Revert Changes" msgstr "" -#: git-gui.sh:2950 git-gui.sh:3700 git-gui.sh:3731 +#: git-gui.sh:2669 git-gui.sh:3310 git-gui.sh:3341 msgid "Show Less Context" msgstr "" -#: git-gui.sh:2954 git-gui.sh:3704 git-gui.sh:3735 +#: git-gui.sh:2673 git-gui.sh:3314 git-gui.sh:3345 msgid "Show More Context" msgstr "" -#: git-gui.sh:2961 git-gui.sh:3374 git-gui.sh:3485 +#: git-gui.sh:2680 git-gui.sh:3024 git-gui.sh:3133 msgid "Sign Off" msgstr "" -#: git-gui.sh:2977 +#: git-gui.sh:2696 msgid "Local Merge..." msgstr "" -#: git-gui.sh:2982 +#: git-gui.sh:2701 msgid "Abort Merge..." msgstr "" -#: git-gui.sh:2994 git-gui.sh:3022 +#: git-gui.sh:2713 git-gui.sh:2741 msgid "Add..." msgstr "" -#: git-gui.sh:2998 +#: git-gui.sh:2717 msgid "Push..." msgstr "" -#: git-gui.sh:3002 +#: git-gui.sh:2721 msgid "Delete Branch..." msgstr "" -#: git-gui.sh:3012 git-gui.sh:3666 +#: git-gui.sh:2731 git-gui.sh:3292 msgid "Options..." msgstr "" -#: git-gui.sh:3023 +#: git-gui.sh:2742 msgid "Remove..." msgstr "" -#: git-gui.sh:3032 lib/choose_repository.tcl:67 +#: git-gui.sh:2751 lib/choose_repository.tcl:50 msgid "Help" msgstr "" -#: git-gui.sh:3036 git-gui.sh:3040 lib/choose_repository.tcl:61 -#: lib/choose_repository.tcl:70 lib/about.tcl:14 +#: git-gui.sh:2755 git-gui.sh:2759 lib/about.tcl:14 +#: lib/choose_repository.tcl:44 lib/choose_repository.tcl:53 #, tcl-format msgid "About %s" msgstr "" -#: git-gui.sh:3064 +#: git-gui.sh:2783 msgid "Online Documentation" msgstr "" -#: git-gui.sh:3067 lib/choose_repository.tcl:64 lib/choose_repository.tcl:73 +#: git-gui.sh:2786 lib/choose_repository.tcl:47 lib/choose_repository.tcl:56 msgid "Show SSH Key" msgstr "" -#: git-gui.sh:3097 git-gui.sh:3229 -msgid "usage:" -msgstr "" - -#: git-gui.sh:3101 git-gui.sh:3233 -msgid "Usage" -msgstr "" - -#: git-gui.sh:3182 lib/blame.tcl:575 -msgid "Error" -msgstr "" - -#: git-gui.sh:3213 +#: git-gui.sh:2893 #, tcl-format msgid "fatal: cannot stat path %s: No such file or directory" msgstr "" -#: git-gui.sh:3246 +#: git-gui.sh:2926 msgid "Current Branch:" msgstr "" -#: git-gui.sh:3271 -msgid "Unstaged Changes" +#: git-gui.sh:2947 +msgid "Staged Changes (Will Commit)" msgstr "" -#: git-gui.sh:3293 -msgid "Staged Changes (Will Commit)" +#: git-gui.sh:2967 +msgid "Unstaged Changes" msgstr "" -#: git-gui.sh:3367 +#: git-gui.sh:3017 msgid "Stage Changed" msgstr "" -#: git-gui.sh:3386 lib/transport.tcl:137 +#: git-gui.sh:3036 lib/transport.tcl:104 lib/transport.tcl:193 msgid "Push" msgstr "" -#: git-gui.sh:3413 +#: git-gui.sh:3071 msgid "Initial Commit Message:" msgstr "" -#: git-gui.sh:3414 +#: git-gui.sh:3072 msgid "Amended Commit Message:" msgstr "" -#: git-gui.sh:3415 +#: git-gui.sh:3073 msgid "Amended Initial Commit Message:" msgstr "" -#: git-gui.sh:3416 +#: git-gui.sh:3074 msgid "Amended Merge Commit Message:" msgstr "" -#: git-gui.sh:3417 +#: git-gui.sh:3075 msgid "Merge Commit Message:" msgstr "" -#: git-gui.sh:3418 +#: git-gui.sh:3076 msgid "Commit Message:" msgstr "" -#: git-gui.sh:3477 git-gui.sh:3641 lib/console.tcl:73 +#: git-gui.sh:3125 git-gui.sh:3267 lib/console.tcl:73 msgid "Copy All" msgstr "" -#: git-gui.sh:3501 lib/blame.tcl:106 +#: git-gui.sh:3149 lib/blame.tcl:104 msgid "File:" msgstr "" -#: git-gui.sh:3549 lib/choose_repository.tcl:1100 -msgid "Open" -msgstr "" - -#: git-gui.sh:3629 +#: git-gui.sh:3255 msgid "Refresh" msgstr "" -#: git-gui.sh:3650 +#: git-gui.sh:3276 msgid "Decrease Font Size" msgstr "" -#: git-gui.sh:3654 +#: git-gui.sh:3280 msgid "Increase Font Size" msgstr "" -#: git-gui.sh:3662 lib/blame.tcl:296 +#: git-gui.sh:3288 lib/blame.tcl:281 msgid "Encoding" msgstr "" -#: git-gui.sh:3673 +#: git-gui.sh:3299 msgid "Apply/Reverse Hunk" msgstr "" -#: git-gui.sh:3678 +#: git-gui.sh:3304 msgid "Apply/Reverse Line" msgstr "" -#: git-gui.sh:3684 git-gui.sh:3794 git-gui.sh:3805 -msgid "Revert Hunk" -msgstr "" - -#: git-gui.sh:3689 git-gui.sh:3801 git-gui.sh:3812 -msgid "Revert Line" -msgstr "" - -#: git-gui.sh:3694 git-gui.sh:3791 -msgid "Undo Last Revert" -msgstr "" - -#: git-gui.sh:3713 +#: git-gui.sh:3323 msgid "Run Merge Tool" msgstr "" -#: git-gui.sh:3718 +#: git-gui.sh:3328 msgid "Use Remote Version" msgstr "" -#: git-gui.sh:3722 +#: git-gui.sh:3332 msgid "Use Local Version" msgstr "" -#: git-gui.sh:3726 +#: git-gui.sh:3336 msgid "Revert To Base" msgstr "" -#: git-gui.sh:3744 +#: git-gui.sh:3354 msgid "Visualize These Changes In The Submodule" msgstr "" -#: git-gui.sh:3748 +#: git-gui.sh:3358 msgid "Visualize Current Branch History In The Submodule" msgstr "" -#: git-gui.sh:3752 +#: git-gui.sh:3362 msgid "Visualize All Branch History In The Submodule" msgstr "" -#: git-gui.sh:3757 +#: git-gui.sh:3367 msgid "Start git gui In The Submodule" msgstr "" -#: git-gui.sh:3793 +#: git-gui.sh:3389 msgid "Unstage Hunk From Commit" msgstr "" -#: git-gui.sh:3797 +#: git-gui.sh:3391 msgid "Unstage Lines From Commit" msgstr "" -#: git-gui.sh:3798 git-gui.sh:3809 -msgid "Revert Lines" -msgstr "" - -#: git-gui.sh:3800 +#: git-gui.sh:3393 msgid "Unstage Line From Commit" msgstr "" -#: git-gui.sh:3804 +#: git-gui.sh:3396 msgid "Stage Hunk For Commit" msgstr "" -#: git-gui.sh:3808 +#: git-gui.sh:3398 msgid "Stage Lines For Commit" msgstr "" -#: git-gui.sh:3811 +#: git-gui.sh:3400 msgid "Stage Line For Commit" msgstr "" -#: git-gui.sh:3861 +#: git-gui.sh:3424 msgid "Initializing..." msgstr "" -#: git-gui.sh:4017 +#: git-gui.sh:3541 #, tcl-format msgid "" "Possible environment issues exist.\n" @@ -577,14 +531,14 @@ msgid "" "\n" msgstr "" -#: git-gui.sh:4046 +#: git-gui.sh:3570 msgid "" "\n" "This is due to a known issue with the\n" "Tcl binary distributed by Cygwin." msgstr "" -#: git-gui.sh:4051 +#: git-gui.sh:3575 #, tcl-format msgid "" "\n" @@ -595,2072 +549,1846 @@ msgid "" "~/.gitconfig file.\n" msgstr "" -#: lib/spellcheck.tcl:57 -msgid "Unsupported spell checker" +#: lib/about.tcl:26 +msgid "git-gui - a graphical user interface for Git." msgstr "" -#: lib/spellcheck.tcl:65 -msgid "Spell checking is unavailable" +#: lib/blame.tcl:72 +msgid "File Viewer" msgstr "" -#: lib/spellcheck.tcl:68 -msgid "Invalid spell checking configuration" +#: lib/blame.tcl:78 +msgid "Commit:" msgstr "" -#: lib/spellcheck.tcl:70 -#, tcl-format -msgid "Reverting dictionary to %s." +#: lib/blame.tcl:271 +msgid "Copy Commit" msgstr "" -#: lib/spellcheck.tcl:73 -msgid "Spell checker silently failed on startup" +#: lib/blame.tcl:275 +msgid "Find Text..." msgstr "" -#: lib/spellcheck.tcl:80 -msgid "Unrecognized spell checker" +#: lib/blame.tcl:284 +msgid "Do Full Copy Detection" msgstr "" -#: lib/spellcheck.tcl:186 -msgid "No Suggestions" +#: lib/blame.tcl:288 +msgid "Show History Context" msgstr "" -#: lib/spellcheck.tcl:388 -msgid "Unexpected EOF from spell checker" +#: lib/blame.tcl:291 +msgid "Blame Parent Commit" msgstr "" -#: lib/spellcheck.tcl:392 -msgid "Spell Checker Failed" +#: lib/blame.tcl:450 +#, tcl-format +msgid "Reading %s..." msgstr "" -#: lib/transport.tcl:6 lib/remote_add.tcl:132 -#, tcl-format -msgid "fetch %s" +#: lib/blame.tcl:557 +msgid "Loading copy/move tracking annotations..." msgstr "" -#: lib/transport.tcl:7 -#, tcl-format -msgid "Fetching new changes from %s" +#: lib/blame.tcl:577 +msgid "lines annotated" msgstr "" -#: lib/transport.tcl:18 -#, tcl-format -msgid "remote prune %s" +#: lib/blame.tcl:769 +msgid "Loading original location annotations..." msgstr "" -#: lib/transport.tcl:19 -#, tcl-format -msgid "Pruning tracking branches deleted from %s" +#: lib/blame.tcl:772 +msgid "Annotation complete." msgstr "" -#: lib/transport.tcl:25 -msgid "fetch all remotes" +#: lib/blame.tcl:802 +msgid "Busy" msgstr "" -#: lib/transport.tcl:26 -msgid "Fetching new changes from all remotes" +#: lib/blame.tcl:803 +msgid "Annotation process is already running." msgstr "" -#: lib/transport.tcl:40 -msgid "remote prune all remotes" +#: lib/blame.tcl:842 +msgid "Running thorough copy detection..." msgstr "" -#: lib/transport.tcl:41 -msgid "Pruning tracking branches deleted from all remotes" +#: lib/blame.tcl:910 +msgid "Loading annotation..." msgstr "" -#: lib/transport.tcl:54 lib/transport.tcl:92 lib/transport.tcl:110 -#: lib/remote_add.tcl:162 -#, tcl-format -msgid "push %s" +#: lib/blame.tcl:963 +msgid "Author:" msgstr "" -#: lib/transport.tcl:55 -#, tcl-format -msgid "Pushing changes to %s" +#: lib/blame.tcl:967 +msgid "Committer:" msgstr "" -#: lib/transport.tcl:93 -#, tcl-format -msgid "Mirroring to %s" +#: lib/blame.tcl:972 +msgid "Original File:" msgstr "" -#: lib/transport.tcl:111 -#, tcl-format -msgid "Pushing %s %s to %s" +#: lib/blame.tcl:1020 +msgid "Cannot find HEAD commit:" msgstr "" -#: lib/transport.tcl:132 -msgid "Push Branches" +#: lib/blame.tcl:1075 +msgid "Cannot find parent commit:" msgstr "" -#: lib/transport.tcl:141 lib/checkout_op.tcl:580 lib/remote_add.tcl:34 -#: lib/browser.tcl:292 lib/branch_checkout.tcl:30 lib/branch_rename.tcl:32 -#: lib/choose_font.tcl:45 lib/option.tcl:127 lib/tools_dlg.tcl:41 -#: lib/tools_dlg.tcl:202 lib/tools_dlg.tcl:345 lib/remote_branch_delete.tcl:43 -#: lib/branch_create.tcl:37 lib/branch_delete.tcl:34 lib/merge.tcl:178 -msgid "Cancel" +#: lib/blame.tcl:1090 +msgid "Unable to display parent" msgstr "" -#: lib/transport.tcl:147 -msgid "Source Branches" +#: lib/blame.tcl:1091 lib/diff.tcl:320 +msgid "Error loading diff:" msgstr "" -#: lib/transport.tcl:162 -msgid "Destination Repository" +#: lib/blame.tcl:1231 +msgid "Originally By:" msgstr "" -#: lib/transport.tcl:165 lib/remote_branch_delete.tcl:51 -msgid "Remote:" +#: lib/blame.tcl:1237 +msgid "In File:" msgstr "" -#: lib/transport.tcl:187 lib/remote_branch_delete.tcl:72 -msgid "Arbitrary Location:" +#: lib/blame.tcl:1242 +msgid "Copied Or Moved Here By:" msgstr "" -#: lib/transport.tcl:205 -msgid "Transfer Options" +#: lib/branch_checkout.tcl:14 lib/branch_checkout.tcl:19 +msgid "Checkout Branch" msgstr "" -#: lib/transport.tcl:207 -msgid "Force overwrite existing branch (may discard changes)" +#: lib/branch_checkout.tcl:23 +msgid "Checkout" msgstr "" -#: lib/transport.tcl:211 -msgid "Use thin pack (for slow network connections)" +#: lib/branch_checkout.tcl:27 lib/branch_create.tcl:35 +#: lib/branch_delete.tcl:32 lib/branch_rename.tcl:30 lib/browser.tcl:282 +#: lib/checkout_op.tcl:579 lib/choose_font.tcl:43 lib/merge.tcl:172 +#: lib/option.tcl:125 lib/remote_add.tcl:32 lib/remote_branch_delete.tcl:42 +#: lib/tools_dlg.tcl:40 lib/tools_dlg.tcl:204 lib/tools_dlg.tcl:352 +#: lib/transport.tcl:108 +msgid "Cancel" msgstr "" -#: lib/transport.tcl:215 -msgid "Include tags" +#: lib/branch_checkout.tcl:32 lib/browser.tcl:287 lib/tools_dlg.tcl:328 +msgid "Revision" msgstr "" -#: lib/transport.tcl:229 -#, tcl-format -msgid "%s (%s): Push" +#: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:280 +msgid "Options" msgstr "" -#: lib/checkout_op.tcl:85 -#, tcl-format -msgid "Fetching %s from %s" +#: lib/branch_checkout.tcl:39 lib/branch_create.tcl:92 +msgid "Fetch Tracking Branch" msgstr "" -#: lib/checkout_op.tcl:133 -#, tcl-format -msgid "fatal: Cannot resolve %s" +#: lib/branch_checkout.tcl:44 +msgid "Detach From Local Branch" msgstr "" -#: lib/checkout_op.tcl:146 lib/sshkey.tcl:58 lib/console.tcl:81 -#: lib/database.tcl:30 -msgid "Close" +#: lib/branch_create.tcl:22 +msgid "Create Branch" msgstr "" -#: lib/checkout_op.tcl:175 -#, tcl-format -msgid "Branch '%s' does not exist." +#: lib/branch_create.tcl:27 +msgid "Create New Branch" msgstr "" -#: lib/checkout_op.tcl:194 -#, tcl-format -msgid "Failed to configure simplified git-pull for '%s'." +#: lib/branch_create.tcl:31 lib/choose_repository.tcl:381 +msgid "Create" msgstr "" -#: lib/checkout_op.tcl:202 lib/branch_rename.tcl:102 -#, tcl-format -msgid "Branch '%s' already exists." +#: lib/branch_create.tcl:40 +msgid "Branch Name" msgstr "" -#: lib/checkout_op.tcl:229 -#, tcl-format -msgid "" -"Branch '%s' already exists.\n" -"\n" -"It cannot fast-forward to %s.\n" -"A merge is required." +#: lib/branch_create.tcl:43 lib/remote_add.tcl:39 lib/tools_dlg.tcl:50 +msgid "Name:" msgstr "" -#: lib/checkout_op.tcl:243 -#, tcl-format -msgid "Merge strategy '%s' not supported." +#: lib/branch_create.tcl:58 +msgid "Match Tracking Branch Name" msgstr "" -#: lib/checkout_op.tcl:262 -#, tcl-format -msgid "Failed to update '%s'." +#: lib/branch_create.tcl:66 +msgid "Starting Revision" msgstr "" -#: lib/checkout_op.tcl:274 -msgid "Staging area (index) is already locked." +#: lib/branch_create.tcl:72 +msgid "Update Existing Branch:" msgstr "" -#: lib/checkout_op.tcl:289 -msgid "" -"Last scanned state does not match repository state.\n" -"\n" -"Another Git program has modified this repository since the last scan. A " -"rescan must be performed before the current branch can be changed.\n" -"\n" -"The rescan will be automatically started now.\n" +#: lib/branch_create.tcl:75 +msgid "No" msgstr "" -#: lib/checkout_op.tcl:345 -#, tcl-format -msgid "Updating working directory to '%s'..." +#: lib/branch_create.tcl:80 +msgid "Fast Forward Only" msgstr "" -#: lib/checkout_op.tcl:346 -msgid "files checked out" +#: lib/branch_create.tcl:85 lib/checkout_op.tcl:571 +msgid "Reset" msgstr "" -#: lib/checkout_op.tcl:377 -#, tcl-format -msgid "Aborted checkout of '%s' (file level merging is required)." +#: lib/branch_create.tcl:97 +msgid "Checkout After Creation" msgstr "" -#: lib/checkout_op.tcl:378 -msgid "File level merge required." +#: lib/branch_create.tcl:131 +msgid "Please select a tracking branch." msgstr "" -#: lib/checkout_op.tcl:382 +#: lib/branch_create.tcl:140 #, tcl-format -msgid "Staying on branch '%s'." +msgid "Tracking branch %s is not a branch in the remote repository." msgstr "" -#: lib/checkout_op.tcl:453 -msgid "" -"You are no longer on a local branch.\n" -"\n" -"If you wanted to be on a branch, create one now starting from 'This Detached " -"Checkout'." +#: lib/branch_create.tcl:153 lib/branch_rename.tcl:86 +msgid "Please supply a branch name." msgstr "" -#: lib/checkout_op.tcl:504 lib/checkout_op.tcl:508 +#: lib/branch_create.tcl:164 lib/branch_rename.tcl:106 #, tcl-format -msgid "Checked out '%s'." +msgid "'%s' is not an acceptable branch name." msgstr "" -#: lib/checkout_op.tcl:536 -#, tcl-format -msgid "Resetting '%s' to '%s' will lose the following commits:" +#: lib/branch_delete.tcl:15 +msgid "Delete Branch" msgstr "" -#: lib/checkout_op.tcl:558 -msgid "Recovering lost commits may not be easy." +#: lib/branch_delete.tcl:20 +msgid "Delete Local Branch" msgstr "" -#: lib/checkout_op.tcl:563 -#, tcl-format -msgid "Reset '%s'?" +#: lib/branch_delete.tcl:37 +msgid "Local Branches" msgstr "" -#: lib/checkout_op.tcl:568 lib/tools_dlg.tcl:336 lib/merge.tcl:170 -msgid "Visualize" +#: lib/branch_delete.tcl:52 +msgid "Delete Only If Merged Into" msgstr "" -#: lib/checkout_op.tcl:572 lib/branch_create.tcl:85 -msgid "Reset" +#: lib/branch_delete.tcl:54 lib/remote_branch_delete.tcl:119 +msgid "Always (Do not perform merge checks)" msgstr "" -#: lib/checkout_op.tcl:636 +#: lib/branch_delete.tcl:103 #, tcl-format +msgid "The following branches are not completely merged into %s:" +msgstr "" + +#: lib/branch_delete.tcl:115 lib/remote_branch_delete.tcl:217 msgid "" -"Failed to set current branch.\n" -"\n" -"This working directory is only partially switched. We successfully updated " -"your files, but failed to update an internal Git file.\n" +"Recovering deleted branches is difficult.\n" "\n" -"This should not have occurred. %s will now close and give up." +"Delete the selected branches?" msgstr "" -#: lib/remote_add.tcl:20 +#: lib/branch_delete.tcl:141 #, tcl-format -msgid "%s (%s): Add Remote" +msgid "" +"Failed to delete branches:\n" +"%s" msgstr "" -#: lib/remote_add.tcl:25 -msgid "Add New Remote" +#: lib/branch_rename.tcl:14 lib/branch_rename.tcl:22 +msgid "Rename Branch" msgstr "" -#: lib/remote_add.tcl:30 lib/tools_dlg.tcl:37 -msgid "Add" +#: lib/branch_rename.tcl:26 +msgid "Rename" msgstr "" -#: lib/remote_add.tcl:39 -msgid "Remote Details" +#: lib/branch_rename.tcl:36 +msgid "Branch:" msgstr "" -#: lib/remote_add.tcl:41 lib/tools_dlg.tcl:51 lib/branch_create.tcl:44 -msgid "Name:" +#: lib/branch_rename.tcl:39 +msgid "New Name:" msgstr "" -#: lib/remote_add.tcl:50 -msgid "Location:" +#: lib/branch_rename.tcl:75 +msgid "Please select a branch to rename." msgstr "" -#: lib/remote_add.tcl:60 -msgid "Further Action" +#: lib/branch_rename.tcl:96 lib/checkout_op.tcl:202 +#, tcl-format +msgid "Branch '%s' already exists." msgstr "" -#: lib/remote_add.tcl:63 -msgid "Fetch Immediately" +#: lib/branch_rename.tcl:117 +#, tcl-format +msgid "Failed to rename '%s'." msgstr "" -#: lib/remote_add.tcl:69 -msgid "Initialize Remote Repository and Push" +#: lib/browser.tcl:17 +msgid "Starting..." msgstr "" -#: lib/remote_add.tcl:75 -msgid "Do Nothing Else Now" +#: lib/browser.tcl:26 +msgid "File Browser" msgstr "" -#: lib/remote_add.tcl:100 -msgid "Please supply a remote name." +#: lib/browser.tcl:126 lib/browser.tcl:143 +#, tcl-format +msgid "Loading %s..." msgstr "" -#: lib/remote_add.tcl:113 -#, tcl-format -msgid "'%s' is not an acceptable remote name." +#: lib/browser.tcl:187 +msgid "[Up To Parent]" msgstr "" -#: lib/remote_add.tcl:124 -#, tcl-format -msgid "Failed to add remote '%s' of location '%s'." +#: lib/browser.tcl:267 lib/browser.tcl:273 +msgid "Browse Branch Files" msgstr "" -#: lib/remote_add.tcl:133 -#, tcl-format -msgid "Fetching the %s" +#: lib/browser.tcl:278 lib/choose_repository.tcl:398 +#: lib/choose_repository.tcl:486 lib/choose_repository.tcl:497 +#: lib/choose_repository.tcl:1028 +msgid "Browse" msgstr "" -#: lib/remote_add.tcl:156 +#: lib/checkout_op.tcl:85 #, tcl-format -msgid "Do not know how to initialize repository at location '%s'." +msgid "Fetching %s from %s" msgstr "" -#: lib/remote_add.tcl:163 +#: lib/checkout_op.tcl:133 #, tcl-format -msgid "Setting up the %s (at %s)" +msgid "fatal: Cannot resolve %s" msgstr "" -#: lib/browser.tcl:17 -msgid "Starting..." +#: lib/checkout_op.tcl:146 lib/console.tcl:81 lib/database.tcl:31 +#: lib/sshkey.tcl:53 +msgid "Close" msgstr "" -#: lib/browser.tcl:27 +#: lib/checkout_op.tcl:175 #, tcl-format -msgid "%s (%s): File Browser" +msgid "Branch '%s' does not exist." msgstr "" -#: lib/browser.tcl:132 lib/browser.tcl:149 +#: lib/checkout_op.tcl:194 #, tcl-format -msgid "Loading %s..." -msgstr "" - -#: lib/browser.tcl:193 -msgid "[Up To Parent]" +msgid "Failed to configure simplified git-pull for '%s'." msgstr "" -#: lib/browser.tcl:275 +#: lib/checkout_op.tcl:229 #, tcl-format -msgid "%s (%s): Browse Branch Files" +msgid "" +"Branch '%s' already exists.\n" +"\n" +"It cannot fast-forward to %s.\n" +"A merge is required." msgstr "" -#: lib/browser.tcl:282 -msgid "Browse Branch Files" +#: lib/checkout_op.tcl:243 +#, tcl-format +msgid "Merge strategy '%s' not supported." msgstr "" -#: lib/browser.tcl:288 lib/choose_repository.tcl:437 -#: lib/choose_repository.tcl:524 lib/choose_repository.tcl:533 -#: lib/choose_repository.tcl:1115 -msgid "Browse" +#: lib/checkout_op.tcl:262 +#, tcl-format +msgid "Failed to update '%s'." msgstr "" -#: lib/browser.tcl:297 lib/branch_checkout.tcl:35 lib/tools_dlg.tcl:321 -msgid "Revision" +#: lib/checkout_op.tcl:274 +msgid "Staging area (index) is already locked." msgstr "" -#: lib/index.tcl:6 -msgid "Unable to unlock the index." +#: lib/checkout_op.tcl:289 +msgid "" +"Last scanned state does not match repository state.\n" +"\n" +"Another Git program has modified this repository since the last scan. A " +"rescan must be performed before the current branch can be changed.\n" +"\n" +"The rescan will be automatically started now.\n" msgstr "" -#: lib/index.tcl:30 -msgid "Index Error" +#: lib/checkout_op.tcl:345 +#, tcl-format +msgid "Updating working directory to '%s'..." msgstr "" -#: lib/index.tcl:32 -msgid "" -"Updating the Git index failed. A rescan will be automatically started to " -"resynchronize git-gui." +#: lib/checkout_op.tcl:346 +msgid "files checked out" msgstr "" -#: lib/index.tcl:43 -msgid "Continue" +#: lib/checkout_op.tcl:376 +#, tcl-format +msgid "Aborted checkout of '%s' (file level merging is required)." msgstr "" -#: lib/index.tcl:46 -msgid "Unlock Index" +#: lib/checkout_op.tcl:377 +msgid "File level merge required." msgstr "" -#: lib/index.tcl:77 lib/index.tcl:146 lib/index.tcl:220 lib/index.tcl:587 -#: lib/choose_repository.tcl:999 -msgid "files" +#: lib/checkout_op.tcl:381 +#, tcl-format +msgid "Staying on branch '%s'." msgstr "" -#: lib/index.tcl:326 -msgid "Unstaging selected files from commit" +#: lib/checkout_op.tcl:452 +msgid "" +"You are no longer on a local branch.\n" +"\n" +"If you wanted to be on a branch, create one now starting from 'This Detached " +"Checkout'." msgstr "" -#: lib/index.tcl:330 +#: lib/checkout_op.tcl:503 lib/checkout_op.tcl:507 #, tcl-format -msgid "Unstaging %s from commit" +msgid "Checked out '%s'." msgstr "" -#: lib/index.tcl:369 -msgid "Ready to commit." +#: lib/checkout_op.tcl:535 +#, tcl-format +msgid "Resetting '%s' to '%s' will lose the following commits:" msgstr "" -#: lib/index.tcl:378 -msgid "Adding selected files" +#: lib/checkout_op.tcl:557 +msgid "Recovering lost commits may not be easy." msgstr "" -#: lib/index.tcl:382 +#: lib/checkout_op.tcl:562 #, tcl-format -msgid "Adding %s" +msgid "Reset '%s'?" msgstr "" -#: lib/index.tcl:412 -#, tcl-format -msgid "Stage %d untracked files?" +#: lib/checkout_op.tcl:567 lib/merge.tcl:164 lib/tools_dlg.tcl:343 +msgid "Visualize" msgstr "" -#: lib/index.tcl:420 -msgid "Adding all changed files" +#: lib/checkout_op.tcl:635 +#, tcl-format +msgid "" +"Failed to set current branch.\n" +"\n" +"This working directory is only partially switched. We successfully updated " +"your files, but failed to update an internal Git file.\n" +"\n" +"This should not have occurred. %s will now close and give up." msgstr "" -#: lib/index.tcl:503 -#, tcl-format -msgid "Revert changes in file %s?" +#: lib/choose_font.tcl:39 +msgid "Select" msgstr "" -#: lib/index.tcl:508 -#, tcl-format -msgid "Revert changes in these %i files?" +#: lib/choose_font.tcl:53 +msgid "Font Family" msgstr "" -#: lib/index.tcl:517 -msgid "Any unstaged changes will be permanently lost by the revert." +#: lib/choose_font.tcl:74 +msgid "Font Size" msgstr "" -#: lib/index.tcl:520 lib/index.tcl:563 -msgid "Do Nothing" +#: lib/choose_font.tcl:91 +msgid "Font Example" msgstr "" -#: lib/index.tcl:545 -#, tcl-format -msgid "Delete untracked file %s?" +#: lib/choose_font.tcl:103 +msgid "" +"This is example text.\n" +"If you like this text, it can be your font." msgstr "" -#: lib/index.tcl:550 -#, tcl-format -msgid "Delete these %i untracked files?" +#: lib/choose_repository.tcl:28 +msgid "Git Gui" msgstr "" -#: lib/index.tcl:560 -msgid "Files will be permanently deleted." +#: lib/choose_repository.tcl:87 lib/choose_repository.tcl:386 +msgid "Create New Repository" msgstr "" -#: lib/index.tcl:564 -msgid "Delete Files" +#: lib/choose_repository.tcl:93 +msgid "New..." msgstr "" -#: lib/index.tcl:586 -msgid "Deleting" +#: lib/choose_repository.tcl:100 lib/choose_repository.tcl:471 +msgid "Clone Existing Repository" msgstr "" -#: lib/index.tcl:665 -msgid "Encountered errors deleting files:\n" +#: lib/choose_repository.tcl:106 +msgid "Clone..." msgstr "" -#: lib/index.tcl:674 -#, tcl-format -msgid "None of the %d selected files could be deleted." +#: lib/choose_repository.tcl:113 lib/choose_repository.tcl:1016 +msgid "Open Existing Repository" msgstr "" -#: lib/index.tcl:679 -#, tcl-format -msgid "%d of the %d selected files could not be deleted." +#: lib/choose_repository.tcl:119 +msgid "Open..." msgstr "" -#: lib/index.tcl:726 -msgid "Reverting selected files" +#: lib/choose_repository.tcl:132 +msgid "Recent Repositories" msgstr "" -#: lib/index.tcl:730 -#, tcl-format -msgid "Reverting %s" +#: lib/choose_repository.tcl:138 +msgid "Open Recent Repository:" msgstr "" -#: lib/branch_checkout.tcl:16 +#: lib/choose_repository.tcl:306 lib/choose_repository.tcl:313 +#: lib/choose_repository.tcl:320 #, tcl-format -msgid "%s (%s): Checkout Branch" +msgid "Failed to create repository %s:" msgstr "" -#: lib/branch_checkout.tcl:21 -msgid "Checkout Branch" +#: lib/choose_repository.tcl:391 +msgid "Directory:" msgstr "" -#: lib/branch_checkout.tcl:26 -msgid "Checkout" +#: lib/choose_repository.tcl:423 lib/choose_repository.tcl:550 +#: lib/choose_repository.tcl:1052 +msgid "Git Repository" msgstr "" -#: lib/branch_checkout.tcl:39 lib/option.tcl:310 lib/branch_create.tcl:69 -msgid "Options" +#: lib/choose_repository.tcl:448 +#, tcl-format +msgid "Directory %s already exists." msgstr "" -#: lib/branch_checkout.tcl:42 lib/branch_create.tcl:92 -msgid "Fetch Tracking Branch" +#: lib/choose_repository.tcl:452 +#, tcl-format +msgid "File %s already exists." msgstr "" -#: lib/branch_checkout.tcl:47 -msgid "Detach From Local Branch" +#: lib/choose_repository.tcl:466 +msgid "Clone" msgstr "" -#: lib/status_bar.tcl:263 -#, tcl-format -msgid "%s ... %*i of %*i %s (%3i%%)" +#: lib/choose_repository.tcl:479 +msgid "Source Location:" msgstr "" -#: lib/remote.tcl:200 -msgid "Push to" +#: lib/choose_repository.tcl:490 +msgid "Target Directory:" msgstr "" -#: lib/remote.tcl:218 -msgid "Remove Remote" +#: lib/choose_repository.tcl:502 +msgid "Clone Type:" msgstr "" -#: lib/remote.tcl:223 -msgid "Prune from" +#: lib/choose_repository.tcl:508 +msgid "Standard (Fast, Semi-Redundant, Hardlinks)" msgstr "" -#: lib/remote.tcl:228 -msgid "Fetch from" +#: lib/choose_repository.tcl:514 +msgid "Full Copy (Slower, Redundant Backup)" msgstr "" -#: lib/remote.tcl:249 lib/remote.tcl:253 lib/remote.tcl:258 lib/remote.tcl:264 -msgid "All" +#: lib/choose_repository.tcl:520 +msgid "Shared (Fastest, Not Recommended, No Backup)" msgstr "" -#: lib/branch_rename.tcl:15 +#: lib/choose_repository.tcl:556 lib/choose_repository.tcl:603 +#: lib/choose_repository.tcl:749 lib/choose_repository.tcl:819 +#: lib/choose_repository.tcl:1058 lib/choose_repository.tcl:1066 #, tcl-format -msgid "%s (%s): Rename Branch" +msgid "Not a Git repository: %s" msgstr "" -#: lib/branch_rename.tcl:23 -msgid "Rename Branch" +#: lib/choose_repository.tcl:592 +msgid "Standard only available for local repository." msgstr "" -#: lib/branch_rename.tcl:28 -msgid "Rename" +#: lib/choose_repository.tcl:596 +msgid "Shared only available for local repository." msgstr "" -#: lib/branch_rename.tcl:38 -msgid "Branch:" +#: lib/choose_repository.tcl:617 +#, tcl-format +msgid "Location %s already exists." msgstr "" -#: lib/branch_rename.tcl:46 -msgid "New Name:" +#: lib/choose_repository.tcl:628 +msgid "Failed to configure origin" msgstr "" -#: lib/branch_rename.tcl:81 -msgid "Please select a branch to rename." +#: lib/choose_repository.tcl:640 +msgid "Counting objects" msgstr "" -#: lib/branch_rename.tcl:92 lib/branch_create.tcl:154 -msgid "Please supply a branch name." +#: lib/choose_repository.tcl:641 +msgid "buckets" msgstr "" -#: lib/branch_rename.tcl:112 lib/branch_create.tcl:165 +#: lib/choose_repository.tcl:665 #, tcl-format -msgid "'%s' is not an acceptable branch name." +msgid "Unable to copy objects/info/alternates: %s" msgstr "" -#: lib/branch_rename.tcl:123 +#: lib/choose_repository.tcl:701 #, tcl-format -msgid "Failed to rename '%s'." -msgstr "" - -#: lib/choose_font.tcl:41 -msgid "Select" +msgid "Nothing to clone from %s." msgstr "" -#: lib/choose_font.tcl:55 -msgid "Font Family" +#: lib/choose_repository.tcl:703 lib/choose_repository.tcl:917 +#: lib/choose_repository.tcl:929 +msgid "The 'master' branch has not been initialized." msgstr "" -#: lib/choose_font.tcl:76 -msgid "Font Size" +#: lib/choose_repository.tcl:716 +msgid "Hardlinks are unavailable. Falling back to copying." msgstr "" -#: lib/choose_font.tcl:93 -msgid "Font Example" +#: lib/choose_repository.tcl:728 +#, tcl-format +msgid "Cloning from %s" msgstr "" -#: lib/choose_font.tcl:105 -msgid "" -"This is example text.\n" -"If you like this text, it can be your font." +#: lib/choose_repository.tcl:759 +msgid "Copying objects" msgstr "" -#: lib/option.tcl:11 -#, tcl-format -msgid "Invalid global encoding '%s'" +#: lib/choose_repository.tcl:760 +msgid "KiB" msgstr "" -#: lib/option.tcl:19 +#: lib/choose_repository.tcl:784 #, tcl-format -msgid "Invalid repo encoding '%s'" +msgid "Unable to copy object: %s" msgstr "" -#: lib/option.tcl:119 -msgid "Restore Defaults" +#: lib/choose_repository.tcl:794 +msgid "Linking objects" msgstr "" -#: lib/option.tcl:123 -msgid "Save" +#: lib/choose_repository.tcl:795 +msgid "objects" msgstr "" -#: lib/option.tcl:133 +#: lib/choose_repository.tcl:803 #, tcl-format -msgid "%s Repository" +msgid "Unable to hardlink object: %s" msgstr "" -#: lib/option.tcl:134 -msgid "Global (All Repositories)" +#: lib/choose_repository.tcl:858 +msgid "Cannot fetch branches and objects. See console output for details." msgstr "" -#: lib/option.tcl:140 -msgid "User Name" +#: lib/choose_repository.tcl:869 +msgid "Cannot fetch tags. See console output for details." msgstr "" -#: lib/option.tcl:141 -msgid "Email Address" +#: lib/choose_repository.tcl:893 +msgid "Cannot determine HEAD. See console output for details." msgstr "" -#: lib/option.tcl:143 -msgid "Summarize Merge Commits" +#: lib/choose_repository.tcl:902 +#, tcl-format +msgid "Unable to cleanup %s" msgstr "" -#: lib/option.tcl:144 -msgid "Merge Verbosity" +#: lib/choose_repository.tcl:908 +msgid "Clone failed." msgstr "" -#: lib/option.tcl:145 -msgid "Show Diffstat After Merge" +#: lib/choose_repository.tcl:915 +msgid "No default branch obtained." msgstr "" -#: lib/option.tcl:146 -msgid "Use Merge Tool" +#: lib/choose_repository.tcl:926 +#, tcl-format +msgid "Cannot resolve %s as a commit." msgstr "" -#: lib/option.tcl:148 -msgid "Trust File Modification Timestamps" +#: lib/choose_repository.tcl:938 +msgid "Creating working directory" msgstr "" -#: lib/option.tcl:149 -msgid "Prune Tracking Branches During Fetch" +#: lib/choose_repository.tcl:939 lib/index.tcl:67 lib/index.tcl:130 +#: lib/index.tcl:198 +msgid "files" msgstr "" -#: lib/option.tcl:150 -msgid "Match Tracking Branches" +#: lib/choose_repository.tcl:968 +msgid "Initial file checkout failed." msgstr "" -#: lib/option.tcl:151 -msgid "Use Textconv For Diffs and Blames" +#: lib/choose_repository.tcl:1011 +msgid "Open" msgstr "" -#: lib/option.tcl:152 -msgid "Blame Copy Only On Changed Files" +#: lib/choose_repository.tcl:1021 +msgid "Repository:" msgstr "" -#: lib/option.tcl:153 -msgid "Maximum Length of Recent Repositories List" +#: lib/choose_repository.tcl:1072 +#, tcl-format +msgid "Failed to open repository %s:" msgstr "" -#: lib/option.tcl:154 -msgid "Minimum Letters To Blame Copy On" +#: lib/choose_rev.tcl:53 +msgid "This Detached Checkout" msgstr "" -#: lib/option.tcl:155 -msgid "Blame History Context Radius (days)" +#: lib/choose_rev.tcl:60 +msgid "Revision Expression:" msgstr "" -#: lib/option.tcl:156 -msgid "Number of Diff Context Lines" +#: lib/choose_rev.tcl:74 +msgid "Local Branch" msgstr "" -#: lib/option.tcl:157 -msgid "Additional Diff Parameters" +#: lib/choose_rev.tcl:79 +msgid "Tracking Branch" msgstr "" -#: lib/option.tcl:158 -msgid "Commit Message Text Width" +#: lib/choose_rev.tcl:84 lib/choose_rev.tcl:538 +msgid "Tag" msgstr "" -#: lib/option.tcl:159 -msgid "New Branch Name Template" +#: lib/choose_rev.tcl:317 +#, tcl-format +msgid "Invalid revision: %s" msgstr "" -#: lib/option.tcl:160 -msgid "Default File Contents Encoding" +#: lib/choose_rev.tcl:338 +msgid "No revision selected." msgstr "" -#: lib/option.tcl:161 -msgid "Warn before committing to a detached head" +#: lib/choose_rev.tcl:346 +msgid "Revision expression is empty." msgstr "" -#: lib/option.tcl:162 -msgid "Staging of untracked files" +#: lib/choose_rev.tcl:531 +msgid "Updated" msgstr "" -#: lib/option.tcl:163 -msgid "Show untracked files" +#: lib/choose_rev.tcl:559 +msgid "URL" msgstr "" -#: lib/option.tcl:164 -msgid "Tab spacing" +#: lib/commit.tcl:9 +msgid "" +"There is nothing to amend.\n" +"\n" +"You are about to create the initial commit. There is no commit before this " +"to amend.\n" msgstr "" -#: lib/option.tcl:182 lib/option.tcl:197 lib/option.tcl:220 lib/option.tcl:282 -#: lib/database.tcl:57 -#, tcl-format -msgid "%s:" -msgstr "" - -#: lib/option.tcl:210 -msgid "Change" -msgstr "" - -#: lib/option.tcl:254 -msgid "Spelling Dictionary:" -msgstr "" - -#: lib/option.tcl:284 -msgid "Change Font" -msgstr "" - -#: lib/option.tcl:288 -#, tcl-format -msgid "Choose %s" -msgstr "" - -#: lib/option.tcl:294 -msgid "pt." -msgstr "" - -#: lib/option.tcl:308 -msgid "Preferences" -msgstr "" - -#: lib/option.tcl:345 -msgid "Failed to completely save options:" -msgstr "" - -#: lib/encoding.tcl:443 -msgid "Default" -msgstr "" - -#: lib/encoding.tcl:448 -#, tcl-format -msgid "System (%s)" -msgstr "" - -#: lib/encoding.tcl:459 lib/encoding.tcl:465 -msgid "Other" +#: lib/commit.tcl:18 +msgid "" +"Cannot amend while merging.\n" +"\n" +"You are currently in the middle of a merge that has not been fully " +"completed. You cannot amend the prior commit unless you first abort the " +"current merge activity.\n" msgstr "" -#: lib/tools.tcl:76 -#, tcl-format -msgid "Running %s requires a selected file." +#: lib/commit.tcl:48 +msgid "Error loading commit data for amend:" msgstr "" -#: lib/tools.tcl:92 -#, tcl-format -msgid "Are you sure you want to run %1$s on file \"%2$s\"?" +#: lib/commit.tcl:75 +msgid "Unable to obtain your identity:" msgstr "" -#: lib/tools.tcl:96 -#, tcl-format -msgid "Are you sure you want to run %s?" +#: lib/commit.tcl:80 +msgid "Invalid GIT_COMMITTER_IDENT:" msgstr "" -#: lib/tools.tcl:118 +#: lib/commit.tcl:129 #, tcl-format -msgid "Tool: %s" +msgid "warning: Tcl does not support encoding '%s'." msgstr "" -#: lib/tools.tcl:119 -#, tcl-format -msgid "Running: %s" +#: lib/commit.tcl:149 +msgid "" +"Last scanned state does not match repository state.\n" +"\n" +"Another Git program has modified this repository since the last scan. A " +"rescan must be performed before another commit can be created.\n" +"\n" +"The rescan will be automatically started now.\n" msgstr "" -#: lib/tools.tcl:158 +#: lib/commit.tcl:172 #, tcl-format -msgid "Tool completed successfully: %s" +msgid "" +"Unmerged files cannot be committed.\n" +"\n" +"File %s has merge conflicts. You must resolve them and stage the file " +"before committing.\n" msgstr "" -#: lib/tools.tcl:160 +#: lib/commit.tcl:180 #, tcl-format -msgid "Tool failed: %s" -msgstr "" - -#: lib/mergetool.tcl:8 -msgid "Force resolution to the base version?" -msgstr "" - -#: lib/mergetool.tcl:9 -msgid "Force resolution to this branch?" +msgid "" +"Unknown file state %s detected.\n" +"\n" +"File %s cannot be committed by this program.\n" msgstr "" -#: lib/mergetool.tcl:10 -msgid "Force resolution to the other branch?" +#: lib/commit.tcl:188 +msgid "" +"No changes to commit.\n" +"\n" +"You must stage at least 1 file before you can commit.\n" msgstr "" -#: lib/mergetool.tcl:14 -#, tcl-format +#: lib/commit.tcl:203 msgid "" -"Note that the diff shows only conflicting changes.\n" +"Please supply a commit message.\n" "\n" -"%s will be overwritten.\n" +"A good commit message has the following format:\n" "\n" -"This operation can be undone only by restarting the merge." +"- First line: Describe in one sentence what you did.\n" +"- Second line: Blank\n" +"- Remaining lines: Describe why this change is good.\n" msgstr "" -#: lib/mergetool.tcl:45 -#, tcl-format -msgid "File %s seems to have unresolved conflicts, still stage?" +#: lib/commit.tcl:234 +msgid "Calling pre-commit hook..." msgstr "" -#: lib/mergetool.tcl:60 -#, tcl-format -msgid "Adding resolution for %s" +#: lib/commit.tcl:249 +msgid "Commit declined by pre-commit hook." msgstr "" -#: lib/mergetool.tcl:141 -msgid "Cannot resolve deletion or link conflicts using a tool" +#: lib/commit.tcl:272 +msgid "Calling commit-msg hook..." msgstr "" -#: lib/mergetool.tcl:146 -msgid "Conflict file does not exist" +#: lib/commit.tcl:287 +msgid "Commit declined by commit-msg hook." msgstr "" -#: lib/mergetool.tcl:246 -#, tcl-format -msgid "Not a GUI merge tool: '%s'" +#: lib/commit.tcl:300 +msgid "Committing changes..." msgstr "" -#: lib/mergetool.tcl:275 -#, tcl-format -msgid "Unsupported merge tool '%s'" +#: lib/commit.tcl:316 +msgid "write-tree failed:" msgstr "" -#: lib/mergetool.tcl:310 -msgid "Merge tool is already running, terminate it?" +#: lib/commit.tcl:317 lib/commit.tcl:361 lib/commit.tcl:382 +msgid "Commit failed." msgstr "" -#: lib/mergetool.tcl:330 +#: lib/commit.tcl:334 #, tcl-format -msgid "" -"Error retrieving versions:\n" -"%s" +msgid "Commit %s appears to be corrupt" msgstr "" -#: lib/mergetool.tcl:350 -#, tcl-format +#: lib/commit.tcl:339 msgid "" -"Could not start the merge tool:\n" +"No changes to commit.\n" "\n" -"%s" +"No files were modified by this commit and it was not a merge commit.\n" +"\n" +"A rescan will be automatically started now.\n" msgstr "" -#: lib/mergetool.tcl:354 -msgid "Running merge tool..." +#: lib/commit.tcl:346 +msgid "No changes to commit." msgstr "" -#: lib/mergetool.tcl:382 lib/mergetool.tcl:390 -msgid "Merge tool failed." +#: lib/commit.tcl:360 +msgid "commit-tree failed:" msgstr "" -#: lib/tools_dlg.tcl:22 +#: lib/commit.tcl:381 +msgid "update-ref failed:" +msgstr "" + +#: lib/commit.tcl:469 #, tcl-format -msgid "%s (%s): Add Tool" +msgid "Created commit %s: %s" msgstr "" -#: lib/tools_dlg.tcl:28 -msgid "Add New Tool Command" +#: lib/console.tcl:59 +msgid "Working... please wait..." msgstr "" -#: lib/tools_dlg.tcl:34 -msgid "Add globally" +#: lib/console.tcl:186 +msgid "Success" msgstr "" -#: lib/tools_dlg.tcl:46 -msgid "Tool Details" +#: lib/console.tcl:200 +msgid "Error: Command Failed" msgstr "" -#: lib/tools_dlg.tcl:49 -msgid "Use '/' separators to create a submenu tree:" +#: lib/database.tcl:43 +msgid "Number of loose objects" msgstr "" -#: lib/tools_dlg.tcl:60 -msgid "Command:" +#: lib/database.tcl:44 +msgid "Disk space used by loose objects" msgstr "" -#: lib/tools_dlg.tcl:71 -msgid "Show a dialog before running" +#: lib/database.tcl:45 +msgid "Number of packed objects" msgstr "" -#: lib/tools_dlg.tcl:77 -msgid "Ask the user to select a revision (sets $REVISION)" +#: lib/database.tcl:46 +msgid "Number of packs" msgstr "" -#: lib/tools_dlg.tcl:82 -msgid "Ask the user for additional arguments (sets $ARGS)" +#: lib/database.tcl:47 +msgid "Disk space used by packed objects" msgstr "" -#: lib/tools_dlg.tcl:89 -msgid "Don't show the command output window" +#: lib/database.tcl:48 +msgid "Packed objects waiting for pruning" msgstr "" -#: lib/tools_dlg.tcl:94 -msgid "Run only if a diff is selected ($FILENAME not empty)" +#: lib/database.tcl:49 +msgid "Garbage files" msgstr "" -#: lib/tools_dlg.tcl:118 -msgid "Please supply a name for the tool." +#: lib/database.tcl:72 +msgid "Compressing the object database" msgstr "" -#: lib/tools_dlg.tcl:126 -#, tcl-format -msgid "Tool '%s' already exists." +#: lib/database.tcl:83 +msgid "Verifying the object database with fsck-objects" msgstr "" -#: lib/tools_dlg.tcl:148 +#: lib/database.tcl:107 #, tcl-format msgid "" -"Could not add tool:\n" -"%s" +"This repository currently has approximately %i loose objects.\n" +"\n" +"To maintain optimal performance it is strongly recommended that you compress " +"the database.\n" +"\n" +"Compress the database now?" msgstr "" -#: lib/tools_dlg.tcl:187 +#: lib/date.tcl:25 #, tcl-format -msgid "%s (%s): Remove Tool" -msgstr "" - -#: lib/tools_dlg.tcl:193 -msgid "Remove Tool Commands" -msgstr "" - -#: lib/tools_dlg.tcl:198 -msgid "Remove" -msgstr "" - -#: lib/tools_dlg.tcl:231 -msgid "(Blue denotes repository-local tools)" +msgid "Invalid date from Git: %s" msgstr "" -#: lib/tools_dlg.tcl:283 +#: lib/diff.tcl:64 #, tcl-format -msgid "%s (%s):" +msgid "" +"No differences detected.\n" +"\n" +"%s has no changes.\n" +"\n" +"The modification date of this file was updated by another application, but " +"the content within the file was not changed.\n" +"\n" +"A rescan will be automatically started to find other files which may have " +"the same state." msgstr "" -#: lib/tools_dlg.tcl:292 +#: lib/diff.tcl:104 #, tcl-format -msgid "Run Command: %s" -msgstr "" - -#: lib/tools_dlg.tcl:306 -msgid "Arguments" -msgstr "" - -#: lib/tools_dlg.tcl:341 -msgid "OK" -msgstr "" - -#: lib/search.tcl:48 -msgid "Find:" -msgstr "" - -#: lib/search.tcl:50 -msgid "Next" -msgstr "" - -#: lib/search.tcl:51 -msgid "Prev" -msgstr "" - -#: lib/search.tcl:52 -msgid "RegExp" +msgid "Loading diff of %s..." msgstr "" -#: lib/search.tcl:54 -msgid "Case" +#: lib/diff.tcl:125 +msgid "" +"LOCAL: deleted\n" +"REMOTE:\n" msgstr "" -#: lib/shortcut.tcl:8 lib/shortcut.tcl:43 lib/shortcut.tcl:75 -#, tcl-format -msgid "%s (%s): Create Desktop Icon" +#: lib/diff.tcl:130 +msgid "" +"REMOTE: deleted\n" +"LOCAL:\n" msgstr "" -#: lib/shortcut.tcl:24 lib/shortcut.tcl:65 -msgid "Cannot write shortcut:" +#: lib/diff.tcl:137 +msgid "LOCAL:\n" msgstr "" -#: lib/shortcut.tcl:140 -msgid "Cannot write icon:" +#: lib/diff.tcl:140 +msgid "REMOTE:\n" msgstr "" -#: lib/remote_branch_delete.tcl:29 +#: lib/diff.tcl:202 lib/diff.tcl:319 #, tcl-format -msgid "%s (%s): Delete Branch Remotely" -msgstr "" - -#: lib/remote_branch_delete.tcl:34 -msgid "Delete Branch Remotely" -msgstr "" - -#: lib/remote_branch_delete.tcl:48 -msgid "From Repository" -msgstr "" - -#: lib/remote_branch_delete.tcl:88 -msgid "Branches" +msgid "Unable to display %s" msgstr "" -#: lib/remote_branch_delete.tcl:110 -msgid "Delete Only If" +#: lib/diff.tcl:203 +msgid "Error loading file:" msgstr "" -#: lib/remote_branch_delete.tcl:112 -msgid "Merged Into:" +#: lib/diff.tcl:210 +msgid "Git Repository (subproject)" msgstr "" -#: lib/remote_branch_delete.tcl:120 lib/branch_delete.tcl:53 -msgid "Always (Do not perform merge checks)" +#: lib/diff.tcl:222 +msgid "* Binary file (not showing content)." msgstr "" -#: lib/remote_branch_delete.tcl:153 -msgid "A branch is required for 'Merged Into'." +#: lib/diff.tcl:227 +#, tcl-format +msgid "" +"* Untracked file is %d bytes.\n" +"* Showing only first %d bytes.\n" msgstr "" -#: lib/remote_branch_delete.tcl:185 +#: lib/diff.tcl:233 #, tcl-format msgid "" -"The following branches are not completely merged into %s:\n" "\n" -" - %s" +"* Untracked file clipped here by %s.\n" +"* To see the entire file, use an external editor.\n" msgstr "" -#: lib/remote_branch_delete.tcl:190 -#, tcl-format -msgid "" -"One or more of the merge tests failed because you have not fetched the " -"necessary commits. Try fetching from %s first." +#: lib/diff.tcl:482 +msgid "Failed to unstage selected hunk." msgstr "" -#: lib/remote_branch_delete.tcl:208 -msgid "Please select one or more branches to delete." +#: lib/diff.tcl:489 +msgid "Failed to stage selected hunk." msgstr "" -#: lib/remote_branch_delete.tcl:218 lib/branch_delete.tcl:115 -msgid "" -"Recovering deleted branches is difficult.\n" -"\n" -"Delete the selected branches?" +#: lib/diff.tcl:568 +msgid "Failed to unstage selected line." msgstr "" -#: lib/remote_branch_delete.tcl:227 -#, tcl-format -msgid "Deleting branches from %s" +#: lib/diff.tcl:576 +msgid "Failed to stage selected line." msgstr "" -#: lib/remote_branch_delete.tcl:300 -msgid "No repository selected." +#: lib/encoding.tcl:443 +msgid "Default" msgstr "" -#: lib/remote_branch_delete.tcl:305 +#: lib/encoding.tcl:448 #, tcl-format -msgid "Scanning %s..." +msgid "System (%s)" msgstr "" -#: lib/choose_repository.tcl:45 -msgid "Git Gui" +#: lib/encoding.tcl:459 lib/encoding.tcl:465 +msgid "Other" msgstr "" -#: lib/choose_repository.tcl:104 lib/choose_repository.tcl:427 -msgid "Create New Repository" +#: lib/error.tcl:20 lib/error.tcl:114 +msgid "error" msgstr "" -#: lib/choose_repository.tcl:110 -msgid "New..." +#: lib/error.tcl:36 +msgid "warning" msgstr "" -#: lib/choose_repository.tcl:117 lib/choose_repository.tcl:511 -msgid "Clone Existing Repository" +#: lib/error.tcl:94 +msgid "You must correct the above errors before committing." msgstr "" -#: lib/choose_repository.tcl:128 -msgid "Clone..." +#: lib/index.tcl:6 +msgid "Unable to unlock the index." msgstr "" -#: lib/choose_repository.tcl:135 lib/choose_repository.tcl:1105 -msgid "Open Existing Repository" +#: lib/index.tcl:15 +msgid "Index Error" msgstr "" -#: lib/choose_repository.tcl:141 -msgid "Open..." +#: lib/index.tcl:17 +msgid "" +"Updating the Git index failed. A rescan will be automatically started to " +"resynchronize git-gui." msgstr "" -#: lib/choose_repository.tcl:154 -msgid "Recent Repositories" +#: lib/index.tcl:28 +msgid "Continue" msgstr "" -#: lib/choose_repository.tcl:164 -msgid "Open Recent Repository:" +#: lib/index.tcl:31 +msgid "Unlock Index" msgstr "" -#: lib/choose_repository.tcl:331 lib/choose_repository.tcl:338 -#: lib/choose_repository.tcl:345 +#: lib/index.tcl:289 #, tcl-format -msgid "Failed to create repository %s:" -msgstr "" - -#: lib/choose_repository.tcl:422 lib/branch_create.tcl:33 -msgid "Create" -msgstr "" - -#: lib/choose_repository.tcl:432 -msgid "Directory:" +msgid "Unstaging %s from commit" msgstr "" -#: lib/choose_repository.tcl:462 lib/choose_repository.tcl:588 -#: lib/choose_repository.tcl:1139 -msgid "Git Repository" +#: lib/index.tcl:328 +msgid "Ready to commit." msgstr "" -#: lib/choose_repository.tcl:487 +#: lib/index.tcl:341 #, tcl-format -msgid "Directory %s already exists." +msgid "Adding %s" msgstr "" -#: lib/choose_repository.tcl:491 +#: lib/index.tcl:398 #, tcl-format -msgid "File %s already exists." -msgstr "" - -#: lib/choose_repository.tcl:506 -msgid "Clone" -msgstr "" - -#: lib/choose_repository.tcl:519 -msgid "Source Location:" -msgstr "" - -#: lib/choose_repository.tcl:528 -msgid "Target Directory:" -msgstr "" - -#: lib/choose_repository.tcl:538 -msgid "Clone Type:" -msgstr "" - -#: lib/choose_repository.tcl:543 -msgid "Standard (Fast, Semi-Redundant, Hardlinks)" -msgstr "" - -#: lib/choose_repository.tcl:548 -msgid "Full Copy (Slower, Redundant Backup)" -msgstr "" - -#: lib/choose_repository.tcl:553 -msgid "Shared (Fastest, Not Recommended, No Backup)" -msgstr "" - -#: lib/choose_repository.tcl:560 -msgid "Recursively clone submodules too" +msgid "Revert changes in file %s?" msgstr "" -#: lib/choose_repository.tcl:594 lib/choose_repository.tcl:641 -#: lib/choose_repository.tcl:790 lib/choose_repository.tcl:864 -#: lib/choose_repository.tcl:1145 lib/choose_repository.tcl:1153 +#: lib/index.tcl:400 #, tcl-format -msgid "Not a Git repository: %s" +msgid "Revert changes in these %i files?" msgstr "" -#: lib/choose_repository.tcl:630 -msgid "Standard only available for local repository." +#: lib/index.tcl:408 +msgid "Any unstaged changes will be permanently lost by the revert." msgstr "" -#: lib/choose_repository.tcl:634 -msgid "Shared only available for local repository." +#: lib/index.tcl:411 +msgid "Do Nothing" msgstr "" -#: lib/choose_repository.tcl:655 -#, tcl-format -msgid "Location %s already exists." +#: lib/index.tcl:429 +msgid "Reverting selected files" msgstr "" -#: lib/choose_repository.tcl:666 -msgid "Failed to configure origin" +#: lib/index.tcl:433 +#, tcl-format +msgid "Reverting %s" msgstr "" -#: lib/choose_repository.tcl:678 -msgid "Counting objects" +#: lib/merge.tcl:13 +msgid "" +"Cannot merge while amending.\n" +"\n" +"You must finish amending this commit before starting any type of merge.\n" msgstr "" -#: lib/choose_repository.tcl:679 -msgid "buckets" +#: lib/merge.tcl:27 +msgid "" +"Last scanned state does not match repository state.\n" +"\n" +"Another Git program has modified this repository since the last scan. A " +"rescan must be performed before a merge can be performed.\n" +"\n" +"The rescan will be automatically started now.\n" msgstr "" -#: lib/choose_repository.tcl:703 +#: lib/merge.tcl:45 #, tcl-format -msgid "Unable to copy objects/info/alternates: %s" +msgid "" +"You are in the middle of a conflicted merge.\n" +"\n" +"File %s has merge conflicts.\n" +"\n" +"You must resolve them, stage the file, and commit to complete the current " +"merge. Only then can you begin another merge.\n" msgstr "" -#: lib/choose_repository.tcl:740 +#: lib/merge.tcl:55 #, tcl-format -msgid "Nothing to clone from %s." -msgstr "" - -#: lib/choose_repository.tcl:742 lib/choose_repository.tcl:962 -#: lib/choose_repository.tcl:974 -msgid "The 'master' branch has not been initialized." -msgstr "" - -#: lib/choose_repository.tcl:755 -msgid "Hardlinks are unavailable. Falling back to copying." +msgid "" +"You are in the middle of a change.\n" +"\n" +"File %s is modified.\n" +"\n" +"You should complete the current commit before starting a merge. Doing so " +"will help you abort a failed merge, should the need arise.\n" msgstr "" -#: lib/choose_repository.tcl:769 +#: lib/merge.tcl:107 #, tcl-format -msgid "Cloning from %s" -msgstr "" - -#: lib/choose_repository.tcl:800 -msgid "Copying objects" -msgstr "" - -#: lib/choose_repository.tcl:801 -msgid "KiB" +msgid "%s of %s" msgstr "" -#: lib/choose_repository.tcl:825 +#: lib/merge.tcl:120 #, tcl-format -msgid "Unable to copy object: %s" +msgid "Merging %s and %s..." msgstr "" -#: lib/choose_repository.tcl:837 -msgid "Linking objects" +#: lib/merge.tcl:131 +msgid "Merge completed successfully." msgstr "" -#: lib/choose_repository.tcl:838 -msgid "objects" +#: lib/merge.tcl:133 +msgid "Merge failed. Conflict resolution is required." msgstr "" -#: lib/choose_repository.tcl:846 +#: lib/merge.tcl:158 #, tcl-format -msgid "Unable to hardlink object: %s" -msgstr "" - -#: lib/choose_repository.tcl:903 -msgid "Cannot fetch branches and objects. See console output for details." -msgstr "" - -#: lib/choose_repository.tcl:914 -msgid "Cannot fetch tags. See console output for details." -msgstr "" - -#: lib/choose_repository.tcl:938 -msgid "Cannot determine HEAD. See console output for details." +msgid "Merge Into %s" msgstr "" -#: lib/choose_repository.tcl:947 -#, tcl-format -msgid "Unable to cleanup %s" +#: lib/merge.tcl:177 +msgid "Revision To Merge" msgstr "" -#: lib/choose_repository.tcl:953 -msgid "Clone failed." +#: lib/merge.tcl:212 +msgid "" +"Cannot abort while amending.\n" +"\n" +"You must finish amending this commit.\n" msgstr "" -#: lib/choose_repository.tcl:960 -msgid "No default branch obtained." +#: lib/merge.tcl:222 +msgid "" +"Abort merge?\n" +"\n" +"Aborting the current merge will cause *ALL* uncommitted changes to be lost.\n" +"\n" +"Continue with aborting the current merge?" msgstr "" -#: lib/choose_repository.tcl:971 -#, tcl-format -msgid "Cannot resolve %s as a commit." +#: lib/merge.tcl:228 +msgid "" +"Reset changes?\n" +"\n" +"Resetting the changes will cause *ALL* uncommitted changes to be lost.\n" +"\n" +"Continue with resetting the current changes?" msgstr "" -#: lib/choose_repository.tcl:998 -msgid "Creating working directory" +#: lib/merge.tcl:239 +msgid "Aborting" msgstr "" -#: lib/choose_repository.tcl:1028 -msgid "Initial file checkout failed." +#: lib/merge.tcl:239 +msgid "files reset" msgstr "" -#: lib/choose_repository.tcl:1072 -msgid "Cloning submodules" +#: lib/merge.tcl:267 +msgid "Abort failed." msgstr "" -#: lib/choose_repository.tcl:1087 -msgid "Cannot clone submodules." +#: lib/merge.tcl:269 +msgid "Abort completed. Ready." msgstr "" -#: lib/choose_repository.tcl:1110 -msgid "Repository:" +#: lib/mergetool.tcl:8 +msgid "Force resolution to the base version?" msgstr "" -#: lib/choose_repository.tcl:1159 -#, tcl-format -msgid "Failed to open repository %s:" +#: lib/mergetool.tcl:9 +msgid "Force resolution to this branch?" msgstr "" -#: lib/about.tcl:26 -msgid "git-gui - a graphical user interface for Git." +#: lib/mergetool.tcl:10 +msgid "Force resolution to the other branch?" msgstr "" -#: lib/blame.tcl:74 +#: lib/mergetool.tcl:14 #, tcl-format -msgid "%s (%s): File Viewer" +msgid "" +"Note that the diff shows only conflicting changes.\n" +"\n" +"%s will be overwritten.\n" +"\n" +"This operation can be undone only by restarting the merge." msgstr "" -#: lib/blame.tcl:80 -msgid "Commit:" +#: lib/mergetool.tcl:45 +#, tcl-format +msgid "File %s seems to have unresolved conflicts, still stage?" msgstr "" -#: lib/blame.tcl:282 -msgid "Copy Commit" +#: lib/mergetool.tcl:60 +#, tcl-format +msgid "Adding resolution for %s" msgstr "" -#: lib/blame.tcl:286 -msgid "Find Text..." +#: lib/mergetool.tcl:141 +msgid "Cannot resolve deletion or link conflicts using a tool" msgstr "" -#: lib/blame.tcl:290 -msgid "Goto Line..." +#: lib/mergetool.tcl:146 +msgid "Conflict file does not exist" msgstr "" -#: lib/blame.tcl:299 -msgid "Do Full Copy Detection" +#: lib/mergetool.tcl:264 +#, tcl-format +msgid "Not a GUI merge tool: '%s'" msgstr "" -#: lib/blame.tcl:303 -msgid "Show History Context" +#: lib/mergetool.tcl:268 +#, tcl-format +msgid "Unsupported merge tool '%s'" msgstr "" -#: lib/blame.tcl:306 -msgid "Blame Parent Commit" +#: lib/mergetool.tcl:303 +msgid "Merge tool is already running, terminate it?" msgstr "" -#: lib/blame.tcl:468 +#: lib/mergetool.tcl:323 #, tcl-format -msgid "Reading %s..." +msgid "" +"Error retrieving versions:\n" +"%s" msgstr "" -#: lib/blame.tcl:596 -msgid "Loading copy/move tracking annotations..." +#: lib/mergetool.tcl:343 +#, tcl-format +msgid "" +"Could not start the merge tool:\n" +"\n" +"%s" msgstr "" -#: lib/blame.tcl:613 -msgid "lines annotated" +#: lib/mergetool.tcl:347 +msgid "Running merge tool..." msgstr "" -#: lib/blame.tcl:815 -msgid "Loading original location annotations..." +#: lib/mergetool.tcl:375 lib/mergetool.tcl:383 +msgid "Merge tool failed." msgstr "" -#: lib/blame.tcl:818 -msgid "Annotation complete." +#: lib/option.tcl:11 +#, tcl-format +msgid "Invalid global encoding '%s'" msgstr "" -#: lib/blame.tcl:849 -msgid "Busy" +#: lib/option.tcl:19 +#, tcl-format +msgid "Invalid repo encoding '%s'" msgstr "" -#: lib/blame.tcl:850 -msgid "Annotation process is already running." +#: lib/option.tcl:117 +msgid "Restore Defaults" msgstr "" -#: lib/blame.tcl:889 -msgid "Running thorough copy detection..." +#: lib/option.tcl:121 +msgid "Save" msgstr "" -#: lib/blame.tcl:957 -msgid "Loading annotation..." +#: lib/option.tcl:131 +#, tcl-format +msgid "%s Repository" msgstr "" -#: lib/blame.tcl:1010 -msgid "Author:" +#: lib/option.tcl:132 +msgid "Global (All Repositories)" msgstr "" -#: lib/blame.tcl:1014 -msgid "Committer:" +#: lib/option.tcl:138 +msgid "User Name" msgstr "" -#: lib/blame.tcl:1019 -msgid "Original File:" +#: lib/option.tcl:139 +msgid "Email Address" msgstr "" -#: lib/blame.tcl:1067 -msgid "Cannot find HEAD commit:" +#: lib/option.tcl:141 +msgid "Summarize Merge Commits" msgstr "" -#: lib/blame.tcl:1122 -msgid "Cannot find parent commit:" +#: lib/option.tcl:142 +msgid "Merge Verbosity" msgstr "" -#: lib/blame.tcl:1137 -msgid "Unable to display parent" +#: lib/option.tcl:143 +msgid "Show Diffstat After Merge" msgstr "" -#: lib/blame.tcl:1138 lib/diff.tcl:345 -msgid "Error loading diff:" +#: lib/option.tcl:144 +msgid "Use Merge Tool" msgstr "" -#: lib/blame.tcl:1279 -msgid "Originally By:" +#: lib/option.tcl:146 +msgid "Trust File Modification Timestamps" msgstr "" -#: lib/blame.tcl:1285 -msgid "In File:" +#: lib/option.tcl:147 +msgid "Prune Tracking Branches During Fetch" msgstr "" -#: lib/blame.tcl:1290 -msgid "Copied Or Moved Here By:" +#: lib/option.tcl:148 +msgid "Match Tracking Branches" msgstr "" -#: lib/diff.tcl:77 -#, tcl-format -msgid "" -"No differences detected.\n" -"\n" -"%s has no changes.\n" -"\n" -"The modification date of this file was updated by another application, but " -"the content within the file was not changed.\n" -"\n" -"A rescan will be automatically started to find other files which may have " -"the same state." +#: lib/option.tcl:149 +msgid "Blame Copy Only On Changed Files" msgstr "" -#: lib/diff.tcl:117 -#, tcl-format -msgid "Loading diff of %s..." +#: lib/option.tcl:150 +msgid "Minimum Letters To Blame Copy On" msgstr "" -#: lib/diff.tcl:143 -msgid "" -"LOCAL: deleted\n" -"REMOTE:\n" +#: lib/option.tcl:151 +msgid "Blame History Context Radius (days)" msgstr "" -#: lib/diff.tcl:148 -msgid "" -"REMOTE: deleted\n" -"LOCAL:\n" +#: lib/option.tcl:152 +msgid "Number of Diff Context Lines" msgstr "" -#: lib/diff.tcl:155 -msgid "LOCAL:\n" +#: lib/option.tcl:153 +msgid "Commit Message Text Width" msgstr "" -#: lib/diff.tcl:158 -msgid "REMOTE:\n" +#: lib/option.tcl:154 +msgid "New Branch Name Template" msgstr "" -#: lib/diff.tcl:220 lib/diff.tcl:344 -#, tcl-format -msgid "Unable to display %s" +#: lib/option.tcl:155 +msgid "Default File Contents Encoding" msgstr "" -#: lib/diff.tcl:221 -msgid "Error loading file:" +#: lib/option.tcl:203 +msgid "Change" msgstr "" -#: lib/diff.tcl:227 -msgid "Git Repository (subproject)" +#: lib/option.tcl:230 +msgid "Spelling Dictionary:" msgstr "" -#: lib/diff.tcl:239 -msgid "* Binary file (not showing content)." +#: lib/option.tcl:254 +msgid "Change Font" msgstr "" -#: lib/diff.tcl:244 +#: lib/option.tcl:258 #, tcl-format -msgid "" -"* Untracked file is %d bytes.\n" -"* Showing only first %d bytes.\n" +msgid "Choose %s" msgstr "" -#: lib/diff.tcl:250 -#, tcl-format -msgid "" -"\n" -"* Untracked file clipped here by %s.\n" -"* To see the entire file, use an external editor.\n" +#: lib/option.tcl:264 +msgid "pt." msgstr "" -#: lib/diff.tcl:583 -msgid "Failed to unstage selected hunk." +#: lib/option.tcl:278 +msgid "Preferences" msgstr "" -#: lib/diff.tcl:591 -msgid "Failed to revert selected hunk." +#: lib/option.tcl:314 +msgid "Failed to completely save options:" msgstr "" -#: lib/diff.tcl:594 -msgid "Failed to stage selected hunk." +#: lib/remote.tcl:163 +msgid "Remove Remote" msgstr "" -#: lib/diff.tcl:687 -msgid "Failed to unstage selected line." +#: lib/remote.tcl:168 +msgid "Prune from" msgstr "" -#: lib/diff.tcl:696 -msgid "Failed to revert selected line." +#: lib/remote.tcl:173 +msgid "Fetch from" msgstr "" -#: lib/diff.tcl:700 -msgid "Failed to stage selected line." +#: lib/remote.tcl:215 +msgid "Push to" msgstr "" -#: lib/diff.tcl:889 -msgid "Failed to undo last revert." +#: lib/remote_add.tcl:19 +msgid "Add Remote" msgstr "" -#: lib/sshkey.tcl:34 -msgid "No keys found." +#: lib/remote_add.tcl:24 +msgid "Add New Remote" msgstr "" -#: lib/sshkey.tcl:37 -#, tcl-format -msgid "Found a public key in: %s" +#: lib/remote_add.tcl:28 lib/tools_dlg.tcl:36 +msgid "Add" msgstr "" -#: lib/sshkey.tcl:43 -msgid "Generate Key" +#: lib/remote_add.tcl:37 +msgid "Remote Details" msgstr "" -#: lib/sshkey.tcl:61 -msgid "Copy To Clipboard" +#: lib/remote_add.tcl:50 +msgid "Location:" msgstr "" -#: lib/sshkey.tcl:75 -msgid "Your OpenSSH Public Key" +#: lib/remote_add.tcl:62 +msgid "Further Action" msgstr "" -#: lib/sshkey.tcl:83 -msgid "Generating..." +#: lib/remote_add.tcl:65 +msgid "Fetch Immediately" msgstr "" -#: lib/sshkey.tcl:89 -#, tcl-format -msgid "" -"Could not start ssh-keygen:\n" -"\n" -"%s" +#: lib/remote_add.tcl:71 +msgid "Initialize Remote Repository and Push" msgstr "" -#: lib/sshkey.tcl:116 -msgid "Generation failed." +#: lib/remote_add.tcl:77 +msgid "Do Nothing Else Now" msgstr "" -#: lib/sshkey.tcl:123 -msgid "Generation succeeded, but no keys found." +#: lib/remote_add.tcl:101 +msgid "Please supply a remote name." msgstr "" -#: lib/sshkey.tcl:126 +#: lib/remote_add.tcl:114 #, tcl-format -msgid "Your key is in: %s" +msgid "'%s' is not an acceptable remote name." msgstr "" -#: lib/branch_create.tcl:23 +#: lib/remote_add.tcl:125 #, tcl-format -msgid "%s (%s): Create Branch" -msgstr "" - -#: lib/branch_create.tcl:28 -msgid "Create New Branch" -msgstr "" - -#: lib/branch_create.tcl:42 -msgid "Branch Name" -msgstr "" - -#: lib/branch_create.tcl:57 -msgid "Match Tracking Branch Name" -msgstr "" - -#: lib/branch_create.tcl:66 -msgid "Starting Revision" +msgid "Failed to add remote '%s' of location '%s'." msgstr "" -#: lib/branch_create.tcl:72 -msgid "Update Existing Branch:" +#: lib/remote_add.tcl:133 lib/transport.tcl:6 +#, tcl-format +msgid "fetch %s" msgstr "" -#: lib/branch_create.tcl:75 -msgid "No" +#: lib/remote_add.tcl:134 +#, tcl-format +msgid "Fetching the %s" msgstr "" -#: lib/branch_create.tcl:80 -msgid "Fast Forward Only" +#: lib/remote_add.tcl:157 +#, tcl-format +msgid "Do not know how to initialize repository at location '%s'." msgstr "" -#: lib/branch_create.tcl:97 -msgid "Checkout After Creation" +#: lib/remote_add.tcl:163 lib/transport.tcl:25 lib/transport.tcl:63 +#: lib/transport.tcl:81 +#, tcl-format +msgid "push %s" msgstr "" -#: lib/branch_create.tcl:132 -msgid "Please select a tracking branch." +#: lib/remote_add.tcl:164 +#, tcl-format +msgid "Setting up the %s (at %s)" msgstr "" -#: lib/branch_create.tcl:141 -#, tcl-format -msgid "Tracking branch %s is not a branch in the remote repository." +#: lib/remote_branch_delete.tcl:29 lib/remote_branch_delete.tcl:34 +msgid "Delete Branch Remotely" msgstr "" -#: lib/console.tcl:59 -msgid "Working... please wait..." +#: lib/remote_branch_delete.tcl:47 +msgid "From Repository" msgstr "" -#: lib/console.tcl:186 -msgid "Success" +#: lib/remote_branch_delete.tcl:50 lib/transport.tcl:134 +msgid "Remote:" msgstr "" -#: lib/console.tcl:200 -msgid "Error: Command Failed" +#: lib/remote_branch_delete.tcl:66 lib/transport.tcl:149 +msgid "Arbitrary Location:" msgstr "" -#: lib/line.tcl:17 -msgid "Goto Line:" +#: lib/remote_branch_delete.tcl:84 +msgid "Branches" msgstr "" -#: lib/line.tcl:23 -msgid "Go" +#: lib/remote_branch_delete.tcl:109 +msgid "Delete Only If" msgstr "" -#: lib/choose_rev.tcl:52 -msgid "This Detached Checkout" +#: lib/remote_branch_delete.tcl:111 +msgid "Merged Into:" msgstr "" -#: lib/choose_rev.tcl:60 -msgid "Revision Expression:" +#: lib/remote_branch_delete.tcl:152 +msgid "A branch is required for 'Merged Into'." msgstr "" -#: lib/choose_rev.tcl:72 -msgid "Local Branch" +#: lib/remote_branch_delete.tcl:184 +#, tcl-format +msgid "" +"The following branches are not completely merged into %s:\n" +"\n" +" - %s" msgstr "" -#: lib/choose_rev.tcl:77 -msgid "Tracking Branch" +#: lib/remote_branch_delete.tcl:189 +#, tcl-format +msgid "" +"One or more of the merge tests failed because you have not fetched the " +"necessary commits. Try fetching from %s first." msgstr "" -#: lib/choose_rev.tcl:82 lib/choose_rev.tcl:544 -msgid "Tag" +#: lib/remote_branch_delete.tcl:207 +msgid "Please select one or more branches to delete." msgstr "" -#: lib/choose_rev.tcl:321 +#: lib/remote_branch_delete.tcl:226 #, tcl-format -msgid "Invalid revision: %s" +msgid "Deleting branches from %s" msgstr "" -#: lib/choose_rev.tcl:342 -msgid "No revision selected." +#: lib/remote_branch_delete.tcl:292 +msgid "No repository selected." msgstr "" -#: lib/choose_rev.tcl:350 -msgid "Revision expression is empty." +#: lib/remote_branch_delete.tcl:297 +#, tcl-format +msgid "Scanning %s..." msgstr "" -#: lib/choose_rev.tcl:537 -msgid "Updated" +#: lib/search.tcl:21 +msgid "Find:" msgstr "" -#: lib/choose_rev.tcl:565 -msgid "URL" +#: lib/search.tcl:23 +msgid "Next" msgstr "" -#: lib/commit.tcl:9 -msgid "" -"There is nothing to amend.\n" -"\n" -"You are about to create the initial commit. There is no commit before this " -"to amend.\n" +#: lib/search.tcl:24 +msgid "Prev" msgstr "" -#: lib/commit.tcl:18 -msgid "" -"Cannot amend while merging.\n" -"\n" -"You are currently in the middle of a merge that has not been fully " -"completed. You cannot amend the prior commit unless you first abort the " -"current merge activity.\n" +#: lib/search.tcl:25 +msgid "Case-Sensitive" msgstr "" -#: lib/commit.tcl:56 -msgid "Error loading commit data for amend:" +#: lib/shortcut.tcl:21 lib/shortcut.tcl:62 +msgid "Cannot write shortcut:" msgstr "" -#: lib/commit.tcl:83 -msgid "Unable to obtain your identity:" +#: lib/shortcut.tcl:137 +msgid "Cannot write icon:" msgstr "" -#: lib/commit.tcl:88 -msgid "Invalid GIT_COMMITTER_IDENT:" +#: lib/spellcheck.tcl:57 +msgid "Unsupported spell checker" msgstr "" -#: lib/commit.tcl:138 -#, tcl-format -msgid "warning: Tcl does not support encoding '%s'." +#: lib/spellcheck.tcl:65 +msgid "Spell checking is unavailable" msgstr "" -#: lib/commit.tcl:158 -msgid "" -"Last scanned state does not match repository state.\n" -"\n" -"Another Git program has modified this repository since the last scan. A " -"rescan must be performed before another commit can be created.\n" -"\n" -"The rescan will be automatically started now.\n" +#: lib/spellcheck.tcl:68 +msgid "Invalid spell checking configuration" msgstr "" -#: lib/commit.tcl:182 +#: lib/spellcheck.tcl:70 #, tcl-format -msgid "" -"Unmerged files cannot be committed.\n" -"\n" -"File %s has merge conflicts. You must resolve them and stage the file " -"before committing.\n" +msgid "Reverting dictionary to %s." msgstr "" -#: lib/commit.tcl:190 -#, tcl-format -msgid "" -"Unknown file state %s detected.\n" -"\n" -"File %s cannot be committed by this program.\n" +#: lib/spellcheck.tcl:73 +msgid "Spell checker silently failed on startup" msgstr "" -#: lib/commit.tcl:198 -msgid "" -"No changes to commit.\n" -"\n" -"You must stage at least 1 file before you can commit.\n" +#: lib/spellcheck.tcl:80 +msgid "Unrecognized spell checker" msgstr "" -#: lib/commit.tcl:213 -msgid "" -"Please supply a commit message.\n" -"\n" -"A good commit message has the following format:\n" -"\n" -"- First line: Describe in one sentence what you did.\n" -"- Second line: Blank\n" -"- Remaining lines: Describe why this change is good.\n" +#: lib/spellcheck.tcl:186 +msgid "No Suggestions" msgstr "" -#: lib/commit.tcl:244 -msgid "Calling pre-commit hook..." +#: lib/spellcheck.tcl:388 +msgid "Unexpected EOF from spell checker" msgstr "" -#: lib/commit.tcl:259 -msgid "Commit declined by pre-commit hook." +#: lib/spellcheck.tcl:392 +msgid "Spell Checker Failed" msgstr "" -#: lib/commit.tcl:278 -msgid "" -"You are about to commit on a detached head. This is a potentially dangerous " -"thing to do because if you switch to another branch you will lose your " -"changes and it can be difficult to retrieve them later from the reflog. You " -"should probably cancel this commit and create a new branch to continue.\n" -" \n" -" Do you really want to proceed with your Commit?" +#: lib/sshkey.tcl:31 +msgid "No keys found." msgstr "" -#: lib/commit.tcl:299 -msgid "Calling commit-msg hook..." +#: lib/sshkey.tcl:34 +#, tcl-format +msgid "Found a public key in: %s" msgstr "" -#: lib/commit.tcl:314 -msgid "Commit declined by commit-msg hook." +#: lib/sshkey.tcl:40 +msgid "Generate Key" msgstr "" -#: lib/commit.tcl:327 -msgid "Committing changes..." +#: lib/sshkey.tcl:56 +msgid "Copy To Clipboard" msgstr "" -#: lib/commit.tcl:344 -msgid "write-tree failed:" +#: lib/sshkey.tcl:70 +msgid "Your OpenSSH Public Key" msgstr "" -#: lib/commit.tcl:345 lib/commit.tcl:395 lib/commit.tcl:422 -msgid "Commit failed." +#: lib/sshkey.tcl:78 +msgid "Generating..." msgstr "" -#: lib/commit.tcl:362 +#: lib/sshkey.tcl:84 #, tcl-format -msgid "Commit %s appears to be corrupt" -msgstr "" - -#: lib/commit.tcl:367 msgid "" -"No changes to commit.\n" -"\n" -"No files were modified by this commit and it was not a merge commit.\n" +"Could not start ssh-keygen:\n" "\n" -"A rescan will be automatically started now.\n" -msgstr "" - -#: lib/commit.tcl:374 -msgid "No changes to commit." +"%s" msgstr "" -#: lib/commit.tcl:394 -msgid "commit-tree failed:" +#: lib/sshkey.tcl:111 +msgid "Generation failed." msgstr "" -#: lib/commit.tcl:421 -msgid "update-ref failed:" +#: lib/sshkey.tcl:118 +msgid "Generation succeeded, but no keys found." msgstr "" -#: lib/commit.tcl:514 +#: lib/sshkey.tcl:121 #, tcl-format -msgid "Created commit %s: %s" +msgid "Your key is in: %s" msgstr "" -#: lib/branch_delete.tcl:16 +#: lib/status_bar.tcl:83 #, tcl-format -msgid "%s (%s): Delete Branch" -msgstr "" - -#: lib/branch_delete.tcl:21 -msgid "Delete Local Branch" +msgid "%s ... %*i of %*i %s (%3i%%)" msgstr "" -#: lib/branch_delete.tcl:39 -msgid "Local Branches" +#: lib/tools.tcl:75 +#, tcl-format +msgid "Running %s requires a selected file." msgstr "" -#: lib/branch_delete.tcl:51 -msgid "Delete Only If Merged Into" +#: lib/tools.tcl:90 +#, tcl-format +msgid "Are you sure you want to run %s?" msgstr "" -#: lib/branch_delete.tcl:103 +#: lib/tools.tcl:110 #, tcl-format -msgid "The following branches are not completely merged into %s:" +msgid "Tool: %s" msgstr "" -#: lib/branch_delete.tcl:131 +#: lib/tools.tcl:111 #, tcl-format -msgid " - %s:" +msgid "Running: %s" msgstr "" -#: lib/branch_delete.tcl:141 +#: lib/tools.tcl:149 #, tcl-format -msgid "" -"Failed to delete branches:\n" -"%s" +msgid "Tool completed successfully: %s" msgstr "" -#: lib/date.tcl:25 +#: lib/tools.tcl:151 #, tcl-format -msgid "Invalid date from Git: %s" +msgid "Tool failed: %s" msgstr "" -#: lib/database.tcl:42 -msgid "Number of loose objects" +#: lib/tools_dlg.tcl:22 +msgid "Add Tool" msgstr "" -#: lib/database.tcl:43 -msgid "Disk space used by loose objects" +#: lib/tools_dlg.tcl:28 +msgid "Add New Tool Command" msgstr "" -#: lib/database.tcl:44 -msgid "Number of packed objects" +#: lib/tools_dlg.tcl:33 +msgid "Add globally" msgstr "" -#: lib/database.tcl:45 -msgid "Number of packs" +#: lib/tools_dlg.tcl:45 +msgid "Tool Details" msgstr "" -#: lib/database.tcl:46 -msgid "Disk space used by packed objects" +#: lib/tools_dlg.tcl:48 +msgid "Use '/' separators to create a submenu tree:" msgstr "" -#: lib/database.tcl:47 -msgid "Packed objects waiting for pruning" +#: lib/tools_dlg.tcl:61 +msgid "Command:" msgstr "" -#: lib/database.tcl:48 -msgid "Garbage files" +#: lib/tools_dlg.tcl:74 +msgid "Show a dialog before running" msgstr "" -#: lib/database.tcl:66 -#, tcl-format -msgid "%s (%s): Database Statistics" +#: lib/tools_dlg.tcl:80 +msgid "Ask the user to select a revision (sets $REVISION)" msgstr "" -#: lib/database.tcl:72 -msgid "Compressing the object database" +#: lib/tools_dlg.tcl:85 +msgid "Ask the user for additional arguments (sets $ARGS)" msgstr "" -#: lib/database.tcl:83 -msgid "Verifying the object database with fsck-objects" +#: lib/tools_dlg.tcl:92 +msgid "Don't show the command output window" msgstr "" -#: lib/database.tcl:107 -#, tcl-format -msgid "" -"This repository currently has approximately %i loose objects.\n" -"\n" -"To maintain optimal performance it is strongly recommended that you compress " -"the database.\n" -"\n" -"Compress the database now?" +#: lib/tools_dlg.tcl:97 +msgid "Run only if a diff is selected ($FILENAME not empty)" msgstr "" -#: lib/error.tcl:20 -#, tcl-format -msgid "%s: error" +#: lib/tools_dlg.tcl:121 +msgid "Please supply a name for the tool." msgstr "" -#: lib/error.tcl:36 +#: lib/tools_dlg.tcl:129 #, tcl-format -msgid "%s: warning" +msgid "Tool '%s' already exists." msgstr "" -#: lib/error.tcl:80 +#: lib/tools_dlg.tcl:151 #, tcl-format -msgid "%s hook failed:" +msgid "" +"Could not add tool:\n" +"%s" msgstr "" -#: lib/error.tcl:96 -msgid "You must correct the above errors before committing." +#: lib/tools_dlg.tcl:190 +msgid "Remove Tool" msgstr "" -#: lib/error.tcl:116 -#, tcl-format -msgid "%s (%s): error" +#: lib/tools_dlg.tcl:196 +msgid "Remove Tool Commands" msgstr "" -#: lib/merge.tcl:13 -msgid "" -"Cannot merge while amending.\n" -"\n" -"You must finish amending this commit before starting any type of merge.\n" +#: lib/tools_dlg.tcl:200 +msgid "Remove" msgstr "" -#: lib/merge.tcl:27 -msgid "" -"Last scanned state does not match repository state.\n" -"\n" -"Another Git program has modified this repository since the last scan. A " -"rescan must be performed before a merge can be performed.\n" -"\n" -"The rescan will be automatically started now.\n" +#: lib/tools_dlg.tcl:236 +msgid "(Blue denotes repository-local tools)" msgstr "" -#: lib/merge.tcl:45 +#: lib/tools_dlg.tcl:297 #, tcl-format -msgid "" -"You are in the middle of a conflicted merge.\n" -"\n" -"File %s has merge conflicts.\n" -"\n" -"You must resolve them, stage the file, and commit to complete the current " -"merge. Only then can you begin another merge.\n" +msgid "Run Command: %s" msgstr "" -#: lib/merge.tcl:55 -#, tcl-format -msgid "" -"You are in the middle of a change.\n" -"\n" -"File %s is modified.\n" -"\n" -"You should complete the current commit before starting a merge. Doing so " -"will help you abort a failed merge, should the need arise.\n" +#: lib/tools_dlg.tcl:311 +msgid "Arguments" msgstr "" -#: lib/merge.tcl:108 -#, tcl-format -msgid "%s of %s" +#: lib/tools_dlg.tcl:348 +msgid "OK" msgstr "" -#: lib/merge.tcl:126 +#: lib/transport.tcl:7 #, tcl-format -msgid "Merging %s and %s..." +msgid "Fetching new changes from %s" msgstr "" -#: lib/merge.tcl:137 -msgid "Merge completed successfully." +#: lib/transport.tcl:18 +#, tcl-format +msgid "remote prune %s" msgstr "" -#: lib/merge.tcl:139 -msgid "Merge failed. Conflict resolution is required." +#: lib/transport.tcl:19 +#, tcl-format +msgid "Pruning tracking branches deleted from %s" msgstr "" -#: lib/merge.tcl:156 +#: lib/transport.tcl:26 #, tcl-format -msgid "%s (%s): Merge" +msgid "Pushing changes to %s" msgstr "" -#: lib/merge.tcl:164 +#: lib/transport.tcl:64 #, tcl-format -msgid "Merge Into %s" +msgid "Mirroring to %s" msgstr "" -#: lib/merge.tcl:183 -msgid "Revision To Merge" +#: lib/transport.tcl:82 +#, tcl-format +msgid "Pushing %s %s to %s" msgstr "" -#: lib/merge.tcl:218 -msgid "" -"Cannot abort while amending.\n" -"\n" -"You must finish amending this commit.\n" +#: lib/transport.tcl:100 +msgid "Push Branches" msgstr "" -#: lib/merge.tcl:228 -msgid "" -"Abort merge?\n" -"\n" -"Aborting the current merge will cause *ALL* uncommitted changes to be lost.\n" -"\n" -"Continue with aborting the current merge?" +#: lib/transport.tcl:114 +msgid "Source Branches" msgstr "" -#: lib/merge.tcl:234 -msgid "" -"Reset changes?\n" -"\n" -"Resetting the changes will cause *ALL* uncommitted changes to be lost.\n" -"\n" -"Continue with resetting the current changes?" +#: lib/transport.tcl:131 +msgid "Destination Repository" msgstr "" -#: lib/merge.tcl:246 -msgid "Aborting" +#: lib/transport.tcl:169 +msgid "Transfer Options" msgstr "" -#: lib/merge.tcl:247 -msgid "files reset" +#: lib/transport.tcl:171 +msgid "Force overwrite existing branch (may discard changes)" msgstr "" -#: lib/merge.tcl:277 -msgid "Abort failed." +#: lib/transport.tcl:175 +msgid "Use thin pack (for slow network connections)" msgstr "" -#: lib/merge.tcl:279 -msgid "Abort completed. Ready." +#: lib/transport.tcl:179 +msgid "Include tags" msgstr "" diff --git a/third_party/git/git-gui/po/glossary/de.po b/third_party/git/git-gui/po/glossary/de.po index 4c5f233ee52d..35764d1d22da 100644 --- a/third_party/git/git-gui/po/glossary/de.po +++ b/third_party/git/git-gui/po/glossary/de.po @@ -6,11 +6,10 @@ msgid "" msgstr "" "Project-Id-Version: git-gui glossary\n" -"POT-Creation-Date: 2020-01-26 22:26+0100\n" -"PO-Revision-Date: 2020-02-09 21:22+0100\n" +"POT-Creation-Date: 2008-01-07 21:20+0100\n" +"PO-Revision-Date: 2008-02-16 21:48+0100\n" "Last-Translator: Christian Stimming \n" "Language-Team: German \n" -"Language: de_DE\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -20,9 +19,6 @@ msgid "" "English Term (Dear translator: This file will never be visible to the user!)" msgstr "" "Deutsche Übersetzung.\n" -"Git-core glossary:\n" -" https://github.com/ruester/git-po-de/wiki/Translation-Guidelines\n" -"\n" "Andere deutsche SCM:\n" " http://tortoisesvn.net/docs/release/TortoiseSVN_de/index.html und http://" "tortoisesvn.tigris.org/svn/tortoisesvn/trunk/Languages/Tortoise_de.po " @@ -36,77 +32,33 @@ msgstr "" " http://rapidsvn.tigris.org/svn/rapidsvn/trunk/src/locale/de/rapidsvn.po " "(username=guest, password empty, schlecht)" -#. "prematurely stop and abandon an operation" -msgid "abort" -msgstr "abbrechen" - #. "" msgid "amend" msgstr "nachbessern (ergänzen)" -#. "a commit that succeeds the current one in git's graph of commits (not necessarily directly)" -msgid "ancestor" -msgstr "Vorgänger-Commit" - #. "" msgid "annotate" msgstr "annotieren" -#. "The person who initially created (authored) a commit" -msgid "author" -msgstr "Autor" - -#. "a repository with only .git directory, without working directory" -msgid "bare repository" -msgstr "bloßes Projektarchiv" - -#. "a parent version of the current file" -msgid "base" -msgstr "Ursprung" - -#. "" -msgid "bisect" -msgstr "binäre Suche [noun], binäre Suche benutzen [verb]" - -#. "get the authors responsible for each line in a file" -msgid "blame" -msgstr "annotieren" - -#. "" -msgid "blob" -msgstr "Blob" - #. "A 'branch' is an active line of development." msgid "branch [noun]" -msgstr "Branch" +msgstr "Zweig" #. "" msgid "branch [verb]" -msgstr "branchen" +msgstr "verzweigen" #. "" msgid "checkout [noun]" msgstr "" -"Arbeitskopie (Checkout; Erstellung einer Arbeitskopie; Auscheck? Source " -"Safe: Auscheckvorgang)" +"Arbeitskopie (Erstellung einer Arbeitskopie; Auscheck? Ausspielung? Abruf? " +"Source Safe: Auscheckvorgang)" #. "The action of updating the working tree to a revision which was stored in the object database." msgid "checkout [verb]" msgstr "" -"Arbeitskopie erstellen; Branch auschecken [checkout a branch] (umstellen? " -"Source Safe: auschecken)" - -#. "to select and apply a single commit to the current HEAD without merging" -msgid "cherry-pick" -msgstr "cherry-pick (pflücken?)" - -#. "a commit that directly succeeds the current one in git's graph of commits" -msgid "child commit" -msgstr "Kind-Commit" - -#. "clean the state of the git repository, often after manually stopped operation" -msgid "cleanup" -msgstr "aufräumen" +"Arbeitskopie erstellen; Zweig umstellen [checkout a branch] (auschecken? " +"ausspielen? abrufen? Source Safe: auschecken)" #. "" msgid "clone [verb]" @@ -114,98 +66,39 @@ msgstr "klonen" #. "A single point in the git history." msgid "commit [noun]" -msgstr "Commit (Version?)" +msgstr "" +"Version; Eintragung; Änderung (Buchung?, Eintragung?, Übertragung?, " +"Sendung?, Übergabe?, Einspielung?, Ablagevorgang?)" #. "The action of storing a new snapshot of the project's state in the git history." msgid "commit [verb]" msgstr "" -"committen (eintragen?, TortoiseSVN: übertragen; Source Safe: einchecken)" - -#. "a message that gets attached with any commit" -msgid "commit message" -msgstr "Commit-Beschreibung (Meldung?, Nachricht?; Source Safe: Kommentar)" - -#. "The person who committed a commit (to the current branch), which might be different than the author." -msgid "committer" -msgstr "Committer" - -#. "a commit that precedes the current one in git's graph of commits (not necessarily directly)" -msgid "descendant" -msgstr "Nachfolger-Commit" - -#. "checkout of a revision rather than some head" -msgid "detached HEAD" -msgstr "losgelöster HEAD / Branchspitze" - -#. "checkout of a revision rather than some head" -msgid "detached checkout" -msgstr "losgelöster Commit (von Branch losgelöster Commit?)" +"eintragen (TortoiseSVN: übertragen; Source Safe: einchecken; senden?, " +"übergeben?, einspielen?, einpflegen?, ablegen?)" #. "" msgid "diff [noun]" -msgstr "Vergleich (Diff? Source Safe: Unterschiede)" +msgstr "Vergleich (Source Safe: Unterschiede)" #. "" msgid "diff [verb]" msgstr "vergleichen" -#. "" -msgid "directory" -msgstr "Verzeichnis" - -#. "A fast-forward merge is a special type of merge where you have a revision and you are merging another branch's changes that happen to be a descendant of what you have." -msgid "fast-forward" -msgstr "vorspulen" +#. "A fast-forward is a special type of merge where you have a revision and you are merging another branch's changes that happen to be a descendant of what you have." +msgid "fast forward merge" +msgstr "Schnellzusammenführung" #. "Fetching a branch means to get the branch's head from a remote repository, to find out which objects are missing from the local object database, and to get them, too." msgid "fetch" msgstr "anfordern (holen?)" -#. "any merge strategy that works on a file by file basis" -msgid "file level merging" -msgstr "Datei-basiertes zusammenführen" - -#. "" -msgid "file" -msgstr "Datei" - -#. "the last revision in a branch" -msgid "head" -msgstr "HEAD / Branchspitze" - -#. "script that gets executed automatically on some event" -msgid "hook" -msgstr "Hook (in der dt. Informatik wohl als Einschubmethode bezeichnet)" - #. "One context of consecutive lines in a whole patch, which consists of many such hunks" msgid "hunk" -msgstr "Patch-Block (Kontext?)" +msgstr "Kontext" #. "A collection of files. The index is a stored version of your working tree." msgid "index (in git-gui: staging area)" -msgstr "" -"Bereitstellung (sofern der git index gemeint ist. In git-gui sowieso: " -"staging area)" - -#. "the first checkout during a clone operation" -msgid "initial checkout" -msgstr "Erstellen der Arbeitskopie, auschecken" - -#. "The very first commit in a repository" -msgid "initial commit" -msgstr "Allererster Commit" - -#. "a branch that resides in the local git repository" -msgid "local branch" -msgstr "Lokaler Branch" - -#. "a Git object that is not part of any pack" -msgid "loose object" -msgstr "loses Objekt" - -#. "a branch called by convention 'master' that exists in a newly created git repository" -msgid "master branch" -msgstr "Master-Branch" +msgstr "Bereitstellung" #. "A successful merge results in the creation of a new commit representing the result of the merge." msgid "merge [noun]" @@ -219,212 +112,78 @@ msgstr "zusammenführen" msgid "message" msgstr "Beschreibung (Meldung?, Nachricht?; Source Safe: Kommentar)" -#. "a remote called by convention 'origin' that the current git repository has been cloned from" -msgid "origin" -msgstr "origin" - -#. "" -msgid "orphan commit" -msgstr "verwaister Commit" - -#. "" -msgid "orphan reference" -msgstr "verwaiste Referenz" - -#. "a file containing many git objects packed together" -msgid "pack [noun]" -msgstr "Pack-Datei" - -#. "the process of creating a pack file" -msgid "pack [verb]" -msgstr "Pack-Datei erstellen" - -#. "a Git object part of some pack" -msgid "packed object" -msgstr "gepacktes Objekt" - -#. "a commit that directly precedes the current one in git's graph of commits" -msgid "parent commit" -msgstr "Eltern-Commit" - -msgid "patch" -msgstr "Patch" - -#. "The path to a file" -msgid "path" -msgstr "Pfad" - -#. "Delete all stale tracking branches under . These stale branches have already been removed from the remote repository referenced by , but are still locally available in 'remotes/'." +#. "Deletes all stale tracking branches under . These stale branches have already been removed from the remote repository referenced by , but are still locally available in 'remotes/'." msgid "prune" -msgstr "veraltete Branches entfernen (aufräumen?, entfernen?)" +msgstr "aufräumen (entfernen?)" #. "Pulling a branch means to fetch it and merge it." msgid "pull" -msgstr "" -"übernehmen (pull? ziehen? Vorsicht: zusammenführen = merge, aber pull kann " -"auch rebase bewirken)" +msgstr "übernehmen (ziehen?)" #. "Pushing a branch means to get the branch's head ref from a remote repository, and ... (well, can someone please explain it for mere mortals?)" msgid "push" msgstr "versenden (ausliefern? hochladen? verschicken? schieben?)" -#. "The process of rebasing one set of commits on top of another branch's head" -msgid "rebase [noun]" -msgstr "der Rebase (das Umpflanzen)" - -#. "Re-apply one set of commits on top of another branch's head. Contrary to merge." -msgid "rebase [verb]" -msgstr "rebase (umpflanzen)" - #. "" msgid "redo" msgstr "wiederholen" -#. "" -msgid "reference" -msgstr "Referenz" - -#. "the log file containing all states of the HEAD reference (in other words past pristine states of the working copy)" -msgid "reflog" -msgstr "Commit-Log, »reflog«" - -msgid "refmap" -msgstr "Refmap" - -#. "" -msgid "refspec" -msgstr "Refspec" - -#. "The adjective for anything which is outside of the current (local) repository" -msgid "remote [adj]" -msgstr "Extern (Andere?, Gegenseite?, Entfernte?, Server?)" - -#. "A branch in any other ('remote') repository" -msgid "remote branch" -msgstr "Externer branch" - -#. "An other repository ('remote'). One might have a set of remotes whose branches one tracks." -msgid "remote repository" -msgstr "Externes Repository" +#. "An other repository ('remote'). One might have a set of remotes whose branches one tracks." +msgid "remote" +msgstr "Andere Archive (Gegenseite?, Entfernte?, Server?)" #. "A collection of refs (?) together with an object database containing all objects which are reachable from the refs... (oops, you've lost me here. Again, please an explanation for mere mortals?)" msgid "repository" -msgstr "Repository" +msgstr "Projektarchiv" #. "" msgid "reset" -msgstr "umsetzen (reset to commit), Änderungen verwerfen (reset to HEAD)" - -#. "decide which changes from alternative versions of a file should persist in Git" -msgid "resolve (a conflict)" -msgstr "auflösen (einen Konflikt)" - -#. "abandon changes and go to pristine version" -msgid "revert changes" -msgstr "" -"verwerfen (bei git-reset bzw. checkout), zurücknehmen (bei git-revert, also " -"mit neuem commit; umkehren?)" +msgstr "zurücksetzen (zurückkehren?)" #. "" msgid "revert" -msgstr "" -"verwerfen (bei git-reset bzw. checkout), zurücknehmen (bei git-revert, also " -"mit neuem commit; umkehren?)" - -#. "expression that signifies a revision in git" -msgid "revision expression" -msgstr "Version Regexp-Ausdruck" +msgstr "verwerfen (bei git-reset), revidieren (bei git-revert, also mit neuem commit)" #. "A particular state of files and directories which was stored in the object database." msgid "revision" -msgstr "" -"Version (aber was macht das Wort revision hier im Git?? TortoiseSVN: " -"Revision; Source Safe: Version)" +msgstr "Version (TortoiseSVN: Revision; Source Safe: Version)" #. "" msgid "sign off" -msgstr "abzeichnen (signieren? gegenzeichnen?, freizeichnen?)" +msgstr "abzeichnen (gegenzeichnen?, freizeichnen?, absegnen?)" -#. "see: staging area. In some areas of git this is called 'index'." -msgid "stage [noun], index" -msgstr "Bereitstellung" - -#. "add some content of files and directories to the staging area in preparation for a commit" -msgid "stage [verb]" -msgstr "bereitstellen" - -#. "The place where changes from files are marked to be included for the next commit. In some areas of git this is called 'index'." +#. "" msgid "staging area" msgstr "Bereitstellung" -#. "The place (stack) where changes can be temporarily saved without committing" -msgid "stash [noun]" -msgstr "der Stash" - -#. "temporarily save changes in a stack without committing" -msgid "stash [verb]" -msgstr "in Stash speichern; \"stash\" benutzen" - #. "" msgid "status" msgstr "Status" -#. "" -msgid "submodule" -msgstr "Submodul (Untermodul?)" - -#. "A ref pointing to some commit object. In other words: A label on a specific commit." +#. "A ref pointing to a tag or commit object" msgid "tag [noun]" -msgstr "Tag (Markierung?)" +msgstr "Markierung" -#. "The process of creating a tag at a specific commit object" +#. "" msgid "tag [verb]" -msgstr "taggen (markieren?)" - -#. "The person who created a tag" -msgid "tagger" -msgstr "Tag-Ersteller (Markierungs-Ersteller?)" - -#. "file whose content is tracked/not tracked by git" -msgid "tracked/untracked" -msgstr "versioniert/unversioniert" +msgstr "markieren" #. "A regular git branch that is used to follow changes from another repository." msgid "tracking branch" -msgstr "Tracking-Branch (Verfolgungsbranch? Übernahmebranch?)" - -#. "" -msgid "trailer" -msgstr "Anhang" - -#. "1. tree object, 2. directory tree" -msgid "tree" -msgstr "1. Baum-Objekt, 2. Verzeichnisbaum" +msgstr "Übernahmezweig" #. "" msgid "undo" msgstr "rückgängig" -#. "Remove content of files from the staging area again so that it will not be part of the next commit" -msgid "unstage" -msgstr "aus Bereitstellung herausnehmen" - -#. "Retrieving the temporarily saved changes back again from the stash" -msgid "unstash [verb]" -msgstr "aus Stash zurückladen" - #. "" msgid "update" msgstr "aktualisieren" -#. "" -msgid "upstream branch" -msgstr "Upstream-Branch" - #. "" msgid "verify" msgstr "überprüfen" #. "The tree of actual checked out files." -msgid "working directory, working copy, working tree" +msgid "working copy, working tree" msgstr "Arbeitskopie" diff --git a/third_party/git/git-gui/po/glossary/git-gui-glossary.pot b/third_party/git/git-gui/po/glossary/git-gui-glossary.pot index 4e66e0da3a9c..40eb3e9c07a4 100644 --- a/third_party/git/git-gui/po/glossary/git-gui-glossary.pot +++ b/third_party/git/git-gui/po/glossary/git-gui-glossary.pot @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2020-01-26 22:26+0100\n" +"POT-Creation-Date: 2008-01-07 21:20+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,46 +18,14 @@ msgstr "" msgid "English Term (Dear translator: This file will never be visible to the user!)" msgstr "" -#. "prematurely stop and abandon an operation" -msgid "abort" -msgstr "" - #. "" msgid "amend" msgstr "" -#. "a commit that succeeds the current one in git's graph of commits (not necessarily directly)" -msgid "ancestor" -msgstr "" - #. "" msgid "annotate" msgstr "" -#. "The person who initially created (authored) a commit" -msgid "author" -msgstr "" - -#. "a repository with only .git directory, without working directory" -msgid "bare repository" -msgstr "" - -#. "a parent version of the current file" -msgid "base" -msgstr "" - -#. "" -msgid "bisect" -msgstr "" - -#. "get the authors responsible for each line in a file" -msgid "blame" -msgstr "" - -#. "" -msgid "blob" -msgstr "" - #. "A 'branch' is an active line of development." msgid "branch [noun]" msgstr "" @@ -74,18 +42,6 @@ msgstr "" msgid "checkout [verb]" msgstr "" -#. "to select and apply a single commit to the current HEAD without merging" -msgid "cherry-pick" -msgstr "" - -#. "a commit that directly succeeds the current one in git's graph of commits" -msgid "child commit" -msgstr "" - -#. "clean the state of the git repository, often after manually stopped operation" -msgid "cleanup" -msgstr "" - #. "" msgid "clone [verb]" msgstr "" @@ -98,26 +54,6 @@ msgstr "" msgid "commit [verb]" msgstr "" -#. "a message that gets attached with any commit" -msgid "commit message" -msgstr "" - -#. "The person who committed a commit (to the current branch), which might be different than the author." -msgid "committer" -msgstr "" - -#. "a commit that precedes the current one in git's graph of commits (not necessarily directly)" -msgid "descendant" -msgstr "" - -#. "checkout of a revision rather than some head" -msgid "detached HEAD" -msgstr "" - -#. "checkout of a revision rather than some head" -msgid "detached checkout" -msgstr "" - #. "" msgid "diff [noun]" msgstr "" @@ -126,34 +62,14 @@ msgstr "" msgid "diff [verb]" msgstr "" -#. "" -msgid "directory" -msgstr "" - -#. "A fast-forward merge is a special type of merge where you have a revision and you are merging another branch's changes that happen to be a descendant of what you have." -msgid "fast-forward" +#. "A fast-forward is a special type of merge where you have a revision and you are merging another branch's changes that happen to be a descendant of what you have." +msgid "fast forward merge" msgstr "" #. "Fetching a branch means to get the branch's head from a remote repository, to find out which objects are missing from the local object database, and to get them, too." msgid "fetch" msgstr "" -#. "any merge strategy that works on a file by file basis" -msgid "file level merging" -msgstr "" - -#. "" -msgid "file" -msgstr "" - -#. "the last revision in a branch" -msgid "head" -msgstr "" - -#. "script that gets executed automatically on some event" -msgid "hook" -msgstr "" - #. "One context of consecutive lines in a whole patch, which consists of many such hunks" msgid "hunk" msgstr "" @@ -162,26 +78,6 @@ msgstr "" msgid "index (in git-gui: staging area)" msgstr "" -#. "the first checkout during a clone operation" -msgid "initial checkout" -msgstr "" - -#. "The very first commit in a repository" -msgid "initial commit" -msgstr "" - -#. "a branch that resides in the local git repository" -msgid "local branch" -msgstr "" - -#. "a Git object that is not part of any pack" -msgid "loose object" -msgstr "" - -#. "a branch called by convention 'master' that exists in a newly created git repository" -msgid "master branch" -msgstr "" - #. "A successful merge results in the creation of a new commit representing the result of the merge." msgid "merge [noun]" msgstr "" @@ -194,42 +90,7 @@ msgstr "" msgid "message" msgstr "" -#. "a remote called by convention 'origin' that the current git repository has been cloned from" -msgid "origin" -msgstr "" - -#. "" -msgid "orphan commit" -msgstr "" - -#. "" -msgid "orphan reference" -msgstr "" - -#. "a file containing many git objects packed together" -msgid "pack [noun]" -msgstr "" - -#. "the process of creating a pack file" -msgid "pack [verb]" -msgstr "" - -#. "a Git object part of some pack" -msgid "packed object" -msgstr "" - -#. "a commit that directly precedes the current one in git's graph of commits" -msgid "parent commit" -msgstr "" - -msgid "patch" "" -msgstr "" - -#. "The path to a file" -msgid "path" -msgstr "" - -#. "Delete all stale tracking branches under . These stale branches have already been removed from the remote repository referenced by , but are still locally available in 'remotes/'." +#. "Deletes all stale tracking branches under . These stale branches have already been removed from the remote repository referenced by , but are still locally available in 'remotes/'." msgid "prune" msgstr "" @@ -241,43 +102,12 @@ msgstr "" msgid "push" msgstr "" -#. "The process of rebasing one set of commits on top of another branch's head" -msgid "rebase [noun]" -msgstr "" - -#. "Re-apply one set of commits on top of another branch's head. Contrary to merge." -msgid "rebase [verb]" -msgstr "" - #. "" msgid "redo" msgstr "" -#. "" -msgid "reference" -msgstr "" - -#. "the log file containing all states of the HEAD reference (in other words past pristine states of the working copy)" -msgid "reflog" -msgstr "" - -msgid "refmap" "" -msgstr "" - -#. "" -msgid "refspec" -msgstr "" - -#. "The adjective for anything which is outside of the current (local) repository" -msgid "remote [adj]" -msgstr "" - -#. "A branch in any other ('remote') repository" -msgid "remote branch" -msgstr "" - -#. "An other repository ('remote'). One might have a set of remotes whose branches one tracks." -msgid "remote repository" +#. "An other repository ('remote'). One might have a set of remotes whose branches one tracks." +msgid "remote" msgstr "" #. "A collection of refs (?) together with an object database containing all objects which are reachable from the refs... (oops, you've lost me here. Again, please an explanation for mere mortals?)" @@ -288,22 +118,10 @@ msgstr "" msgid "reset" msgstr "" -#. "decide which changes from alternative versions of a file should persist in Git" -msgid "resolve (a conflict)" -msgstr "" - -#. "abandon changes and go to pristine version" -msgid "revert changes" -msgstr "" - #. "" msgid "revert" msgstr "" -#. "expression that signifies a revision in git" -msgid "revision expression" -msgstr "" - #. "A particular state of files and directories which was stored in the object database." msgid "revision" msgstr "" @@ -312,87 +130,39 @@ msgstr "" msgid "sign off" msgstr "" -#. "see: staging area. In some areas of git this is called 'index'." -msgid "stage [noun], index" -msgstr "" - -#. "add some content of files and directories to the staging area in preparation for a commit" -msgid "stage [verb]" -msgstr "" - -#. "The place where changes from files are marked to be included for the next commit. In some areas of git this is called 'index'." +#. "" msgid "staging area" msgstr "" -#. "The place (stack) where changes can be temporarily saved without committing" -msgid "stash [noun]" -msgstr "" - -#. "temporarily save changes in a stack without committing" -msgid "stash [verb]" -msgstr "" - #. "" msgid "status" msgstr "" -#. "" -msgid "submodule" -msgstr "" - -#. "A ref pointing to some commit object. In other words: A label on a specific commit." +#. "A ref pointing to a tag or commit object" msgid "tag [noun]" msgstr "" -#. "The process of creating a tag at a specific commit object" +#. "" msgid "tag [verb]" msgstr "" -#. "The person who created a tag" -msgid "tagger" -msgstr "" - -#. "file whose content is tracked/not tracked by git" -msgid "tracked/untracked" -msgstr "" - #. "A regular git branch that is used to follow changes from another repository." msgid "tracking branch" msgstr "" -#. "" -msgid "trailer" -msgstr "" - -#. "1. tree object, 2. directory tree" -msgid "tree" -msgstr "" - #. "" msgid "undo" msgstr "" -#. "Remove content of files from the staging area again so that it will not be part of the next commit" -msgid "unstage" -msgstr "" - -#. "Retrieving the temporarily saved changes back again from the stash" -msgid "unstash [verb]" -msgstr "" - #. "" msgid "update" msgstr "" -#. "" -msgid "upstream branch" -msgstr "" - #. "" msgid "verify" msgstr "" #. "The tree of actual checked out files." -msgid "working directory, working copy, working tree" +msgid "working copy, working tree" msgstr "" diff --git a/third_party/git/git-gui/po/glossary/git-gui-glossary.txt b/third_party/git/git-gui/po/glossary/git-gui-glossary.txt index 48b9f10e57d3..409304692dc1 100644 --- a/third_party/git/git-gui/po/glossary/git-gui-glossary.txt +++ b/third_party/git/git-gui/po/glossary/git-gui-glossary.txt @@ -1,96 +1,67 @@ "English Term (Dear translator: This file will never be visible to the user!)" "English Definition (Dear translator: This file will never be visible to the user! It should only serve as a tool for you, the translator. Nothing more.)" -"abort" "prematurely stop and abandon an operation" "amend" "" -"ancestor" "a commit that succeeds the current one in git's graph of commits (not necessarily directly)" "annotate" "" -"author" "The person who initially created (authored) a commit" -"bare repository" "a repository with only .git directory, without working directory" -"base" "a parent version of the current file" -"bisect" "" -"blame" "get the authors responsible for each line in a file" -"blob" "" "branch [noun]" "A 'branch' is an active line of development." "branch [verb]" "" "checkout [noun]" "" "checkout [verb]" "The action of updating the working tree to a revision which was stored in the object database." -"cherry-pick" "to select and apply a single commit to the current HEAD without merging" -"child commit" "a commit that directly succeeds the current one in git's graph of commits" -"cleanup" "clean the state of the git repository, often after manually stopped operation" "clone [verb]" "" "commit [noun]" "A single point in the git history." "commit [verb]" "The action of storing a new snapshot of the project's state in the git history." -"commit message" "a message that gets attached with any commit" -"committer" "The person who committed a commit (to the current branch), which might be different than the author." -"descendant" "a commit that precedes the current one in git's graph of commits (not necessarily directly)" -"detached HEAD" "checkout of a revision rather than some head" -"detached checkout" "checkout of a revision rather than some head" "diff [noun]" "" "diff [verb]" "" -"directory" "" -"fast-forward" "A fast-forward merge is a special type of merge where you have a revision and you are merging another branch's changes that happen to be a descendant of what you have." +"fast forward merge" "A fast-forward is a special type of merge where you have a revision and you are merging another branch's changes that happen to be a descendant of what you have." "fetch" "Fetching a branch means to get the branch's head from a remote repository, to find out which objects are missing from the local object database, and to get them, too." -"file level merging" "any merge strategy that works on a file by file basis" -"file" "" -"head" "the last revision in a branch" -"hook" "script that gets executed automatically on some event" "hunk" "One context of consecutive lines in a whole patch, which consists of many such hunks" "index (in git-gui: staging area)" "A collection of files. The index is a stored version of your working tree." -"initial checkout" "the first checkout during a clone operation" -"initial commit" "The very first commit in a repository" -"local branch" "a branch that resides in the local git repository" -"loose object" "a Git object that is not part of any pack" -"master branch" "a branch called by convention 'master' that exists in a newly created git repository" "merge [noun]" "A successful merge results in the creation of a new commit representing the result of the merge." "merge [verb]" "To bring the contents of another branch into the current branch." "message" "" -"origin" "a remote called by convention 'origin' that the current git repository has been cloned from" -"orphan commit" "" -"orphan reference" "" -"pack [noun]" "a file containing many git objects packed together" -"pack [verb]" "the process of creating a pack file" -"packed object" "a Git object part of some pack" -"parent commit" "a commit that directly precedes the current one in git's graph of commits" -"patch" "" -"path" "The path to a file" -"prune" "Delete all stale tracking branches under . These stale branches have already been removed from the remote repository referenced by , but are still locally available in 'remotes/'." +"prune" "Deletes all stale tracking branches under . These stale branches have already been removed from the remote repository referenced by , but are still locally available in 'remotes/'." "pull" "Pulling a branch means to fetch it and merge it." "push" "Pushing a branch means to get the branch's head ref from a remote repository, and ... (well, can someone please explain it for mere mortals?)" -"rebase [noun]" "The process of rebasing one set of commits on top of another branch's head" -"rebase [verb]" "Re-apply one set of commits on top of another branch's head. Contrary to merge." "redo" "" -"reference" "" -"reflog" "the log file containing all states of the HEAD reference (in other words past pristine states of the working copy)" -"refmap" "" -"refspec" "" -"remote [adj]" "The adjective for anything which is outside of the current (local) repository" -"remote branch" "A branch in any other ('remote') repository" -"remote repository" "An other repository ('remote'). One might have a set of remotes whose branches one tracks." +"remote" "An other repository ('remote'). One might have a set of remotes whose branches one tracks." "repository" "A collection of refs (?) together with an object database containing all objects which are reachable from the refs... (oops, you've lost me here. Again, please an explanation for mere mortals?)" "reset" "" -"resolve (a conflict)" "decide which changes from alternative versions of a file should persist in Git" -"revert changes" "abandon changes and go to pristine version" "revert" "" -"revision expression" "expression that signifies a revision in git" "revision" "A particular state of files and directories which was stored in the object database." "sign off" "" -"stage [noun], index" "see: staging area. In some areas of git this is called 'index'." -"stage [verb]" "add some content of files and directories to the staging area in preparation for a commit" -"staging area" "The place where changes from files are marked to be included for the next commit. In some areas of git this is called 'index'." -"stash [noun]" "The place (stack) where changes can be temporarily saved without committing" -"stash [verb]" "temporarily save changes in a stack without committing" +"staging area" "" "status" "" -"submodule" "" -"tag [noun]" "A ref pointing to some commit object. In other words: A label on a specific commit." -"tag [verb]" "The process of creating a tag at a specific commit object" -"tagger" "The person who created a tag" -"tracked/untracked" "file whose content is tracked/not tracked by git" +"tag [noun]" "A ref pointing to a tag or commit object" +"tag [verb]" "" "tracking branch" "A regular git branch that is used to follow changes from another repository." -"trailer" "" -"tree" "1. tree object, 2. directory tree" "undo" "" -"unstage" "Remove content of files from the staging area again so that it will not be part of the next commit" -"unstash [verb]" "Retrieving the temporarily saved changes back again from the stash" "update" "" -"upstream branch" "" "verify" "" -"working directory, working copy, working tree" "The tree of actual checked out files." +"working copy, working tree" "The tree of actual checked out files." +"ancestor" "a commit that succeeds the current one in git's graph of commits (not necessarily directly)" +"abort" "prematurely stop and abandon an operation" +"bare repository" "a repository with only .git directory, without working directory" +"base" "a parent version of the current file" +"blame" "get the authors responsible for each line in a file" +"cherry-pick" "to select and apply a single commit without merging" +"child" "a commit that directly succeeds the current one in git's graph of commits" +"cleanup" "clean the state of the git repository, often after manually stopped operation" +"commit message" "a message that gets attached with any commit" +"descendant" "a commit that precedes the current one in git's graph of commits (not necessarily directly)" +"detached checkout" "checkout of a revision rather than a some head" +"file level merging" "any merge strategy that works on a file by file basis" +"head" "the last revision in a branch" +"hook" "script that gets executed automatically on some event" +"initial checkout" "the first checkout during a clone operation" +"local branch" "a branch that resides in the local git repository" +"loose object" "a Git object that is not part of any pack" +"master branch" "a branch called by convention 'master' that exists in a newly created git repository" +"origin" "a remote called by convention 'origin' that the current git repository has been cloned from" +"pack [noun]" "a file containing many git objects packed together" +"packed object" "a Git object part of some pack" +"parent" "a commit that directly precedes the current one in git's graph of commits" +"reflog" "the log file containing all states of the HEAD reference (in other words past pristine states of the working copy)" +"resolve (a conflict)" "decide which changes from alternative versions of a file should persist in Git" +"revert changes" "abandon changes and go to pristine version" +"revision expression" "expression that signifies a revision in git" +"stage/unstage" "add some content of files and directories to the staging area in preparation for a commit" +"stash" "temporarily save changes in a stack without committing" +"tracked/untracked" "file whose content is tracked/not tracked by git" diff --git a/third_party/git/git-gui/po/ja.po b/third_party/git/git-gui/po/ja.po index 2f61153ab9ff..208651c1afc1 100644 --- a/third_party/git/git-gui/po/ja.po +++ b/third_party/git/git-gui/po/ja.po @@ -4,15 +4,14 @@ # # しらいし ななこ , 2007. # Satoshi Yasushima , 2016. -# KIDANI Akito , 2019. # msgid "" msgstr "" "Project-Id-Version: git-gui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-05-27 17:52+0900\n" -"PO-Revision-Date: 2019-10-13 23:20+0900\n" -"Last-Translator: KIDANI Akito \n" +"PO-Revision-Date: 2016-06-22 12:50+0900\n" +"Last-Translator: Satoshi Yasushima \n" "Language-Team: Japanese\n" "Language: ja\n" "MIME-Version: 1.0\n" @@ -662,7 +661,7 @@ msgstr "" #: lib/merge.tcl:108 #, tcl-format msgid "%s of %s" -msgstr "%2$s の %1$s ブランチ" +msgstr "%s の %s ブランチ" #: lib/merge.tcl:122 #, tcl-format @@ -957,7 +956,7 @@ msgstr "エラー: コマンドが失敗しました" #: lib/checkout_op.tcl:85 #, tcl-format msgid "Fetching %s from %s" -msgstr "%2$s から %1$s をフェッチしています" +msgstr "%s から %s をフェッチしています" #: lib/checkout_op.tcl:133 #, tcl-format -- cgit 1.4.1