From: Junio C Hamano Date: Wed, 6 Aug 2008 20:32:18 +0000 (-0700) Subject: Merge git://repo.or.cz/git-gui X-Git-Tag: v1.6.0-rc2~3 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=d96ca27e1089a190139591ac365873f26bffcf5c;p=git.git Merge git://repo.or.cz/git-gui * git://repo.or.cz/git-gui: git-gui: Adapt discovery of oguilib to execdir 'libexec/git-core' git-gui: add a part about format strings in po/README git-gui: update po/it.po git-gui: update Japanese translation git-gui: Update swedish translation. git-gui: Update git-gui.pot for 0.11 nearing release git-gui: Update German translation --- d96ca27e1089a190139591ac365873f26bffcf5c diff --cc git-gui/git-gui.sh index 14b2d9aac,000000000..ad65aaad5 mode 100755,000000..100755 --- a/git-gui/git-gui.sh +++ b/git-gui/git-gui.sh @@@ -1,3024 -1,0 +1,3028 @@@ +#!/bin/sh +# Tcl ignores the next line -*- tcl -*- \ + if test "z$*" = zversion \ + || test "z$*" = z--version; \ + then \ + echo 'git-gui version @@GITGUI_VERSION@@'; \ + exit; \ + fi; \ + argv0=$0; \ + exec wish "$argv0" -- "$@" + +set appvers {@@GITGUI_VERSION@@} +set copyright [encoding convertfrom utf-8 { +Copyright © 2006, 2007 Shawn Pearce, et. al. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA}] + +###################################################################### +## +## Tcl/Tk sanity check + +if {[catch {package require Tcl 8.4} err] + || [catch {package require Tk 8.4} err] +} { + catch {wm withdraw .} + tk_messageBox \ + -icon error \ + -type ok \ + -title [mc "git-gui: fatal error"] \ + -message $err + exit 1 +} + +catch {rename send {}} ; # What an evil concept... + +###################################################################### +## +## locate our library + +set oguilib {@@GITGUI_LIBDIR@@} +set oguirel {@@GITGUI_RELATIVE@@} +if {$oguirel eq {1}} { - set oguilib [file dirname [file dirname [file normalize $argv0]]] ++ set oguilib [file dirname [file normalize $argv0]] ++ if {[file tail $oguilib] eq {git-core}} { ++ set oguilib [file dirname $oguilib] ++ } ++ set oguilib [file dirname $oguilib] + set oguilib [file join $oguilib share git-gui lib] + set oguimsg [file join $oguilib msgs] +} elseif {[string match @@* $oguirel]} { + set oguilib [file join [file dirname [file normalize $argv0]] lib] + set oguimsg [file join [file dirname [file normalize $argv0]] po] +} else { + set oguimsg [file join $oguilib msgs] +} +unset oguirel + +###################################################################### +## +## enable verbose loading? + +if {![catch {set _verbose $env(GITGUI_VERBOSE)}]} { + unset _verbose + rename auto_load real__auto_load + proc auto_load {name args} { + puts stderr "auto_load $name" + return [uplevel 1 real__auto_load $name $args] + } + rename source real__source + proc source {name} { + puts stderr "source $name" + uplevel 1 real__source $name + } +} + +###################################################################### +## +## Internationalization (i18n) through msgcat and gettext. See +## http://www.gnu.org/software/gettext/manual/html_node/Tcl.html + +package require msgcat + +proc _mc_trim {fmt} { + set cmk [string first @@ $fmt] + if {$cmk > 0} { + return [string range $fmt 0 [expr {$cmk - 1}]] + } + return $fmt +} + +proc mc {en_fmt args} { + set fmt [_mc_trim [::msgcat::mc $en_fmt]] + if {[catch {set msg [eval [list format $fmt] $args]} err]} { + set msg [eval [list format [_mc_trim $en_fmt]] $args] + } + return $msg +} + +proc strcat {args} { + return [join $args {}] +} + +::msgcat::mcload $oguimsg +unset oguimsg + +###################################################################### +## +## read only globals + +set _appname {Git Gui} +set _gitdir {} +set _gitexec {} +set _reponame {} +set _iscygwin {} +set _search_path {} + +set _trace [lsearch -exact $argv --trace] +if {$_trace >= 0} { + set argv [lreplace $argv $_trace $_trace] + set _trace 1 +} else { + set _trace 0 +} + +proc appname {} { + global _appname + return $_appname +} + +proc gitdir {args} { + global _gitdir + if {$args eq {}} { + return $_gitdir + } + return [eval [list file join $_gitdir] $args] +} + +proc gitexec {args} { + global _gitexec + if {$_gitexec eq {}} { + if {[catch {set _gitexec [git --exec-path]} err]} { + error "Git not installed?\n\n$err" + } + if {[is_Cygwin]} { + set _gitexec [exec cygpath \ + --windows \ + --absolute \ + $_gitexec] + } else { + set _gitexec [file normalize $_gitexec] + } + } + if {$args eq {}} { + return $_gitexec + } + return [eval [list file join $_gitexec] $args] +} + +proc reponame {} { + return $::_reponame +} + +proc is_MacOSX {} { + if {[tk windowingsystem] eq {aqua}} { + return 1 + } + return 0 +} + +proc is_Windows {} { + if {$::tcl_platform(platform) eq {windows}} { + return 1 + } + return 0 +} + +proc is_Cygwin {} { + global _iscygwin + if {$_iscygwin eq {}} { + if {$::tcl_platform(platform) eq {windows}} { + if {[catch {set p [exec cygpath --windir]} err]} { + set _iscygwin 0 + } else { + set _iscygwin 1 + } + } else { + set _iscygwin 0 + } + } + return $_iscygwin +} + +proc is_enabled {option} { + global enabled_options + if {[catch {set on $enabled_options($option)}]} {return 0} + return $on +} + +proc enable_option {option} { + global enabled_options + set enabled_options($option) 1 +} + +proc disable_option {option} { + global enabled_options + set enabled_options($option) 0 +} + +###################################################################### +## +## config + +proc is_many_config {name} { + switch -glob -- $name { + gui.recentrepo - + remote.*.fetch - + remote.*.push + {return 1} + * + {return 0} + } +} + +proc is_config_true {name} { + global repo_config + if {[catch {set v $repo_config($name)}]} { + return 0 + } elseif {$v eq {true} || $v eq {1} || $v eq {yes}} { + return 1 + } else { + return 0 + } +} + +proc get_config {name} { + global repo_config + if {[catch {set v $repo_config($name)}]} { + return {} + } else { + return $v + } +} + +###################################################################### +## +## handy utils + +proc _trace_exec {cmd} { + if {!$::_trace} return + set d {} + foreach v $cmd { + if {$d ne {}} { + append d { } + } + if {[regexp {[ \t\r\n'"$?*]} $v]} { + set v [sq $v] + } + append d $v + } + puts stderr $d +} + +proc _git_cmd {name} { + global _git_cmd_path + + if {[catch {set v $_git_cmd_path($name)}]} { + switch -- $name { + version - + --version - + --exec-path { return [list $::_git $name] } + } + + set p [gitexec git-$name$::_search_exe] + if {[file exists $p]} { + set v [list $p] + } elseif {[is_Windows] && [file exists [gitexec git-$name]]} { + # Try to determine what sort of magic will make + # git-$name go and do its thing, because native + # Tcl on Windows doesn't know it. + # + set p [gitexec git-$name] + set f [open $p r] + set s [gets $f] + close $f + + switch -glob -- [lindex $s 0] { + #!*sh { set i sh } + #!*perl { set i perl } + #!*python { set i python } + default { error "git-$name is not supported: $s" } + } + + upvar #0 _$i interp + if {![info exists interp]} { + set interp [_which $i] + } + if {$interp eq {}} { + error "git-$name requires $i (not in PATH)" + } + set v [concat [list $interp] [lrange $s 1 end] [list $p]] + } else { + # Assume it is builtin to git somehow and we + # aren't actually able to see a file for it. + # + set v [list $::_git $name] + } + set _git_cmd_path($name) $v + } + return $v +} + +proc _which {what args} { + global env _search_exe _search_path + + if {$_search_path eq {}} { + if {[is_Cygwin] && [regexp {^(/|\.:)} $env(PATH)]} { + set _search_path [split [exec cygpath \ + --windows \ + --path \ + --absolute \ + $env(PATH)] {;}] + set _search_exe .exe + } elseif {[is_Windows]} { + set gitguidir [file dirname [info script]] + regsub -all ";" $gitguidir "\\;" gitguidir + set env(PATH) "$gitguidir;$env(PATH)" + set _search_path [split $env(PATH) {;}] + set _search_exe .exe + } else { + set _search_path [split $env(PATH) :] + set _search_exe {} + } + } + + if {[is_Windows] && [lsearch -exact $args -script] >= 0} { + set suffix {} + } else { + set suffix $_search_exe + } + + foreach p $_search_path { + set p [file join $p $what$suffix] + if {[file exists $p]} { + return [file normalize $p] + } + } + return {} +} + +proc _lappend_nice {cmd_var} { + global _nice + upvar $cmd_var cmd + + if {![info exists _nice]} { + set _nice [_which nice] + } + if {$_nice ne {}} { + lappend cmd $_nice + } +} + +proc git {args} { + set opt [list] + + while {1} { + switch -- [lindex $args 0] { + --nice { + _lappend_nice opt + } + + default { + break + } + + } + + set args [lrange $args 1 end] + } + + set cmdp [_git_cmd [lindex $args 0]] + set args [lrange $args 1 end] + + _trace_exec [concat $opt $cmdp $args] + set result [eval exec $opt $cmdp $args] + if {$::_trace} { + puts stderr "< $result" + } + return $result +} + +proc _open_stdout_stderr {cmd} { + _trace_exec $cmd + if {[catch { + set fd [open [concat [list | ] $cmd] r] + } err]} { + if { [lindex $cmd end] eq {2>@1} + && $err eq {can not find channel named "1"} + } { + # Older versions of Tcl 8.4 don't have this 2>@1 IO + # redirect operator. Fallback to |& cat for those. + # The command was not actually started, so its safe + # to try to start it a second time. + # + set fd [open [concat \ + [list | ] \ + [lrange $cmd 0 end-1] \ + [list |& cat] \ + ] r] + } else { + error $err + } + } + fconfigure $fd -eofchar {} + return $fd +} + +proc git_read {args} { + set opt [list] + + while {1} { + switch -- [lindex $args 0] { + --nice { + _lappend_nice opt + } + + --stderr { + lappend args 2>@1 + } + + default { + break + } + + } + + set args [lrange $args 1 end] + } + + set cmdp [_git_cmd [lindex $args 0]] + set args [lrange $args 1 end] + + return [_open_stdout_stderr [concat $opt $cmdp $args]] +} + +proc git_write {args} { + set opt [list] + + while {1} { + switch -- [lindex $args 0] { + --nice { + _lappend_nice opt + } + + default { + break + } + + } + + set args [lrange $args 1 end] + } + + set cmdp [_git_cmd [lindex $args 0]] + set args [lrange $args 1 end] + + _trace_exec [concat $opt $cmdp $args] + return [open [concat [list | ] $opt $cmdp $args] w] +} + +proc githook_read {hook_name args} { + set pchook [gitdir hooks $hook_name] + lappend args 2>@1 + + # On Windows [file executable] might lie so we need to ask + # the shell if the hook is executable. Yes that's annoying. + # + if {[is_Windows]} { + upvar #0 _sh interp + if {![info exists interp]} { + set interp [_which sh] + } + if {$interp eq {}} { + error "hook execution requires sh (not in PATH)" + } + + set scr {if test -x "$1";then exec "$@";fi} + set sh_c [list $interp -c $scr $interp $pchook] + return [_open_stdout_stderr [concat $sh_c $args]] + } + + if {[file executable $pchook]} { + return [_open_stdout_stderr [concat [list $pchook] $args]] + } + + return {} +} + +proc kill_file_process {fd} { + set process [pid $fd] + + catch { + if {[is_Windows]} { + # Use a Cygwin-specific flag to allow killing + # native Windows processes + exec kill -f $process + } else { + exec kill $process + } + } +} + +proc sq {value} { + regsub -all ' $value "'\\''" value + return "'$value'" +} + +proc load_current_branch {} { + global current_branch is_detached + + set fd [open [gitdir HEAD] r] + if {[gets $fd ref] < 1} { + set ref {} + } + close $fd + + set pfx {ref: refs/heads/} + set len [string length $pfx] + if {[string equal -length $len $pfx $ref]} { + # We're on a branch. It might not exist. But + # HEAD looks good enough to be a branch. + # + set current_branch [string range $ref $len end] + set is_detached 0 + } else { + # Assume this is a detached head. + # + set current_branch HEAD + set is_detached 1 + } +} + +auto_load tk_optionMenu +rename tk_optionMenu real__tkOptionMenu +proc tk_optionMenu {w varName args} { + set m [eval real__tkOptionMenu $w $varName $args] + $m configure -font font_ui + $w configure -font font_ui + return $m +} + +proc rmsel_tag {text} { + $text tag conf sel \ + -background [$text cget -background] \ + -foreground [$text cget -foreground] \ + -borderwidth 0 + $text tag conf in_sel -background lightgray + bind $text break + return $text +} + +set root_exists 0 +bind . { + bind . {} + set root_exists 1 +} + +if {[is_Windows]} { + wm iconbitmap . -default $oguilib/git-gui.ico +} + +###################################################################### +## +## config defaults + +set cursor_ptr arrow +font create font_diff -family Courier -size 10 +font create font_ui +catch { + label .dummy + eval font configure font_ui [font actual [.dummy cget -font]] + destroy .dummy +} + +font create font_uiitalic +font create font_uibold +font create font_diffbold +font create font_diffitalic + +foreach class {Button Checkbutton Entry Label + Labelframe Listbox Menu Message + Radiobutton Spinbox Text} { + option add *$class.font font_ui +} +unset class + +if {[is_Windows] || [is_MacOSX]} { + option add *Menu.tearOff 0 +} + +if {[is_MacOSX]} { + set M1B M1 + set M1T Cmd +} else { + set M1B Control + set M1T Ctrl +} + +proc bind_button3 {w cmd} { + bind $w $cmd + if {[is_MacOSX]} { + # Mac OS X sends Button-2 on right click through three-button mouse, + # or through trackpad right-clicking (two-finger touch + click). + bind $w $cmd + bind $w $cmd + } +} + +proc apply_config {} { + global repo_config font_descs + + foreach option $font_descs { + set name [lindex $option 0] + set font [lindex $option 1] + if {[catch { + set need_weight 1 + foreach {cn cv} $repo_config(gui.$name) { + if {$cn eq {-weight}} { + set need_weight 0 + } + font configure $font $cn $cv + } + if {$need_weight} { + font configure $font -weight normal + } + } err]} { + error_popup [strcat [mc "Invalid font specified in %s:" "gui.$name"] "\n\n$err"] + } + foreach {cn cv} [font configure $font] { + font configure ${font}bold $cn $cv + font configure ${font}italic $cn $cv + } + font configure ${font}bold -weight bold + font configure ${font}italic -slant italic + } +} + +set default_config(branch.autosetupmerge) true +set default_config(merge.diffstat) true +set default_config(merge.summary) false +set default_config(merge.verbosity) 2 +set default_config(user.name) {} +set default_config(user.email) {} + +set default_config(gui.matchtrackingbranch) false +set default_config(gui.pruneduringfetch) false +set default_config(gui.trustmtime) false +set default_config(gui.fastcopyblame) false +set default_config(gui.copyblamethreshold) 40 +set default_config(gui.diffcontext) 5 +set default_config(gui.commitmsgwidth) 75 +set default_config(gui.newbranchtemplate) {} +set default_config(gui.spellingdictionary) {} +set default_config(gui.fontui) [font configure font_ui] +set default_config(gui.fontdiff) [font configure font_diff] +set font_descs { + {fontui font_ui {mc "Main Font"}} + {fontdiff font_diff {mc "Diff/Console Font"}} +} + +###################################################################### +## +## find git + +set _git [_which git] +if {$_git eq {}} { + catch {wm withdraw .} + tk_messageBox \ + -icon error \ + -type ok \ + -title [mc "git-gui: fatal error"] \ + -message [mc "Cannot find git in PATH."] + exit 1 +} + +###################################################################### +## +## version check + +if {[catch {set _git_version [git --version]} err]} { + catch {wm withdraw .} + tk_messageBox \ + -icon error \ + -type ok \ + -title [mc "git-gui: fatal error"] \ + -message "Cannot determine Git version: + +$err + +[appname] requires Git 1.5.0 or later." + exit 1 +} +if {![regsub {^git version } $_git_version {} _git_version]} { + catch {wm withdraw .} + tk_messageBox \ + -icon error \ + -type ok \ + -title [mc "git-gui: fatal error"] \ + -message [strcat [mc "Cannot parse Git version string:"] "\n\n$_git_version"] + exit 1 +} + +set _real_git_version $_git_version +regsub -- {[\-\.]dirty$} $_git_version {} _git_version +regsub {\.[0-9]+\.g[0-9a-f]+$} $_git_version {} _git_version +regsub {\.rc[0-9]+$} $_git_version {} _git_version +regsub {\.GIT$} $_git_version {} _git_version +regsub {\.[a-zA-Z]+\.[0-9]+$} $_git_version {} _git_version + +if {![regexp {^[1-9]+(\.[0-9]+)+$} $_git_version]} { + catch {wm withdraw .} + if {[tk_messageBox \ + -icon warning \ + -type yesno \ + -default no \ + -title "[appname]: warning" \ + -message [mc "Git version cannot be determined. + +%s claims it is version '%s'. + +%s requires at least Git 1.5.0 or later. + +Assume '%s' is version 1.5.0? +" $_git $_real_git_version [appname] $_real_git_version]] eq {yes}} { + set _git_version 1.5.0 + } else { + exit 1 + } +} +unset _real_git_version + +proc git-version {args} { + global _git_version + + switch [llength $args] { + 0 { + return $_git_version + } + + 2 { + set op [lindex $args 0] + set vr [lindex $args 1] + set cm [package vcompare $_git_version $vr] + return [expr $cm $op 0] + } + + 4 { + set type [lindex $args 0] + set name [lindex $args 1] + set parm [lindex $args 2] + set body [lindex $args 3] + + if {($type ne {proc} && $type ne {method})} { + error "Invalid arguments to git-version" + } + if {[llength $body] < 2 || [lindex $body end-1] ne {default}} { + error "Last arm of $type $name must be default" + } + + foreach {op vr cb} [lrange $body 0 end-2] { + if {[git-version $op $vr]} { + return [uplevel [list $type $name $parm $cb]] + } + } + + return [uplevel [list $type $name $parm [lindex $body end]]] + } + + default { + error "git-version >= x" + } + + } +} + +if {[git-version < 1.5]} { + catch {wm withdraw .} + tk_messageBox \ + -icon error \ + -type ok \ + -title [mc "git-gui: fatal error"] \ + -message "[appname] requires Git 1.5.0 or later. + +You are using [git-version]: + +[git --version]" + exit 1 +} + +###################################################################### +## +## configure our library + +set idx [file join $oguilib tclIndex] +if {[catch {set fd [open $idx r]} err]} { + catch {wm withdraw .} + tk_messageBox \ + -icon error \ + -type ok \ + -title [mc "git-gui: fatal error"] \ + -message $err + exit 1 +} +if {[gets $fd] eq {# Autogenerated by git-gui Makefile}} { + set idx [list] + while {[gets $fd n] >= 0} { + if {$n ne {} && ![string match #* $n]} { + lappend idx $n + } + } +} else { + set idx {} +} +close $fd + +if {$idx ne {}} { + set loaded [list] + foreach p $idx { + if {[lsearch -exact $loaded $p] >= 0} continue + source [file join $oguilib $p] + lappend loaded $p + } + unset loaded p +} else { + set auto_path [concat [list $oguilib] $auto_path] +} +unset -nocomplain idx fd + +###################################################################### +## +## config file parsing + +git-version proc _parse_config {arr_name args} { + >= 1.5.3 { + upvar $arr_name arr + array unset arr + set buf {} + catch { + set fd_rc [eval \ + [list git_read config] \ + $args \ + [list --null --list]] + fconfigure $fd_rc -translation binary + set buf [read $fd_rc] + close $fd_rc + } + foreach line [split $buf "\0"] { + if {[regexp {^([^\n]+)\n(.*)$} $line line name value]} { + if {[is_many_config $name]} { + lappend arr($name) $value + } else { + set arr($name) $value + } + } + } + } + default { + upvar $arr_name arr + array unset arr + catch { + set fd_rc [eval [list git_read config --list] $args] + while {[gets $fd_rc line] >= 0} { + if {[regexp {^([^=]+)=(.*)$} $line line name value]} { + if {[is_many_config $name]} { + lappend arr($name) $value + } else { + set arr($name) $value + } + } + } + close $fd_rc + } + } +} + +proc load_config {include_global} { + global repo_config global_config default_config + + if {$include_global} { + _parse_config global_config --global + } + _parse_config repo_config + + foreach name [array names default_config] { + if {[catch {set v $global_config($name)}]} { + set global_config($name) $default_config($name) + } + if {[catch {set v $repo_config($name)}]} { + set repo_config($name) $default_config($name) + } + } +} + +###################################################################### +## +## feature option selection + +if {[regexp {^git-(.+)$} [file tail $argv0] _junk subcommand]} { + unset _junk +} else { + set subcommand gui +} +if {$subcommand eq {gui.sh}} { + set subcommand gui +} +if {$subcommand eq {gui} && [llength $argv] > 0} { + set subcommand [lindex $argv 0] + set argv [lrange $argv 1 end] +} + +enable_option multicommit +enable_option branch +enable_option transport +disable_option bare + +switch -- $subcommand { +browser - +blame { + enable_option bare + + disable_option multicommit + disable_option branch + disable_option transport +} +citool { + enable_option singlecommit + + disable_option multicommit + disable_option branch + disable_option transport +} +} + +###################################################################### +## +## repository setup + +if {[catch { + set _gitdir $env(GIT_DIR) + set _prefix {} + }] + && [catch { + set _gitdir [git rev-parse --git-dir] + set _prefix [git rev-parse --show-prefix] + } err]} { + load_config 1 + apply_config + choose_repository::pick +} +if {![file isdirectory $_gitdir] && [is_Cygwin]} { + catch {set _gitdir [exec cygpath --windows $_gitdir]} +} +if {![file isdirectory $_gitdir]} { + catch {wm withdraw .} + error_popup [strcat [mc "Git directory not found:"] "\n\n$_gitdir"] + exit 1 +} +if {$_prefix ne {}} { + regsub -all {[^/]+/} $_prefix ../ cdup + if {[catch {cd $cdup} err]} { + catch {wm withdraw .} + error_popup [strcat [mc "Cannot move to top of working directory:"] "\n\n$err"] + exit 1 + } + unset cdup +} elseif {![is_enabled bare]} { + if {[lindex [file split $_gitdir] end] ne {.git}} { + catch {wm withdraw .} + error_popup [strcat [mc "Cannot use funny .git directory:"] "\n\n$_gitdir"] + exit 1 + } + if {[catch {cd [file dirname $_gitdir]} err]} { + catch {wm withdraw .} + error_popup [strcat [mc "No working directory"] " [file dirname $_gitdir]:\n\n$err"] + exit 1 + } +} +set _reponame [file split [file normalize $_gitdir]] +if {[lindex $_reponame end] eq {.git}} { + set _reponame [lindex $_reponame end-1] +} else { + set _reponame [lindex $_reponame end] +} + +###################################################################### +## +## global init + +set current_diff_path {} +set current_diff_side {} +set diff_actions [list] + +set HEAD {} +set PARENT {} +set MERGE_HEAD [list] +set commit_type {} +set empty_tree {} +set current_branch {} +set is_detached 0 +set current_diff_path {} +set is_3way_diff 0 +set selected_commit_type new + +###################################################################### +## +## task management + +set rescan_active 0 +set diff_active 0 +set last_clicked {} + +set disable_on_lock [list] +set index_lock_type none + +proc lock_index {type} { + global index_lock_type disable_on_lock + + if {$index_lock_type eq {none}} { + set index_lock_type $type + foreach w $disable_on_lock { + uplevel #0 $w disabled + } + return 1 + } elseif {$index_lock_type eq "begin-$type"} { + set index_lock_type $type + return 1 + } + return 0 +} + +proc unlock_index {} { + global index_lock_type disable_on_lock + + set index_lock_type none + foreach w $disable_on_lock { + uplevel #0 $w normal + } +} + +###################################################################### +## +## status + +proc repository_state {ctvar hdvar mhvar} { + global current_branch + upvar $ctvar ct $hdvar hd $mhvar mh + + set mh [list] + + load_current_branch + if {[catch {set hd [git rev-parse --verify HEAD]}]} { + set hd {} + set ct initial + return + } + + set merge_head [gitdir MERGE_HEAD] + if {[file exists $merge_head]} { + set ct merge + set fd_mh [open $merge_head r] + while {[gets $fd_mh line] >= 0} { + lappend mh $line + } + close $fd_mh + return + } + + set ct normal +} + +proc PARENT {} { + global PARENT empty_tree + + set p [lindex $PARENT 0] + if {$p ne {}} { + return $p + } + if {$empty_tree eq {}} { + set empty_tree [git mktree << {}] + } + return $empty_tree +} + +proc rescan {after {honor_trustmtime 1}} { + global HEAD PARENT MERGE_HEAD commit_type + global ui_index ui_workdir ui_comm + global rescan_active file_states + global repo_config + + if {$rescan_active > 0 || ![lock_index read]} return + + repository_state newType newHEAD newMERGE_HEAD + if {[string match amend* $commit_type] + && $newType eq {normal} + && $newHEAD eq $HEAD} { + } else { + set HEAD $newHEAD + set PARENT $newHEAD + set MERGE_HEAD $newMERGE_HEAD + set commit_type $newType + } + + array unset file_states + + if {!$::GITGUI_BCK_exists && + (![$ui_comm edit modified] + || [string trim [$ui_comm get 0.0 end]] eq {})} { + if {[string match amend* $commit_type]} { + } elseif {[load_message GITGUI_MSG]} { + } elseif {[load_message MERGE_MSG]} { + } elseif {[load_message SQUASH_MSG]} { + } + $ui_comm edit reset + $ui_comm edit modified false + } + + if {$honor_trustmtime && $repo_config(gui.trustmtime) eq {true}} { + rescan_stage2 {} $after + } else { + set rescan_active 1 + ui_status [mc "Refreshing file status..."] + set fd_rf [git_read update-index \ + -q \ + --unmerged \ + --ignore-missing \ + --refresh \ + ] + fconfigure $fd_rf -blocking 0 -translation binary + fileevent $fd_rf readable \ + [list rescan_stage2 $fd_rf $after] + } +} + +if {[is_Cygwin]} { + set is_git_info_exclude {} + proc have_info_exclude {} { + global is_git_info_exclude + + if {$is_git_info_exclude eq {}} { + if {[catch {exec test -f [gitdir info exclude]}]} { + set is_git_info_exclude 0 + } else { + set is_git_info_exclude 1 + } + } + return $is_git_info_exclude + } +} else { + proc have_info_exclude {} { + return [file readable [gitdir info exclude]] + } +} + +proc rescan_stage2 {fd after} { + global rescan_active buf_rdi buf_rdf buf_rlo + + if {$fd ne {}} { + read $fd + if {![eof $fd]} return + close $fd + } + + set ls_others [list --exclude-per-directory=.gitignore] + if {[have_info_exclude]} { + lappend ls_others "--exclude-from=[gitdir info exclude]" + } + set user_exclude [get_config core.excludesfile] + if {$user_exclude ne {} && [file readable $user_exclude]} { + lappend ls_others "--exclude-from=$user_exclude" + } + + set buf_rdi {} + set buf_rdf {} + set buf_rlo {} + + set rescan_active 3 + ui_status [mc "Scanning for modified files ..."] + set fd_di [git_read diff-index --cached -z [PARENT]] + set fd_df [git_read diff-files -z] + set fd_lo [eval git_read ls-files --others -z $ls_others] + + fconfigure $fd_di -blocking 0 -translation binary -encoding binary + fconfigure $fd_df -blocking 0 -translation binary -encoding binary + fconfigure $fd_lo -blocking 0 -translation binary -encoding binary + fileevent $fd_di readable [list read_diff_index $fd_di $after] + fileevent $fd_df readable [list read_diff_files $fd_df $after] + fileevent $fd_lo readable [list read_ls_others $fd_lo $after] +} + +proc load_message {file} { + global ui_comm + + set f [gitdir $file] + if {[file isfile $f]} { + if {[catch {set fd [open $f r]}]} { + return 0 + } + fconfigure $fd -eofchar {} + set content [string trim [read $fd]] + close $fd + regsub -all -line {[ \r\t]+$} $content {} content + $ui_comm delete 0.0 end + $ui_comm insert end $content + return 1 + } + return 0 +} + +proc read_diff_index {fd after} { + global buf_rdi + + append buf_rdi [read $fd] + set c 0 + set n [string length $buf_rdi] + while {$c < $n} { + set z1 [string first "\0" $buf_rdi $c] + if {$z1 == -1} break + incr z1 + set z2 [string first "\0" $buf_rdi $z1] + if {$z2 == -1} break + + incr c + set i [split [string range $buf_rdi $c [expr {$z1 - 2}]] { }] + set p [string range $buf_rdi $z1 [expr {$z2 - 1}]] + merge_state \ + [encoding convertfrom $p] \ + [lindex $i 4]? \ + [list [lindex $i 0] [lindex $i 2]] \ + [list] + set c $z2 + incr c + } + if {$c < $n} { + set buf_rdi [string range $buf_rdi $c end] + } else { + set buf_rdi {} + } + + rescan_done $fd buf_rdi $after +} + +proc read_diff_files {fd after} { + global buf_rdf + + append buf_rdf [read $fd] + set c 0 + set n [string length $buf_rdf] + while {$c < $n} { + set z1 [string first "\0" $buf_rdf $c] + if {$z1 == -1} break + incr z1 + set z2 [string first "\0" $buf_rdf $z1] + if {$z2 == -1} break + + incr c + set i [split [string range $buf_rdf $c [expr {$z1 - 2}]] { }] + set p [string range $buf_rdf $z1 [expr {$z2 - 1}]] + merge_state \ + [encoding convertfrom $p] \ + ?[lindex $i 4] \ + [list] \ + [list [lindex $i 0] [lindex $i 2]] + set c $z2 + incr c + } + if {$c < $n} { + set buf_rdf [string range $buf_rdf $c end] + } else { + set buf_rdf {} + } + + rescan_done $fd buf_rdf $after +} + +proc read_ls_others {fd after} { + global buf_rlo + + append buf_rlo [read $fd] + set pck [split $buf_rlo "\0"] + set buf_rlo [lindex $pck end] + foreach p [lrange $pck 0 end-1] { + set p [encoding convertfrom $p] + if {[string index $p end] eq {/}} { + set p [string range $p 0 end-1] + } + merge_state $p ?O + } + rescan_done $fd buf_rlo $after +} + +proc rescan_done {fd buf after} { + global rescan_active current_diff_path + global file_states repo_config + upvar $buf to_clear + + if {![eof $fd]} return + set to_clear {} + close $fd + if {[incr rescan_active -1] > 0} return + + prune_selection + unlock_index + display_all_files + if {$current_diff_path ne {}} reshow_diff + uplevel #0 $after +} + +proc prune_selection {} { + global file_states selected_paths + + foreach path [array names selected_paths] { + if {[catch {set still_here $file_states($path)}]} { + unset selected_paths($path) + } + } +} + +###################################################################### +## +## ui helpers + +proc mapicon {w state path} { + global all_icons + + if {[catch {set r $all_icons($state$w)}]} { + puts "error: no icon for $w state={$state} $path" + return file_plain + } + return $r +} + +proc mapdesc {state path} { + global all_descs + + if {[catch {set r $all_descs($state)}]} { + puts "error: no desc for state={$state} $path" + return $state + } + return $r +} + +proc ui_status {msg} { + global main_status + if {[info exists main_status]} { + $main_status show $msg + } +} + +proc ui_ready {{test {}}} { + global main_status + if {[info exists main_status]} { + $main_status show [mc "Ready."] $test + } +} + +proc escape_path {path} { + regsub -all {\\} $path "\\\\" path + regsub -all "\n" $path "\\n" path + return $path +} + +proc short_path {path} { + return [escape_path [lindex [file split $path] end]] +} + +set next_icon_id 0 +set null_sha1 [string repeat 0 40] + +proc merge_state {path new_state {head_info {}} {index_info {}}} { + global file_states next_icon_id null_sha1 + + set s0 [string index $new_state 0] + set s1 [string index $new_state 1] + + if {[catch {set info $file_states($path)}]} { + set state __ + set icon n[incr next_icon_id] + } else { + set state [lindex $info 0] + set icon [lindex $info 1] + if {$head_info eq {}} {set head_info [lindex $info 2]} + if {$index_info eq {}} {set index_info [lindex $info 3]} + } + + if {$s0 eq {?}} {set s0 [string index $state 0]} \ + elseif {$s0 eq {_}} {set s0 _} + + if {$s1 eq {?}} {set s1 [string index $state 1]} \ + elseif {$s1 eq {_}} {set s1 _} + + if {$s0 eq {A} && $s1 eq {_} && $head_info eq {}} { + set head_info [list 0 $null_sha1] + } elseif {$s0 ne {_} && [string index $state 0] eq {_} + && $head_info eq {}} { + set head_info $index_info + } + + set file_states($path) [list $s0$s1 $icon \ + $head_info $index_info \ + ] + return $state +} + +proc display_file_helper {w path icon_name old_m new_m} { + global file_lists + + if {$new_m eq {_}} { + set lno [lsearch -sorted -exact $file_lists($w) $path] + if {$lno >= 0} { + set file_lists($w) [lreplace $file_lists($w) $lno $lno] + incr lno + $w conf -state normal + $w delete $lno.0 [expr {$lno + 1}].0 + $w conf -state disabled + } + } elseif {$old_m eq {_} && $new_m ne {_}} { + lappend file_lists($w) $path + set file_lists($w) [lsort -unique $file_lists($w)] + set lno [lsearch -sorted -exact $file_lists($w) $path] + incr lno + $w conf -state normal + $w image create $lno.0 \ + -align center -padx 5 -pady 1 \ + -name $icon_name \ + -image [mapicon $w $new_m $path] + $w insert $lno.1 "[escape_path $path]\n" + $w conf -state disabled + } elseif {$old_m ne $new_m} { + $w conf -state normal + $w image conf $icon_name -image [mapicon $w $new_m $path] + $w conf -state disabled + } +} + +proc display_file {path state} { + global file_states selected_paths + global ui_index ui_workdir + + set old_m [merge_state $path $state] + set s $file_states($path) + set new_m [lindex $s 0] + set icon_name [lindex $s 1] + + set o [string index $old_m 0] + set n [string index $new_m 0] + if {$o eq {U}} { + set o _ + } + if {$n eq {U}} { + set n _ + } + display_file_helper $ui_index $path $icon_name $o $n + + if {[string index $old_m 0] eq {U}} { + set o U + } else { + set o [string index $old_m 1] + } + if {[string index $new_m 0] eq {U}} { + set n U + } else { + set n [string index $new_m 1] + } + display_file_helper $ui_workdir $path $icon_name $o $n + + if {$new_m eq {__}} { + unset file_states($path) + catch {unset selected_paths($path)} + } +} + +proc display_all_files_helper {w path icon_name m} { + global file_lists + + lappend file_lists($w) $path + set lno [expr {[lindex [split [$w index end] .] 0] - 1}] + $w image create end \ + -align center -padx 5 -pady 1 \ + -name $icon_name \ + -image [mapicon $w $m $path] + $w insert end "[escape_path $path]\n" +} + +proc display_all_files {} { + global ui_index ui_workdir + global file_states file_lists + global last_clicked + + $ui_index conf -state normal + $ui_workdir conf -state normal + + $ui_index delete 0.0 end + $ui_workdir delete 0.0 end + set last_clicked {} + + set file_lists($ui_index) [list] + set file_lists($ui_workdir) [list] + + foreach path [lsort [array names file_states]] { + set s $file_states($path) + set m [lindex $s 0] + set icon_name [lindex $s 1] + + set s [string index $m 0] + if {$s ne {U} && $s ne {_}} { + display_all_files_helper $ui_index $path \ + $icon_name $s + } + + if {[string index $m 0] eq {U}} { + set s U + } else { + set s [string index $m 1] + } + if {$s ne {_}} { + display_all_files_helper $ui_workdir $path \ + $icon_name $s + } + } + + $ui_index conf -state disabled + $ui_workdir conf -state disabled +} + +###################################################################### +## +## icons + +set filemask { +#define mask_width 14 +#define mask_height 15 +static unsigned char mask_bits[] = { + 0xfe, 0x1f, 0xfe, 0x1f, 0xfe, 0x1f, 0xfe, 0x1f, 0xfe, 0x1f, 0xfe, 0x1f, + 0xfe, 0x1f, 0xfe, 0x1f, 0xfe, 0x1f, 0xfe, 0x1f, 0xfe, 0x1f, 0xfe, 0x1f, + 0xfe, 0x1f, 0xfe, 0x1f, 0xfe, 0x1f}; +} + +image create bitmap file_plain -background white -foreground black -data { +#define plain_width 14 +#define plain_height 15 +static unsigned char plain_bits[] = { + 0xfe, 0x01, 0x02, 0x03, 0x02, 0x05, 0x02, 0x09, 0x02, 0x1f, 0x02, 0x10, + 0x02, 0x10, 0x02, 0x10, 0x02, 0x10, 0x02, 0x10, 0x02, 0x10, 0x02, 0x10, + 0x02, 0x10, 0x02, 0x10, 0xfe, 0x1f}; +} -maskdata $filemask + +image create bitmap file_mod -background white -foreground blue -data { +#define mod_width 14 +#define mod_height 15 +static unsigned char mod_bits[] = { + 0xfe, 0x01, 0x02, 0x03, 0x7a, 0x05, 0x02, 0x09, 0x7a, 0x1f, 0x02, 0x10, + 0xfa, 0x17, 0x02, 0x10, 0xfa, 0x17, 0x02, 0x10, 0xfa, 0x17, 0x02, 0x10, + 0xfa, 0x17, 0x02, 0x10, 0xfe, 0x1f}; +} -maskdata $filemask + +image create bitmap file_fulltick -background white -foreground "#007000" -data { +#define file_fulltick_width 14 +#define file_fulltick_height 15 +static unsigned char file_fulltick_bits[] = { + 0xfe, 0x01, 0x02, 0x1a, 0x02, 0x0c, 0x02, 0x0c, 0x02, 0x16, 0x02, 0x16, + 0x02, 0x13, 0x00, 0x13, 0x86, 0x11, 0x8c, 0x11, 0xd8, 0x10, 0xf2, 0x10, + 0x62, 0x10, 0x02, 0x10, 0xfe, 0x1f}; +} -maskdata $filemask + +image create bitmap file_parttick -background white -foreground "#005050" -data { +#define parttick_width 14 +#define parttick_height 15 +static unsigned char parttick_bits[] = { + 0xfe, 0x01, 0x02, 0x03, 0x7a, 0x05, 0x02, 0x09, 0x7a, 0x1f, 0x02, 0x10, + 0x7a, 0x14, 0x02, 0x16, 0x02, 0x13, 0x8a, 0x11, 0xda, 0x10, 0x72, 0x10, + 0x22, 0x10, 0x02, 0x10, 0xfe, 0x1f}; +} -maskdata $filemask + +image create bitmap file_question -background white -foreground black -data { +#define file_question_width 14 +#define file_question_height 15 +static unsigned char file_question_bits[] = { + 0xfe, 0x01, 0x02, 0x02, 0xe2, 0x04, 0xf2, 0x09, 0x1a, 0x1b, 0x0a, 0x13, + 0x82, 0x11, 0xc2, 0x10, 0x62, 0x10, 0x62, 0x10, 0x02, 0x10, 0x62, 0x10, + 0x62, 0x10, 0x02, 0x10, 0xfe, 0x1f}; +} -maskdata $filemask + +image create bitmap file_removed -background white -foreground red -data { +#define file_removed_width 14 +#define file_removed_height 15 +static unsigned char file_removed_bits[] = { + 0xfe, 0x01, 0x02, 0x03, 0x02, 0x05, 0x02, 0x09, 0x02, 0x1f, 0x02, 0x10, + 0x1a, 0x16, 0x32, 0x13, 0xe2, 0x11, 0xc2, 0x10, 0xe2, 0x11, 0x32, 0x13, + 0x1a, 0x16, 0x02, 0x10, 0xfe, 0x1f}; +} -maskdata $filemask + +image create bitmap file_merge -background white -foreground blue -data { +#define file_merge_width 14 +#define file_merge_height 15 +static unsigned char file_merge_bits[] = { + 0xfe, 0x01, 0x02, 0x03, 0x62, 0x05, 0x62, 0x09, 0x62, 0x1f, 0x62, 0x10, + 0xfa, 0x11, 0xf2, 0x10, 0x62, 0x10, 0x02, 0x10, 0xfa, 0x17, 0x02, 0x10, + 0xfa, 0x17, 0x02, 0x10, 0xfe, 0x1f}; +} -maskdata $filemask + +set ui_index .vpane.files.index.list +set ui_workdir .vpane.files.workdir.list + +set all_icons(_$ui_index) file_plain +set all_icons(A$ui_index) file_fulltick +set all_icons(M$ui_index) file_fulltick +set all_icons(D$ui_index) file_removed +set all_icons(U$ui_index) file_merge + +set all_icons(_$ui_workdir) file_plain +set all_icons(M$ui_workdir) file_mod +set all_icons(D$ui_workdir) file_question +set all_icons(U$ui_workdir) file_merge +set all_icons(O$ui_workdir) file_plain + +set max_status_desc 0 +foreach i { + {__ {mc "Unmodified"}} + + {_M {mc "Modified, not staged"}} + {M_ {mc "Staged for commit"}} + {MM {mc "Portions staged for commit"}} + {MD {mc "Staged for commit, missing"}} + + {_O {mc "Untracked, not staged"}} + {A_ {mc "Staged for commit"}} + {AM {mc "Portions staged for commit"}} + {AD {mc "Staged for commit, missing"}} + + {_D {mc "Missing"}} + {D_ {mc "Staged for removal"}} + {DO {mc "Staged for removal, still present"}} + + {U_ {mc "Requires merge resolution"}} + {UU {mc "Requires merge resolution"}} + {UM {mc "Requires merge resolution"}} + {UD {mc "Requires merge resolution"}} + } { + set text [eval [lindex $i 1]] + if {$max_status_desc < [string length $text]} { + set max_status_desc [string length $text] + } + set all_descs([lindex $i 0]) $text +} +unset i + +###################################################################### +## +## util + +proc scrollbar2many {list mode args} { + foreach w $list {eval $w $mode $args} +} + +proc many2scrollbar {list mode sb top bottom} { + $sb set $top $bottom + foreach w $list {$w $mode moveto $top} +} + +proc incr_font_size {font {amt 1}} { + set sz [font configure $font -size] + incr sz $amt + font configure $font -size $sz + font configure ${font}bold -size $sz + font configure ${font}italic -size $sz +} + +###################################################################### +## +## ui commands + +set starting_gitk_msg [mc "Starting gitk... please wait..."] + +proc do_gitk {revs} { + # -- Always start gitk through whatever we were loaded with. This + # lets us bypass using shell process on Windows systems. + # + set exe [_which gitk -script] + set cmd [list [info nameofexecutable] $exe] + if {$exe eq {}} { + error_popup [mc "Couldn't find gitk in PATH"] + } else { + global env + + if {[info exists env(GIT_DIR)]} { + set old_GIT_DIR $env(GIT_DIR) + } else { + set old_GIT_DIR {} + } + + set pwd [pwd] + cd [file dirname [gitdir]] + set env(GIT_DIR) [file tail [gitdir]] + + eval exec $cmd $revs & + + if {$old_GIT_DIR eq {}} { + unset env(GIT_DIR) + } else { + set env(GIT_DIR) $old_GIT_DIR + } + cd $pwd + + ui_status $::starting_gitk_msg + after 10000 { + ui_ready $starting_gitk_msg + } + } +} + +set is_quitting 0 + +proc do_quit {} { + global ui_comm is_quitting repo_config commit_type + global GITGUI_BCK_exists GITGUI_BCK_i + global ui_comm_spell + + if {$is_quitting} return + set is_quitting 1 + + if {[winfo exists $ui_comm]} { + # -- Stash our current commit buffer. + # + set save [gitdir GITGUI_MSG] + if {$GITGUI_BCK_exists && ![$ui_comm edit modified]} { + file rename -force [gitdir GITGUI_BCK] $save + set GITGUI_BCK_exists 0 + } else { + set msg [string trim [$ui_comm get 0.0 end]] + regsub -all -line {[ \r\t]+$} $msg {} msg + if {(![string match amend* $commit_type] + || [$ui_comm edit modified]) + && $msg ne {}} { + catch { + set fd [open $save w] + puts -nonewline $fd $msg + close $fd + } + } else { + catch {file delete $save} + } + } + + # -- Cancel our spellchecker if its running. + # + if {[info exists ui_comm_spell]} { + $ui_comm_spell stop + } + + # -- Remove our editor backup, its not needed. + # + after cancel $GITGUI_BCK_i + if {$GITGUI_BCK_exists} { + catch {file delete [gitdir GITGUI_BCK]} + } + + # -- Stash our current window geometry into this repository. + # + set cfg_geometry [list] + lappend cfg_geometry [wm geometry .] + lappend cfg_geometry [lindex [.vpane sash coord 0] 0] + lappend cfg_geometry [lindex [.vpane.files sash coord 0] 1] + if {[catch {set rc_geometry $repo_config(gui.geometry)}]} { + set rc_geometry {} + } + if {$cfg_geometry ne $rc_geometry} { + catch {git config gui.geometry $cfg_geometry} + } + } + + destroy . +} + +proc do_rescan {} { + rescan ui_ready +} + +proc do_commit {} { + commit_tree +} + +proc next_diff {} { + global next_diff_p next_diff_w next_diff_i + show_diff $next_diff_p $next_diff_w $next_diff_i +} + +proc toggle_or_diff {w x y} { + global file_states file_lists current_diff_path ui_index ui_workdir + global last_clicked selected_paths + + set pos [split [$w index @$x,$y] .] + set lno [lindex $pos 0] + set col [lindex $pos 1] + set path [lindex $file_lists($w) [expr {$lno - 1}]] + if {$path eq {}} { + set last_clicked {} + return + } + + set last_clicked [list $w $lno] + array unset selected_paths + $ui_index tag remove in_sel 0.0 end + $ui_workdir tag remove in_sel 0.0 end + + if {$col == 0 && $y > 1} { + set i [expr {$lno-1}] + set ll [expr {[llength $file_lists($w)]-1}] + + if {$i == $ll && $i == 0} { + set after {reshow_diff;} + } else { + global next_diff_p next_diff_w next_diff_i + + set next_diff_w $w + + if {$i < $ll} { + set i [expr {$i + 1}] + set next_diff_i $i + } else { + set next_diff_i $i + set i [expr {$i - 1}] + } + + set next_diff_p [lindex $file_lists($w) $i] + + if {$next_diff_p ne {} && $current_diff_path ne {}} { + set after {next_diff;} + } else { + set after {} + } + } + + if {$w eq $ui_index} { + update_indexinfo \ + "Unstaging [short_path $path] from commit" \ + [list $path] \ + [concat $after [list ui_ready]] + } elseif {$w eq $ui_workdir} { + update_index \ + "Adding [short_path $path]" \ + [list $path] \ + [concat $after [list ui_ready]] + } + } else { + show_diff $path $w $lno + } +} + +proc add_one_to_selection {w x y} { + global file_lists last_clicked selected_paths + + set lno [lindex [split [$w index @$x,$y] .] 0] + set path [lindex $file_lists($w) [expr {$lno - 1}]] + if {$path eq {}} { + set last_clicked {} + return + } + + if {$last_clicked ne {} + && [lindex $last_clicked 0] ne $w} { + array unset selected_paths + [lindex $last_clicked 0] tag remove in_sel 0.0 end + } + + set last_clicked [list $w $lno] + if {[catch {set in_sel $selected_paths($path)}]} { + set in_sel 0 + } + if {$in_sel} { + unset selected_paths($path) + $w tag remove in_sel $lno.0 [expr {$lno + 1}].0 + } else { + set selected_paths($path) 1 + $w tag add in_sel $lno.0 [expr {$lno + 1}].0 + } +} + +proc add_range_to_selection {w x y} { + global file_lists last_clicked selected_paths + + if {[lindex $last_clicked 0] ne $w} { + toggle_or_diff $w $x $y + return + } + + set lno [lindex [split [$w index @$x,$y] .] 0] + set lc [lindex $last_clicked 1] + if {$lc < $lno} { + set begin $lc + set end $lno + } else { + set begin $lno + set end $lc + } + + foreach path [lrange $file_lists($w) \ + [expr {$begin - 1}] \ + [expr {$end - 1}]] { + set selected_paths($path) 1 + } + $w tag add in_sel $begin.0 [expr {$end + 1}].0 +} + +proc show_more_context {} { + global repo_config + if {$repo_config(gui.diffcontext) < 99} { + incr repo_config(gui.diffcontext) + reshow_diff + } +} + +proc show_less_context {} { + global repo_config + if {$repo_config(gui.diffcontext) >= 1} { + incr repo_config(gui.diffcontext) -1 + reshow_diff + } +} + +###################################################################### +## +## ui construction + +load_config 0 +apply_config +set ui_comm {} + +# -- Menu Bar +# +menu .mbar -tearoff 0 +.mbar add cascade -label [mc Repository] -menu .mbar.repository +.mbar add cascade -label [mc Edit] -menu .mbar.edit +if {[is_enabled branch]} { + .mbar add cascade -label [mc Branch] -menu .mbar.branch +} +if {[is_enabled multicommit] || [is_enabled singlecommit]} { + .mbar add cascade -label [mc Commit@@noun] -menu .mbar.commit +} +if {[is_enabled transport]} { + .mbar add cascade -label [mc Merge] -menu .mbar.merge + .mbar add cascade -label [mc Remote] -menu .mbar.remote +} +. configure -menu .mbar + +# -- Repository Menu +# +menu .mbar.repository + +.mbar.repository add command \ + -label [mc "Browse Current Branch's Files"] \ + -command {browser::new $current_branch} +set ui_browse_current [.mbar.repository index last] +.mbar.repository add command \ + -label [mc "Browse Branch Files..."] \ + -command browser_open::dialog +.mbar.repository add separator + +.mbar.repository add command \ + -label [mc "Visualize Current Branch's History"] \ + -command {do_gitk $current_branch} +set ui_visualize_current [.mbar.repository index last] +.mbar.repository add command \ + -label [mc "Visualize All Branch History"] \ + -command {do_gitk --all} +.mbar.repository add separator + +proc current_branch_write {args} { + global current_branch + .mbar.repository entryconf $::ui_browse_current \ + -label [mc "Browse %s's Files" $current_branch] + .mbar.repository entryconf $::ui_visualize_current \ + -label [mc "Visualize %s's History" $current_branch] +} +trace add variable current_branch write current_branch_write + +if {[is_enabled multicommit]} { + .mbar.repository add command -label [mc "Database Statistics"] \ + -command do_stats + + .mbar.repository add command -label [mc "Compress Database"] \ + -command do_gc + + .mbar.repository add command -label [mc "Verify Database"] \ + -command do_fsck_objects + + .mbar.repository add separator + + if {[is_Cygwin]} { + .mbar.repository add command \ + -label [mc "Create Desktop Icon"] \ + -command do_cygwin_shortcut + } elseif {[is_Windows]} { + .mbar.repository add command \ + -label [mc "Create Desktop Icon"] \ + -command do_windows_shortcut + } elseif {[is_MacOSX]} { + .mbar.repository add command \ + -label [mc "Create Desktop Icon"] \ + -command do_macosx_app + } +} + +if {[is_MacOSX]} { + proc ::tk::mac::Quit {args} { do_quit } +} else { + .mbar.repository add command -label [mc Quit] \ + -command do_quit \ + -accelerator $M1T-Q +} + +# -- Edit Menu +# +menu .mbar.edit +.mbar.edit add command -label [mc Undo] \ + -command {catch {[focus] edit undo}} \ + -accelerator $M1T-Z +.mbar.edit add command -label [mc Redo] \ + -command {catch {[focus] edit redo}} \ + -accelerator $M1T-Y +.mbar.edit add separator +.mbar.edit add command -label [mc Cut] \ + -command {catch {tk_textCut [focus]}} \ + -accelerator $M1T-X +.mbar.edit add command -label [mc Copy] \ + -command {catch {tk_textCopy [focus]}} \ + -accelerator $M1T-C +.mbar.edit add command -label [mc Paste] \ + -command {catch {tk_textPaste [focus]; [focus] see insert}} \ + -accelerator $M1T-V +.mbar.edit add command -label [mc Delete] \ + -command {catch {[focus] delete sel.first sel.last}} \ + -accelerator Del +.mbar.edit add separator +.mbar.edit add command -label [mc "Select All"] \ + -command {catch {[focus] tag add sel 0.0 end}} \ + -accelerator $M1T-A + +# -- Branch Menu +# +if {[is_enabled branch]} { + menu .mbar.branch + + .mbar.branch add command -label [mc "Create..."] \ + -command branch_create::dialog \ + -accelerator $M1T-N + lappend disable_on_lock [list .mbar.branch entryconf \ + [.mbar.branch index last] -state] + + .mbar.branch add command -label [mc "Checkout..."] \ + -command branch_checkout::dialog \ + -accelerator $M1T-O + lappend disable_on_lock [list .mbar.branch entryconf \ + [.mbar.branch index last] -state] + + .mbar.branch add command -label [mc "Rename..."] \ + -command branch_rename::dialog + lappend disable_on_lock [list .mbar.branch entryconf \ + [.mbar.branch index last] -state] + + .mbar.branch add command -label [mc "Delete..."] \ + -command branch_delete::dialog + lappend disable_on_lock [list .mbar.branch entryconf \ + [.mbar.branch index last] -state] + + .mbar.branch add command -label [mc "Reset..."] \ + -command merge::reset_hard + lappend disable_on_lock [list .mbar.branch entryconf \ + [.mbar.branch index last] -state] +} + +# -- Commit Menu +# +if {[is_enabled multicommit] || [is_enabled singlecommit]} { + menu .mbar.commit + + .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"] \ + -command do_select_commit_type \ + -variable selected_commit_type \ + -value amend + lappend disable_on_lock \ + [list .mbar.commit entryconf [.mbar.commit index last] -state] + + .mbar.commit add separator + + .mbar.commit add command -label [mc Rescan] \ + -command do_rescan \ + -accelerator F5 + lappend disable_on_lock \ + [list .mbar.commit entryconf [.mbar.commit index last] -state] + + .mbar.commit add command -label [mc "Stage To Commit"] \ + -command do_add_selection \ + -accelerator $M1T-T + lappend disable_on_lock \ + [list .mbar.commit entryconf [.mbar.commit index last] -state] + + .mbar.commit add command -label [mc "Stage Changed Files To Commit"] \ + -command do_add_all \ + -accelerator $M1T-I + lappend disable_on_lock \ + [list .mbar.commit entryconf [.mbar.commit index last] -state] + + .mbar.commit add command -label [mc "Unstage From Commit"] \ + -command do_unstage_selection + lappend disable_on_lock \ + [list .mbar.commit entryconf [.mbar.commit index last] -state] + + .mbar.commit add command -label [mc "Revert Changes"] \ + -command do_revert_selection + lappend disable_on_lock \ + [list .mbar.commit entryconf [.mbar.commit index last] -state] + + .mbar.commit add separator + + .mbar.commit add command -label [mc "Show Less Context"] \ + -command show_less_context \ + -accelerator $M1T-\- + + .mbar.commit add command -label [mc "Show More Context"] \ + -command show_more_context \ + -accelerator $M1T-= + + .mbar.commit add separator + + .mbar.commit add command -label [mc "Sign Off"] \ + -command do_signoff \ + -accelerator $M1T-S + + .mbar.commit add command -label [mc Commit@@verb] \ + -command do_commit \ + -accelerator $M1T-Return + lappend disable_on_lock \ + [list .mbar.commit entryconf [.mbar.commit index last] -state] +} + +# -- Merge Menu +# +if {[is_enabled branch]} { + menu .mbar.merge + .mbar.merge add command -label [mc "Local Merge..."] \ + -command merge::dialog \ + -accelerator $M1T-M + lappend disable_on_lock \ + [list .mbar.merge entryconf [.mbar.merge index last] -state] + .mbar.merge add command -label [mc "Abort Merge..."] \ + -command merge::reset_hard + lappend disable_on_lock \ + [list .mbar.merge entryconf [.mbar.merge index last] -state] +} + +# -- Transport Menu +# +if {[is_enabled transport]} { + menu .mbar.remote + + .mbar.remote add command \ + -label [mc "Push..."] \ + -command do_push_anywhere \ + -accelerator $M1T-P + .mbar.remote add command \ + -label [mc "Delete..."] \ + -command remote_branch_delete::dialog +} + +if {[is_MacOSX]} { + # -- Apple Menu (Mac OS X only) + # + .mbar add cascade -label Apple -menu .mbar.apple + menu .mbar.apple + + .mbar.apple add command -label [mc "About %s" [appname]] \ + -command do_about + .mbar.apple add separator + .mbar.apple add command \ + -label [mc "Preferences..."] \ + -command do_options \ + -accelerator $M1T-, + bind . <$M1B-,> do_options +} else { + # -- Edit Menu + # + .mbar.edit add separator + .mbar.edit add command -label [mc "Options..."] \ + -command do_options +} + +# -- Help Menu +# +.mbar add cascade -label [mc Help] -menu .mbar.help +menu .mbar.help + +if {![is_MacOSX]} { + .mbar.help add command -label [mc "About %s" [appname]] \ + -command do_about +} + +set browser {} +catch {set browser $repo_config(instaweb.browser)} +set doc_path [file dirname [gitexec]] +set doc_path [file join $doc_path Documentation index.html] + +if {[is_Cygwin]} { + set doc_path [exec cygpath --mixed $doc_path] +} + +if {$browser eq {}} { + if {[is_MacOSX]} { + set browser open + } elseif {[is_Cygwin]} { + set program_files [file dirname [exec cygpath --windir]] + set program_files [file join $program_files {Program Files}] + set firefox [file join $program_files {Mozilla Firefox} firefox.exe] + set ie [file join $program_files {Internet Explorer} IEXPLORE.EXE] + if {[file exists $firefox]} { + set browser $firefox + } elseif {[file exists $ie]} { + set browser $ie + } + unset program_files firefox ie + } +} + +if {[file isfile $doc_path]} { + set doc_url "file:$doc_path" +} else { + set doc_url {http://www.kernel.org/pub/software/scm/git/docs/} +} + +if {$browser ne {}} { + .mbar.help add command -label [mc "Online Documentation"] \ + -command [list exec $browser $doc_url &] +} +unset browser doc_path doc_url + +# -- Standard bindings +# +wm protocol . WM_DELETE_WINDOW do_quit +bind all <$M1B-Key-q> do_quit +bind all <$M1B-Key-Q> do_quit +bind all <$M1B-Key-w> {destroy [winfo toplevel %W]} +bind all <$M1B-Key-W> {destroy [winfo toplevel %W]} + +set subcommand_args {} +proc usage {} { + puts stderr "usage: $::argv0 $::subcommand $::subcommand_args" + exit 1 +} + +# -- Not a normal commit type invocation? Do that instead! +# +switch -- $subcommand { +browser - +blame { + set subcommand_args {rev? path} + if {$argv eq {}} usage + set head {} + set path {} + set is_path 0 + foreach a $argv { + if {$is_path || [file exists $_prefix$a]} { + if {$path ne {}} usage + set path $_prefix$a + break + } elseif {$a eq {--}} { + if {$path ne {}} { + if {$head ne {}} usage + set head $path + set path {} + } + set is_path 1 + } elseif {$head eq {}} { + if {$head ne {}} usage + set head $a + set is_path 1 + } else { + usage + } + } + unset is_path + + if {$head ne {} && $path eq {}} { + set path $_prefix$head + set head {} + } + + if {$head eq {}} { + load_current_branch + } else { + if {[regexp {^[0-9a-f]{1,39}$} $head]} { + if {[catch { + set head [git rev-parse --verify $head] + } err]} { + puts stderr $err + exit 1 + } + } + set current_branch $head + } + + switch -- $subcommand { + browser { + if {$head eq {}} { + if {$path ne {} && [file isdirectory $path]} { + set head $current_branch + } else { + set head $path + set path {} + } + } + browser::new $head $path + } + blame { + if {$head eq {} && ![file exists $path]} { + puts stderr [mc "fatal: cannot stat path %s: No such file or directory" $path] + exit 1 + } + blame::new $head $path + } + } + return +} +citool - +gui { + if {[llength $argv] != 0} { + puts -nonewline stderr "usage: $argv0" + if {$subcommand ne {gui} + && [file tail $argv0] ne "git-$subcommand"} { + puts -nonewline stderr " $subcommand" + } + puts stderr {} + exit 1 + } + # fall through to setup UI for commits +} +default { + puts stderr "usage: $argv0 \[{blame|browser|citool}\]" + exit 1 +} +} + +# -- Branch Control +# +frame .branch \ + -borderwidth 1 \ + -relief sunken +label .branch.l1 \ + -text [mc "Current Branch:"] \ + -anchor w \ + -justify left +label .branch.cb \ + -textvariable current_branch \ + -anchor w \ + -justify left +pack .branch.l1 -side left +pack .branch.cb -side left -fill x +pack .branch -side top -fill x + +# -- Main Window Layout +# +panedwindow .vpane -orient horizontal +panedwindow .vpane.files -orient vertical +.vpane add .vpane.files -sticky nsew -height 100 -width 200 +pack .vpane -anchor n -side top -fill both -expand 1 + +# -- Index File List +# +frame .vpane.files.index -height 100 -width 200 +label .vpane.files.index.title -text [mc "Staged Changes (Will Commit)"] \ + -background lightgreen -foreground black +text $ui_index -background white -foreground black \ + -borderwidth 0 \ + -width 20 -height 10 \ + -wrap none \ + -cursor $cursor_ptr \ + -xscrollcommand {.vpane.files.index.sx set} \ + -yscrollcommand {.vpane.files.index.sy set} \ + -state disabled +scrollbar .vpane.files.index.sx -orient h -command [list $ui_index xview] +scrollbar .vpane.files.index.sy -orient v -command [list $ui_index yview] +pack .vpane.files.index.title -side top -fill x +pack .vpane.files.index.sx -side bottom -fill x +pack .vpane.files.index.sy -side right -fill y +pack $ui_index -side left -fill both -expand 1 + +# -- Working Directory File List +# +frame .vpane.files.workdir -height 100 -width 200 +label .vpane.files.workdir.title -text [mc "Unstaged Changes"] \ + -background lightsalmon -foreground black +text $ui_workdir -background white -foreground black \ + -borderwidth 0 \ + -width 20 -height 10 \ + -wrap none \ + -cursor $cursor_ptr \ + -xscrollcommand {.vpane.files.workdir.sx set} \ + -yscrollcommand {.vpane.files.workdir.sy set} \ + -state disabled +scrollbar .vpane.files.workdir.sx -orient h -command [list $ui_workdir xview] +scrollbar .vpane.files.workdir.sy -orient v -command [list $ui_workdir yview] +pack .vpane.files.workdir.title -side top -fill x +pack .vpane.files.workdir.sx -side bottom -fill x +pack .vpane.files.workdir.sy -side right -fill y +pack $ui_workdir -side left -fill both -expand 1 + +.vpane.files add .vpane.files.workdir -sticky nsew +.vpane.files add .vpane.files.index -sticky nsew + +foreach i [list $ui_index $ui_workdir] { + rmsel_tag $i + $i tag conf in_diff -background [$i tag cget in_sel -background] +} +unset i + +# -- Diff and Commit Area +# +frame .vpane.lower -height 300 -width 400 +frame .vpane.lower.commarea +frame .vpane.lower.diff -relief sunken -borderwidth 1 +pack .vpane.lower.diff -fill both -expand 1 +pack .vpane.lower.commarea -side bottom -fill x +.vpane add .vpane.lower -sticky nsew + +# -- Commit Area Buttons +# +frame .vpane.lower.commarea.buttons +label .vpane.lower.commarea.buttons.l -text {} \ + -anchor w \ + -justify left +pack .vpane.lower.commarea.buttons.l -side top -fill x +pack .vpane.lower.commarea.buttons -side left -fill y + +button .vpane.lower.commarea.buttons.rescan -text [mc Rescan] \ + -command do_rescan +pack .vpane.lower.commarea.buttons.rescan -side top -fill x +lappend disable_on_lock \ + {.vpane.lower.commarea.buttons.rescan conf -state} + +button .vpane.lower.commarea.buttons.incall -text [mc "Stage Changed"] \ + -command do_add_all +pack .vpane.lower.commarea.buttons.incall -side top -fill x +lappend disable_on_lock \ + {.vpane.lower.commarea.buttons.incall conf -state} + +button .vpane.lower.commarea.buttons.signoff -text [mc "Sign Off"] \ + -command do_signoff +pack .vpane.lower.commarea.buttons.signoff -side top -fill x + +button .vpane.lower.commarea.buttons.commit -text [mc Commit@@verb] \ + -command do_commit +pack .vpane.lower.commarea.buttons.commit -side top -fill x +lappend disable_on_lock \ + {.vpane.lower.commarea.buttons.commit conf -state} + +button .vpane.lower.commarea.buttons.push -text [mc Push] \ + -command do_push_anywhere +pack .vpane.lower.commarea.buttons.push -side top -fill x + +# -- Commit Message Buffer +# +frame .vpane.lower.commarea.buffer +frame .vpane.lower.commarea.buffer.header +set ui_comm .vpane.lower.commarea.buffer.t +set ui_coml .vpane.lower.commarea.buffer.header.l +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] +radiobutton .vpane.lower.commarea.buffer.header.amend \ + -text [mc "Amend Last Commit"] \ + -command do_select_commit_type \ + -variable selected_commit_type \ + -value amend +lappend disable_on_lock \ + [list .vpane.lower.commarea.buffer.header.amend conf -state] +label $ui_coml \ + -anchor w \ + -justify left +proc trace_commit_type {varname args} { + global ui_coml commit_type + switch -glob -- $commit_type { + initial {set txt [mc "Initial Commit Message:"]} + amend {set txt [mc "Amended Commit Message:"]} + amend-initial {set txt [mc "Amended Initial Commit Message:"]} + amend-merge {set txt [mc "Amended Merge Commit Message:"]} + merge {set txt [mc "Merge Commit Message:"]} + * {set txt [mc "Commit Message:"]} + } + $ui_coml conf -text $txt +} +trace add variable commit_type write trace_commit_type +pack $ui_coml -side left -fill x +pack .vpane.lower.commarea.buffer.header.amend -side right +pack .vpane.lower.commarea.buffer.header.new -side right + +text $ui_comm -background white -foreground black \ + -borderwidth 1 \ + -undo true \ + -maxundo 20 \ + -autoseparators true \ + -relief sunken \ + -width $repo_config(gui.commitmsgwidth) -height 9 -wrap none \ + -font font_diff \ + -yscrollcommand {.vpane.lower.commarea.buffer.sby set} +scrollbar .vpane.lower.commarea.buffer.sby \ + -command [list $ui_comm yview] +pack .vpane.lower.commarea.buffer.header -side top -fill x +pack .vpane.lower.commarea.buffer.sby -side right -fill y +pack $ui_comm -side left -fill y +pack .vpane.lower.commarea.buffer -side left -fill y + +# -- Commit Message Buffer Context Menu +# +set ctxm .vpane.lower.commarea.buffer.ctxm +menu $ctxm -tearoff 0 +$ctxm add command \ + -label [mc Cut] \ + -command {tk_textCut $ui_comm} +$ctxm add command \ + -label [mc Copy] \ + -command {tk_textCopy $ui_comm} +$ctxm add command \ + -label [mc Paste] \ + -command {tk_textPaste $ui_comm} +$ctxm add command \ + -label [mc Delete] \ + -command {$ui_comm delete sel.first sel.last} +$ctxm add separator +$ctxm add command \ + -label [mc "Select All"] \ + -command {focus $ui_comm;$ui_comm tag add sel 0.0 end} +$ctxm add command \ + -label [mc "Copy All"] \ + -command { + $ui_comm tag add sel 0.0 end + tk_textCopy $ui_comm + $ui_comm tag remove sel 0.0 end + } +$ctxm add separator +$ctxm add command \ + -label [mc "Sign Off"] \ + -command do_signoff +set ui_comm_ctxm $ctxm + +# -- Diff Header +# +proc trace_current_diff_path {varname args} { + global current_diff_path diff_actions file_states + if {$current_diff_path eq {}} { + set s {} + set f {} + set p {} + set o disabled + } else { + set p $current_diff_path + set s [mapdesc [lindex $file_states($p) 0] $p] + set f [mc "File:"] + set p [escape_path $p] + set o normal + } + + .vpane.lower.diff.header.status configure -text $s + .vpane.lower.diff.header.file configure -text $f + .vpane.lower.diff.header.path configure -text $p + foreach w $diff_actions { + uplevel #0 $w $o + } +} +trace add variable current_diff_path write trace_current_diff_path + +frame .vpane.lower.diff.header -background gold +label .vpane.lower.diff.header.status \ + -background gold \ + -foreground black \ + -width $max_status_desc \ + -anchor w \ + -justify left +label .vpane.lower.diff.header.file \ + -background gold \ + -foreground black \ + -anchor w \ + -justify left +label .vpane.lower.diff.header.path \ + -background gold \ + -foreground black \ + -anchor w \ + -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 +set ctxm .vpane.lower.diff.header.ctxm +menu $ctxm -tearoff 0 +$ctxm add command \ + -label [mc Copy] \ + -command { + clipboard clear + clipboard append \ + -format STRING \ + -type STRING \ + -- $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" + +# -- Diff Body +# +frame .vpane.lower.diff.body +set ui_diff .vpane.lower.diff.body.t +text $ui_diff -background white -foreground black \ + -borderwidth 0 \ + -width 80 -height 15 -wrap none \ + -font font_diff \ + -xscrollcommand {.vpane.lower.diff.body.sbx set} \ + -yscrollcommand {.vpane.lower.diff.body.sby set} \ + -state disabled +scrollbar .vpane.lower.diff.body.sbx -orient horizontal \ + -command [list $ui_diff xview] +scrollbar .vpane.lower.diff.body.sby -orient vertical \ + -command [list $ui_diff yview] +pack .vpane.lower.diff.body.sbx -side bottom -fill x +pack .vpane.lower.diff.body.sby -side right -fill y +pack $ui_diff -side left -fill both -expand 1 +pack .vpane.lower.diff.header -side top -fill x +pack .vpane.lower.diff.body -side bottom -fill both -expand 1 + +$ui_diff tag conf d_cr -elide true +$ui_diff tag conf d_@ -foreground blue -font font_diffbold +$ui_diff tag conf d_+ -foreground {#00a000} +$ui_diff tag conf d_- -foreground red + +$ui_diff tag conf d_++ -foreground {#00a000} +$ui_diff tag conf d_-- -foreground red +$ui_diff tag conf d_+s \ + -foreground {#00a000} \ + -background {#e2effa} +$ui_diff tag conf d_-s \ + -foreground red \ + -background {#e2effa} +$ui_diff tag conf d_s+ \ + -foreground {#00a000} \ + -background ivory1 +$ui_diff tag conf d_s- \ + -foreground red \ + -background ivory1 + +$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 + +$ui_diff tag raise sel + +# -- Diff Body Context Menu +# +set ctxm .vpane.lower.diff.body.ctxm +menu $ctxm -tearoff 0 +$ctxm add command \ + -label [mc "Apply/Reverse Hunk"] \ + -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_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 "Show Less Context"] \ + -command show_less_context +lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state] +$ctxm add command \ + -label [mc "Show More Context"] \ + -command show_more_context +lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state] +$ctxm add separator +$ctxm add command \ + -label [mc Refresh] \ + -command reshow_diff +lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state] +$ctxm add command \ + -label [mc Copy] \ + -command {tk_textCopy $ui_diff} +lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state] +$ctxm add command \ + -label [mc "Select All"] \ + -command {focus $ui_diff;$ui_diff tag add sel 0.0 end} +lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state] +$ctxm add command \ + -label [mc "Copy All"] \ + -command { + $ui_diff tag add sel 0.0 end + tk_textCopy $ui_diff + $ui_diff tag remove sel 0.0 end + } +lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state] +$ctxm add separator +$ctxm add command \ + -label [mc "Decrease Font Size"] \ + -command {incr_font_size font_diff -1} +lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state] +$ctxm add command \ + -label [mc "Increase Font Size"] \ + -command {incr_font_size font_diff 1} +lappend diff_actions [list $ctxm entryconf [$ctxm index last] -state] +$ctxm add separator +$ctxm add command -label [mc "Options..."] \ + -command do_options +proc popup_diff_menu {ctxm x y X Y} { + global current_diff_path file_states + set ::cursorX $x + set ::cursorY $y + if {$::ui_index eq $::current_diff_side} { + set l [mc "Unstage Hunk From Commit"] + set t [mc "Unstage Line From Commit"] + } else { + set l [mc "Stage Hunk For Commit"] + set t [mc "Stage Line For Commit"] + } + if {$::is_3way_diff + || $current_diff_path eq {} + || ![info exists file_states($current_diff_path)] + || {_O} eq [lindex $file_states($current_diff_path) 0]} { + set s disabled + } else { + set s normal + } + $ctxm entryconf $::ui_diff_applyhunk -state $s -label $l + $ctxm entryconf $::ui_diff_applyline -state $s -label $t + tk_popup $ctxm $X $Y +} +bind_button3 $ui_diff [list popup_diff_menu $ctxm %x %y %X %Y] + +# -- Status Bar +# +set main_status [::status_bar::new .status] +pack .status -anchor w -side bottom -fill x +$main_status show [mc "Initializing..."] + +# -- Load geometry +# +catch { +set gm $repo_config(gui.geometry) +wm geometry . [lindex $gm 0] +.vpane sash place 0 \ + [lindex $gm 1] \ + [lindex [.vpane sash coord 0] 1] +.vpane.files sash place 0 \ + [lindex [.vpane.files sash coord 0] 0] \ + [lindex $gm 2] +unset gm +} + +# -- Key Bindings +# +bind $ui_comm <$M1B-Key-Return> {do_commit;break} +bind $ui_comm <$M1B-Key-t> {do_add_selection;break} +bind $ui_comm <$M1B-Key-T> {do_add_selection;break} +bind $ui_comm <$M1B-Key-i> {do_add_all;break} +bind $ui_comm <$M1B-Key-I> {do_add_all;break} +bind $ui_comm <$M1B-Key-x> {tk_textCut %W;break} +bind $ui_comm <$M1B-Key-X> {tk_textCut %W;break} +bind $ui_comm <$M1B-Key-c> {tk_textCopy %W;break} +bind $ui_comm <$M1B-Key-C> {tk_textCopy %W;break} +bind $ui_comm <$M1B-Key-v> {tk_textPaste %W; %W see insert; break} +bind $ui_comm <$M1B-Key-V> {tk_textPaste %W; %W see insert; break} +bind $ui_comm <$M1B-Key-a> {%W tag add sel 0.0 end;break} +bind $ui_comm <$M1B-Key-A> {%W tag add sel 0.0 end;break} +bind $ui_comm <$M1B-Key-minus> {show_less_context;break} +bind $ui_comm <$M1B-Key-KP_Subtract> {show_less_context;break} +bind $ui_comm <$M1B-Key-equal> {show_more_context;break} +bind $ui_comm <$M1B-Key-plus> {show_more_context;break} +bind $ui_comm <$M1B-Key-KP_Add> {show_more_context;break} + +bind $ui_diff <$M1B-Key-x> {tk_textCopy %W;break} +bind $ui_diff <$M1B-Key-X> {tk_textCopy %W;break} +bind $ui_diff <$M1B-Key-c> {tk_textCopy %W;break} +bind $ui_diff <$M1B-Key-C> {tk_textCopy %W;break} +bind $ui_diff <$M1B-Key-v> {break} +bind $ui_diff <$M1B-Key-V> {break} +bind $ui_diff <$M1B-Key-a> {%W tag add sel 0.0 end;break} +bind $ui_diff <$M1B-Key-A> {%W tag add sel 0.0 end;break} +bind $ui_diff {catch {%W yview scroll -1 units};break} +bind $ui_diff {catch {%W yview scroll 1 units};break} +bind $ui_diff {catch {%W xview scroll -1 units};break} +bind $ui_diff {catch {%W xview scroll 1 units};break} +bind $ui_diff {catch {%W yview scroll -1 units};break} +bind $ui_diff {catch {%W yview scroll 1 units};break} +bind $ui_diff {catch {%W xview scroll -1 units};break} +bind $ui_diff {catch {%W xview scroll 1 units};break} +bind $ui_diff {catch {%W yview scroll -1 pages};break} +bind $ui_diff {catch {%W yview scroll 1 pages};break} +bind $ui_diff {focus %W} + +if {[is_enabled branch]} { + bind . <$M1B-Key-n> branch_create::dialog + bind . <$M1B-Key-N> branch_create::dialog + bind . <$M1B-Key-o> branch_checkout::dialog + bind . <$M1B-Key-O> branch_checkout::dialog + bind . <$M1B-Key-m> merge::dialog + bind . <$M1B-Key-M> merge::dialog +} +if {[is_enabled transport]} { + bind . <$M1B-Key-p> do_push_anywhere + bind . <$M1B-Key-P> do_push_anywhere +} + +bind . do_rescan +bind . <$M1B-Key-r> do_rescan +bind . <$M1B-Key-R> do_rescan +bind . <$M1B-Key-s> do_signoff +bind . <$M1B-Key-S> do_signoff +bind . <$M1B-Key-t> do_add_selection +bind . <$M1B-Key-T> do_add_selection +bind . <$M1B-Key-i> do_add_all +bind . <$M1B-Key-I> do_add_all +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} +bind . <$M1B-Key-plus> {show_more_context;break} +bind . <$M1B-Key-KP_Add> {show_more_context;break} +bind . <$M1B-Key-Return> do_commit +foreach i [list $ui_index $ui_workdir] { + bind $i "toggle_or_diff $i %x %y; break" + bind $i <$M1B-Button-1> "add_one_to_selection $i %x %y; break" + bind $i "add_range_to_selection $i %x %y; break" +} +unset i + +set file_lists($ui_index) [list] +set file_lists($ui_workdir) [list] + +wm title . "[appname] ([reponame]) [file normalize [file dirname [gitdir]]]" +focus -force $ui_comm + +# -- Warn the user about environmental problems. Cygwin's Tcl +# does *not* pass its env array onto any processes it spawns. +# This means that git processes get none of our environment. +# +if {[is_Cygwin]} { + set ignored_env 0 + set suggest_user {} + set msg [mc "Possible environment issues exist. + +The following environment variables are probably +going to be ignored by any Git subprocess run +by %s: + +" [appname]] + foreach name [array names env] { + switch -regexp -- $name { + {^GIT_INDEX_FILE$} - + {^GIT_OBJECT_DIRECTORY$} - + {^GIT_ALTERNATE_OBJECT_DIRECTORIES$} - + {^GIT_DIFF_OPTS$} - + {^GIT_EXTERNAL_DIFF$} - + {^GIT_PAGER$} - + {^GIT_TRACE$} - + {^GIT_CONFIG$} - + {^GIT_CONFIG_LOCAL$} - + {^GIT_(AUTHOR|COMMITTER)_DATE$} { + append msg " - $name\n" + incr ignored_env + } + {^GIT_(AUTHOR|COMMITTER)_(NAME|EMAIL)$} { + append msg " - $name\n" + incr ignored_env + set suggest_user $name + } + } + } + if {$ignored_env > 0} { + append msg [mc " +This is due to a known issue with the +Tcl binary distributed by Cygwin."] + + if {$suggest_user ne {}} { + append msg [mc " + +A good replacement for %s +is placing values for the user.name and +user.email settings into your personal +~/.gitconfig file. +" $suggest_user] + } + warn_popup $msg + } + unset ignored_env msg suggest_user name +} + +# -- Only initialize complex UI if we are going to stay running. +# +if {[is_enabled transport]} { + load_all_remotes + + set n [.mbar.remote index end] + populate_push_menu + populate_fetch_menu + set n [expr {[.mbar.remote index end] - $n}] + if {$n > 0} { + if {[.mbar.remote type 0] eq "tearoff"} { incr n } + .mbar.remote insert $n separator + } + unset n +} + +if {[winfo exists $ui_comm]} { + set GITGUI_BCK_exists [load_message GITGUI_BCK] + + # -- If both our backup and message files exist use the + # newer of the two files to initialize the buffer. + # + if {$GITGUI_BCK_exists} { + set m [gitdir GITGUI_MSG] + if {[file isfile $m]} { + if {[file mtime [gitdir GITGUI_BCK]] > [file mtime $m]} { + catch {file delete [gitdir GITGUI_MSG]} + } else { + $ui_comm delete 0.0 end + $ui_comm edit reset + $ui_comm edit modified false + catch {file delete [gitdir GITGUI_BCK]} + set GITGUI_BCK_exists 0 + } + } + unset m + } + + proc backup_commit_buffer {} { + global ui_comm GITGUI_BCK_exists + + set m [$ui_comm edit modified] + if {$m || $GITGUI_BCK_exists} { + set msg [string trim [$ui_comm get 0.0 end]] + regsub -all -line {[ \r\t]+$} $msg {} msg + + if {$msg eq {}} { + if {$GITGUI_BCK_exists} { + catch {file delete [gitdir GITGUI_BCK]} + set GITGUI_BCK_exists 0 + } + } elseif {$m} { + catch { + set fd [open [gitdir GITGUI_BCK] w] + puts -nonewline $fd $msg + close $fd + set GITGUI_BCK_exists 1 + } + } + + $ui_comm edit modified false + } + + set ::GITGUI_BCK_i [after 2000 backup_commit_buffer] + } + + backup_commit_buffer + + # -- If the user has aspell available we can drive it + # in pipe mode to spellcheck the commit message. + # + set spell_cmd [list |] + set spell_dict [get_config gui.spellingdictionary] + lappend spell_cmd aspell + if {$spell_dict ne {}} { + lappend spell_cmd --master=$spell_dict + } + lappend spell_cmd --mode=none + lappend spell_cmd --encoding=utf-8 + lappend spell_cmd pipe + if {$spell_dict eq {none} + || [catch {set spell_fd [open $spell_cmd r+]} spell_err]} { + bind_button3 $ui_comm [list tk_popup $ui_comm_ctxm %X %Y] + } else { + set ui_comm_spell [spellcheck::init \ + $spell_fd \ + $ui_comm \ + $ui_comm_ctxm \ + ] + } + unset -nocomplain spell_cmd spell_fd spell_err spell_dict +} + +lock_index begin-read +if {![winfo ismapped .]} { + wm deiconify . +} +after 1 do_rescan +if {[is_enabled multicommit]} { + after 1000 hint_gc +} diff --cc git-gui/po/README index 5e77a7d7d,000000000..595bbf5de mode 100644,000000..100644 --- a/git-gui/po/README +++ b/git-gui/po/README @@@ -1,247 -1,0 +1,252 @@@ +Localizing git-gui for your language +==================================== + +This short note is to help you, who reads and writes English and your +own language, help us getting git-gui localized for more languages. It +does not try to be a comprehensive manual of GNU gettext, which is the +i18n framework we use, but tries to help you get started by covering the +basics and how it is used in this project. + +1. Getting started. + +You would first need to have a working "git". Your distribution may +have it as "git-core" package (do not get "GNU Interactive Tools" -- +that is a different "git"). You would also need GNU gettext toolchain +to test the resulting translation out. Although you can work on message +translation files with a regular text editor, it is a good idea to have +specialized so-called "po file editors" (e.g. emacs po-mode, KBabel, +poedit, GTranslator --- any of them would work well). Please install +them. + +You would then need to clone the git-gui internationalization project +repository, so that you can work on it: + + $ git clone mob@repo.or.cz:/srv/git/git-gui/git-gui-i18n.git/ + $ cd git-gui-i18n + $ git checkout --track -b mob origin/mob + $ git config remote.origin.push mob + +The "git checkout" command creates a 'mob' branch from upstream's +corresponding branch and makes it your current branch. You will be +working on this branch. + +The "git config" command records in your repository configuration file +that you would push "mob" branch to the upstream when you say "git +push". + + +2. Starting a new language. + +In the git-gui-i18n directory is a po/ subdirectory. It has a +handful files whose names end with ".po". Is there a file that has +messages in your language? + +If you do not know what your language should be named, you need to find +it. This currently follows ISO 639-1 two letter codes: + + http://www.loc.gov/standards/iso639-2/php/code_list.php + +For example, if you are preparing a translation for Afrikaans, the +language code is "af". If there already is a translation for your +language, you do not have to perform any step in this section, but keep +reading, because we are covering the basics. + +If you did not find your language, you would need to start one yourself. +Copy po/git-gui.pot file to po/af.po (replace "af" with the code for +your language). Edit the first several lines to match existing *.po +files to make it clear this is a translation table for git-gui project, +and you are the primary translator. The result of your editing would +look something like this: + + # Translation of git-gui to Afrikaans + # Copyright (C) 2007 Shawn Pearce + # This file is distributed under the same license as the git-gui package. + # YOUR NAME , 2007. + # + #, fuzzy + msgid "" + msgstr "" + "Project-Id-Version: git-gui\n" + "Report-Msgid-Bugs-To: \n" + "POT-Creation-Date: 2007-07-24 22:19+0300\n" + "PO-Revision-Date: 2007-07-25 18:00+0900\n" + "Last-Translator: YOUR NAME \n" + "Language-Team: Afrikaans\n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + +You will find many pairs of a "msgid" line followed by a "msgstr" line. +These pairs define how messages in git-gui application are translated to +your language. Your primarily job is to fill in the empty double quote +pairs on msgstr lines with the translation of the strings on their +matching msgid lines. A few tips: + + - Control characters, such as newlines, are written in backslash + sequence similar to string literals in the C programming language. + When the string given on a msgid line has such a backslash sequence, + you would typically want to have corresponding ones in the string on + your msgstr line. + + - Some messages contain an optional context indicator at the end, + for example "@@noun" or "@@verb". This indicator allows the + software to select the correct translation depending upon the use. + The indicator is not actually part of the message and will not + be shown to the end-user. + + If your language does not require a different translation you + will still need to translate both messages. + + - Often the messages being translated are format strings given to + "printf()"-like functions. Make sure "%s", "%d", and "%%" in your + translated messages match the original. + - When you have to change the order of words, you can add "\$" ++ When you have to change the order of words, you can add "$" + between '%' and the conversion ('s', 'd', etc.) to say "-th + parameter to the format string is used at this point". For example, + if the original message is like this: + + "Length is %d, Weight is %d" + + and if for whatever reason your translation needs to say weight first + and then length, you can say something like: + - "WEIGHT IS %2\$d, LENGTH IS %1\$d" ++ "WEIGHT IS %2$d, LENGTH IS %1$d" + - The reason you need a backslash before dollar sign is because - this is a double quoted string in Tcl language, and without - it the letter introduces a variable interpolation, which you - do not want here. ++ A format specification with a '*' (asterisk) refers to *two* arguments ++ instead of one, hence the succeeding argument number is two higher ++ instead of one. So, a message like this ++ ++ "%s ... %*i of %*i %s (%3i%%)" ++ ++ is equivalent to ++ ++ "%1$s ... %2$*i of %4$*i %6$s (%7$3i%%)" + + - A long message can be split across multiple lines by ending the + string with a double quote, and starting another string on the next + line with another double quote. They will be concatenated in the + result. For example: + + #: 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 "" + "HERE YOU WILL WRITE YOUR TRANSLATION OF THE ABOVE LONG " + "MESSAGE IN YOUR LANGUAGE." + +You can test your translation by running "make install", which would +create po/af.msg file and installs the result, and then running the +resulting git-gui under your locale: + + $ make install + $ LANG=af git-gui + +There is a trick to test your translation without first installing: + + $ make + $ LANG=af ./git-gui.sh + +When you are satisfied with your translation, commit your changes, and +push it back to the 'mob' branch: + + $ edit po/af.po + ... be sure to update Last-Translator: and + ... PO-Revision-Date: lines. + $ git add po/af.po + $ git commit -m 'Started Afrikaans translation.' + $ git push + + +3. Updating your translation. + +There may already be a translation for your language, and you may want +to contribute an update. This may be because you would want to improve +the translation of existing messages, or because the git-gui software +itself was updated and there are new messages that need translation. + +In any case, make sure you are up-to-date before starting your work: + + $ git pull + +In the former case, you will edit po/af.po (again, replace "af" with +your language code), and after testing and updating the Last-Translator: +and PO-Revision-Date: lines, "add/commit/push" as in the previous +section. + +By comparing "POT-Creation-Date:" line in po/git-gui.pot file and +po/af.po file, you can tell if there are new messages that need to be +translated. You would need the GNU gettext package to perform this +step. + + $ msgmerge -U po/af.po po/git-gui.pot + +This updates po/af.po (again, replace "af" with your language +code) so that it contains msgid lines (i.e. the original) that +your translation did not have before. There are a few things to +watch out for: + + - The original text in English of an older message you already + translated might have been changed. You will notice a comment line + that begins with "#, fuzzy" in front of such a message. msgmerge + tool made its best effort to match your old translation with the + message from the updated software, but you may find cases that it + matched your old translated message to a new msgid and the pairing + does not make any sense -- you would need to fix them, and then + remove the "#, fuzzy" line from the message (your fixed translation + of the message will not be used before you remove the marker). + + - New messages added to the software will have msgstr lines with empty + strings. You would need to translate them. + +The po/git-gui.pot file is updated by the internationalization +coordinator from time to time. You _could_ update it yourself, but +translators are discouraged from doing so because we would want all +language teams to be working off of the same version of git-gui.pot. + +**************************************************************** + +This section is a note to the internationalization coordinator, and +translators do not have to worry about it too much. + +The message template file po/git-gui.pot needs to be kept up to date +relative to the software the translations apply to, and it is the +responsibility of the internationalization coordinator. + +When updating po/git-gui.pot file, however, _never_ run "msgmerge -U +po/xx.po" for individual language translations, unless you are absolutely +sure that there is no outstanding work on translation for language xx. +Doing so will create unnecessary merge conflicts and force needless +re-translation on translators. The translator however may not have access +to the msgmerge tool, in which case the coordinator may run it for the +translator as a service. + +But mistakes do happen. Suppose a translation was based on an older +version X, the POT file was updated at version Y and then msgmerge was run +at version Z for the language, and the translator sent in a patch based on +version X: + + ? translated + / + ---X---Y---Z (master) + +The coordinator could recover from such a mistake by first applying the +patch to X, replace the translated file in Z, and then running msgmerge +again based on the updated POT file and commit the result. The sequence +would look like this: + + $ git checkout X + $ git am -s xx.patch + $ git checkout master + $ git checkout HEAD@{1} po/xx.po + $ msgmerge -U po/xx.po po/git-gui.pot + $ git commit -c HEAD@{1} po/xx.po + +State in the message that the translated messages are based on a slightly +older version, and msgmerge was run to incorporate changes to message +templates from the updated POT file. The result needs to be further +translated, but at least the messages that were updated by the patch that +were not changed by the POT update will survive the process and do not +need to be re-translated. diff --cc git-gui/po/de.po index f20955c18,000000000..fa43947ad mode 100644,000000..100644 --- a/git-gui/po/de.po +++ b/git-gui/po/de.po @@@ -1,1999 -1,0 +1,2037 @@@ +# Translation of git-gui to German. +# Copyright (C) 2007 Shawn Pearce, et al. +# This file is distributed under the same license as the git package. +# Christian Stimming , 2007 +# +msgid "" +msgstr "" +"Project-Id-Version: git-gui\n" +"Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2008-03-14 07:18+0100\n" - "PO-Revision-Date: 2008-05-01 11:51+0200\n" ++"POT-Creation-Date: 2008-08-02 08:58+0200\n" ++"PO-Revision-Date: 2008-08-02 09:09+0200\n" +"Last-Translator: Christian Stimming \n" +"Language-Team: German\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: git-gui.sh:41 git-gui.sh:634 git-gui.sh:648 git-gui.sh:661 git-gui.sh:744 +#: git-gui.sh:763 +msgid "git-gui: fatal error" +msgstr "git-gui: Programmfehler" + +#: git-gui.sh:593 +#, tcl-format +msgid "Invalid font specified in %s:" +msgstr "Ungültige Zeichensatz-Angabe in %s:" + +#: git-gui.sh:620 +msgid "Main Font" +msgstr "Programmschriftart" + +#: git-gui.sh:621 +msgid "Diff/Console Font" +msgstr "Vergleich-Schriftart" + +#: git-gui.sh:635 +msgid "Cannot find git in PATH." +msgstr "Git kann im PATH nicht gefunden werden." + +#: git-gui.sh:662 +msgid "Cannot parse Git version string:" +msgstr "Git Versionsangabe kann nicht erkannt werden:" + +#: git-gui.sh:680 +#, tcl-format +msgid "" +"Git version cannot be determined.\n" +"\n" +"%s claims it is version '%s'.\n" +"\n" +"%s requires at least Git 1.5.0 or later.\n" +"\n" +"Assume '%s' is version 1.5.0?\n" +msgstr "" +"Die Version von Git kann nicht bestimmt werden.\n" +"\n" +"»%s« behauptet, es sei Version »%s«.\n" +"\n" +"%s benötigt mindestens Git 1.5.0 oder höher.\n" +"\n" +"Soll angenommen werden, »%s« sei Version 1.5.0?\n" + +#: git-gui.sh:918 +msgid "Git directory not found:" +msgstr "Git-Verzeichnis nicht gefunden:" + +#: git-gui.sh:925 +msgid "Cannot move to top of working directory:" +msgstr "" +"Es konnte nicht in das oberste Verzeichnis der Arbeitskopie gewechselt " +"werden:" + +#: git-gui.sh:932 +msgid "Cannot use funny .git directory:" +msgstr "Unerwartete Struktur des .git Verzeichnis:" + +#: git-gui.sh:937 +msgid "No working directory" +msgstr "Kein Arbeitsverzeichnis" + +#: git-gui.sh:1084 lib/checkout_op.tcl:283 +msgid "Refreshing file status..." +msgstr "Dateistatus aktualisieren..." + +#: git-gui.sh:1149 +msgid "Scanning for modified files ..." +msgstr "Nach geänderten Dateien suchen..." + +#: git-gui.sh:1324 lib/browser.tcl:246 +msgid "Ready." +msgstr "Bereit." + +#: git-gui.sh:1590 +msgid "Unmodified" +msgstr "Unverändert" + +#: git-gui.sh:1592 +msgid "Modified, not staged" +msgstr "Verändert, nicht bereitgestellt" + +#: git-gui.sh:1593 git-gui.sh:1598 +msgid "Staged for commit" +msgstr "Bereitgestellt zum Eintragen" + +#: git-gui.sh:1594 git-gui.sh:1599 +msgid "Portions staged for commit" +msgstr "Teilweise bereitgestellt zum Eintragen" + +#: git-gui.sh:1595 git-gui.sh:1600 +msgid "Staged for commit, missing" +msgstr "Bereitgestellt zum Eintragen, fehlend" + +#: git-gui.sh:1597 +msgid "Untracked, not staged" +msgstr "Nicht unter Versionskontrolle, nicht bereitgestellt" + +#: git-gui.sh:1602 +msgid "Missing" +msgstr "Fehlend" + +#: git-gui.sh:1603 +msgid "Staged for removal" +msgstr "Bereitgestellt zum Löschen" + +#: git-gui.sh:1604 +msgid "Staged for removal, still present" +msgstr "Bereitgestellt zum Löschen, trotzdem vorhanden" + +#: git-gui.sh:1606 git-gui.sh:1607 git-gui.sh:1608 git-gui.sh:1609 +msgid "Requires merge resolution" +msgstr "Konfliktauflösung nötig" + +#: git-gui.sh:1644 +msgid "Starting gitk... please wait..." +msgstr "Gitk wird gestartet... bitte warten." + - #: git-gui.sh:1653 - #, tcl-format - msgid "" - "Unable to start gitk:\n" - "\n" - "%s does not exist" - msgstr "" - "Gitk kann nicht gestartet werden:\n" - "\n" - "%s existiert nicht" ++#: git-gui.sh:1698 ++msgid "Couldn't find gitk in PATH" ++msgstr "Gitk kann im PATH nicht gefunden werden." + - #: git-gui.sh:1860 lib/choose_repository.tcl:36 ++#: git-gui.sh:1948 lib/choose_repository.tcl:36 +msgid "Repository" +msgstr "Projektarchiv" + +#: git-gui.sh:1861 +msgid "Edit" +msgstr "Bearbeiten" + +#: git-gui.sh:1863 lib/choose_rev.tcl:561 +msgid "Branch" +msgstr "Zweig" + +#: git-gui.sh:1866 lib/choose_rev.tcl:548 +msgid "Commit@@noun" +msgstr "Version" + +#: git-gui.sh:1869 lib/merge.tcl:120 lib/merge.tcl:149 lib/merge.tcl:167 +msgid "Merge" +msgstr "Zusammenführen" + +#: git-gui.sh:1870 lib/choose_rev.tcl:557 +msgid "Remote" +msgstr "Andere Archive" + +#: git-gui.sh:1879 +msgid "Browse Current Branch's Files" +msgstr "Aktuellen Zweig durchblättern" + +#: git-gui.sh:1883 +msgid "Browse Branch Files..." +msgstr "Einen Zweig durchblättern..." + +#: git-gui.sh:1888 +msgid "Visualize Current Branch's History" +msgstr "Aktuellen Zweig darstellen" + +#: git-gui.sh:1892 +msgid "Visualize All Branch History" +msgstr "Alle Zweige darstellen" + +#: git-gui.sh:1899 +#, tcl-format +msgid "Browse %s's Files" +msgstr "Zweig »%s« durchblättern" + +#: git-gui.sh:1901 +#, tcl-format +msgid "Visualize %s's History" +msgstr "Historie von »%s« darstellen" + +#: git-gui.sh:1906 lib/database.tcl:27 lib/database.tcl:67 +msgid "Database Statistics" +msgstr "Datenbankstatistik" + +#: git-gui.sh:1909 lib/database.tcl:34 +msgid "Compress Database" +msgstr "Datenbank komprimieren" + +#: git-gui.sh:1912 +msgid "Verify Database" +msgstr "Datenbank überprüfen" + +#: git-gui.sh:1919 git-gui.sh:1923 git-gui.sh:1927 lib/shortcut.tcl:7 +#: lib/shortcut.tcl:39 lib/shortcut.tcl:71 +msgid "Create Desktop Icon" +msgstr "Desktop-Icon erstellen" + +#: git-gui.sh:1932 lib/choose_repository.tcl:177 lib/choose_repository.tcl:185 +msgid "Quit" +msgstr "Beenden" + +#: git-gui.sh:1939 +msgid "Undo" +msgstr "Rückgängig" + +#: git-gui.sh:1942 +msgid "Redo" +msgstr "Wiederholen" + +#: git-gui.sh:1946 git-gui.sh:2443 +msgid "Cut" +msgstr "Ausschneiden" + +#: git-gui.sh:1949 git-gui.sh:2446 git-gui.sh:2520 git-gui.sh:2614 +#: lib/console.tcl:69 +msgid "Copy" +msgstr "Kopieren" + +#: git-gui.sh:1952 git-gui.sh:2449 +msgid "Paste" +msgstr "Einfügen" + +#: git-gui.sh:1955 git-gui.sh:2452 lib/branch_delete.tcl:26 +#: lib/remote_branch_delete.tcl:38 +msgid "Delete" +msgstr "Löschen" + +#: git-gui.sh:1959 git-gui.sh:2456 git-gui.sh:2618 lib/console.tcl:71 +msgid "Select All" +msgstr "Alle auswählen" + +#: git-gui.sh:1968 +msgid "Create..." +msgstr "Erstellen..." + +#: git-gui.sh:1974 +msgid "Checkout..." +msgstr "Umstellen..." + +#: git-gui.sh:1980 +msgid "Rename..." +msgstr "Umbenennen..." + +#: git-gui.sh:1985 git-gui.sh:2085 +msgid "Delete..." +msgstr "Löschen..." + +#: git-gui.sh:1990 +msgid "Reset..." +msgstr "Zurücksetzen..." + +#: git-gui.sh:2002 git-gui.sh:2389 +msgid "New Commit" +msgstr "Neue Version" + +#: git-gui.sh:2010 git-gui.sh:2396 +msgid "Amend Last Commit" +msgstr "Letzte nachbessern" + +#: git-gui.sh:2019 git-gui.sh:2356 lib/remote_branch_delete.tcl:99 +msgid "Rescan" +msgstr "Neu laden" + +#: git-gui.sh:2025 +msgid "Stage To Commit" +msgstr "Zum Eintragen bereitstellen" + +#: git-gui.sh:2031 +msgid "Stage Changed Files To Commit" +msgstr "Geänderte Dateien bereitstellen" + +#: git-gui.sh:2037 +msgid "Unstage From Commit" +msgstr "Aus der Bereitstellung herausnehmen" + +#: git-gui.sh:2042 lib/index.tcl:395 +msgid "Revert Changes" +msgstr "Änderungen verwerfen" + - #: git-gui.sh:2049 git-gui.sh:2368 git-gui.sh:2467 ++#: git-gui.sh:2141 git-gui.sh:2702 ++msgid "Show Less Context" ++msgstr "Weniger Zeilen anzeigen" ++ ++#: git-gui.sh:2145 git-gui.sh:2706 ++msgid "Show More Context" ++msgstr "Mehr Zeilen anzeigen" ++ ++#: git-gui.sh:2151 git-gui.sh:2470 git-gui.sh:2569 +msgid "Sign Off" +msgstr "Abzeichnen" + +#: git-gui.sh:2053 git-gui.sh:2372 +msgid "Commit@@verb" +msgstr "Eintragen" + +#: git-gui.sh:2064 +msgid "Local Merge..." +msgstr "Lokales Zusammenführen..." + +#: git-gui.sh:2069 +msgid "Abort Merge..." +msgstr "Zusammenführen abbrechen..." + +#: git-gui.sh:2081 +msgid "Push..." +msgstr "Versenden..." + - #: git-gui.sh:2092 lib/choose_repository.tcl:41 - msgid "Apple" - msgstr "Apple" - - #: git-gui.sh:2095 git-gui.sh:2117 lib/about.tcl:14 ++#: git-gui.sh:2197 git-gui.sh:2219 lib/about.tcl:14 +#: lib/choose_repository.tcl:44 lib/choose_repository.tcl:50 +#, tcl-format +msgid "About %s" +msgstr "Über %s" + +#: git-gui.sh:2099 +msgid "Preferences..." +msgstr "Einstellungen..." + +#: git-gui.sh:2107 git-gui.sh:2639 +msgid "Options..." +msgstr "Optionen..." + +#: git-gui.sh:2113 lib/choose_repository.tcl:47 +msgid "Help" +msgstr "Hilfe" + +#: git-gui.sh:2154 +msgid "Online Documentation" +msgstr "Online-Dokumentation" + +#: git-gui.sh:2238 +#, 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:2271 +msgid "Current Branch:" +msgstr "Aktueller Zweig:" + +#: git-gui.sh:2292 +msgid "Staged Changes (Will Commit)" +msgstr "Bereitstellung (zum Eintragen)" + +#: git-gui.sh:2312 +msgid "Unstaged Changes" +msgstr "Nicht bereitgestellte Änderungen" + +#: git-gui.sh:2362 +msgid "Stage Changed" +msgstr "Alles bereitstellen" + +#: git-gui.sh:2378 lib/transport.tcl:93 lib/transport.tcl:182 +msgid "Push" +msgstr "Versenden" + +#: git-gui.sh:2408 +msgid "Initial Commit Message:" +msgstr "Erste Versionsbeschreibung:" + +#: git-gui.sh:2409 +msgid "Amended Commit Message:" +msgstr "Nachgebesserte Beschreibung:" + +#: git-gui.sh:2410 +msgid "Amended Initial Commit Message:" +msgstr "Nachgebesserte erste Beschreibung:" + +#: git-gui.sh:2411 +msgid "Amended Merge Commit Message:" +msgstr "Nachgebesserte Zusammenführungs-Beschreibung:" + +#: git-gui.sh:2412 +msgid "Merge Commit Message:" +msgstr "Zusammenführungs-Beschreibung:" + +#: git-gui.sh:2413 +msgid "Commit Message:" +msgstr "Versionsbeschreibung:" + +#: git-gui.sh:2459 git-gui.sh:2622 lib/console.tcl:73 +msgid "Copy All" +msgstr "Alle kopieren" + +#: git-gui.sh:2483 lib/blame.tcl:107 +msgid "File:" +msgstr "Datei:" + +#: git-gui.sh:2589 +msgid "Apply/Reverse Hunk" +msgstr "Kontext anwenden/umkehren" + - #: git-gui.sh:2595 - msgid "Show Less Context" - msgstr "Weniger Zeilen anzeigen" ++#: git-gui.sh:2696 ++msgid "Apply/Reverse Line" ++msgstr "Zeile anwenden/umkehren" + - #: git-gui.sh:2602 - msgid "Show More Context" - msgstr "Mehr Zeilen anzeigen" - - #: git-gui.sh:2610 ++#: git-gui.sh:2711 +msgid "Refresh" +msgstr "Aktualisieren" + +#: git-gui.sh:2631 +msgid "Decrease Font Size" +msgstr "Schriftgröße verkleinern" + +#: git-gui.sh:2635 +msgid "Increase Font Size" +msgstr "Schriftgröße vergrößern" + +#: git-gui.sh:2646 +msgid "Unstage Hunk From Commit" +msgstr "Kontext aus Bereitstellung herausnehmen" + - #: git-gui.sh:2648 ++#: git-gui.sh:2748 ++msgid "Unstage Line From Commit" ++msgstr "Zeile aus der Bereitstellung herausnehmen" ++ ++#: git-gui.sh:2750 +msgid "Stage Hunk For Commit" +msgstr "Kontext zur Bereitstellung hinzufügen" + - #: git-gui.sh:2667 ++#: git-gui.sh:2751 ++msgid "Stage Line For Commit" ++msgstr "Zeile zur Bereitstellung hinzufügen" ++ ++#: git-gui.sh:2771 +msgid "Initializing..." +msgstr "Initialisieren..." + +#: git-gui.sh:2762 +#, tcl-format +msgid "" +"Possible environment issues exist.\n" +"\n" +"The following environment variables are probably\n" +"going to be ignored by any Git subprocess run\n" +"by %s:\n" +"\n" +msgstr "" +"Möglicherweise gibt es Probleme mit manchen Umgebungsvariablen.\n" +"\n" +"Die folgenden Umgebungsvariablen können vermutlich nicht \n" +"von %s an Git weitergegeben werden:\n" +"\n" + +#: git-gui.sh:2792 +msgid "" +"\n" +"This is due to a known issue with the\n" +"Tcl binary distributed by Cygwin." +msgstr "" +"\n" +"Dies ist ein bekanntes Problem der Tcl-Version, die\n" +"in Cygwin mitgeliefert wird." + +#: git-gui.sh:2797 +#, tcl-format +msgid "" +"\n" +"\n" +"A good replacement for %s\n" +"is placing values for the user.name and\n" +"user.email settings into your personal\n" +"~/.gitconfig file.\n" +msgstr "" +"\n" +"\n" +"Um den Namen »%s« zu ändern, sollten Sie die \n" +"gewünschten Werte für die Einstellung user.name und \n" +"user.email in Ihre Datei ~/.gitconfig einfügen.\n" + +#: lib/about.tcl:26 +msgid "git-gui - a graphical user interface for Git." +msgstr "git-gui - eine grafische Oberfläche für Git." + +#: lib/blame.tcl:77 +msgid "File Viewer" +msgstr "Datei-Browser" + +#: lib/blame.tcl:81 +msgid "Commit:" +msgstr "Version:" + +#: lib/blame.tcl:264 +msgid "Copy Commit" +msgstr "Version kopieren" + - #: lib/blame.tcl:384 ++#: lib/blame.tcl:260 ++msgid "Do Full Copy Detection" ++msgstr "Volle Kopie-Erkennung" ++ ++#: lib/blame.tcl:388 +#, tcl-format +msgid "Reading %s..." +msgstr "%s lesen..." + +#: lib/blame.tcl:488 +msgid "Loading copy/move tracking annotations..." +msgstr "Annotierungen für Kopieren/Verschieben werden geladen..." + +#: lib/blame.tcl:508 +msgid "lines annotated" +msgstr "Zeilen annotiert" + +#: lib/blame.tcl:689 +msgid "Loading original location annotations..." +msgstr "Annotierungen für ursprünglichen Ort werden geladen..." + +#: lib/blame.tcl:692 +msgid "Annotation complete." +msgstr "Annotierung vollständig." + - #: lib/blame.tcl:746 ++#: lib/blame.tcl:737 ++msgid "Busy" ++msgstr "Verarbeitung läuft" ++ ++#: lib/blame.tcl:738 ++msgid "Annotation process is already running." ++msgstr "Annotierung läuft bereits." ++ ++#: lib/blame.tcl:777 ++msgid "Running thorough copy detection..." ++msgstr "Intensive Kopie-Erkennung läuft..." ++ ++#: lib/blame.tcl:827 +msgid "Loading annotation..." +msgstr "Annotierung laden..." + +#: lib/blame.tcl:802 +msgid "Author:" +msgstr "Autor:" + +#: lib/blame.tcl:806 +msgid "Committer:" +msgstr "Eintragender:" + +#: lib/blame.tcl:811 +msgid "Original File:" +msgstr "Ursprüngliche Datei:" + +#: lib/blame.tcl:925 +msgid "Originally By:" +msgstr "Ursprünglich von:" + +#: lib/blame.tcl:931 +msgid "In File:" +msgstr "In Datei:" + +#: lib/blame.tcl:936 +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/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:522 lib/choose_font.tcl:43 lib/merge.tcl:171 +#: lib/option.tcl:103 lib/remote_branch_delete.tcl:42 lib/transport.tcl:97 +msgid "Cancel" +msgstr "Abbrechen" + +#: lib/branch_checkout.tcl:32 lib/browser.tcl:287 +msgid "Revision" +msgstr "Version" + +#: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:242 +msgid "Options" +msgstr "Optionen" + +#: lib/branch_checkout.tcl:39 lib/branch_create.tcl:92 +msgid "Fetch Tracking Branch" +msgstr "Übernahmezweig anfordern" + +#: lib/branch_checkout.tcl:44 +msgid "Detach From Local Branch" +msgstr "Verbindung zu lokalem Zweig lösen" + +#: lib/branch_create.tcl:22 +msgid "Create Branch" +msgstr "Zweig erstellen" + +#: lib/branch_create.tcl:27 +msgid "Create New Branch" +msgstr "Neuen Zweig erstellen" + +#: lib/branch_create.tcl:31 lib/choose_repository.tcl:371 +msgid "Create" +msgstr "Erstellen" + +#: lib/branch_create.tcl:40 +msgid "Branch Name" +msgstr "Zweigname" + +#: lib/branch_create.tcl:43 +msgid "Name:" +msgstr "Name:" + +#: lib/branch_create.tcl:58 +msgid "Match Tracking Branch Name" +msgstr "Passend zu Übernahmezweig-Name" + +#: lib/branch_create.tcl:66 +msgid "Starting Revision" +msgstr "Anfangsversion" + +#: lib/branch_create.tcl:72 +msgid "Update Existing Branch:" +msgstr "Existierenden Zweig aktualisieren:" + +#: lib/branch_create.tcl:75 +msgid "No" +msgstr "Nein" + +#: lib/branch_create.tcl:80 +msgid "Fast Forward Only" +msgstr "Nur Schnellzusammenführung" + +#: lib/branch_create.tcl:85 lib/checkout_op.tcl:514 +msgid "Reset" +msgstr "Zurücksetzen" + +#: lib/branch_create.tcl:97 +msgid "Checkout After Creation" +msgstr "Arbeitskopie umstellen nach Erstellen" + +#: 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 "Tracking branch %s is not a branch in the remote repository." +msgstr "Übernahmezweig »%s« ist kein Zweig im anderen Projektarchiv." + +#: 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 "'%s' is not an acceptable branch name." +msgstr "»%s« ist kein zulässiger Zweigname." + +#: lib/branch_delete.tcl:15 +msgid "Delete Branch" +msgstr "Zweig löschen" + +#: 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 +msgid "Always (Do not perform merge test.)" +msgstr "Immer (ohne Zusammenführungstest)" + +#: 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 +msgid "" +"Recovering deleted branches is difficult. \n" +"\n" +" Delete the selected branches?" +msgstr "" +"Gelöschte Zweige können nur mit größerem Aufwand wiederhergestellt werden.\n" +"\n" +"Gewählte Zweige jetzt löschen?" + +#: lib/branch_delete.tcl:141 +#, tcl-format +msgid "" +"Failed to delete branches:\n" +"%s" +msgstr "" +"Fehler beim Löschen der Zweige:\n" +"%s" + +#: 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:179 +#, 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:387 +#: lib/choose_repository.tcl:474 lib/choose_repository.tcl:484 +#: lib/choose_repository.tcl:987 +msgid "Browse" +msgstr "Blättern" + +#: lib/checkout_op.tcl:79 +#, tcl-format +msgid "Fetching %s from %s" +msgstr "Änderungen »%s« von »%s« anfordern" + +#: lib/checkout_op.tcl:127 +#, tcl-format +msgid "fatal: Cannot resolve %s" +msgstr "Fehler: »%s« kann nicht als Zweig oder Version erkannt werden" + +#: lib/checkout_op.tcl:140 lib/console.tcl:81 lib/database.tcl:31 +msgid "Close" +msgstr "Schließen" + +#: lib/checkout_op.tcl:169 +#, tcl-format +msgid "Branch '%s' does not exist." +msgstr "Zweig »%s« existiert nicht." + - #: lib/checkout_op.tcl:206 ++#: lib/checkout_op.tcl:193 ++#, 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:228 +#, 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:220 +#, tcl-format +msgid "Merge strategy '%s' not supported." +msgstr "Zusammenführungsmethode »%s« nicht unterstützt." + +#: lib/checkout_op.tcl:239 +#, tcl-format +msgid "Failed to update '%s'." +msgstr "Aktualisieren von »%s« fehlgeschlagen." + +#: lib/checkout_op.tcl:251 +msgid "Staging area (index) is already locked." +msgstr "Bereitstellung (»index«) ist zur Bearbeitung gesperrt (»locked«)." + +#: lib/checkout_op.tcl:266 +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:322 +#, tcl-format +msgid "Updating working directory to '%s'..." +msgstr "Arbeitskopie umstellen auf »%s«..." + +#: lib/checkout_op.tcl:323 +msgid "files checked out" +msgstr "Dateien aktualisiert" + +#: lib/checkout_op.tcl:353 +#, tcl-format +msgid "Aborted checkout of '%s' (file level merging is required)." +msgstr "" +"Auf Zweig »%s« umstellen abgebrochen (Zusammenführen der Dateien ist " +"notwendig)." + +#: lib/checkout_op.tcl:354 +msgid "File level merge required." +msgstr "Zusammenführen der Dateien ist notwendig." + +#: lib/checkout_op.tcl:358 +#, tcl-format +msgid "Staying on branch '%s'." +msgstr "Es wird auf Zweig »%s« verblieben." + +#: lib/checkout_op.tcl:429 +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 Zweig.\n" +"\n" +"Wenn Sie auf einem Zweig arbeiten möchten, erstellen Sie bitte jetzt einen " +"Zweig mit der Auswahl »Abgetrennte Arbeitskopie-Version«." + +#: lib/checkout_op.tcl:446 lib/checkout_op.tcl:450 +#, tcl-format +msgid "Checked out '%s'." +msgstr "Umgestellt auf »%s«." + +#: lib/checkout_op.tcl:478 +#, tcl-format +msgid "Resetting '%s' to '%s' will lose the following commits:" +msgstr "Zurücksetzen von »%s« nach »%s« wird folgende Versionen verwerfen:" + +#: lib/checkout_op.tcl:500 +msgid "Recovering lost commits may not be easy." +msgstr "" +"Verworfene Versionen können nur mit größerem Aufwand wiederhergestellt " +"werden." + +#: lib/checkout_op.tcl:505 +#, tcl-format +msgid "Reset '%s'?" +msgstr "»%s« zurücksetzen?" + +#: lib/checkout_op.tcl:510 lib/merge.tcl:163 +msgid "Visualize" +msgstr "Darstellen" + +#: lib/checkout_op.tcl:578 +#, 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 "" +"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 " +"werden.\n" +"\n" +"Dies ist ein interner Programmfehler von %s. Programm wird jetzt abgebrochen." + +#: lib/choose_font.tcl:39 +msgid "Select" +msgstr "Auswählen" + +#: lib/choose_font.tcl:53 +msgid "Font Family" +msgstr "Schriftfamilie" + +#: lib/choose_font.tcl:74 +msgid "Font Size" +msgstr "Schriftgröße" + +#: lib/choose_font.tcl:91 +msgid "Font Example" +msgstr "Schriftbeispiel" + +#: 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/choose_repository.tcl:28 +msgid "Git Gui" +msgstr "Git Gui" + +#: lib/choose_repository.tcl:81 lib/choose_repository.tcl:376 +msgid "Create New Repository" +msgstr "Neues Projektarchiv" + +#: lib/choose_repository.tcl:87 +msgid "New..." +msgstr "Neu..." + +#: lib/choose_repository.tcl:94 lib/choose_repository.tcl:460 +msgid "Clone Existing Repository" +msgstr "Projektarchiv klonen" + +#: lib/choose_repository.tcl:100 +msgid "Clone..." +msgstr "Klonen..." + +#: lib/choose_repository.tcl:107 lib/choose_repository.tcl:976 +msgid "Open Existing Repository" +msgstr "Projektarchiv öffnen" + +#: lib/choose_repository.tcl:113 +msgid "Open..." +msgstr "Öffnen..." + +#: lib/choose_repository.tcl:126 +msgid "Recent Repositories" +msgstr "Zuletzt benutzte Projektarchive" + +#: lib/choose_repository.tcl:132 +msgid "Open Recent Repository:" +msgstr "Zuletzt benutztes Projektarchiv öffnen:" + +#: lib/choose_repository.tcl:296 lib/choose_repository.tcl:303 +#: lib/choose_repository.tcl:310 +#, tcl-format +msgid "Failed to create repository %s:" +msgstr "Projektarchiv »%s« konnte nicht erstellt werden:" + +#: lib/choose_repository.tcl:381 lib/choose_repository.tcl:478 +msgid "Directory:" +msgstr "Verzeichnis:" + +#: lib/choose_repository.tcl:412 lib/choose_repository.tcl:537 +#: lib/choose_repository.tcl:1011 +msgid "Git Repository" +msgstr "Git Projektarchiv" + +#: lib/choose_repository.tcl:437 +#, tcl-format +msgid "Directory %s already exists." +msgstr "Verzeichnis »%s« existiert bereits." + +#: lib/choose_repository.tcl:441 +#, tcl-format +msgid "File %s already exists." +msgstr "Datei »%s« existiert bereits." + +#: lib/choose_repository.tcl:455 +msgid "Clone" +msgstr "Klonen" + +#: lib/choose_repository.tcl:468 +msgid "URL:" +msgstr "URL:" + +#: lib/choose_repository.tcl:489 +msgid "Clone Type:" +msgstr "Art des Klonens:" + +#: lib/choose_repository.tcl:495 +msgid "Standard (Fast, Semi-Redundant, Hardlinks)" +msgstr "Standard (schnell, teilweise redundant, Hardlinks)" + +#: lib/choose_repository.tcl:501 +msgid "Full Copy (Slower, Redundant Backup)" +msgstr "Alles kopieren (langsamer, volle Redundanz)" + +#: lib/choose_repository.tcl:507 +msgid "Shared (Fastest, Not Recommended, No Backup)" +msgstr "Verknüpft (schnell, nicht empfohlen, kein Backup)" + +#: lib/choose_repository.tcl:543 lib/choose_repository.tcl:590 +#: lib/choose_repository.tcl:736 lib/choose_repository.tcl:806 +#: lib/choose_repository.tcl:1017 lib/choose_repository.tcl:1025 +#, tcl-format +msgid "Not a Git repository: %s" +msgstr "Kein Git-Projektarchiv in »%s« gefunden." + +#: lib/choose_repository.tcl:579 +msgid "Standard only available for local repository." +msgstr "Standard ist nur für lokale Projektarchive verfügbar." + +#: lib/choose_repository.tcl:583 +msgid "Shared only available for local repository." +msgstr "Verknüpft ist nur für lokale Projektarchive verfügbar." + +#: lib/choose_repository.tcl:604 +#, tcl-format +msgid "Location %s already exists." +msgstr "Projektarchiv »%s« existiert bereits." + +#: lib/choose_repository.tcl:615 +msgid "Failed to configure origin" +msgstr "Der Ursprungsort konnte nicht eingerichtet werden" + +#: lib/choose_repository.tcl:627 +msgid "Counting objects" +msgstr "Objekte werden gezählt" + +#: lib/choose_repository.tcl:628 +msgid "buckets" +msgstr "Buckets" + +#: lib/choose_repository.tcl:652 +#, tcl-format +msgid "Unable to copy objects/info/alternates: %s" +msgstr "Kopien von Objekten/Info/Alternates konnten nicht erstellt werden: %s" + +#: lib/choose_repository.tcl:688 +#, tcl-format +msgid "Nothing to clone from %s." +msgstr "Von »%s« konnte nichts geklont werden." + +#: lib/choose_repository.tcl:690 lib/choose_repository.tcl:904 +#: lib/choose_repository.tcl:916 +msgid "The 'master' branch has not been initialized." +msgstr "Der »master«-Zweig wurde noch nicht initialisiert." + +#: lib/choose_repository.tcl:703 +msgid "Hardlinks are unavailable. Falling back to copying." +msgstr "Hardlinks nicht verfügbar. Stattdessen wird kopiert." + +#: lib/choose_repository.tcl:715 +#, tcl-format +msgid "Cloning from %s" +msgstr "Kopieren von »%s«" + +#: lib/choose_repository.tcl:746 +msgid "Copying objects" +msgstr "Objektdatenbank kopieren" + +#: lib/choose_repository.tcl:747 +msgid "KiB" +msgstr "KB" + +#: lib/choose_repository.tcl:771 +#, tcl-format +msgid "Unable to copy object: %s" +msgstr "Objekt kann nicht kopiert werden: %s" + +#: lib/choose_repository.tcl:781 +msgid "Linking objects" +msgstr "Objekte verlinken" + +#: lib/choose_repository.tcl:782 +msgid "objects" +msgstr "Objekte" + +#: lib/choose_repository.tcl:790 +#, tcl-format +msgid "Unable to hardlink object: %s" +msgstr "Für Objekt konnte kein Hardlink erstellt werden: %s" + +#: lib/choose_repository.tcl:845 +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/choose_repository.tcl:856 +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/choose_repository.tcl:880 +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/choose_repository.tcl:889 +#, tcl-format +msgid "Unable to cleanup %s" +msgstr "Verzeichnis »%s« kann nicht aufgeräumt werden." + +#: lib/choose_repository.tcl:895 +msgid "Clone failed." +msgstr "Klonen fehlgeschlagen." + +#: lib/choose_repository.tcl:902 +msgid "No default branch obtained." +msgstr "Kein voreingestellter Zweig gefunden." + +#: lib/choose_repository.tcl:913 +#, tcl-format +msgid "Cannot resolve %s as a commit." +msgstr "»%s« wurde nicht als Version gefunden." + +#: lib/choose_repository.tcl:925 +msgid "Creating working directory" +msgstr "Arbeitskopie erstellen" + +#: lib/choose_repository.tcl:926 lib/index.tcl:65 lib/index.tcl:127 +#: lib/index.tcl:193 +msgid "files" +msgstr "Dateien" + +#: lib/choose_repository.tcl:955 +msgid "Initial file checkout failed." +msgstr "Erstellen der Arbeitskopie fehlgeschlagen." + +#: lib/choose_repository.tcl:971 +msgid "Open" +msgstr "Öffnen" + +#: lib/choose_repository.tcl:981 +msgid "Repository:" +msgstr "Projektarchiv:" + +#: lib/choose_repository.tcl:1031 +#, tcl-format +msgid "Failed to open repository %s:" +msgstr "Projektarchiv »%s« konnte nicht geöffnet werden." + +#: lib/choose_rev.tcl:53 +msgid "This Detached Checkout" +msgstr "Abgetrennte Arbeitskopie-Version" + +#: lib/choose_rev.tcl:60 +msgid "Revision Expression:" +msgstr "Version Regexp-Ausdruck:" + +#: lib/choose_rev.tcl:74 +msgid "Local Branch" +msgstr "Lokaler Zweig" + +#: lib/choose_rev.tcl:79 +msgid "Tracking Branch" +msgstr "Übernahmezweig" + +#: lib/choose_rev.tcl:84 lib/choose_rev.tcl:538 +msgid "Tag" +msgstr "Markierung" + +#: lib/choose_rev.tcl:317 +#, tcl-format +msgid "Invalid revision: %s" +msgstr "Ungültige Version: %s" + +#: lib/choose_rev.tcl:338 +msgid "No revision selected." +msgstr "Keine Version ausgewählt." + +#: lib/choose_rev.tcl:346 +msgid "Revision expression is empty." +msgstr "Versions-Ausdruck ist leer." + +#: lib/choose_rev.tcl:531 +msgid "Updated" +msgstr "Aktualisiert" + +#: lib/choose_rev.tcl:559 +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 "" +"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/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 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/commit.tcl:49 +msgid "Error loading commit data for amend:" +msgstr "Fehler beim Laden der Versionsdaten für Nachbessern:" + +#: lib/commit.tcl:76 +msgid "Unable to obtain your identity:" +msgstr "Benutzername konnte nicht bestimmt werden:" + +#: lib/commit.tcl:81 +msgid "Invalid GIT_COMMITTER_IDENT:" +msgstr "Ungültiger Wert von GIT_COMMITTER_INDENT:" + +#: lib/commit.tcl:133 +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/commit.tcl:154 +#, 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/commit.tcl:162 +#, 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 eingetragen werden.\n" + +#: lib/commit.tcl:170 +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/commit.tcl:183 +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:207 +#, tcl-format +msgid "warning: Tcl does not support encoding '%s'." +msgstr "Warning: Tcl/Tk unterstützt die Zeichencodierung »%s« nicht." + +#: lib/commit.tcl:221 +msgid "Calling pre-commit hook..." +msgstr "Aufrufen der Vor-Eintragen-Kontrolle..." + +#: lib/commit.tcl:236 +msgid "Commit declined by pre-commit hook." +msgstr "Eintragen abgelehnt durch Vor-Eintragen-Kontrolle (»pre-commit hook«)." + +#: lib/commit.tcl:259 +msgid "Calling commit-msg hook..." +msgstr "Aufrufen der Versionsbeschreibungs-Kontrolle..." + +#: lib/commit.tcl:274 +msgid "Commit declined by commit-msg hook." +msgstr "" +"Eintragen abgelehnt durch Versionsbeschreibungs-Kontrolle (»commit-message " +"hook«)." + +#: lib/commit.tcl:287 +msgid "Committing changes..." +msgstr "Änderungen eintragen..." + +#: lib/commit.tcl:303 +msgid "write-tree failed:" +msgstr "write-tree fehlgeschlagen:" + +#: lib/commit.tcl:304 lib/commit.tcl:348 lib/commit.tcl:368 +msgid "Commit failed." +msgstr "Eintragen fehlgeschlagen." + +#: lib/commit.tcl:321 +#, tcl-format +msgid "Commit %s appears to be corrupt" +msgstr "Version »%s« scheint beschädigt zu sein" + +#: lib/commit.tcl:326 +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/commit.tcl:333 +msgid "No changes to commit." +msgstr "Keine Änderungen, die eingetragen werden können." + +#: lib/commit.tcl:347 +msgid "commit-tree failed:" +msgstr "commit-tree fehlgeschlagen:" + +#: lib/commit.tcl:367 +msgid "update-ref failed:" +msgstr "update-ref fehlgeschlagen:" + +#: lib/commit.tcl:454 +#, tcl-format +msgid "Created commit %s: %s" +msgstr "Version %s übertragen: %s" + +#: 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/database.tcl:43 +msgid "Number of loose objects" +msgstr "Anzahl unverknüpfter Objekte" + +#: 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/database.tcl:47 +msgid "Disk space used by packed objects" +msgstr "Festplattenplatz von komprimierten Objekten" + +#: 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/database.tcl:72 +msgid "Compressing the object database" +msgstr "Objektdatenbank komprimieren" + +#: lib/database.tcl:83 +msgid "Verifying the object database with fsck-objects" +msgstr "Die Objektdatenbank durch »fsck-objects« überprüfen lassen" + +#: lib/database.tcl:108 +#, 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 when more than %i loose objects exist.\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, sobald mehr als %i nicht verknüpfte Objekte " +"vorliegen.\n" +"\n" +"Soll die Datenbank jetzt komprimiert werden?" + +#: lib/date.tcl:25 +#, tcl-format +msgid "Invalid date from Git: %s" +msgstr "Ungültiges Datum von Git: %s" + +#: lib/diff.tcl:42 +#, 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/diff.tcl:81 +#, tcl-format +msgid "Loading diff of %s..." +msgstr "Vergleich von »%s« laden..." + +#: lib/diff.tcl:114 lib/diff.tcl:184 +#, tcl-format +msgid "Unable to display %s" +msgstr "Datei »%s« kann nicht angezeigt werden" + +#: lib/diff.tcl:115 +msgid "Error loading file:" +msgstr "Fehler beim Laden der Datei:" + +#: lib/diff.tcl:122 +msgid "Git Repository (subproject)" +msgstr "Git-Projektarchiv (Unterprojekt)" + +#: lib/diff.tcl:134 +msgid "* Binary file (not showing content)." +msgstr "* Binärdatei (Inhalt wird nicht angezeigt)" + +#: lib/diff.tcl:185 +msgid "Error loading diff:" +msgstr "Fehler beim Laden des Vergleichs:" + +#: lib/diff.tcl:303 +msgid "Failed to unstage selected hunk." +msgstr "" +"Fehler beim Herausnehmen des gewählten Kontexts aus der Bereitstellung." + +#: lib/diff.tcl:310 +msgid "Failed to stage selected hunk." +msgstr "Fehler beim Bereitstellen des gewählten Kontexts." + ++#: lib/diff.tcl:386 ++msgid "Failed to unstage selected line." ++msgstr "Fehler beim Herausnehmen der gewählten Zeile aus der Bereitstellung." ++ ++#: lib/diff.tcl:394 ++msgid "Failed to stage selected line." ++msgstr "Fehler beim Bereitstellen der gewählten Zeile." ++ +#: 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:21 +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:27 +msgid "Continue" +msgstr "Fortsetzen" + +#: lib/index.tcl:31 +msgid "Unlock Index" +msgstr "Bereitstellung freigeben" + +#: lib/index.tcl:282 +#, tcl-format +msgid "Unstaging %s from commit" +msgstr "Datei »%s« aus der Bereitstellung herausnehmen" + +#: lib/index.tcl:313 +msgid "Ready to commit." +msgstr "Bereit zum Eintragen." + +#: lib/index.tcl:326 +#, tcl-format +msgid "Adding %s" +msgstr "»%s« hinzufügen..." + +#: lib/index.tcl:381 +#, tcl-format +msgid "Revert changes in file %s?" +msgstr "Änderungen in Datei »%s« verwerfen?" + +#: lib/index.tcl:383 +#, tcl-format +msgid "Revert changes in these %i files?" +msgstr "Änderungen in den gewählten %i Dateien verwerfen?" + +#: lib/index.tcl:391 +msgid "Any unstaged changes will be permanently lost by the revert." +msgstr "" +"Alle nicht bereitgestellten Änderungen werden beim Verwerfen verloren gehen." + +#: lib/index.tcl:394 +msgid "Do Nothing" +msgstr "Nichts tun" + +#: 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:44 +#, 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:54 +#, 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:106 +#, tcl-format +msgid "%s of %s" +msgstr "%s von %s" + +#: lib/merge.tcl:119 +#, tcl-format +msgid "Merging %s and %s..." +msgstr "Zusammenführen von %s und %s..." + +#: lib/merge.tcl:130 +msgid "Merge completed successfully." +msgstr "Zusammenführen erfolgreich abgeschlossen." + +#: lib/merge.tcl:132 +msgid "Merge failed. Conflict resolution is required." +msgstr "Zusammenführen fehlgeschlagen. Konfliktauflösung ist notwendig." + +#: lib/merge.tcl:157 +#, tcl-format +msgid "Merge Into %s" +msgstr "Zusammenführen in »%s«" + +#: lib/merge.tcl:176 +msgid "Revision To Merge" +msgstr "Zusammenzuführende Version" + +#: lib/merge.tcl:211 +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:221 +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:227 +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/merge.tcl:238 +msgid "Aborting" +msgstr "Abbruch" + +#: lib/merge.tcl:238 +msgid "files reset" +msgstr "Dateien zurückgesetzt" + +#: lib/merge.tcl:265 +msgid "Abort failed." +msgstr "Abbruch fehlgeschlagen." + +#: lib/merge.tcl:267 +msgid "Abort completed. Ready." +msgstr "Abbruch durchgeführt. Bereit." + +#: lib/option.tcl:95 +msgid "Restore Defaults" +msgstr "Voreinstellungen wiederherstellen" + +#: lib/option.tcl:99 +msgid "Save" +msgstr "Speichern" + +#: lib/option.tcl:109 +#, tcl-format +msgid "%s Repository" +msgstr "Projektarchiv %s" + +#: lib/option.tcl:110 +msgid "Global (All Repositories)" +msgstr "Global (Alle Projektarchive)" + +#: lib/option.tcl:116 +msgid "User Name" +msgstr "Benutzername" + +#: lib/option.tcl:117 +msgid "Email Address" +msgstr "E-Mail-Adresse" + +#: lib/option.tcl:119 +msgid "Summarize Merge Commits" +msgstr "Zusammenführungs-Versionen zusammenfassen" + +#: lib/option.tcl:120 +msgid "Merge Verbosity" +msgstr "Ausführlichkeit der Zusammenführen-Meldungen" + +#: lib/option.tcl:121 +msgid "Show Diffstat After Merge" +msgstr "Vergleichsstatistik nach Zusammenführen anzeigen" + +#: lib/option.tcl:123 +msgid "Trust File Modification Timestamps" +msgstr "Auf Dateiänderungsdatum verlassen" + +#: lib/option.tcl:124 +msgid "Prune Tracking Branches During Fetch" +msgstr "Übernahmezweige aufräumen während Anforderung" + +#: lib/option.tcl:125 +msgid "Match Tracking Branches" +msgstr "Passend zu Übernahmezweig" + +#: lib/option.tcl:126 ++msgid "Blame Copy Only On Changed Files" ++msgstr "Kopie-Annotieren nur bei geänderten Dateien" ++ ++#: lib/option.tcl:127 ++msgid "Minimum Letters To Blame Copy On" ++msgstr "Mindestzahl Zeichen für Kopie-Annotieren" ++ ++#: lib/option.tcl:128 +msgid "Number of Diff Context Lines" +msgstr "Anzahl der Kontextzeilen beim Vergleich" + +#: lib/option.tcl:127 +msgid "Commit Message Text Width" +msgstr "Textbreite der Versionsbeschreibung" + +#: lib/option.tcl:128 +msgid "New Branch Name Template" +msgstr "Namensvorschlag für neue Zweige" + +#: lib/option.tcl:192 +msgid "Spelling Dictionary:" +msgstr "Wörterbuch Rechtschreibprüfung:" + +#: lib/option.tcl:216 +msgid "Change Font" +msgstr "Schriftart ändern" + +#: lib/option.tcl:220 +#, tcl-format +msgid "Choose %s" +msgstr "%s wählen" + +#: lib/option.tcl:226 +msgid "pt." +msgstr "pt." + +#: lib/option.tcl:240 +msgid "Preferences" +msgstr "Einstellungen" + +#: lib/option.tcl:275 +msgid "Failed to completely save options:" +msgstr "Optionen konnten nicht gespeichert werden:" + +#: lib/remote_branch_delete.tcl:29 lib/remote_branch_delete.tcl:34 +msgid "Delete Remote Branch" +msgstr "Zweig in anderem Projektarchiv löschen" + +#: lib/remote_branch_delete.tcl:47 +msgid "From Repository" +msgstr "In Projektarchiv" + +#: lib/remote_branch_delete.tcl:50 lib/transport.tcl:123 +msgid "Remote:" +msgstr "Anderes Archiv:" + +#: lib/remote_branch_delete.tcl:66 lib/transport.tcl:138 +msgid "Arbitrary URL:" +msgstr "Archiv-URL:" + +#: lib/remote_branch_delete.tcl:84 +msgid "Branches" +msgstr "Zweige" + +#: 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:119 +msgid "Always (Do not perform merge checks)" +msgstr "Immer (Keine Zusammenführungsprüfung)" + +#: 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/remote_branch_delete.tcl:184 +#, tcl-format +msgid "" +"The following branches are not completely merged into %s:\n" +"\n" +" - %s" +msgstr "" +"Folgende Zweige sind noch nicht mit »%s« zusammengeführt:\n" +"\n" +" - %s" + +#: 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 "" +"Ein oder mehrere Zusammenführungen sind fehlgeschlagen, da Sie nicht die " +"notwendigen Versionen vorher angefordert haben. Sie sollten versuchen, " +"zuerst von »%s« anzufordern." + +#: 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:216 +msgid "" +"Recovering deleted branches is difficult.\n" +"\n" +"Delete the selected branches?" +msgstr "" +"Das Wiederherstellen von gelöschten Zweigen ist nur mit größerem Aufwand " +"möglich.\n" +"\n" +"Sollen die ausgewählten Zweige gelöscht werden?" + +#: 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:286 +msgid "No repository selected." +msgstr "Kein Projektarchiv ausgewählt." + +#: lib/remote_branch_delete.tcl:291 +#, tcl-format +msgid "Scanning %s..." +msgstr "»%s« laden..." + +#: lib/remote.tcl:165 +msgid "Prune from" +msgstr "Aufräumen von" + +#: lib/remote.tcl:170 +msgid "Fetch from" +msgstr "Anfordern von" + +#: lib/remote.tcl:213 +msgid "Push to" +msgstr "Versenden nach" + +#: lib/shortcut.tcl:20 lib/shortcut.tcl:61 +msgid "Cannot write shortcut:" +msgstr "Fehler beim Schreiben der Verknüpfung:" + +#: lib/shortcut.tcl:136 +msgid "Cannot write icon:" +msgstr "Fehler beim Erstellen des Icons:" + +#: lib/spellcheck.tcl:57 +msgid "Unsupported spell checker" +msgstr "Rechtschreibprüfungsprogramm nicht unterstützt" + +#: lib/spellcheck.tcl:65 +msgid "Spell checking is unavailable" +msgstr "Rechtschreibprüfung nicht verfügbar" + +#: lib/spellcheck.tcl:68 +msgid "Invalid spell checking configuration" +msgstr "Unbenutzbare Konfiguration der Rechtschreibprüfung" + +#: lib/spellcheck.tcl:70 +#, tcl-format +msgid "Reverting dictionary to %s." +msgstr "Wörterbuch auf %s zurückgesetzt." + +#: lib/spellcheck.tcl:73 +msgid "Spell checker silently failed on startup" +msgstr "Rechtschreibprüfungsprogramm mit Fehler abgebrochen" + +#: lib/spellcheck.tcl:80 +msgid "Unrecognized spell checker" +msgstr "Unbekanntes Rechtschreibprüfungsprogramm" + +#: lib/spellcheck.tcl:180 +msgid "No Suggestions" +msgstr "Keine Vorschläge" + +#: lib/spellcheck.tcl:381 +msgid "Unexpected EOF from spell checker" +msgstr "Unerwartetes EOF vom Rechtschreibprüfungsprogramm" + +#: lib/spellcheck.tcl:385 +msgid "Spell Checker Failed" +msgstr "Rechtschreibprüfung fehlgeschlagen" + +#: lib/status_bar.tcl:83 +#, tcl-format +msgid "%s ... %*i of %*i %s (%3i%%)" +msgstr "%s ... %*i von %*i %s (%3i%%)" + +#: lib/transport.tcl:6 +#, tcl-format +msgid "fetch %s" +msgstr "»%s« anfordern" + +#: lib/transport.tcl:7 +#, tcl-format +msgid "Fetching new changes from %s" +msgstr "Neue Änderungen von »%s« holen" + +#: lib/transport.tcl:18 +#, tcl-format +msgid "remote prune %s" +msgstr "Aufräumen von »%s«" + +#: lib/transport.tcl:19 +#, tcl-format +msgid "Pruning tracking branches deleted from %s" +msgstr "Übernahmezweige aufräumen und entfernen, die in »%s« gelöscht wurden" + +#: lib/transport.tcl:25 lib/transport.tcl:71 +#, tcl-format +msgid "push %s" +msgstr "»%s« versenden..." + +#: lib/transport.tcl:26 +#, tcl-format +msgid "Pushing changes to %s" +msgstr "Änderungen nach »%s« versenden" + +#: lib/transport.tcl:72 +#, tcl-format +msgid "Pushing %s %s to %s" +msgstr "%s %s nach %s versenden" + +#: lib/transport.tcl:89 +msgid "Push Branches" +msgstr "Zweige versenden" + +#: lib/transport.tcl:103 +msgid "Source Branches" +msgstr "Lokale Zweige" + +#: lib/transport.tcl:120 +msgid "Destination Repository" +msgstr "Ziel-Projektarchiv" + +#: lib/transport.tcl:158 +msgid "Transfer Options" +msgstr "Netzwerk-Einstellungen" + +#: lib/transport.tcl:160 +msgid "Force overwrite existing branch (may discard changes)" +msgstr "" +"Überschreiben von existierenden Zweigen erzwingen (könnte Änderungen löschen)" + +#: lib/transport.tcl:164 +msgid "Use thin pack (for slow network connections)" +msgstr "Kompaktes Datenformat benutzen (für langsame Netzverbindungen)" + +#: lib/transport.tcl:168 +msgid "Include tags" +msgstr "Mit Markierungen übertragen" diff --cc git-gui/po/git-gui.pot index 813199f78,000000000..e295000e7 mode 100644,000000..100644 --- a/git-gui/po/git-gui.pot +++ b/git-gui/po/git-gui.pot @@@ -1,1823 -1,0 +1,1864 @@@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2008-03-14 07:18+0100\n" ++"POT-Creation-Date: 2008-08-02 14:45-0700\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + - #: git-gui.sh:41 git-gui.sh:634 git-gui.sh:648 git-gui.sh:661 git-gui.sh:744 - #: git-gui.sh:763 ++#: git-gui.sh:41 git-gui.sh:688 git-gui.sh:702 git-gui.sh:715 git-gui.sh:798 ++#: git-gui.sh:817 +msgid "git-gui: fatal error" +msgstr "" + - #: git-gui.sh:593 ++#: git-gui.sh:644 +#, tcl-format +msgid "Invalid font specified in %s:" +msgstr "" + - #: git-gui.sh:620 ++#: git-gui.sh:674 +msgid "Main Font" +msgstr "" + - #: git-gui.sh:621 ++#: git-gui.sh:675 +msgid "Diff/Console Font" +msgstr "" + - #: git-gui.sh:635 ++#: git-gui.sh:689 +msgid "Cannot find git in PATH." +msgstr "" + - #: git-gui.sh:662 ++#: git-gui.sh:716 +msgid "Cannot parse Git version string:" +msgstr "" + - #: git-gui.sh:680 ++#: git-gui.sh:734 +#, tcl-format +msgid "" +"Git version cannot be determined.\n" +"\n" +"%s claims it is version '%s'.\n" +"\n" +"%s requires at least Git 1.5.0 or later.\n" +"\n" +"Assume '%s' is version 1.5.0?\n" +msgstr "" + - #: git-gui.sh:918 ++#: git-gui.sh:972 +msgid "Git directory not found:" +msgstr "" + - #: git-gui.sh:925 ++#: git-gui.sh:979 +msgid "Cannot move to top of working directory:" +msgstr "" + - #: git-gui.sh:932 ++#: git-gui.sh:986 +msgid "Cannot use funny .git directory:" +msgstr "" + - #: git-gui.sh:937 ++#: git-gui.sh:991 +msgid "No working directory" +msgstr "" + - #: git-gui.sh:1084 lib/checkout_op.tcl:283 ++#: git-gui.sh:1138 lib/checkout_op.tcl:305 +msgid "Refreshing file status..." +msgstr "" + - #: git-gui.sh:1149 ++#: git-gui.sh:1194 +msgid "Scanning for modified files ..." +msgstr "" + - #: git-gui.sh:1324 lib/browser.tcl:246 ++#: git-gui.sh:1369 lib/browser.tcl:246 +msgid "Ready." +msgstr "" + - #: git-gui.sh:1590 ++#: git-gui.sh:1635 +msgid "Unmodified" +msgstr "" + - #: git-gui.sh:1592 ++#: git-gui.sh:1637 +msgid "Modified, not staged" +msgstr "" + - #: git-gui.sh:1593 git-gui.sh:1598 ++#: git-gui.sh:1638 git-gui.sh:1643 +msgid "Staged for commit" +msgstr "" + - #: git-gui.sh:1594 git-gui.sh:1599 ++#: git-gui.sh:1639 git-gui.sh:1644 +msgid "Portions staged for commit" +msgstr "" + - #: git-gui.sh:1595 git-gui.sh:1600 ++#: git-gui.sh:1640 git-gui.sh:1645 +msgid "Staged for commit, missing" +msgstr "" + - #: git-gui.sh:1597 ++#: git-gui.sh:1642 +msgid "Untracked, not staged" +msgstr "" + - #: git-gui.sh:1602 ++#: git-gui.sh:1647 +msgid "Missing" +msgstr "" + - #: git-gui.sh:1603 ++#: git-gui.sh:1648 +msgid "Staged for removal" +msgstr "" + - #: git-gui.sh:1604 ++#: git-gui.sh:1649 +msgid "Staged for removal, still present" +msgstr "" + - #: git-gui.sh:1606 git-gui.sh:1607 git-gui.sh:1608 git-gui.sh:1609 ++#: git-gui.sh:1651 git-gui.sh:1652 git-gui.sh:1653 git-gui.sh:1654 +msgid "Requires merge resolution" +msgstr "" + - #: git-gui.sh:1644 ++#: git-gui.sh:1689 +msgid "Starting gitk... please wait..." +msgstr "" + - #: git-gui.sh:1653 - #, tcl-format - msgid "" - "Unable to start gitk:\n" - "\n" - "%s does not exist" ++#: git-gui.sh:1698 ++msgid "Couldn't find gitk in PATH" +msgstr "" + - #: git-gui.sh:1860 lib/choose_repository.tcl:36 ++#: git-gui.sh:1948 lib/choose_repository.tcl:36 +msgid "Repository" +msgstr "" + - #: git-gui.sh:1861 ++#: git-gui.sh:1949 +msgid "Edit" +msgstr "" + - #: git-gui.sh:1863 lib/choose_rev.tcl:561 ++#: git-gui.sh:1951 lib/choose_rev.tcl:561 +msgid "Branch" +msgstr "" + - #: git-gui.sh:1866 lib/choose_rev.tcl:548 ++#: git-gui.sh:1954 lib/choose_rev.tcl:548 +msgid "Commit@@noun" +msgstr "" + - #: git-gui.sh:1869 lib/merge.tcl:120 lib/merge.tcl:149 lib/merge.tcl:167 ++#: git-gui.sh:1957 lib/merge.tcl:120 lib/merge.tcl:149 lib/merge.tcl:167 +msgid "Merge" +msgstr "" + - #: git-gui.sh:1870 lib/choose_rev.tcl:557 ++#: git-gui.sh:1958 lib/choose_rev.tcl:557 +msgid "Remote" +msgstr "" + - #: git-gui.sh:1879 ++#: git-gui.sh:1967 +msgid "Browse Current Branch's Files" +msgstr "" + - #: git-gui.sh:1883 ++#: git-gui.sh:1971 +msgid "Browse Branch Files..." +msgstr "" + - #: git-gui.sh:1888 ++#: git-gui.sh:1976 +msgid "Visualize Current Branch's History" +msgstr "" + - #: git-gui.sh:1892 ++#: git-gui.sh:1980 +msgid "Visualize All Branch History" +msgstr "" + - #: git-gui.sh:1899 ++#: git-gui.sh:1987 +#, tcl-format +msgid "Browse %s's Files" +msgstr "" + - #: git-gui.sh:1901 ++#: git-gui.sh:1989 +#, tcl-format +msgid "Visualize %s's History" +msgstr "" + - #: git-gui.sh:1906 lib/database.tcl:27 lib/database.tcl:67 ++#: git-gui.sh:1994 lib/database.tcl:27 lib/database.tcl:67 +msgid "Database Statistics" +msgstr "" + - #: git-gui.sh:1909 lib/database.tcl:34 ++#: git-gui.sh:1997 lib/database.tcl:34 +msgid "Compress Database" +msgstr "" + - #: git-gui.sh:1912 ++#: git-gui.sh:2000 +msgid "Verify Database" +msgstr "" + - #: git-gui.sh:1919 git-gui.sh:1923 git-gui.sh:1927 lib/shortcut.tcl:7 ++#: git-gui.sh:2007 git-gui.sh:2011 git-gui.sh:2015 lib/shortcut.tcl:7 +#: lib/shortcut.tcl:39 lib/shortcut.tcl:71 +msgid "Create Desktop Icon" +msgstr "" + - #: git-gui.sh:1932 lib/choose_repository.tcl:177 lib/choose_repository.tcl:185 ++#: git-gui.sh:2023 lib/choose_repository.tcl:177 lib/choose_repository.tcl:185 +msgid "Quit" +msgstr "" + - #: git-gui.sh:1939 ++#: git-gui.sh:2031 +msgid "Undo" +msgstr "" + - #: git-gui.sh:1942 ++#: git-gui.sh:2034 +msgid "Redo" +msgstr "" + - #: git-gui.sh:1946 git-gui.sh:2443 ++#: git-gui.sh:2038 git-gui.sh:2545 +msgid "Cut" +msgstr "" + - #: git-gui.sh:1949 git-gui.sh:2446 git-gui.sh:2520 git-gui.sh:2614 ++#: git-gui.sh:2041 git-gui.sh:2548 git-gui.sh:2622 git-gui.sh:2715 +#: lib/console.tcl:69 +msgid "Copy" +msgstr "" + - #: git-gui.sh:1952 git-gui.sh:2449 ++#: git-gui.sh:2044 git-gui.sh:2551 +msgid "Paste" +msgstr "" + - #: git-gui.sh:1955 git-gui.sh:2452 lib/branch_delete.tcl:26 ++#: git-gui.sh:2047 git-gui.sh:2554 lib/branch_delete.tcl:26 +#: lib/remote_branch_delete.tcl:38 +msgid "Delete" +msgstr "" + - #: git-gui.sh:1959 git-gui.sh:2456 git-gui.sh:2618 lib/console.tcl:71 ++#: git-gui.sh:2051 git-gui.sh:2558 git-gui.sh:2719 lib/console.tcl:71 +msgid "Select All" +msgstr "" + - #: git-gui.sh:1968 ++#: git-gui.sh:2060 +msgid "Create..." +msgstr "" + - #: git-gui.sh:1974 ++#: git-gui.sh:2066 +msgid "Checkout..." +msgstr "" + - #: git-gui.sh:1980 ++#: git-gui.sh:2072 +msgid "Rename..." +msgstr "" + - #: git-gui.sh:1985 git-gui.sh:2085 ++#: git-gui.sh:2077 git-gui.sh:2187 +msgid "Delete..." +msgstr "" + - #: git-gui.sh:1990 ++#: git-gui.sh:2082 +msgid "Reset..." +msgstr "" + - #: git-gui.sh:2002 git-gui.sh:2389 ++#: git-gui.sh:2094 git-gui.sh:2491 +msgid "New Commit" +msgstr "" + - #: git-gui.sh:2010 git-gui.sh:2396 ++#: git-gui.sh:2102 git-gui.sh:2498 +msgid "Amend Last Commit" +msgstr "" + - #: git-gui.sh:2019 git-gui.sh:2356 lib/remote_branch_delete.tcl:99 ++#: git-gui.sh:2111 git-gui.sh:2458 lib/remote_branch_delete.tcl:99 +msgid "Rescan" +msgstr "" + - #: git-gui.sh:2025 ++#: git-gui.sh:2117 +msgid "Stage To Commit" +msgstr "" + - #: git-gui.sh:2031 ++#: git-gui.sh:2123 +msgid "Stage Changed Files To Commit" +msgstr "" + - #: git-gui.sh:2037 ++#: git-gui.sh:2129 +msgid "Unstage From Commit" +msgstr "" + - #: git-gui.sh:2042 lib/index.tcl:395 ++#: git-gui.sh:2134 lib/index.tcl:395 +msgid "Revert Changes" +msgstr "" + - #: git-gui.sh:2049 git-gui.sh:2368 git-gui.sh:2467 ++#: git-gui.sh:2141 git-gui.sh:2702 ++msgid "Show Less Context" ++msgstr "" ++ ++#: git-gui.sh:2145 git-gui.sh:2706 ++msgid "Show More Context" ++msgstr "" ++ ++#: git-gui.sh:2151 git-gui.sh:2470 git-gui.sh:2569 +msgid "Sign Off" +msgstr "" + - #: git-gui.sh:2053 git-gui.sh:2372 ++#: git-gui.sh:2155 git-gui.sh:2474 +msgid "Commit@@verb" +msgstr "" + - #: git-gui.sh:2064 ++#: git-gui.sh:2166 +msgid "Local Merge..." +msgstr "" + - #: git-gui.sh:2069 ++#: git-gui.sh:2171 +msgid "Abort Merge..." +msgstr "" + - #: git-gui.sh:2081 ++#: git-gui.sh:2183 +msgid "Push..." +msgstr "" + - #: git-gui.sh:2092 lib/choose_repository.tcl:41 - msgid "Apple" - msgstr "" - - #: git-gui.sh:2095 git-gui.sh:2117 lib/about.tcl:14 ++#: git-gui.sh:2197 git-gui.sh:2219 lib/about.tcl:14 +#: lib/choose_repository.tcl:44 lib/choose_repository.tcl:50 +#, tcl-format +msgid "About %s" +msgstr "" + - #: git-gui.sh:2099 ++#: git-gui.sh:2201 +msgid "Preferences..." +msgstr "" + - #: git-gui.sh:2107 git-gui.sh:2639 ++#: git-gui.sh:2209 git-gui.sh:2740 +msgid "Options..." +msgstr "" + - #: git-gui.sh:2113 lib/choose_repository.tcl:47 ++#: git-gui.sh:2215 lib/choose_repository.tcl:47 +msgid "Help" +msgstr "" + - #: git-gui.sh:2154 ++#: git-gui.sh:2256 +msgid "Online Documentation" +msgstr "" + - #: git-gui.sh:2238 ++#: git-gui.sh:2340 +#, tcl-format +msgid "fatal: cannot stat path %s: No such file or directory" +msgstr "" + - #: git-gui.sh:2271 ++#: git-gui.sh:2373 +msgid "Current Branch:" +msgstr "" + - #: git-gui.sh:2292 ++#: git-gui.sh:2394 +msgid "Staged Changes (Will Commit)" +msgstr "" + - #: git-gui.sh:2312 ++#: git-gui.sh:2414 +msgid "Unstaged Changes" +msgstr "" + - #: git-gui.sh:2362 ++#: git-gui.sh:2464 +msgid "Stage Changed" +msgstr "" + - #: git-gui.sh:2378 lib/transport.tcl:93 lib/transport.tcl:182 ++#: git-gui.sh:2480 lib/transport.tcl:93 lib/transport.tcl:182 +msgid "Push" +msgstr "" + - #: git-gui.sh:2408 ++#: git-gui.sh:2510 +msgid "Initial Commit Message:" +msgstr "" + - #: git-gui.sh:2409 ++#: git-gui.sh:2511 +msgid "Amended Commit Message:" +msgstr "" + - #: git-gui.sh:2410 ++#: git-gui.sh:2512 +msgid "Amended Initial Commit Message:" +msgstr "" + - #: git-gui.sh:2411 ++#: git-gui.sh:2513 +msgid "Amended Merge Commit Message:" +msgstr "" + - #: git-gui.sh:2412 ++#: git-gui.sh:2514 +msgid "Merge Commit Message:" +msgstr "" + - #: git-gui.sh:2413 ++#: git-gui.sh:2515 +msgid "Commit Message:" +msgstr "" + - #: git-gui.sh:2459 git-gui.sh:2622 lib/console.tcl:73 ++#: git-gui.sh:2561 git-gui.sh:2723 lib/console.tcl:73 +msgid "Copy All" +msgstr "" + - #: git-gui.sh:2483 lib/blame.tcl:107 ++#: git-gui.sh:2585 lib/blame.tcl:100 +msgid "File:" +msgstr "" + - #: git-gui.sh:2589 ++#: git-gui.sh:2691 +msgid "Apply/Reverse Hunk" +msgstr "" + - #: git-gui.sh:2595 - msgid "Show Less Context" - msgstr "" - - #: git-gui.sh:2602 - msgid "Show More Context" ++#: git-gui.sh:2696 ++msgid "Apply/Reverse Line" +msgstr "" + - #: git-gui.sh:2610 ++#: git-gui.sh:2711 +msgid "Refresh" +msgstr "" + - #: git-gui.sh:2631 ++#: git-gui.sh:2732 +msgid "Decrease Font Size" +msgstr "" + - #: git-gui.sh:2635 ++#: git-gui.sh:2736 +msgid "Increase Font Size" +msgstr "" + - #: git-gui.sh:2646 ++#: git-gui.sh:2747 +msgid "Unstage Hunk From Commit" +msgstr "" + - #: git-gui.sh:2648 ++#: git-gui.sh:2748 ++msgid "Unstage Line From Commit" ++msgstr "" ++ ++#: git-gui.sh:2750 +msgid "Stage Hunk For Commit" +msgstr "" + - #: git-gui.sh:2667 ++#: git-gui.sh:2751 ++msgid "Stage Line For Commit" ++msgstr "" ++ ++#: git-gui.sh:2771 +msgid "Initializing..." +msgstr "" + - #: git-gui.sh:2762 ++#: git-gui.sh:2876 +#, tcl-format +msgid "" +"Possible environment issues exist.\n" +"\n" +"The following environment variables are probably\n" +"going to be ignored by any Git subprocess run\n" +"by %s:\n" +"\n" +msgstr "" + - #: git-gui.sh:2792 ++#: git-gui.sh:2906 +msgid "" +"\n" +"This is due to a known issue with the\n" +"Tcl binary distributed by Cygwin." +msgstr "" + - #: git-gui.sh:2797 ++#: git-gui.sh:2911 +#, tcl-format +msgid "" +"\n" +"\n" +"A good replacement for %s\n" +"is placing values for the user.name and\n" +"user.email settings into your personal\n" +"~/.gitconfig file.\n" +msgstr "" + +#: lib/about.tcl:26 +msgid "git-gui - a graphical user interface for Git." +msgstr "" + - #: lib/blame.tcl:77 ++#: lib/blame.tcl:70 +msgid "File Viewer" +msgstr "" + - #: lib/blame.tcl:81 ++#: lib/blame.tcl:74 +msgid "Commit:" +msgstr "" + - #: lib/blame.tcl:264 ++#: lib/blame.tcl:257 +msgid "Copy Commit" +msgstr "" + - #: lib/blame.tcl:384 ++#: lib/blame.tcl:260 ++msgid "Do Full Copy Detection" ++msgstr "" ++ ++#: lib/blame.tcl:388 +#, tcl-format +msgid "Reading %s..." +msgstr "" + - #: lib/blame.tcl:488 ++#: lib/blame.tcl:492 +msgid "Loading copy/move tracking annotations..." +msgstr "" + - #: lib/blame.tcl:508 ++#: lib/blame.tcl:512 +msgid "lines annotated" +msgstr "" + - #: lib/blame.tcl:689 ++#: lib/blame.tcl:704 +msgid "Loading original location annotations..." +msgstr "" + - #: lib/blame.tcl:692 ++#: lib/blame.tcl:707 +msgid "Annotation complete." +msgstr "" + - #: lib/blame.tcl:746 ++#: lib/blame.tcl:737 ++msgid "Busy" ++msgstr "" ++ ++#: lib/blame.tcl:738 ++msgid "Annotation process is already running." ++msgstr "" ++ ++#: lib/blame.tcl:777 ++msgid "Running thorough copy detection..." ++msgstr "" ++ ++#: lib/blame.tcl:827 +msgid "Loading annotation..." +msgstr "" + - #: lib/blame.tcl:802 ++#: lib/blame.tcl:883 +msgid "Author:" +msgstr "" + - #: lib/blame.tcl:806 ++#: lib/blame.tcl:887 +msgid "Committer:" +msgstr "" + - #: lib/blame.tcl:811 ++#: lib/blame.tcl:892 +msgid "Original File:" +msgstr "" + - #: lib/blame.tcl:925 ++#: lib/blame.tcl:1006 +msgid "Originally By:" +msgstr "" + - #: lib/blame.tcl:931 ++#: lib/blame.tcl:1012 +msgid "In File:" +msgstr "" + - #: lib/blame.tcl:936 ++#: lib/blame.tcl:1017 +msgid "Copied Or Moved Here By:" +msgstr "" + +#: lib/branch_checkout.tcl:14 lib/branch_checkout.tcl:19 +msgid "Checkout Branch" +msgstr "" + +#: lib/branch_checkout.tcl:23 +msgid "Checkout" +msgstr "" + +#: 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:522 lib/choose_font.tcl:43 lib/merge.tcl:171 ++#: lib/checkout_op.tcl:544 lib/choose_font.tcl:43 lib/merge.tcl:171 +#: lib/option.tcl:103 lib/remote_branch_delete.tcl:42 lib/transport.tcl:97 +msgid "Cancel" +msgstr "" + +#: lib/branch_checkout.tcl:32 lib/browser.tcl:287 +msgid "Revision" +msgstr "" + - #: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:242 ++#: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:244 +msgid "Options" +msgstr "" + +#: lib/branch_checkout.tcl:39 lib/branch_create.tcl:92 +msgid "Fetch Tracking Branch" +msgstr "" + +#: lib/branch_checkout.tcl:44 +msgid "Detach From Local Branch" +msgstr "" + +#: lib/branch_create.tcl:22 +msgid "Create Branch" +msgstr "" + +#: lib/branch_create.tcl:27 +msgid "Create New Branch" +msgstr "" + +#: lib/branch_create.tcl:31 lib/choose_repository.tcl:371 +msgid "Create" +msgstr "" + +#: lib/branch_create.tcl:40 +msgid "Branch Name" +msgstr "" + +#: lib/branch_create.tcl:43 +msgid "Name:" +msgstr "" + +#: lib/branch_create.tcl:58 +msgid "Match Tracking Branch Name" +msgstr "" + +#: lib/branch_create.tcl:66 +msgid "Starting Revision" +msgstr "" + +#: lib/branch_create.tcl:72 +msgid "Update Existing Branch:" +msgstr "" + +#: lib/branch_create.tcl:75 +msgid "No" +msgstr "" + +#: lib/branch_create.tcl:80 +msgid "Fast Forward Only" +msgstr "" + - #: lib/branch_create.tcl:85 lib/checkout_op.tcl:514 ++#: lib/branch_create.tcl:85 lib/checkout_op.tcl:536 +msgid "Reset" +msgstr "" + +#: lib/branch_create.tcl:97 +msgid "Checkout After Creation" +msgstr "" + +#: lib/branch_create.tcl:131 +msgid "Please select a tracking branch." +msgstr "" + +#: lib/branch_create.tcl:140 +#, tcl-format +msgid "Tracking branch %s is not a branch in the remote repository." +msgstr "" + +#: lib/branch_create.tcl:153 lib/branch_rename.tcl:86 +msgid "Please supply a branch name." +msgstr "" + +#: lib/branch_create.tcl:164 lib/branch_rename.tcl:106 +#, tcl-format +msgid "'%s' is not an acceptable branch name." +msgstr "" + +#: lib/branch_delete.tcl:15 +msgid "Delete Branch" +msgstr "" + +#: lib/branch_delete.tcl:20 +msgid "Delete Local Branch" +msgstr "" + +#: lib/branch_delete.tcl:37 +msgid "Local Branches" +msgstr "" + +#: lib/branch_delete.tcl:52 +msgid "Delete Only If Merged Into" +msgstr "" + +#: lib/branch_delete.tcl:54 +msgid "Always (Do not perform merge test.)" +msgstr "" + +#: lib/branch_delete.tcl:103 +#, tcl-format +msgid "The following branches are not completely merged into %s:" +msgstr "" + +#: lib/branch_delete.tcl:115 +msgid "" +"Recovering deleted branches is difficult. \n" +"\n" +" Delete the selected branches?" +msgstr "" + +#: lib/branch_delete.tcl:141 +#, tcl-format +msgid "" +"Failed to delete branches:\n" +"%s" +msgstr "" + +#: lib/branch_rename.tcl:14 lib/branch_rename.tcl:22 +msgid "Rename Branch" +msgstr "" + +#: lib/branch_rename.tcl:26 +msgid "Rename" +msgstr "" + +#: lib/branch_rename.tcl:36 +msgid "Branch:" +msgstr "" + +#: lib/branch_rename.tcl:39 +msgid "New Name:" +msgstr "" + +#: lib/branch_rename.tcl:75 +msgid "Please select a branch to rename." +msgstr "" + - #: lib/branch_rename.tcl:96 lib/checkout_op.tcl:179 ++#: lib/branch_rename.tcl:96 lib/checkout_op.tcl:201 +#, tcl-format +msgid "Branch '%s' already exists." +msgstr "" + +#: lib/branch_rename.tcl:117 +#, tcl-format +msgid "Failed to rename '%s'." +msgstr "" + +#: lib/browser.tcl:17 +msgid "Starting..." +msgstr "" + +#: lib/browser.tcl:26 +msgid "File Browser" +msgstr "" + +#: lib/browser.tcl:126 lib/browser.tcl:143 +#, tcl-format +msgid "Loading %s..." +msgstr "" + +#: lib/browser.tcl:187 +msgid "[Up To Parent]" +msgstr "" + +#: lib/browser.tcl:267 lib/browser.tcl:273 +msgid "Browse Branch Files" +msgstr "" + +#: lib/browser.tcl:278 lib/choose_repository.tcl:387 - #: lib/choose_repository.tcl:474 lib/choose_repository.tcl:484 - #: lib/choose_repository.tcl:987 ++#: lib/choose_repository.tcl:472 lib/choose_repository.tcl:482 ++#: lib/choose_repository.tcl:985 +msgid "Browse" +msgstr "" + - #: lib/checkout_op.tcl:79 ++#: lib/checkout_op.tcl:84 +#, tcl-format +msgid "Fetching %s from %s" +msgstr "" + - #: lib/checkout_op.tcl:127 ++#: lib/checkout_op.tcl:132 +#, tcl-format +msgid "fatal: Cannot resolve %s" +msgstr "" + - #: lib/checkout_op.tcl:140 lib/console.tcl:81 lib/database.tcl:31 ++#: lib/checkout_op.tcl:145 lib/console.tcl:81 lib/database.tcl:31 +msgid "Close" +msgstr "" + - #: lib/checkout_op.tcl:169 ++#: lib/checkout_op.tcl:174 +#, tcl-format +msgid "Branch '%s' does not exist." +msgstr "" + - #: lib/checkout_op.tcl:206 ++#: lib/checkout_op.tcl:193 ++#, tcl-format ++msgid "Failed to configure simplified git-pull for '%s'." ++msgstr "" ++ ++#: lib/checkout_op.tcl:228 +#, tcl-format +msgid "" +"Branch '%s' already exists.\n" +"\n" +"It cannot fast-forward to %s.\n" +"A merge is required." +msgstr "" + - #: lib/checkout_op.tcl:220 ++#: lib/checkout_op.tcl:242 +#, tcl-format +msgid "Merge strategy '%s' not supported." +msgstr "" + - #: lib/checkout_op.tcl:239 ++#: lib/checkout_op.tcl:261 +#, tcl-format +msgid "Failed to update '%s'." +msgstr "" + - #: lib/checkout_op.tcl:251 ++#: lib/checkout_op.tcl:273 +msgid "Staging area (index) is already locked." +msgstr "" + - #: lib/checkout_op.tcl:266 ++#: lib/checkout_op.tcl:288 +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/checkout_op.tcl:322 ++#: lib/checkout_op.tcl:344 +#, tcl-format +msgid "Updating working directory to '%s'..." +msgstr "" + - #: lib/checkout_op.tcl:323 ++#: lib/checkout_op.tcl:345 +msgid "files checked out" +msgstr "" + - #: lib/checkout_op.tcl:353 ++#: lib/checkout_op.tcl:375 +#, tcl-format +msgid "Aborted checkout of '%s' (file level merging is required)." +msgstr "" + - #: lib/checkout_op.tcl:354 ++#: lib/checkout_op.tcl:376 +msgid "File level merge required." +msgstr "" + - #: lib/checkout_op.tcl:358 ++#: lib/checkout_op.tcl:380 +#, tcl-format +msgid "Staying on branch '%s'." +msgstr "" + - #: lib/checkout_op.tcl:429 ++#: lib/checkout_op.tcl:451 +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/checkout_op.tcl:446 lib/checkout_op.tcl:450 ++#: lib/checkout_op.tcl:468 lib/checkout_op.tcl:472 +#, tcl-format +msgid "Checked out '%s'." +msgstr "" + - #: lib/checkout_op.tcl:478 ++#: lib/checkout_op.tcl:500 +#, tcl-format +msgid "Resetting '%s' to '%s' will lose the following commits:" +msgstr "" + - #: lib/checkout_op.tcl:500 ++#: lib/checkout_op.tcl:522 +msgid "Recovering lost commits may not be easy." +msgstr "" + - #: lib/checkout_op.tcl:505 ++#: lib/checkout_op.tcl:527 +#, tcl-format +msgid "Reset '%s'?" +msgstr "" + - #: lib/checkout_op.tcl:510 lib/merge.tcl:163 ++#: lib/checkout_op.tcl:532 lib/merge.tcl:163 +msgid "Visualize" +msgstr "" + - #: lib/checkout_op.tcl:578 ++#: lib/checkout_op.tcl:600 +#, 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/choose_font.tcl:39 +msgid "Select" +msgstr "" + +#: lib/choose_font.tcl:53 +msgid "Font Family" +msgstr "" + +#: lib/choose_font.tcl:74 +msgid "Font Size" +msgstr "" + +#: lib/choose_font.tcl:91 +msgid "Font Example" +msgstr "" + +#: lib/choose_font.tcl:103 +msgid "" +"This is example text.\n" +"If you like this text, it can be your font." +msgstr "" + +#: lib/choose_repository.tcl:28 +msgid "Git Gui" +msgstr "" + +#: lib/choose_repository.tcl:81 lib/choose_repository.tcl:376 +msgid "Create New Repository" +msgstr "" + +#: lib/choose_repository.tcl:87 +msgid "New..." +msgstr "" + - #: lib/choose_repository.tcl:94 lib/choose_repository.tcl:460 ++#: lib/choose_repository.tcl:94 lib/choose_repository.tcl:458 +msgid "Clone Existing Repository" +msgstr "" + +#: lib/choose_repository.tcl:100 +msgid "Clone..." +msgstr "" + - #: lib/choose_repository.tcl:107 lib/choose_repository.tcl:976 ++#: lib/choose_repository.tcl:107 lib/choose_repository.tcl:974 +msgid "Open Existing Repository" +msgstr "" + +#: lib/choose_repository.tcl:113 +msgid "Open..." +msgstr "" + +#: lib/choose_repository.tcl:126 +msgid "Recent Repositories" +msgstr "" + +#: lib/choose_repository.tcl:132 +msgid "Open Recent Repository:" +msgstr "" + +#: lib/choose_repository.tcl:296 lib/choose_repository.tcl:303 +#: lib/choose_repository.tcl:310 +#, tcl-format +msgid "Failed to create repository %s:" +msgstr "" + - #: lib/choose_repository.tcl:381 lib/choose_repository.tcl:478 ++#: lib/choose_repository.tcl:381 lib/choose_repository.tcl:476 +msgid "Directory:" +msgstr "" + - #: lib/choose_repository.tcl:412 lib/choose_repository.tcl:537 - #: lib/choose_repository.tcl:1011 ++#: lib/choose_repository.tcl:410 lib/choose_repository.tcl:535 ++#: lib/choose_repository.tcl:1007 +msgid "Git Repository" +msgstr "" + - #: lib/choose_repository.tcl:437 ++#: lib/choose_repository.tcl:435 +#, tcl-format +msgid "Directory %s already exists." +msgstr "" + - #: lib/choose_repository.tcl:441 ++#: lib/choose_repository.tcl:439 +#, tcl-format +msgid "File %s already exists." +msgstr "" + - #: lib/choose_repository.tcl:455 ++#: lib/choose_repository.tcl:453 +msgid "Clone" +msgstr "" + - #: lib/choose_repository.tcl:468 ++#: lib/choose_repository.tcl:466 +msgid "URL:" +msgstr "" + - #: lib/choose_repository.tcl:489 ++#: lib/choose_repository.tcl:487 +msgid "Clone Type:" +msgstr "" + - #: lib/choose_repository.tcl:495 ++#: lib/choose_repository.tcl:493 +msgid "Standard (Fast, Semi-Redundant, Hardlinks)" +msgstr "" + - #: lib/choose_repository.tcl:501 ++#: lib/choose_repository.tcl:499 +msgid "Full Copy (Slower, Redundant Backup)" +msgstr "" + - #: lib/choose_repository.tcl:507 ++#: lib/choose_repository.tcl:505 +msgid "Shared (Fastest, Not Recommended, No Backup)" +msgstr "" + - #: lib/choose_repository.tcl:543 lib/choose_repository.tcl:590 - #: lib/choose_repository.tcl:736 lib/choose_repository.tcl:806 - #: lib/choose_repository.tcl:1017 lib/choose_repository.tcl:1025 ++#: lib/choose_repository.tcl:541 lib/choose_repository.tcl:588 ++#: lib/choose_repository.tcl:734 lib/choose_repository.tcl:804 ++#: lib/choose_repository.tcl:1013 lib/choose_repository.tcl:1021 +#, tcl-format +msgid "Not a Git repository: %s" +msgstr "" + - #: lib/choose_repository.tcl:579 ++#: lib/choose_repository.tcl:577 +msgid "Standard only available for local repository." +msgstr "" + - #: lib/choose_repository.tcl:583 ++#: lib/choose_repository.tcl:581 +msgid "Shared only available for local repository." +msgstr "" + - #: lib/choose_repository.tcl:604 ++#: lib/choose_repository.tcl:602 +#, tcl-format +msgid "Location %s already exists." +msgstr "" + - #: lib/choose_repository.tcl:615 ++#: lib/choose_repository.tcl:613 +msgid "Failed to configure origin" +msgstr "" + - #: lib/choose_repository.tcl:627 ++#: lib/choose_repository.tcl:625 +msgid "Counting objects" +msgstr "" + - #: lib/choose_repository.tcl:628 ++#: lib/choose_repository.tcl:626 +msgid "buckets" +msgstr "" + - #: lib/choose_repository.tcl:652 ++#: lib/choose_repository.tcl:650 +#, tcl-format +msgid "Unable to copy objects/info/alternates: %s" +msgstr "" + - #: lib/choose_repository.tcl:688 ++#: lib/choose_repository.tcl:686 +#, tcl-format +msgid "Nothing to clone from %s." +msgstr "" + - #: lib/choose_repository.tcl:690 lib/choose_repository.tcl:904 - #: lib/choose_repository.tcl:916 ++#: lib/choose_repository.tcl:688 lib/choose_repository.tcl:902 ++#: lib/choose_repository.tcl:914 +msgid "The 'master' branch has not been initialized." +msgstr "" + - #: lib/choose_repository.tcl:703 ++#: lib/choose_repository.tcl:701 +msgid "Hardlinks are unavailable. Falling back to copying." +msgstr "" + - #: lib/choose_repository.tcl:715 ++#: lib/choose_repository.tcl:713 +#, tcl-format +msgid "Cloning from %s" +msgstr "" + - #: lib/choose_repository.tcl:746 ++#: lib/choose_repository.tcl:744 +msgid "Copying objects" +msgstr "" + - #: lib/choose_repository.tcl:747 ++#: lib/choose_repository.tcl:745 +msgid "KiB" +msgstr "" + - #: lib/choose_repository.tcl:771 ++#: lib/choose_repository.tcl:769 +#, tcl-format +msgid "Unable to copy object: %s" +msgstr "" + - #: lib/choose_repository.tcl:781 ++#: lib/choose_repository.tcl:779 +msgid "Linking objects" +msgstr "" + - #: lib/choose_repository.tcl:782 ++#: lib/choose_repository.tcl:780 +msgid "objects" +msgstr "" + - #: lib/choose_repository.tcl:790 ++#: lib/choose_repository.tcl:788 +#, tcl-format +msgid "Unable to hardlink object: %s" +msgstr "" + - #: lib/choose_repository.tcl:845 ++#: lib/choose_repository.tcl:843 +msgid "Cannot fetch branches and objects. See console output for details." +msgstr "" + - #: lib/choose_repository.tcl:856 ++#: lib/choose_repository.tcl:854 +msgid "Cannot fetch tags. See console output for details." +msgstr "" + - #: lib/choose_repository.tcl:880 ++#: lib/choose_repository.tcl:878 +msgid "Cannot determine HEAD. See console output for details." +msgstr "" + - #: lib/choose_repository.tcl:889 ++#: lib/choose_repository.tcl:887 +#, tcl-format +msgid "Unable to cleanup %s" +msgstr "" + - #: lib/choose_repository.tcl:895 ++#: lib/choose_repository.tcl:893 +msgid "Clone failed." +msgstr "" + - #: lib/choose_repository.tcl:902 ++#: lib/choose_repository.tcl:900 +msgid "No default branch obtained." +msgstr "" + - #: lib/choose_repository.tcl:913 ++#: lib/choose_repository.tcl:911 +#, tcl-format +msgid "Cannot resolve %s as a commit." +msgstr "" + - #: lib/choose_repository.tcl:925 ++#: lib/choose_repository.tcl:923 +msgid "Creating working directory" +msgstr "" + - #: lib/choose_repository.tcl:926 lib/index.tcl:65 lib/index.tcl:127 ++#: lib/choose_repository.tcl:924 lib/index.tcl:65 lib/index.tcl:127 +#: lib/index.tcl:193 +msgid "files" +msgstr "" + - #: lib/choose_repository.tcl:955 ++#: lib/choose_repository.tcl:953 +msgid "Initial file checkout failed." +msgstr "" + - #: lib/choose_repository.tcl:971 ++#: lib/choose_repository.tcl:969 +msgid "Open" +msgstr "" + - #: lib/choose_repository.tcl:981 ++#: lib/choose_repository.tcl:979 +msgid "Repository:" +msgstr "" + - #: lib/choose_repository.tcl:1031 ++#: lib/choose_repository.tcl:1027 +#, tcl-format +msgid "Failed to open repository %s:" +msgstr "" + +#: lib/choose_rev.tcl:53 +msgid "This Detached Checkout" +msgstr "" + +#: lib/choose_rev.tcl:60 +msgid "Revision Expression:" +msgstr "" + +#: lib/choose_rev.tcl:74 +msgid "Local Branch" +msgstr "" + +#: lib/choose_rev.tcl:79 +msgid "Tracking Branch" +msgstr "" + +#: lib/choose_rev.tcl:84 lib/choose_rev.tcl:538 +msgid "Tag" +msgstr "" + +#: lib/choose_rev.tcl:317 +#, tcl-format +msgid "Invalid revision: %s" +msgstr "" + +#: lib/choose_rev.tcl:338 +msgid "No revision selected." +msgstr "" + +#: lib/choose_rev.tcl:346 +msgid "Revision expression is empty." +msgstr "" + +#: lib/choose_rev.tcl:531 +msgid "Updated" +msgstr "" + +#: lib/choose_rev.tcl:559 +msgid "URL" +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" +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" +msgstr "" + +#: lib/commit.tcl:49 +msgid "Error loading commit data for amend:" +msgstr "" + +#: lib/commit.tcl:76 +msgid "Unable to obtain your identity:" +msgstr "" + +#: lib/commit.tcl:81 +msgid "Invalid GIT_COMMITTER_IDENT:" +msgstr "" + +#: lib/commit.tcl:133 +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/commit.tcl:154 +#, 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 "" + +#: lib/commit.tcl:162 +#, tcl-format +msgid "" +"Unknown file state %s detected.\n" +"\n" +"File %s cannot be committed by this program.\n" +msgstr "" + +#: lib/commit.tcl:170 +msgid "" +"No changes to commit.\n" +"\n" +"You must stage at least 1 file before you can commit.\n" +msgstr "" + +#: lib/commit.tcl:183 +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 "" + +#: lib/commit.tcl:207 +#, tcl-format +msgid "warning: Tcl does not support encoding '%s'." +msgstr "" + +#: lib/commit.tcl:221 +msgid "Calling pre-commit hook..." +msgstr "" + +#: lib/commit.tcl:236 +msgid "Commit declined by pre-commit hook." +msgstr "" + +#: lib/commit.tcl:259 +msgid "Calling commit-msg hook..." +msgstr "" + +#: lib/commit.tcl:274 +msgid "Commit declined by commit-msg hook." +msgstr "" + +#: lib/commit.tcl:287 +msgid "Committing changes..." +msgstr "" + +#: lib/commit.tcl:303 +msgid "write-tree failed:" +msgstr "" + +#: lib/commit.tcl:304 lib/commit.tcl:348 lib/commit.tcl:368 +msgid "Commit failed." +msgstr "" + +#: lib/commit.tcl:321 +#, tcl-format +msgid "Commit %s appears to be corrupt" +msgstr "" + +#: lib/commit.tcl:326 +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 "" + +#: lib/commit.tcl:333 +msgid "No changes to commit." +msgstr "" + +#: lib/commit.tcl:347 +msgid "commit-tree failed:" +msgstr "" + +#: lib/commit.tcl:367 +msgid "update-ref failed:" +msgstr "" + +#: lib/commit.tcl:454 +#, tcl-format +msgid "Created commit %s: %s" +msgstr "" + +#: lib/console.tcl:59 +msgid "Working... please wait..." +msgstr "" + +#: lib/console.tcl:186 +msgid "Success" +msgstr "" + +#: lib/console.tcl:200 +msgid "Error: Command Failed" +msgstr "" + +#: lib/database.tcl:43 +msgid "Number of loose objects" +msgstr "" + +#: lib/database.tcl:44 +msgid "Disk space used by loose objects" +msgstr "" + +#: lib/database.tcl:45 +msgid "Number of packed objects" +msgstr "" + +#: lib/database.tcl:46 +msgid "Number of packs" +msgstr "" + +#: lib/database.tcl:47 +msgid "Disk space used by packed objects" +msgstr "" + +#: lib/database.tcl:48 +msgid "Packed objects waiting for pruning" +msgstr "" + +#: lib/database.tcl:49 +msgid "Garbage files" +msgstr "" + +#: lib/database.tcl:72 +msgid "Compressing the object database" +msgstr "" + +#: lib/database.tcl:83 +msgid "Verifying the object database with fsck-objects" +msgstr "" + +#: lib/database.tcl:108 +#, 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 when more than %i loose objects exist.\n" +"\n" +"Compress the database now?" +msgstr "" + +#: lib/date.tcl:25 +#, tcl-format +msgid "Invalid date from Git: %s" +msgstr "" + - #: lib/diff.tcl:42 ++#: lib/diff.tcl:44 +#, 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 "" + - #: lib/diff.tcl:81 ++#: lib/diff.tcl:83 +#, tcl-format +msgid "Loading diff of %s..." +msgstr "" + - #: lib/diff.tcl:114 lib/diff.tcl:184 ++#: lib/diff.tcl:116 lib/diff.tcl:190 +#, tcl-format +msgid "Unable to display %s" +msgstr "" + - #: lib/diff.tcl:115 ++#: lib/diff.tcl:117 +msgid "Error loading file:" +msgstr "" + - #: lib/diff.tcl:122 ++#: lib/diff.tcl:124 +msgid "Git Repository (subproject)" +msgstr "" + - #: lib/diff.tcl:134 ++#: lib/diff.tcl:136 +msgid "* Binary file (not showing content)." +msgstr "" + - #: lib/diff.tcl:185 ++#: lib/diff.tcl:191 +msgid "Error loading diff:" +msgstr "" + - #: lib/diff.tcl:303 ++#: lib/diff.tcl:313 +msgid "Failed to unstage selected hunk." +msgstr "" + - #: lib/diff.tcl:310 ++#: lib/diff.tcl:320 +msgid "Failed to stage selected hunk." +msgstr "" + ++#: lib/diff.tcl:386 ++msgid "Failed to unstage selected line." ++msgstr "" ++ ++#: lib/diff.tcl:394 ++msgid "Failed to stage selected line." ++msgstr "" ++ +#: lib/error.tcl:20 lib/error.tcl:114 +msgid "error" +msgstr "" + +#: lib/error.tcl:36 +msgid "warning" +msgstr "" + +#: lib/error.tcl:94 +msgid "You must correct the above errors before committing." +msgstr "" + +#: lib/index.tcl:6 +msgid "Unable to unlock the index." +msgstr "" + +#: lib/index.tcl:15 +msgid "Index Error" +msgstr "" + +#: lib/index.tcl:21 +msgid "" +"Updating the Git index failed. A rescan will be automatically started to " +"resynchronize git-gui." +msgstr "" + +#: lib/index.tcl:27 +msgid "Continue" +msgstr "" + +#: lib/index.tcl:31 +msgid "Unlock Index" +msgstr "" + +#: lib/index.tcl:282 +#, tcl-format +msgid "Unstaging %s from commit" +msgstr "" + +#: lib/index.tcl:313 +msgid "Ready to commit." +msgstr "" + +#: lib/index.tcl:326 +#, tcl-format +msgid "Adding %s" +msgstr "" + +#: lib/index.tcl:381 +#, tcl-format +msgid "Revert changes in file %s?" +msgstr "" + +#: lib/index.tcl:383 +#, tcl-format +msgid "Revert changes in these %i files?" +msgstr "" + +#: lib/index.tcl:391 +msgid "Any unstaged changes will be permanently lost by the revert." +msgstr "" + +#: lib/index.tcl:394 +msgid "Do Nothing" +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" +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" +msgstr "" + +#: lib/merge.tcl:44 +#, 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 "" + +#: lib/merge.tcl:54 +#, 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 "" + +#: lib/merge.tcl:106 +#, tcl-format +msgid "%s of %s" +msgstr "" + +#: lib/merge.tcl:119 +#, tcl-format +msgid "Merging %s and %s..." +msgstr "" + +#: lib/merge.tcl:130 +msgid "Merge completed successfully." +msgstr "" + +#: lib/merge.tcl:132 +msgid "Merge failed. Conflict resolution is required." +msgstr "" + +#: lib/merge.tcl:157 +#, tcl-format +msgid "Merge Into %s" +msgstr "" + +#: lib/merge.tcl:176 +msgid "Revision To Merge" +msgstr "" + +#: lib/merge.tcl:211 +msgid "" +"Cannot abort while amending.\n" +"\n" +"You must finish amending this commit.\n" +msgstr "" + +#: lib/merge.tcl:221 +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/merge.tcl:227 +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/merge.tcl:238 +msgid "Aborting" +msgstr "" + +#: lib/merge.tcl:238 +msgid "files reset" +msgstr "" + - #: lib/merge.tcl:265 ++#: lib/merge.tcl:266 +msgid "Abort failed." +msgstr "" + - #: lib/merge.tcl:267 ++#: lib/merge.tcl:268 +msgid "Abort completed. Ready." +msgstr "" + +#: lib/option.tcl:95 +msgid "Restore Defaults" +msgstr "" + +#: lib/option.tcl:99 +msgid "Save" +msgstr "" + +#: lib/option.tcl:109 +#, tcl-format +msgid "%s Repository" +msgstr "" + +#: lib/option.tcl:110 +msgid "Global (All Repositories)" +msgstr "" + +#: lib/option.tcl:116 +msgid "User Name" +msgstr "" + +#: lib/option.tcl:117 +msgid "Email Address" +msgstr "" + +#: lib/option.tcl:119 +msgid "Summarize Merge Commits" +msgstr "" + +#: lib/option.tcl:120 +msgid "Merge Verbosity" +msgstr "" + +#: lib/option.tcl:121 +msgid "Show Diffstat After Merge" +msgstr "" + +#: lib/option.tcl:123 +msgid "Trust File Modification Timestamps" +msgstr "" + +#: lib/option.tcl:124 +msgid "Prune Tracking Branches During Fetch" +msgstr "" + +#: lib/option.tcl:125 +msgid "Match Tracking Branches" +msgstr "" + +#: lib/option.tcl:126 - msgid "Number of Diff Context Lines" ++msgid "Blame Copy Only On Changed Files" +msgstr "" + +#: lib/option.tcl:127 - msgid "Commit Message Text Width" ++msgid "Minimum Letters To Blame Copy On" +msgstr "" + +#: lib/option.tcl:128 ++msgid "Number of Diff Context Lines" ++msgstr "" ++ ++#: lib/option.tcl:129 ++msgid "Commit Message Text Width" ++msgstr "" ++ ++#: lib/option.tcl:130 +msgid "New Branch Name Template" +msgstr "" + - #: lib/option.tcl:192 ++#: lib/option.tcl:194 +msgid "Spelling Dictionary:" +msgstr "" + - #: lib/option.tcl:216 ++#: lib/option.tcl:218 +msgid "Change Font" +msgstr "" + - #: lib/option.tcl:220 ++#: lib/option.tcl:222 +#, tcl-format +msgid "Choose %s" +msgstr "" + - #: lib/option.tcl:226 ++#: lib/option.tcl:228 +msgid "pt." +msgstr "" + - #: lib/option.tcl:240 ++#: lib/option.tcl:242 +msgid "Preferences" +msgstr "" + - #: lib/option.tcl:275 ++#: lib/option.tcl:277 +msgid "Failed to completely save options:" +msgstr "" + ++#: lib/remote.tcl:165 ++msgid "Prune from" ++msgstr "" ++ ++#: lib/remote.tcl:170 ++msgid "Fetch from" ++msgstr "" ++ ++#: lib/remote.tcl:213 ++msgid "Push to" ++msgstr "" ++ +#: lib/remote_branch_delete.tcl:29 lib/remote_branch_delete.tcl:34 +msgid "Delete Remote Branch" +msgstr "" + +#: lib/remote_branch_delete.tcl:47 +msgid "From Repository" +msgstr "" + +#: lib/remote_branch_delete.tcl:50 lib/transport.tcl:123 +msgid "Remote:" +msgstr "" + +#: lib/remote_branch_delete.tcl:66 lib/transport.tcl:138 +msgid "Arbitrary URL:" +msgstr "" + +#: lib/remote_branch_delete.tcl:84 +msgid "Branches" +msgstr "" + +#: lib/remote_branch_delete.tcl:109 +msgid "Delete Only If" +msgstr "" + +#: lib/remote_branch_delete.tcl:111 +msgid "Merged Into:" +msgstr "" + +#: lib/remote_branch_delete.tcl:119 +msgid "Always (Do not perform merge checks)" +msgstr "" + +#: lib/remote_branch_delete.tcl:152 +msgid "A branch is required for 'Merged Into'." +msgstr "" + +#: lib/remote_branch_delete.tcl:184 +#, tcl-format +msgid "" +"The following branches are not completely merged into %s:\n" +"\n" +" - %s" +msgstr "" + +#: 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/remote_branch_delete.tcl:207 +msgid "Please select one or more branches to delete." +msgstr "" + +#: lib/remote_branch_delete.tcl:216 +msgid "" +"Recovering deleted branches is difficult.\n" +"\n" +"Delete the selected branches?" +msgstr "" + +#: lib/remote_branch_delete.tcl:226 +#, tcl-format +msgid "Deleting branches from %s" +msgstr "" + +#: lib/remote_branch_delete.tcl:286 +msgid "No repository selected." +msgstr "" + +#: lib/remote_branch_delete.tcl:291 +#, tcl-format +msgid "Scanning %s..." +msgstr "" + - #: lib/remote.tcl:165 - msgid "Prune from" - msgstr "" - - #: lib/remote.tcl:170 - msgid "Fetch from" - msgstr "" - - #: lib/remote.tcl:213 - msgid "Push to" - msgstr "" - +#: lib/shortcut.tcl:20 lib/shortcut.tcl:61 +msgid "Cannot write shortcut:" +msgstr "" + +#: lib/shortcut.tcl:136 +msgid "Cannot write icon:" +msgstr "" + +#: lib/spellcheck.tcl:57 +msgid "Unsupported spell checker" +msgstr "" + +#: lib/spellcheck.tcl:65 +msgid "Spell checking is unavailable" +msgstr "" + +#: lib/spellcheck.tcl:68 +msgid "Invalid spell checking configuration" +msgstr "" + +#: lib/spellcheck.tcl:70 +#, tcl-format +msgid "Reverting dictionary to %s." +msgstr "" + +#: lib/spellcheck.tcl:73 +msgid "Spell checker silently failed on startup" +msgstr "" + +#: lib/spellcheck.tcl:80 +msgid "Unrecognized spell checker" +msgstr "" + - #: lib/spellcheck.tcl:180 ++#: lib/spellcheck.tcl:186 +msgid "No Suggestions" +msgstr "" + - #: lib/spellcheck.tcl:381 ++#: lib/spellcheck.tcl:387 +msgid "Unexpected EOF from spell checker" +msgstr "" + - #: lib/spellcheck.tcl:385 ++#: lib/spellcheck.tcl:391 +msgid "Spell Checker Failed" +msgstr "" + +#: lib/status_bar.tcl:83 +#, tcl-format +msgid "%s ... %*i of %*i %s (%3i%%)" +msgstr "" + +#: lib/transport.tcl:6 +#, tcl-format +msgid "fetch %s" +msgstr "" + +#: lib/transport.tcl:7 +#, tcl-format +msgid "Fetching new changes from %s" +msgstr "" + +#: lib/transport.tcl:18 +#, tcl-format +msgid "remote prune %s" +msgstr "" + +#: lib/transport.tcl:19 +#, tcl-format +msgid "Pruning tracking branches deleted from %s" +msgstr "" + +#: lib/transport.tcl:25 lib/transport.tcl:71 +#, tcl-format +msgid "push %s" +msgstr "" + +#: lib/transport.tcl:26 +#, tcl-format +msgid "Pushing changes to %s" +msgstr "" + +#: lib/transport.tcl:72 +#, tcl-format +msgid "Pushing %s %s to %s" +msgstr "" + +#: lib/transport.tcl:89 +msgid "Push Branches" +msgstr "" + +#: lib/transport.tcl:103 +msgid "Source Branches" +msgstr "" + +#: lib/transport.tcl:120 +msgid "Destination Repository" +msgstr "" + +#: lib/transport.tcl:158 +msgid "Transfer Options" +msgstr "" + +#: lib/transport.tcl:160 +msgid "Force overwrite existing branch (may discard changes)" +msgstr "" + +#: lib/transport.tcl:164 +msgid "Use thin pack (for slow network connections)" +msgstr "" + +#: lib/transport.tcl:168 +msgid "Include tags" +msgstr "" diff --cc git-gui/po/it.po index 11cc79bb5,000000000..3db4fb68c mode 100644,000000..100644 --- a/git-gui/po/it.po +++ b/git-gui/po/it.po @@@ -1,1994 -1,0 +1,2032 @@@ +# Translation of git-gui to Italian +# Copyright (C) 2007 Shawn Pearce +# This file is distributed under the same license as the git-gui package. +# Paolo Ciarrocchi , 2007 +# Michele Ballabio , 2007. - # - # ++# ++# +msgid "" +msgstr "" +"Project-Id-Version: git-gui\n" +"Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2008-03-14 07:18+0100\n" - "PO-Revision-Date: 2008-03-12 22:12+0100\n" ++"POT-Creation-Date: 2008-08-02 14:45-0700\n" ++"PO-Revision-Date: 2008-08-03 16:04+0200\n" +"Last-Translator: Michele Ballabio \n" +"Language-Team: Italian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + - #: git-gui.sh:41 git-gui.sh:634 git-gui.sh:648 git-gui.sh:661 git-gui.sh:744 - #: git-gui.sh:763 ++#: git-gui.sh:41 git-gui.sh:688 git-gui.sh:702 git-gui.sh:715 git-gui.sh:798 ++#: git-gui.sh:817 +msgid "git-gui: fatal error" +msgstr "git-gui: errore grave" + - #: git-gui.sh:593 ++#: git-gui.sh:644 +#, tcl-format +msgid "Invalid font specified in %s:" +msgstr "Caratteri non validi specificati in %s:" + - #: git-gui.sh:620 ++#: git-gui.sh:674 +msgid "Main Font" +msgstr "Caratteri principali" + - #: git-gui.sh:621 ++#: git-gui.sh:675 +msgid "Diff/Console Font" +msgstr "Caratteri per confronti e terminale" + - #: git-gui.sh:635 ++#: git-gui.sh:689 +msgid "Cannot find git in PATH." +msgstr "Impossibile trovare git nel PATH" + - #: git-gui.sh:662 ++#: git-gui.sh:716 +msgid "Cannot parse Git version string:" +msgstr "Impossibile determinare la versione di Git:" + - #: git-gui.sh:680 ++#: git-gui.sh:734 +#, tcl-format +msgid "" +"Git version cannot be determined.\n" +"\n" +"%s claims it is version '%s'.\n" +"\n" +"%s requires at least Git 1.5.0 or later.\n" +"\n" +"Assume '%s' is version 1.5.0?\n" +msgstr "" +"La versione di Git non può essere determinata.\n" +"\n" +"%s riporta che la versione è '%s'.\n" +"\n" +"%s richiede almeno Git 1.5.0 o superiore.\n" +"\n" +"Assumere che '%s' sia alla versione 1.5.0?\n" + - #: git-gui.sh:918 ++#: git-gui.sh:972 +msgid "Git directory not found:" +msgstr "Non trovo la directory di git: " + - #: git-gui.sh:925 ++#: git-gui.sh:979 +msgid "Cannot move to top of working directory:" +msgstr "Impossibile spostarsi sulla directory principale del progetto:" + - #: git-gui.sh:932 ++#: git-gui.sh:986 +msgid "Cannot use funny .git directory:" +msgstr "Impossibile usare una .git directory strana:" + - #: git-gui.sh:937 ++#: git-gui.sh:991 +msgid "No working directory" +msgstr "Nessuna directory di lavoro" + - #: git-gui.sh:1084 lib/checkout_op.tcl:283 ++#: git-gui.sh:1138 lib/checkout_op.tcl:305 +msgid "Refreshing file status..." +msgstr "Controllo dello stato dei file in corso..." + - #: git-gui.sh:1149 ++#: git-gui.sh:1194 +msgid "Scanning for modified files ..." +msgstr "Ricerca di file modificati in corso..." + - #: git-gui.sh:1324 lib/browser.tcl:246 ++#: git-gui.sh:1369 lib/browser.tcl:246 +msgid "Ready." +msgstr "Pronto." + - #: git-gui.sh:1590 ++#: git-gui.sh:1635 +msgid "Unmodified" +msgstr "Non modificato" + - #: git-gui.sh:1592 ++#: git-gui.sh:1637 +msgid "Modified, not staged" +msgstr "Modificato, non preparato per una nuova revisione" + - #: git-gui.sh:1593 git-gui.sh:1598 ++#: git-gui.sh:1638 git-gui.sh:1643 +msgid "Staged for commit" +msgstr "Preparato per una nuova revisione" + - #: git-gui.sh:1594 git-gui.sh:1599 ++#: git-gui.sh:1639 git-gui.sh:1644 +msgid "Portions staged for commit" +msgstr "Parti preparate per una nuova revisione" + - #: git-gui.sh:1595 git-gui.sh:1600 ++#: git-gui.sh:1640 git-gui.sh:1645 +msgid "Staged for commit, missing" +msgstr "Preparato per una nuova revisione, mancante" + - #: git-gui.sh:1597 ++#: git-gui.sh:1642 +msgid "Untracked, not staged" +msgstr "Non tracciato, non preparato per una nuova revisione" + - #: git-gui.sh:1602 ++#: git-gui.sh:1647 +msgid "Missing" +msgstr "Mancante" + - #: git-gui.sh:1603 ++#: git-gui.sh:1648 +msgid "Staged for removal" +msgstr "Preparato per la rimozione" + - #: git-gui.sh:1604 ++#: git-gui.sh:1649 +msgid "Staged for removal, still present" +msgstr "Preparato alla rimozione, ancora presente" + - #: git-gui.sh:1606 git-gui.sh:1607 git-gui.sh:1608 git-gui.sh:1609 ++#: git-gui.sh:1651 git-gui.sh:1652 git-gui.sh:1653 git-gui.sh:1654 +msgid "Requires merge resolution" +msgstr "Richiede risoluzione dei conflitti" + - #: git-gui.sh:1644 ++#: git-gui.sh:1689 +msgid "Starting gitk... please wait..." +msgstr "Avvio di gitk... attendere..." + - #: git-gui.sh:1653 - #, tcl-format - msgid "" - "Unable to start gitk:\n" - "\n" - "%s does not exist" - msgstr "" - "Impossibile avviare gitk:\n" - "\n" - "%s non esiste" ++#: git-gui.sh:1698 ++msgid "Couldn't find gitk in PATH" ++msgstr "Impossibile trovare gitk nel PATH" + - #: git-gui.sh:1860 lib/choose_repository.tcl:36 ++#: git-gui.sh:1948 lib/choose_repository.tcl:36 +msgid "Repository" +msgstr "Archivio" + - #: git-gui.sh:1861 ++#: git-gui.sh:1949 +msgid "Edit" +msgstr "Modifica" + - #: git-gui.sh:1863 lib/choose_rev.tcl:561 ++#: git-gui.sh:1951 lib/choose_rev.tcl:561 +msgid "Branch" +msgstr "Ramo" + - #: git-gui.sh:1866 lib/choose_rev.tcl:548 ++#: git-gui.sh:1954 lib/choose_rev.tcl:548 +msgid "Commit@@noun" +msgstr "Revisione" + - #: git-gui.sh:1869 lib/merge.tcl:120 lib/merge.tcl:149 lib/merge.tcl:167 ++#: git-gui.sh:1957 lib/merge.tcl:120 lib/merge.tcl:149 lib/merge.tcl:167 +msgid "Merge" +msgstr "Fusione (Merge)" + - #: git-gui.sh:1870 lib/choose_rev.tcl:557 ++#: git-gui.sh:1958 lib/choose_rev.tcl:557 +msgid "Remote" +msgstr "Remoto" + - #: git-gui.sh:1879 ++#: git-gui.sh:1967 +msgid "Browse Current Branch's Files" +msgstr "Esplora i file del ramo attuale" + - #: git-gui.sh:1883 ++#: git-gui.sh:1971 +msgid "Browse Branch Files..." +msgstr "Esplora i file del ramo..." + - #: git-gui.sh:1888 ++#: git-gui.sh:1976 +msgid "Visualize Current Branch's History" +msgstr "Visualizza la cronologia del ramo attuale" + - #: git-gui.sh:1892 ++#: git-gui.sh:1980 +msgid "Visualize All Branch History" +msgstr "Visualizza la cronologia di tutti i rami" + - #: git-gui.sh:1899 ++#: git-gui.sh:1987 +#, tcl-format +msgid "Browse %s's Files" +msgstr "Esplora i file di %s" + - #: git-gui.sh:1901 ++#: git-gui.sh:1989 +#, tcl-format +msgid "Visualize %s's History" +msgstr "Visualizza la cronologia di %s" + - #: git-gui.sh:1906 lib/database.tcl:27 lib/database.tcl:67 ++#: git-gui.sh:1994 lib/database.tcl:27 lib/database.tcl:67 +msgid "Database Statistics" +msgstr "Statistiche dell'archivio" + - #: git-gui.sh:1909 lib/database.tcl:34 ++#: git-gui.sh:1997 lib/database.tcl:34 +msgid "Compress Database" +msgstr "Comprimi l'archivio" + - #: git-gui.sh:1912 ++#: git-gui.sh:2000 +msgid "Verify Database" +msgstr "Verifica l'archivio" + - #: git-gui.sh:1919 git-gui.sh:1923 git-gui.sh:1927 lib/shortcut.tcl:7 ++#: git-gui.sh:2007 git-gui.sh:2011 git-gui.sh:2015 lib/shortcut.tcl:7 +#: lib/shortcut.tcl:39 lib/shortcut.tcl:71 +msgid "Create Desktop Icon" +msgstr "Crea icona desktop" + - #: git-gui.sh:1932 lib/choose_repository.tcl:177 lib/choose_repository.tcl:185 ++#: git-gui.sh:2023 lib/choose_repository.tcl:177 lib/choose_repository.tcl:185 +msgid "Quit" +msgstr "Esci" + - #: git-gui.sh:1939 ++#: git-gui.sh:2031 +msgid "Undo" +msgstr "Annulla" + - #: git-gui.sh:1942 ++#: git-gui.sh:2034 +msgid "Redo" +msgstr "Ripeti" + - #: git-gui.sh:1946 git-gui.sh:2443 ++#: git-gui.sh:2038 git-gui.sh:2545 +msgid "Cut" +msgstr "Taglia" + - #: git-gui.sh:1949 git-gui.sh:2446 git-gui.sh:2520 git-gui.sh:2614 ++#: git-gui.sh:2041 git-gui.sh:2548 git-gui.sh:2622 git-gui.sh:2715 +#: lib/console.tcl:69 +msgid "Copy" +msgstr "Copia" + - #: git-gui.sh:1952 git-gui.sh:2449 ++#: git-gui.sh:2044 git-gui.sh:2551 +msgid "Paste" +msgstr "Incolla" + - #: git-gui.sh:1955 git-gui.sh:2452 lib/branch_delete.tcl:26 ++#: git-gui.sh:2047 git-gui.sh:2554 lib/branch_delete.tcl:26 +#: lib/remote_branch_delete.tcl:38 +msgid "Delete" +msgstr "Elimina" + - #: git-gui.sh:1959 git-gui.sh:2456 git-gui.sh:2618 lib/console.tcl:71 ++#: git-gui.sh:2051 git-gui.sh:2558 git-gui.sh:2719 lib/console.tcl:71 +msgid "Select All" +msgstr "Seleziona tutto" + - #: git-gui.sh:1968 ++#: git-gui.sh:2060 +msgid "Create..." +msgstr "Crea..." + - #: git-gui.sh:1974 ++#: git-gui.sh:2066 +msgid "Checkout..." +msgstr "Attiva..." + - #: git-gui.sh:1980 ++#: git-gui.sh:2072 +msgid "Rename..." +msgstr "Rinomina" + - #: git-gui.sh:1985 git-gui.sh:2085 ++#: git-gui.sh:2077 git-gui.sh:2187 +msgid "Delete..." +msgstr "Elimina..." + - #: git-gui.sh:1990 ++#: git-gui.sh:2082 +msgid "Reset..." +msgstr "Ripristina..." + - #: git-gui.sh:2002 git-gui.sh:2389 ++#: git-gui.sh:2094 git-gui.sh:2491 +msgid "New Commit" +msgstr "Nuova revisione" + - #: git-gui.sh:2010 git-gui.sh:2396 ++#: git-gui.sh:2102 git-gui.sh:2498 +msgid "Amend Last Commit" +msgstr "Correggi l'ultima revisione" + - #: git-gui.sh:2019 git-gui.sh:2356 lib/remote_branch_delete.tcl:99 ++#: git-gui.sh:2111 git-gui.sh:2458 lib/remote_branch_delete.tcl:99 +msgid "Rescan" +msgstr "Analizza nuovamente" + - #: git-gui.sh:2025 ++#: git-gui.sh:2117 +msgid "Stage To Commit" +msgstr "Prepara per una nuova revisione" + - #: git-gui.sh:2031 ++#: git-gui.sh:2123 +msgid "Stage Changed Files To Commit" +msgstr "Prepara i file modificati per una nuova revisione" + - #: git-gui.sh:2037 ++#: git-gui.sh:2129 +msgid "Unstage From Commit" +msgstr "Annulla preparazione" + - #: git-gui.sh:2042 lib/index.tcl:395 ++#: git-gui.sh:2134 lib/index.tcl:395 +msgid "Revert Changes" +msgstr "Annulla modifiche" + - #: git-gui.sh:2049 git-gui.sh:2368 git-gui.sh:2467 ++#: git-gui.sh:2141 git-gui.sh:2702 ++msgid "Show Less Context" ++msgstr "Mostra meno contesto" ++ ++#: git-gui.sh:2145 git-gui.sh:2706 ++msgid "Show More Context" ++msgstr "Mostra più contesto" ++ ++#: git-gui.sh:2151 git-gui.sh:2470 git-gui.sh:2569 +msgid "Sign Off" +msgstr "Sign Off" + - #: git-gui.sh:2053 git-gui.sh:2372 ++#: git-gui.sh:2155 git-gui.sh:2474 +msgid "Commit@@verb" +msgstr "Nuova revisione" + - #: git-gui.sh:2064 ++#: git-gui.sh:2166 +msgid "Local Merge..." +msgstr "Fusione locale..." + - #: git-gui.sh:2069 ++#: git-gui.sh:2171 +msgid "Abort Merge..." +msgstr "Interrompi fusione..." + - #: git-gui.sh:2081 ++#: git-gui.sh:2183 +msgid "Push..." +msgstr "Propaga..." + - #: git-gui.sh:2092 lib/choose_repository.tcl:41 - msgid "Apple" - msgstr "Apple" - - #: git-gui.sh:2095 git-gui.sh:2117 lib/about.tcl:14 ++#: git-gui.sh:2197 git-gui.sh:2219 lib/about.tcl:14 +#: lib/choose_repository.tcl:44 lib/choose_repository.tcl:50 +#, tcl-format +msgid "About %s" +msgstr "Informazioni su %s" + - #: git-gui.sh:2099 ++#: git-gui.sh:2201 +msgid "Preferences..." +msgstr "Preferenze..." + - #: git-gui.sh:2107 git-gui.sh:2639 ++#: git-gui.sh:2209 git-gui.sh:2740 +msgid "Options..." +msgstr "Opzioni..." + - #: git-gui.sh:2113 lib/choose_repository.tcl:47 ++#: git-gui.sh:2215 lib/choose_repository.tcl:47 +msgid "Help" +msgstr "Aiuto" + - #: git-gui.sh:2154 ++#: git-gui.sh:2256 +msgid "Online Documentation" +msgstr "Documentazione sul web" + - #: git-gui.sh:2238 ++#: git-gui.sh:2340 +#, tcl-format +msgid "fatal: cannot stat path %s: No such file or directory" +msgstr "" +"errore grave: impossibile effettuare lo stat del path %s: file o directory " +"non trovata" + - #: git-gui.sh:2271 ++#: git-gui.sh:2373 +msgid "Current Branch:" +msgstr "Ramo attuale:" + - #: git-gui.sh:2292 ++#: git-gui.sh:2394 +msgid "Staged Changes (Will Commit)" +msgstr "Modifiche preparate (saranno nella nuova revisione)" + - #: git-gui.sh:2312 ++#: git-gui.sh:2414 +msgid "Unstaged Changes" +msgstr "Modifiche non preparate" + - #: git-gui.sh:2362 ++#: git-gui.sh:2464 +msgid "Stage Changed" +msgstr "Prepara modificati" + - #: git-gui.sh:2378 lib/transport.tcl:93 lib/transport.tcl:182 ++#: git-gui.sh:2480 lib/transport.tcl:93 lib/transport.tcl:182 +msgid "Push" +msgstr "Propaga (Push)" + - #: git-gui.sh:2408 ++#: git-gui.sh:2510 +msgid "Initial Commit Message:" +msgstr "Messaggio di revisione iniziale:" + - #: git-gui.sh:2409 ++#: git-gui.sh:2511 +msgid "Amended Commit Message:" +msgstr "Messaggio di revisione corretto:" + - #: git-gui.sh:2410 ++#: git-gui.sh:2512 +msgid "Amended Initial Commit Message:" +msgstr "Messaggio iniziale di revisione corretto:" + - #: git-gui.sh:2411 ++#: git-gui.sh:2513 +msgid "Amended Merge Commit Message:" +msgstr "Messaggio di fusione corretto:" + - #: git-gui.sh:2412 ++#: git-gui.sh:2514 +msgid "Merge Commit Message:" +msgstr "Messaggio di fusione:" + - #: git-gui.sh:2413 ++#: git-gui.sh:2515 +msgid "Commit Message:" +msgstr "Messaggio di revisione:" + - #: git-gui.sh:2459 git-gui.sh:2622 lib/console.tcl:73 ++#: git-gui.sh:2561 git-gui.sh:2723 lib/console.tcl:73 +msgid "Copy All" +msgstr "Copia tutto" + - #: git-gui.sh:2483 lib/blame.tcl:107 ++#: git-gui.sh:2585 lib/blame.tcl:100 +msgid "File:" +msgstr "File:" + - #: git-gui.sh:2589 ++#: git-gui.sh:2691 +msgid "Apply/Reverse Hunk" +msgstr "Applica/Inverti sezione" + - #: git-gui.sh:2595 - msgid "Show Less Context" - msgstr "Mostra meno contesto" - - #: git-gui.sh:2602 - msgid "Show More Context" - msgstr "Mostra più contesto" ++#: git-gui.sh:2696 ++msgid "Apply/Reverse Line" ++msgstr "Applica/Inverti riga" + - #: git-gui.sh:2610 ++#: git-gui.sh:2711 +msgid "Refresh" +msgstr "Rinfresca" + - #: git-gui.sh:2631 ++#: git-gui.sh:2732 +msgid "Decrease Font Size" +msgstr "Diminuisci dimensione caratteri" + - #: git-gui.sh:2635 ++#: git-gui.sh:2736 +msgid "Increase Font Size" +msgstr "Aumenta dimensione caratteri" + - #: git-gui.sh:2646 ++#: git-gui.sh:2747 +msgid "Unstage Hunk From Commit" - msgstr "Sezione non preparata per una nuova revisione" ++msgstr "Annulla preparazione della sezione per una nuova revisione" ++ ++#: git-gui.sh:2748 ++msgid "Unstage Line From Commit" ++msgstr "Annulla preparazione della linea per una nuova revisione" + - #: git-gui.sh:2648 ++#: git-gui.sh:2750 +msgid "Stage Hunk For Commit" +msgstr "Prepara sezione per una nuova revisione" + - #: git-gui.sh:2667 ++#: git-gui.sh:2751 ++msgid "Stage Line For Commit" ++msgstr "Prepara linea per una nuova revisione" ++ ++#: git-gui.sh:2771 +msgid "Initializing..." +msgstr "Inizializzazione..." + - #: git-gui.sh:2762 ++#: git-gui.sh:2876 +#, tcl-format +msgid "" +"Possible environment issues exist.\n" +"\n" +"The following environment variables are probably\n" +"going to be ignored by any Git subprocess run\n" +"by %s:\n" +"\n" +msgstr "" +"Possibili problemi con le variabili d'ambiente.\n" +"\n" +"Le seguenti variabili d'ambiente saranno probabilmente\n" +"ignorate da tutti i sottoprocessi di Git avviati\n" +"da %s:\n" +"\n" + - #: git-gui.sh:2792 ++#: git-gui.sh:2906 +msgid "" +"\n" +"This is due to a known issue with the\n" +"Tcl binary distributed by Cygwin." +msgstr "" +"\n" +"Ciò è dovuto a un problema conosciuto\n" +"causato dall'eseguibile Tcl distribuito da Cygwin." + - #: git-gui.sh:2797 ++#: git-gui.sh:2911 +#, tcl-format +msgid "" +"\n" +"\n" +"A good replacement for %s\n" +"is placing values for the user.name and\n" +"user.email settings into your personal\n" +"~/.gitconfig file.\n" +msgstr "" +"\n" +"\n" +"Una buona alternativa a %s\n" +"consiste nell'assegnare valori alle variabili di configurazione\n" +"user.name e user.email nel tuo file ~/.gitconfig personale.\n" + +#: lib/about.tcl:26 +msgid "git-gui - a graphical user interface for Git." +msgstr "git-gui - un'interfaccia grafica per Git." + - #: lib/blame.tcl:77 ++#: lib/blame.tcl:70 +msgid "File Viewer" +msgstr "Mostra file" + - #: lib/blame.tcl:81 ++#: lib/blame.tcl:74 +msgid "Commit:" +msgstr "Revisione:" + - #: lib/blame.tcl:264 ++#: lib/blame.tcl:257 +msgid "Copy Commit" +msgstr "Copia revisione" + - #: lib/blame.tcl:384 ++#: lib/blame.tcl:260 ++msgid "Do Full Copy Detection" ++msgstr "Ricerca accurata delle copie" ++ ++#: lib/blame.tcl:388 +#, tcl-format +msgid "Reading %s..." +msgstr "Lettura di %s..." + - #: lib/blame.tcl:488 ++#: lib/blame.tcl:492 +msgid "Loading copy/move tracking annotations..." +msgstr "Caricamento annotazioni per copie/spostamenti..." + - #: lib/blame.tcl:508 ++#: lib/blame.tcl:512 +msgid "lines annotated" +msgstr "linee annotate" + - #: lib/blame.tcl:689 ++#: lib/blame.tcl:704 +msgid "Loading original location annotations..." +msgstr "Caricamento annotazioni per posizione originaria..." + - #: lib/blame.tcl:692 ++#: lib/blame.tcl:707 +msgid "Annotation complete." +msgstr "Annotazione completata." + - #: lib/blame.tcl:746 ++#: lib/blame.tcl:737 ++msgid "Busy" ++msgstr "Occupato" ++ ++#: lib/blame.tcl:738 ++msgid "Annotation process is already running." ++msgstr "Il processo di annotazione è già in corso." ++ ++#: lib/blame.tcl:777 ++msgid "Running thorough copy detection..." ++msgstr "Ricerca accurata delle copie in corso..." ++ ++#: lib/blame.tcl:827 +msgid "Loading annotation..." +msgstr "Caricamento annotazioni..." + - #: lib/blame.tcl:802 ++#: lib/blame.tcl:883 +msgid "Author:" +msgstr "Autore:" + - #: lib/blame.tcl:806 ++#: lib/blame.tcl:887 +msgid "Committer:" +msgstr "Revisione creata da:" + - #: lib/blame.tcl:811 ++#: lib/blame.tcl:892 +msgid "Original File:" +msgstr "File originario:" + - #: lib/blame.tcl:925 ++#: lib/blame.tcl:1006 +msgid "Originally By:" +msgstr "In origine da:" + - #: lib/blame.tcl:931 ++#: lib/blame.tcl:1012 +msgid "In File:" +msgstr "Nel file:" + - #: lib/blame.tcl:936 ++#: lib/blame.tcl:1017 +msgid "Copied Or Moved Here By:" +msgstr "Copiato o spostato qui da:" + +#: lib/branch_checkout.tcl:14 lib/branch_checkout.tcl:19 +msgid "Checkout Branch" +msgstr "Attiva ramo" + +#: lib/branch_checkout.tcl:23 +msgid "Checkout" +msgstr "Attiva" + +#: 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:522 lib/choose_font.tcl:43 lib/merge.tcl:171 ++#: lib/checkout_op.tcl:544 lib/choose_font.tcl:43 lib/merge.tcl:171 +#: lib/option.tcl:103 lib/remote_branch_delete.tcl:42 lib/transport.tcl:97 +msgid "Cancel" +msgstr "Annulla" + +#: lib/branch_checkout.tcl:32 lib/browser.tcl:287 +msgid "Revision" +msgstr "Revisione" + - #: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:242 ++#: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:244 +msgid "Options" +msgstr "Opzioni" + +#: lib/branch_checkout.tcl:39 lib/branch_create.tcl:92 +msgid "Fetch Tracking Branch" +msgstr "Recupera duplicato locale di ramo remoto" + +#: lib/branch_checkout.tcl:44 +msgid "Detach From Local Branch" +msgstr "Stacca da ramo locale" + +#: lib/branch_create.tcl:22 +msgid "Create Branch" +msgstr "Crea ramo" + +#: lib/branch_create.tcl:27 +msgid "Create New Branch" +msgstr "Crea nuovo ramo" + +#: lib/branch_create.tcl:31 lib/choose_repository.tcl:371 +msgid "Create" +msgstr "Crea" + +#: lib/branch_create.tcl:40 +msgid "Branch Name" +msgstr "Nome del ramo" + +#: lib/branch_create.tcl:43 +msgid "Name:" +msgstr "Nome:" + +#: lib/branch_create.tcl:58 +msgid "Match Tracking Branch Name" +msgstr "Appaia nome del duplicato locale di ramo remoto" + +#: lib/branch_create.tcl:66 +msgid "Starting Revision" +msgstr "Revisione iniziale" + +#: lib/branch_create.tcl:72 +msgid "Update Existing Branch:" +msgstr "Aggiorna ramo esistente:" + +#: lib/branch_create.tcl:75 +msgid "No" +msgstr "No" + +#: lib/branch_create.tcl:80 +msgid "Fast Forward Only" +msgstr "Solo fast forward" + - #: lib/branch_create.tcl:85 lib/checkout_op.tcl:514 ++#: lib/branch_create.tcl:85 lib/checkout_op.tcl:536 +msgid "Reset" +msgstr "Ripristina" + +#: lib/branch_create.tcl:97 +msgid "Checkout After Creation" +msgstr "Attiva dopo la creazione" + +#: lib/branch_create.tcl:131 +msgid "Please select a tracking branch." +msgstr "Scegliere un duplicato locale di ramo remoto" + +#: lib/branch_create.tcl:140 +#, tcl-format +msgid "Tracking branch %s is not a branch in the remote repository." +msgstr "" +"Il duplicato locale del ramo remoto %s non è un ramo nell'archivio remoto." + +#: lib/branch_create.tcl:153 lib/branch_rename.tcl:86 +msgid "Please supply a branch name." +msgstr "Inserire un nome per il ramo." + +#: lib/branch_create.tcl:164 lib/branch_rename.tcl:106 +#, tcl-format +msgid "'%s' is not an acceptable branch name." +msgstr "'%s' non è utilizzabile come nome di ramo." + +#: lib/branch_delete.tcl:15 +msgid "Delete Branch" +msgstr "Elimina ramo" + +#: lib/branch_delete.tcl:20 +msgid "Delete Local Branch" +msgstr "Elimina ramo locale" + +#: lib/branch_delete.tcl:37 +msgid "Local Branches" +msgstr "Rami locali" + +#: lib/branch_delete.tcl:52 +msgid "Delete Only If Merged Into" +msgstr "Cancella solo se fuso con un altro ramo" + +#: lib/branch_delete.tcl:54 +msgid "Always (Do not perform merge test.)" +msgstr "Sempre (Non effettuare verifiche di fusione)." + +#: lib/branch_delete.tcl:103 +#, tcl-format +msgid "The following branches are not completely merged into %s:" +msgstr "I rami seguenti non sono stati fusi completamente in %s:" + +#: lib/branch_delete.tcl:115 +msgid "" +"Recovering deleted branches is difficult. \n" +"\n" +" Delete the selected branches?" +msgstr "" +"Ricomporre rami cancellati può essere complicato. \n" +"\n" +" Eliminare i rami selezionati?" + +#: lib/branch_delete.tcl:141 +#, tcl-format +msgid "" +"Failed to delete branches:\n" +"%s" +msgstr "" +"Impossibile cancellare i rami:\n" +"%s" + +#: lib/branch_rename.tcl:14 lib/branch_rename.tcl:22 +msgid "Rename Branch" +msgstr "Rinomina ramo" + +#: lib/branch_rename.tcl:26 +msgid "Rename" +msgstr "Rinomina" + +#: lib/branch_rename.tcl:36 +msgid "Branch:" +msgstr "Ramo:" + +#: lib/branch_rename.tcl:39 +msgid "New Name:" +msgstr "Nuovo Nome:" + +#: lib/branch_rename.tcl:75 +msgid "Please select a branch to rename." +msgstr "Scegliere un ramo da rinominare." + - #: lib/branch_rename.tcl:96 lib/checkout_op.tcl:179 ++#: lib/branch_rename.tcl:96 lib/checkout_op.tcl:201 +#, tcl-format +msgid "Branch '%s' already exists." +msgstr "Il ramo '%s' esiste già." + +#: lib/branch_rename.tcl:117 +#, tcl-format +msgid "Failed to rename '%s'." +msgstr "Impossibile rinominare '%s'." + +#: lib/browser.tcl:17 +msgid "Starting..." +msgstr "Avvio in corso..." + +#: lib/browser.tcl:26 +msgid "File Browser" +msgstr "File browser" + +#: lib/browser.tcl:126 lib/browser.tcl:143 +#, tcl-format +msgid "Loading %s..." +msgstr "Caricamento %s..." + +#: lib/browser.tcl:187 +msgid "[Up To Parent]" +msgstr "[Directory superiore]" + +#: lib/browser.tcl:267 lib/browser.tcl:273 +msgid "Browse Branch Files" +msgstr "Esplora i file del ramo" + +#: lib/browser.tcl:278 lib/choose_repository.tcl:387 - #: lib/choose_repository.tcl:474 lib/choose_repository.tcl:484 - #: lib/choose_repository.tcl:987 ++#: lib/choose_repository.tcl:472 lib/choose_repository.tcl:482 ++#: lib/choose_repository.tcl:985 +msgid "Browse" +msgstr "Esplora" + - #: lib/checkout_op.tcl:79 ++#: lib/checkout_op.tcl:84 +#, tcl-format +msgid "Fetching %s from %s" +msgstr "Recupero %s da %s" + - #: lib/checkout_op.tcl:127 ++#: lib/checkout_op.tcl:132 +#, tcl-format +msgid "fatal: Cannot resolve %s" +msgstr "errore grave: impossibile risolvere %s" + - #: lib/checkout_op.tcl:140 lib/console.tcl:81 lib/database.tcl:31 ++#: lib/checkout_op.tcl:145 lib/console.tcl:81 lib/database.tcl:31 +msgid "Close" +msgstr "Chiudi" + - #: lib/checkout_op.tcl:169 ++#: lib/checkout_op.tcl:174 +#, tcl-format +msgid "Branch '%s' does not exist." +msgstr "Il ramo '%s' non esiste." + - #: lib/checkout_op.tcl:206 ++#: lib/checkout_op.tcl:193 ++#, tcl-format ++msgid "Failed to configure simplified git-pull for '%s'." ++msgstr "Impossibile configurare git-pull semplificato per '%s'." ++ ++#: lib/checkout_op.tcl:228 +#, tcl-format +msgid "" +"Branch '%s' already exists.\n" +"\n" +"It cannot fast-forward to %s.\n" +"A merge is required." +msgstr "" +"Il ramo '%s' esiste già.\n" +"\n" +"Non può effettuare un 'fast-forward' a %s.\n" +"E' necessaria una fusione." + - #: lib/checkout_op.tcl:220 ++#: lib/checkout_op.tcl:242 +#, tcl-format +msgid "Merge strategy '%s' not supported." +msgstr "La strategia di fusione '%s' non è supportata." + - #: lib/checkout_op.tcl:239 ++#: lib/checkout_op.tcl:261 +#, tcl-format +msgid "Failed to update '%s'." +msgstr "Impossibile aggiornare '%s'." + - #: lib/checkout_op.tcl:251 ++#: lib/checkout_op.tcl:273 +msgid "Staging area (index) is already locked." +msgstr "" +"L'area di preparazione per una nuova revisione (indice) è già bloccata." + - #: lib/checkout_op.tcl:266 ++#: lib/checkout_op.tcl:288 +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 "" +"L'ultimo stato analizzato non corrisponde allo stato dell'archivio.\n" +"\n" +"Un altro programma Git ha modificato questo archivio dall'ultima analisi. " +"Bisogna effettuare una nuova analisi prima di poter cambiare il ramo " +"attuale.\n" +"\n" +"La nuova analisi comincerà ora.\n" + - #: lib/checkout_op.tcl:322 ++#: lib/checkout_op.tcl:344 +#, tcl-format +msgid "Updating working directory to '%s'..." +msgstr "Aggiornamento della directory di lavoro a '%s' in corso..." + - #: lib/checkout_op.tcl:323 ++#: lib/checkout_op.tcl:345 +msgid "files checked out" +msgstr "file presenti nella directory di lavoro" + - #: lib/checkout_op.tcl:353 ++#: lib/checkout_op.tcl:375 +#, tcl-format +msgid "Aborted checkout of '%s' (file level merging is required)." +msgstr "Attivazione di '%s' fallita (richiesta una fusione a livello file)." + - #: lib/checkout_op.tcl:354 ++#: lib/checkout_op.tcl:376 +msgid "File level merge required." +msgstr "E' richiesta una fusione a livello file." + - #: lib/checkout_op.tcl:358 ++#: lib/checkout_op.tcl:380 +#, tcl-format +msgid "Staying on branch '%s'." +msgstr "Si rimarrà sul ramo '%s'." + - #: lib/checkout_op.tcl:429 ++#: lib/checkout_op.tcl:451 +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 "" +"Non si è più su un ramo locale\n" +"\n" +"Se si vuole rimanere su un ramo, crearne uno ora a partire da 'Questa " +"revisione attiva staccata'." + - #: lib/checkout_op.tcl:446 lib/checkout_op.tcl:450 ++#: lib/checkout_op.tcl:468 lib/checkout_op.tcl:472 +#, tcl-format +msgid "Checked out '%s'." +msgstr "Attivazione di '%s' completata." + - #: lib/checkout_op.tcl:478 ++#: lib/checkout_op.tcl:500 +#, tcl-format +msgid "Resetting '%s' to '%s' will lose the following commits:" +msgstr "" +"Ripristinare '%s' a '%s' comporterà la perdita delle seguenti revisioni:" + - #: lib/checkout_op.tcl:500 ++#: lib/checkout_op.tcl:522 +msgid "Recovering lost commits may not be easy." +msgstr "Ricomporre le revisioni perdute potrebbe non essere semplice." + - #: lib/checkout_op.tcl:505 ++#: lib/checkout_op.tcl:527 +#, tcl-format +msgid "Reset '%s'?" +msgstr "Ripristinare '%s'?" + - #: lib/checkout_op.tcl:510 lib/merge.tcl:163 ++#: lib/checkout_op.tcl:532 lib/merge.tcl:163 +msgid "Visualize" +msgstr "Visualizza" + - #: lib/checkout_op.tcl:578 ++#: lib/checkout_op.tcl:600 +#, 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 "" +"Impossibile preparare il ramo attuale.\n" +"\n" +"Questa directory di lavoro è stata convertita solo parzialmente. I file sono " +"stati aggiornati correttamente, ma l'aggiornamento di un file di Git ha " +"prodotto degli errori.\n" +"\n" +"Questo non sarebbe dovuto succedere. %s ora terminerà senza altre azioni." + +#: lib/choose_font.tcl:39 +msgid "Select" +msgstr "Seleziona" + +#: lib/choose_font.tcl:53 +msgid "Font Family" +msgstr "Famiglia di caratteri" + +#: lib/choose_font.tcl:74 +msgid "Font Size" +msgstr "Dimensione caratteri" + +#: lib/choose_font.tcl:91 +msgid "Font Example" +msgstr "Esempio caratteri" + +#: lib/choose_font.tcl:103 +msgid "" +"This is example text.\n" +"If you like this text, it can be your font." +msgstr "" +"Questo è un testo d'esempio.\n" +"Se ti piace questo testo, scegli questo carattere." + +#: lib/choose_repository.tcl:28 +msgid "Git Gui" +msgstr "Git Gui" + +#: lib/choose_repository.tcl:81 lib/choose_repository.tcl:376 +msgid "Create New Repository" +msgstr "Crea nuovo archivio" + +#: lib/choose_repository.tcl:87 +msgid "New..." +msgstr "Nuovo..." + - #: lib/choose_repository.tcl:94 lib/choose_repository.tcl:460 ++#: lib/choose_repository.tcl:94 lib/choose_repository.tcl:458 +msgid "Clone Existing Repository" +msgstr "Clona archivio esistente" + +#: lib/choose_repository.tcl:100 +msgid "Clone..." +msgstr "Clona..." + - #: lib/choose_repository.tcl:107 lib/choose_repository.tcl:976 ++#: lib/choose_repository.tcl:107 lib/choose_repository.tcl:974 +msgid "Open Existing Repository" +msgstr "Apri archivio esistente" + +#: lib/choose_repository.tcl:113 +msgid "Open..." +msgstr "Apri..." + +#: lib/choose_repository.tcl:126 +msgid "Recent Repositories" +msgstr "Archivi recenti" + +#: lib/choose_repository.tcl:132 +msgid "Open Recent Repository:" +msgstr "Apri archivio recente:" + +#: lib/choose_repository.tcl:296 lib/choose_repository.tcl:303 +#: lib/choose_repository.tcl:310 +#, tcl-format +msgid "Failed to create repository %s:" +msgstr "Impossibile creare l'archivio %s:" + - #: lib/choose_repository.tcl:381 lib/choose_repository.tcl:478 ++#: lib/choose_repository.tcl:381 lib/choose_repository.tcl:476 +msgid "Directory:" +msgstr "Directory:" + - #: lib/choose_repository.tcl:412 lib/choose_repository.tcl:537 - #: lib/choose_repository.tcl:1011 ++#: lib/choose_repository.tcl:410 lib/choose_repository.tcl:535 ++#: lib/choose_repository.tcl:1007 +msgid "Git Repository" +msgstr "Archivio Git" + - #: lib/choose_repository.tcl:437 ++#: lib/choose_repository.tcl:435 +#, tcl-format +msgid "Directory %s already exists." +msgstr "La directory %s esiste già." + - #: lib/choose_repository.tcl:441 ++#: lib/choose_repository.tcl:439 +#, tcl-format +msgid "File %s already exists." +msgstr "Il file %s esiste già." + - #: lib/choose_repository.tcl:455 ++#: lib/choose_repository.tcl:453 +msgid "Clone" +msgstr "Clona" + - #: lib/choose_repository.tcl:468 ++#: lib/choose_repository.tcl:466 +msgid "URL:" +msgstr "URL:" + - #: lib/choose_repository.tcl:489 ++#: lib/choose_repository.tcl:487 +msgid "Clone Type:" +msgstr "Tipo di clone:" + - #: lib/choose_repository.tcl:495 ++#: lib/choose_repository.tcl:493 +msgid "Standard (Fast, Semi-Redundant, Hardlinks)" +msgstr "Standard (veloce, semi-ridondante, con hardlink)" + - #: lib/choose_repository.tcl:501 ++#: lib/choose_repository.tcl:499 +msgid "Full Copy (Slower, Redundant Backup)" +msgstr "Copia completa (più lento, backup ridondante)" + - #: lib/choose_repository.tcl:507 ++#: lib/choose_repository.tcl:505 +msgid "Shared (Fastest, Not Recommended, No Backup)" +msgstr "Shared (il più veloce, non raccomandato, nessun backup)" + - #: lib/choose_repository.tcl:543 lib/choose_repository.tcl:590 - #: lib/choose_repository.tcl:736 lib/choose_repository.tcl:806 - #: lib/choose_repository.tcl:1017 lib/choose_repository.tcl:1025 ++#: lib/choose_repository.tcl:541 lib/choose_repository.tcl:588 ++#: lib/choose_repository.tcl:734 lib/choose_repository.tcl:804 ++#: lib/choose_repository.tcl:1013 lib/choose_repository.tcl:1021 +#, tcl-format +msgid "Not a Git repository: %s" +msgstr "%s non è un archivio Git." + - #: lib/choose_repository.tcl:579 ++#: lib/choose_repository.tcl:577 +msgid "Standard only available for local repository." +msgstr "Standard è disponibile solo per archivi locali." + - #: lib/choose_repository.tcl:583 ++#: lib/choose_repository.tcl:581 +msgid "Shared only available for local repository." +msgstr "Shared è disponibile solo per archivi locali." + - #: lib/choose_repository.tcl:604 ++#: lib/choose_repository.tcl:602 +#, tcl-format +msgid "Location %s already exists." +msgstr "Il file/directory %s esiste già." + - #: lib/choose_repository.tcl:615 ++#: lib/choose_repository.tcl:613 +msgid "Failed to configure origin" +msgstr "Impossibile configurare origin" + - #: lib/choose_repository.tcl:627 ++#: lib/choose_repository.tcl:625 +msgid "Counting objects" +msgstr "Calcolo oggetti" + - #: lib/choose_repository.tcl:628 ++#: lib/choose_repository.tcl:626 +msgid "buckets" +msgstr "" + - #: lib/choose_repository.tcl:652 ++#: lib/choose_repository.tcl:650 +#, tcl-format +msgid "Unable to copy objects/info/alternates: %s" +msgstr "Impossibile copiare oggetti/info/alternate: %s" + - #: lib/choose_repository.tcl:688 ++#: lib/choose_repository.tcl:686 +#, tcl-format +msgid "Nothing to clone from %s." +msgstr "Niente da clonare da %s." + - #: lib/choose_repository.tcl:690 lib/choose_repository.tcl:904 - #: lib/choose_repository.tcl:916 ++#: lib/choose_repository.tcl:688 lib/choose_repository.tcl:902 ++#: lib/choose_repository.tcl:914 +msgid "The 'master' branch has not been initialized." +msgstr "Il ramo 'master' non è stato inizializzato." + - #: lib/choose_repository.tcl:703 ++#: lib/choose_repository.tcl:701 +msgid "Hardlinks are unavailable. Falling back to copying." +msgstr "Impossibile utilizzare gli hardlink. Si ricorrerà alla copia." + - #: lib/choose_repository.tcl:715 ++#: lib/choose_repository.tcl:713 +#, tcl-format +msgid "Cloning from %s" +msgstr "Clonazione da %s" + - #: lib/choose_repository.tcl:746 ++#: lib/choose_repository.tcl:744 +msgid "Copying objects" +msgstr "Copia degli oggetti" + - #: lib/choose_repository.tcl:747 ++#: lib/choose_repository.tcl:745 +msgid "KiB" +msgstr "KiB" + - #: lib/choose_repository.tcl:771 ++#: lib/choose_repository.tcl:769 +#, tcl-format +msgid "Unable to copy object: %s" +msgstr "Impossibile copiare oggetto: %s" + - #: lib/choose_repository.tcl:781 ++#: lib/choose_repository.tcl:779 +msgid "Linking objects" +msgstr "Collegamento oggetti" + - #: lib/choose_repository.tcl:782 ++#: lib/choose_repository.tcl:780 +msgid "objects" +msgstr "oggetti" + - #: lib/choose_repository.tcl:790 ++#: lib/choose_repository.tcl:788 +#, tcl-format +msgid "Unable to hardlink object: %s" +msgstr "Hardlink impossibile sull'oggetto: %s" + - #: lib/choose_repository.tcl:845 ++#: lib/choose_repository.tcl:843 +msgid "Cannot fetch branches and objects. See console output for details." +msgstr "" +"Impossibile recuperare rami e oggetti. Controllare i dettagli forniti dalla " +"console." + - #: lib/choose_repository.tcl:856 ++#: lib/choose_repository.tcl:854 +msgid "Cannot fetch tags. See console output for details." +msgstr "" +"Impossibile recuperare le etichette. Controllare i dettagli forniti dalla " +"console." + - #: lib/choose_repository.tcl:880 ++#: lib/choose_repository.tcl:878 +msgid "Cannot determine HEAD. See console output for details." +msgstr "" +"Impossibile determinare HEAD. Controllare i dettagli forniti dalla console." + - #: lib/choose_repository.tcl:889 ++#: lib/choose_repository.tcl:887 +#, tcl-format +msgid "Unable to cleanup %s" +msgstr "Impossibile ripulire %s" + - #: lib/choose_repository.tcl:895 ++#: lib/choose_repository.tcl:893 +msgid "Clone failed." +msgstr "Clonazione non riuscita." + - #: lib/choose_repository.tcl:902 ++#: lib/choose_repository.tcl:900 +msgid "No default branch obtained." +msgstr "Non è stato trovato un ramo predefinito." + - #: lib/choose_repository.tcl:913 ++#: lib/choose_repository.tcl:911 +#, tcl-format +msgid "Cannot resolve %s as a commit." +msgstr "Impossibile risolvere %s come una revisione." + - #: lib/choose_repository.tcl:925 ++#: lib/choose_repository.tcl:923 +msgid "Creating working directory" +msgstr "Creazione directory di lavoro" + - #: lib/choose_repository.tcl:926 lib/index.tcl:65 lib/index.tcl:127 ++#: lib/choose_repository.tcl:924 lib/index.tcl:65 lib/index.tcl:127 +#: lib/index.tcl:193 +msgid "files" +msgstr "file" + - #: lib/choose_repository.tcl:955 ++#: lib/choose_repository.tcl:953 +msgid "Initial file checkout failed." +msgstr "Attivazione iniziale non riuscita." + - #: lib/choose_repository.tcl:971 ++#: lib/choose_repository.tcl:969 +msgid "Open" +msgstr "Apri" + - #: lib/choose_repository.tcl:981 ++#: lib/choose_repository.tcl:979 +msgid "Repository:" +msgstr "Archivio:" + - #: lib/choose_repository.tcl:1031 ++#: lib/choose_repository.tcl:1027 +#, tcl-format +msgid "Failed to open repository %s:" +msgstr "Impossibile accedere all'archivio %s:" + +#: lib/choose_rev.tcl:53 +msgid "This Detached Checkout" +msgstr "Questa revisione attiva staccata" + +#: lib/choose_rev.tcl:60 +msgid "Revision Expression:" +msgstr "Espressione di revisione:" + +#: lib/choose_rev.tcl:74 +msgid "Local Branch" +msgstr "Ramo locale" + +#: lib/choose_rev.tcl:79 +msgid "Tracking Branch" +msgstr "Duplicato locale di ramo remoto" + +#: lib/choose_rev.tcl:84 lib/choose_rev.tcl:538 +msgid "Tag" +msgstr "Etichetta" + +#: lib/choose_rev.tcl:317 +#, tcl-format +msgid "Invalid revision: %s" +msgstr "Revisione non valida: %s" + +#: lib/choose_rev.tcl:338 +msgid "No revision selected." +msgstr "Nessuna revisione selezionata." + +#: lib/choose_rev.tcl:346 +msgid "Revision expression is empty." +msgstr "L'espressione di revisione è vuota." + +#: lib/choose_rev.tcl:531 +msgid "Updated" +msgstr "Aggiornato" + +#: lib/choose_rev.tcl:559 +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 "" +"Non c'è niente da correggere.\n" +"\n" +"Stai per creare la revisione iniziale. Non esiste una revisione precedente " +"da correggere.\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 "" +"Non è possibile effettuare una correzione durante una fusione.\n" +"\n" +"In questo momento si sta effettuando una fusione che non è stata del tutto " +"completata. Non puoi correggere la revisione precedente a meno che prima tu " +"non interrompa l'operazione di fusione in corso.\n" + +#: lib/commit.tcl:49 +msgid "Error loading commit data for amend:" +msgstr "Errore durante il caricamento dei dati della revisione da correggere:" + +#: lib/commit.tcl:76 +msgid "Unable to obtain your identity:" +msgstr "Impossibile ottenere la tua identità:" + +#: lib/commit.tcl:81 +msgid "Invalid GIT_COMMITTER_IDENT:" +msgstr "GIT_COMMITTER_IDENT non valida:" + +#: lib/commit.tcl:133 +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 "" +"L'ultimo stato analizzato non corrisponde allo stato dell'archivio.\n" +"\n" +"Un altro programma Git ha modificato questo archivio dall'ultima analisi. " +"Bisogna effettuare una nuova analisi prima di poter creare una nuova " +"revisione.\n" +"\n" +"La nuova analisi comincerà ora.\n" + +#: lib/commit.tcl:154 +#, 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 "" +"Non è possibile creare una revisione con file non sottoposti a fusione.\n" +"\n" +"Il file %s presenta dei conflitti. Devi risolverli e preparare il file per " +"creare una nuova revisione prima di effettuare questa azione.\n" + +#: lib/commit.tcl:162 +#, tcl-format +msgid "" +"Unknown file state %s detected.\n" +"\n" +"File %s cannot be committed by this program.\n" +msgstr "" +"Stato di file %s sconosciuto.\n" +"\n" +"Questo programma non può creare una revisione contenente il file %s.\n" + +#: lib/commit.tcl:170 +msgid "" +"No changes to commit.\n" +"\n" +"You must stage at least 1 file before you can commit.\n" +msgstr "" +"Nessuna modifica per la nuova revisione.\n" +"\n" +"Devi preparare per una nuova revisione almeno 1 file prima di effettuare " +"questa operazione.\n" + +#: lib/commit.tcl:183 +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 "" +"Bisogna fornire un messaggio di revisione.\n" +"\n" +"Un buon messaggio di revisione ha il seguente formato:\n" +"\n" +"- Prima linea: descrivi in una frase ciò che hai fatto.\n" +"- Seconda linea: vuota.\n" +"- Terza linea: spiega a cosa serve la tua modifica.\n" + +#: lib/commit.tcl:207 +#, tcl-format +msgid "warning: Tcl does not support encoding '%s'." +msgstr "attenzione: Tcl non supporta la codifica '%s'." + +#: lib/commit.tcl:221 +msgid "Calling pre-commit hook..." +msgstr "Avvio pre-commit hook..." + +#: lib/commit.tcl:236 +msgid "Commit declined by pre-commit hook." +msgstr "Revisione rifiutata dal pre-commit hook." + +#: lib/commit.tcl:259 +msgid "Calling commit-msg hook..." +msgstr "Avvio commit-msg hook..." + +#: lib/commit.tcl:274 +msgid "Commit declined by commit-msg hook." +msgstr "Revisione rifiutata dal commit-msg hook." + +#: lib/commit.tcl:287 +msgid "Committing changes..." +msgstr "Archiviazione modifiche..." + +#: lib/commit.tcl:303 +msgid "write-tree failed:" +msgstr "write-tree non riuscito:" + +#: lib/commit.tcl:304 lib/commit.tcl:348 lib/commit.tcl:368 +msgid "Commit failed." +msgstr "Impossibile creare una nuova revisione." + +#: lib/commit.tcl:321 +#, tcl-format +msgid "Commit %s appears to be corrupt" +msgstr "La revisione %s sembra essere danneggiata" + +#: lib/commit.tcl:326 +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 "" +"Nessuna modifica per la nuova revisione.\n" +"\n" +"Questa revisione non modifica alcun file e non effettua alcuna fusione.\n" +"\n" +"Si procederà subito ad una nuova analisi.\n" + +#: lib/commit.tcl:333 +msgid "No changes to commit." +msgstr "Nessuna modifica per la nuova revisione." + +#: lib/commit.tcl:347 +msgid "commit-tree failed:" +msgstr "commit-tree non riuscito:" + +#: lib/commit.tcl:367 +msgid "update-ref failed:" +msgstr "update-ref non riuscito:" + +#: lib/commit.tcl:454 +#, tcl-format +msgid "Created commit %s: %s" +msgstr "Creata revisione %s: %s" + +#: lib/console.tcl:59 +msgid "Working... please wait..." +msgstr "Elaborazione in corso... attendere..." + +#: lib/console.tcl:186 +msgid "Success" +msgstr "Successo" + +#: lib/console.tcl:200 +msgid "Error: Command Failed" +msgstr "Errore: comando non riuscito" + +#: lib/database.tcl:43 +msgid "Number of loose objects" +msgstr "Numero di oggetti slegati" + +#: lib/database.tcl:44 +msgid "Disk space used by loose objects" +msgstr "Spazio su disco utilizzato da oggetti slegati" + +#: lib/database.tcl:45 +msgid "Number of packed objects" +msgstr "Numero di oggetti impacchettati" + +#: lib/database.tcl:46 +msgid "Number of packs" +msgstr "Numero di pacchetti" + +#: lib/database.tcl:47 +msgid "Disk space used by packed objects" +msgstr "Spazio su disco utilizzato da oggetti impacchettati" + +#: lib/database.tcl:48 +msgid "Packed objects waiting for pruning" +msgstr "Oggetti impacchettati che attendono la potatura" + +#: lib/database.tcl:49 +msgid "Garbage files" +msgstr "File inutili" + +#: lib/database.tcl:72 +msgid "Compressing the object database" +msgstr "Compressione dell'archivio in corso" + +#: lib/database.tcl:83 +msgid "Verifying the object database with fsck-objects" +msgstr "Verifica dell'archivio con fsck-objects in corso" + +#: lib/database.tcl:108 +#, 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 when more than %i loose objects exist.\n" +"\n" +"Compress the database now?" +msgstr "" +"Questo archivio attualmente ha circa %i oggetti slegati.\n" +"\n" +"Per mantenere buone prestazioni si raccomanda di comprimere l'archivio " +"quando sono presenti più di %i oggetti slegati.\n" +"\n" +"Comprimere l'archivio ora?" + +#: lib/date.tcl:25 +#, tcl-format +msgid "Invalid date from Git: %s" +msgstr "Git ha restituito una data non valida: %s" + - #: lib/diff.tcl:42 ++#: lib/diff.tcl:44 +#, 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 "" +"Non sono state trovate differenze.\n" +"\n" +"%s non ha modifiche.\n" +"\n" +"La data di modifica di questo file è stata cambiata da un'altra " +"applicazione, ma il contenuto del file è rimasto invariato.\n" +"\n" +"Si procederà automaticamente ad una nuova analisi per trovare altri file che " +"potrebbero avere lo stesso stato." + - #: lib/diff.tcl:81 ++#: lib/diff.tcl:83 +#, tcl-format +msgid "Loading diff of %s..." +msgstr "Caricamento delle differenze di %s..." + - #: lib/diff.tcl:114 lib/diff.tcl:184 ++#: lib/diff.tcl:116 lib/diff.tcl:190 +#, tcl-format +msgid "Unable to display %s" +msgstr "Impossibile visualizzare %s" + - #: lib/diff.tcl:115 ++#: lib/diff.tcl:117 +msgid "Error loading file:" +msgstr "Errore nel caricamento del file:" + - #: lib/diff.tcl:122 ++#: lib/diff.tcl:124 +msgid "Git Repository (subproject)" +msgstr "Archivio Git (sottoprogetto)" + - #: lib/diff.tcl:134 ++#: lib/diff.tcl:136 +msgid "* Binary file (not showing content)." +msgstr "* File binario (il contenuto non sarà mostrato)." + - #: lib/diff.tcl:185 ++#: lib/diff.tcl:191 +msgid "Error loading diff:" +msgstr "Errore nel caricamento delle differenze:" + - #: lib/diff.tcl:303 ++#: lib/diff.tcl:313 +msgid "Failed to unstage selected hunk." +msgstr "Impossibile rimuovere la sezione scelta dalla nuova revisione." + - #: lib/diff.tcl:310 ++#: lib/diff.tcl:320 +msgid "Failed to stage selected hunk." +msgstr "Impossibile preparare la sezione scelta per una nuova revisione." + ++#: lib/diff.tcl:386 ++msgid "Failed to unstage selected line." ++msgstr "Impossibile rimuovere la riga scelta dalla nuova revisione." ++ ++#: lib/diff.tcl:394 ++msgid "Failed to stage selected line." ++msgstr "Impossibile preparare la riga scelta per una nuova revisione." ++ +#: lib/error.tcl:20 lib/error.tcl:114 +msgid "error" +msgstr "errore" + +#: lib/error.tcl:36 +msgid "warning" +msgstr "attenzione" + +#: lib/error.tcl:94 +msgid "You must correct the above errors before committing." +msgstr "" +"Bisogna correggere gli errori suddetti prima di creare una nuova revisione." + +#: lib/index.tcl:6 +msgid "Unable to unlock the index." +msgstr "Impossibile sbloccare l'accesso all'indice" + +#: lib/index.tcl:15 +msgid "Index Error" +msgstr "Errore nell'indice" + +#: lib/index.tcl:21 +msgid "" +"Updating the Git index failed. A rescan will be automatically started to " +"resynchronize git-gui." +msgstr "" +"Impossibile aggiornare l'indice. Ora sarà avviata una nuova analisi che " +"aggiornerà git-gui." + +#: lib/index.tcl:27 +msgid "Continue" +msgstr "Continua" + +#: lib/index.tcl:31 +msgid "Unlock Index" +msgstr "Sblocca l'accesso all'indice" + +#: lib/index.tcl:282 +#, tcl-format +msgid "Unstaging %s from commit" +msgstr "%s non farà parte della prossima revisione" + +#: lib/index.tcl:313 +msgid "Ready to commit." +msgstr "Pronto per creare una nuova revisione." + +#: lib/index.tcl:326 +#, tcl-format +msgid "Adding %s" +msgstr "Aggiunta di %s in corso" + +#: lib/index.tcl:381 +#, tcl-format +msgid "Revert changes in file %s?" +msgstr "Annullare le modifiche nel file %s?" + +#: lib/index.tcl:383 +#, tcl-format +msgid "Revert changes in these %i files?" +msgstr "Annullare le modifiche in questi %i file?" + +#: lib/index.tcl:391 +msgid "Any unstaged changes will be permanently lost by the revert." +msgstr "" +"Tutte le modifiche non preparate per una nuova revisione saranno perse per " +"sempre." + +#: lib/index.tcl:394 +msgid "Do Nothing" +msgstr "Non fare niente" + +#: 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 "" +"Non posso effettuare fusioni durante una correzione.\n" +"\n" +"Bisogna finire di correggere questa revisione prima di iniziare una " +"qualunque fusione.\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 "" +"L'ultimo stato analizzato non corrisponde allo stato dell'archivio.\n" +"\n" +"Un altro programma Git ha modificato questo archivio dall'ultima analisi." +"Bisogna effettuare una nuova analisi prima di poter effettuare una fusione.\n" +"\n" +"La nuova analisi comincerà ora.\n" + +#: lib/merge.tcl:44 +#, 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 "" +"Sei nel mezzo di una fusione con conflitti.\n" +"\n" +"Il file %s ha dei conflitti.\n" +"\n" +"Bisogna risolvere i conflitti, preparare il file per una nuova revisione ed " +"infine crearla per completare la fusione attuale. Solo a questo punto potrai " +"iniziare un'altra fusione.\n" + +#: lib/merge.tcl:54 +#, 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 "" +"Sei nel mezzo di una modifica.\n" +"\n" +"Il file %s è stato modificato.\n" +"\n" +"Bisogna completare la creazione della revisione attuale prima di iniziare " +"una fusione. In questo modo sarà più facile interrompere una fusione non " +"riuscita, nel caso ce ne fosse bisogno.\n" + +#: lib/merge.tcl:106 +#, tcl-format +msgid "%s of %s" +msgstr "%s di %s" + +#: lib/merge.tcl:119 +#, tcl-format +msgid "Merging %s and %s..." +msgstr "Fusione di %s e %s in corso..." + +#: lib/merge.tcl:130 +msgid "Merge completed successfully." +msgstr "Fusione completata con successo." + +#: lib/merge.tcl:132 +msgid "Merge failed. Conflict resolution is required." +msgstr "Fusione non riuscita. Bisogna risolvere i conflitti." + +#: lib/merge.tcl:157 +#, tcl-format +msgid "Merge Into %s" +msgstr "Fusione in %s" + +#: lib/merge.tcl:176 +msgid "Revision To Merge" +msgstr "Revisione da fondere" + +#: lib/merge.tcl:211 +msgid "" +"Cannot abort while amending.\n" +"\n" +"You must finish amending this commit.\n" +msgstr "" +"Interruzione impossibile durante una correzione.\n" +"\n" +"Bisogna finire di correggere questa revisione.\n" + +#: lib/merge.tcl:221 +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 "" +"Interrompere fusione?\n" +"\n" +"L'interruzione della fusione attuale causerà la perdita di *TUTTE* le " +"modifiche non ancora presenti nell'archivio.\n" +"\n" +"Continuare con l'interruzione della fusione attuale?" + +#: lib/merge.tcl:227 +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 "" +"Ripristinare la revisione corrente e annullare le modifiche?\n" +"\n" +"L'annullamento delle modifiche causerà la perdita di *TUTTE* le modifiche " +"non ancora presenti nell'archivio.\n" +"\n" +"Continuare con l'annullamento delle modifiche attuali?" + +#: lib/merge.tcl:238 +msgid "Aborting" +msgstr "Interruzione" + +#: lib/merge.tcl:238 +msgid "files reset" +msgstr "ripristino file" + - #: lib/merge.tcl:265 ++#: lib/merge.tcl:266 +msgid "Abort failed." +msgstr "Interruzione non riuscita." + - #: lib/merge.tcl:267 ++#: lib/merge.tcl:268 +msgid "Abort completed. Ready." +msgstr "Interruzione completata. Pronto." + +#: lib/option.tcl:95 +msgid "Restore Defaults" +msgstr "Ripristina valori predefiniti" + +#: lib/option.tcl:99 +msgid "Save" +msgstr "Salva" + +#: lib/option.tcl:109 +#, tcl-format +msgid "%s Repository" +msgstr "Archivio di %s" + +#: lib/option.tcl:110 +msgid "Global (All Repositories)" +msgstr "Tutti gli archivi" + +#: lib/option.tcl:116 +msgid "User Name" +msgstr "Nome utente" + +#: lib/option.tcl:117 +msgid "Email Address" +msgstr "Indirizzo Email" + +#: lib/option.tcl:119 +msgid "Summarize Merge Commits" +msgstr "Riepilogo nelle revisioni di fusione" + +#: lib/option.tcl:120 +msgid "Merge Verbosity" +msgstr "Prolissità della fusione" + +#: lib/option.tcl:121 +msgid "Show Diffstat After Merge" +msgstr "Mostra statistiche delle differenze dopo la fusione" + +#: lib/option.tcl:123 +msgid "Trust File Modification Timestamps" +msgstr "Fidati delle date di modifica dei file" + +#: lib/option.tcl:124 +msgid "Prune Tracking Branches During Fetch" +msgstr "" +"Effettua potatura dei duplicati locali di rami remoti durante il recupero" + +#: lib/option.tcl:125 +msgid "Match Tracking Branches" +msgstr "Appaia duplicati locali di rami remoti" + +#: lib/option.tcl:126 ++msgid "Blame Copy Only On Changed Files" ++msgstr "Ricerca copie solo nei file modificati" ++ ++#: lib/option.tcl:127 ++msgid "Minimum Letters To Blame Copy On" ++msgstr "Numero minimo di lettere che attivano la ricerca delle copie" ++ ++#: lib/option.tcl:128 +msgid "Number of Diff Context Lines" +msgstr "Numero di linee di contesto nelle differenze" + - #: lib/option.tcl:127 ++#: lib/option.tcl:129 +msgid "Commit Message Text Width" +msgstr "Larghezza del messaggio di revisione" + - #: lib/option.tcl:128 ++#: lib/option.tcl:130 +msgid "New Branch Name Template" +msgstr "Modello per il nome di un nuovo ramo" + - #: lib/option.tcl:192 ++#: lib/option.tcl:194 +msgid "Spelling Dictionary:" +msgstr "Lingua dizionario:" + - #: lib/option.tcl:216 ++#: lib/option.tcl:218 +msgid "Change Font" +msgstr "Cambia caratteri" + - #: lib/option.tcl:220 ++#: lib/option.tcl:222 +#, tcl-format +msgid "Choose %s" +msgstr "Scegli %s" + - #: lib/option.tcl:226 ++#: lib/option.tcl:228 +msgid "pt." +msgstr "pt." + - #: lib/option.tcl:240 ++#: lib/option.tcl:242 +msgid "Preferences" +msgstr "Preferenze" + - #: lib/option.tcl:275 ++#: lib/option.tcl:277 +msgid "Failed to completely save options:" +msgstr "Impossibile salvare completamente le opzioni:" + ++#: lib/remote.tcl:165 ++msgid "Prune from" ++msgstr "Effettua potatura da" ++ ++#: lib/remote.tcl:170 ++msgid "Fetch from" ++msgstr "Recupera da" ++ ++#: lib/remote.tcl:213 ++msgid "Push to" ++msgstr "Propaga verso" ++ +#: lib/remote_branch_delete.tcl:29 lib/remote_branch_delete.tcl:34 +msgid "Delete Remote Branch" +msgstr "Cancella ramo remoto" + +#: lib/remote_branch_delete.tcl:47 +msgid "From Repository" +msgstr "Da archivio" + +#: lib/remote_branch_delete.tcl:50 lib/transport.tcl:123 +msgid "Remote:" +msgstr "Remoto:" + +#: lib/remote_branch_delete.tcl:66 lib/transport.tcl:138 +msgid "Arbitrary URL:" +msgstr "URL specifico:" + +#: lib/remote_branch_delete.tcl:84 +msgid "Branches" +msgstr "Rami" + +#: lib/remote_branch_delete.tcl:109 +msgid "Delete Only If" +msgstr "Elimina solo se" + +#: lib/remote_branch_delete.tcl:111 +msgid "Merged Into:" +msgstr "Fuso in:" + +#: lib/remote_branch_delete.tcl:119 +msgid "Always (Do not perform merge checks)" +msgstr "Sempre (non verificare le fusioni)" + +#: lib/remote_branch_delete.tcl:152 +msgid "A branch is required for 'Merged Into'." +msgstr "Si richiede un ramo per 'Fuso in'." + +#: lib/remote_branch_delete.tcl:184 +#, tcl-format +msgid "" +"The following branches are not completely merged into %s:\n" +"\n" +" - %s" +msgstr "" +"I rami seguenti non sono stati fusi completamente in %s:\n" +"\n" +" - %s" + +#: 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 "" +"Impossibile verificare una o più fusioni: mancano le revisioni necessarie. " +"Prova prima a recuperarle da %s." + +#: lib/remote_branch_delete.tcl:207 +msgid "Please select one or more branches to delete." +msgstr "Scegliere uno o più rami da cancellare." + +#: lib/remote_branch_delete.tcl:216 +msgid "" +"Recovering deleted branches is difficult.\n" +"\n" +"Delete the selected branches?" +msgstr "" +"Ricomporre rami cancellati è difficile.\n" +"\n" +"Cancellare i rami selezionati?" + +#: lib/remote_branch_delete.tcl:226 +#, tcl-format +msgid "Deleting branches from %s" +msgstr "Cancellazione rami da %s" + +#: lib/remote_branch_delete.tcl:286 +msgid "No repository selected." +msgstr "Nessun archivio selezionato." + +#: lib/remote_branch_delete.tcl:291 +#, tcl-format +msgid "Scanning %s..." +msgstr "Analisi in corso %s..." + - #: lib/remote.tcl:165 - msgid "Prune from" - msgstr "Effettua potatura da" - - #: lib/remote.tcl:170 - msgid "Fetch from" - msgstr "Recupera da" - - #: lib/remote.tcl:213 - msgid "Push to" - msgstr "Propaga verso" - +#: lib/shortcut.tcl:20 lib/shortcut.tcl:61 +msgid "Cannot write shortcut:" +msgstr "Impossibile scrivere shortcut:" + +#: lib/shortcut.tcl:136 +msgid "Cannot write icon:" +msgstr "Impossibile scrivere icona:" + +#: lib/spellcheck.tcl:57 +msgid "Unsupported spell checker" +msgstr "Correttore ortografico non supportato" + +#: lib/spellcheck.tcl:65 +msgid "Spell checking is unavailable" +msgstr "Correzione ortografica indisponibile" + +#: lib/spellcheck.tcl:68 +msgid "Invalid spell checking configuration" +msgstr "La configurazione del correttore ortografico non è valida" + +#: lib/spellcheck.tcl:70 +#, tcl-format +msgid "Reverting dictionary to %s." +msgstr "Il dizionario è stato reimpostato su %s." + +#: lib/spellcheck.tcl:73 +msgid "Spell checker silently failed on startup" +msgstr "Il correttore ortografico ha riportato un errore all'avvio" + +#: lib/spellcheck.tcl:80 +msgid "Unrecognized spell checker" - msgstr "Correttore ortografico sconosciuto" ++msgstr "Correttore ortografico non riconosciuto" + - #: lib/spellcheck.tcl:180 ++#: lib/spellcheck.tcl:186 +msgid "No Suggestions" +msgstr "Nessun suggerimento" + - #: lib/spellcheck.tcl:381 ++#: lib/spellcheck.tcl:387 +msgid "Unexpected EOF from spell checker" +msgstr "Il correttore ortografico ha mandato un EOF inaspettato" + - #: lib/spellcheck.tcl:385 ++#: lib/spellcheck.tcl:391 +msgid "Spell Checker Failed" +msgstr "Errore nel correttore ortografico" + +#: lib/status_bar.tcl:83 +#, tcl-format +msgid "%s ... %*i of %*i %s (%3i%%)" +msgstr "%1$s ... %6$s: %2$*i di %4$*i (%7$3i%%)" + +#: lib/transport.tcl:6 +#, tcl-format +msgid "fetch %s" +msgstr "recupera da %s" + +#: lib/transport.tcl:7 +#, tcl-format +msgid "Fetching new changes from %s" +msgstr "Recupero nuove modifiche da %s" + +#: lib/transport.tcl:18 +#, tcl-format +msgid "remote prune %s" +msgstr "potatura remota di %s" + +#: lib/transport.tcl:19 +#, tcl-format +msgid "Pruning tracking branches deleted from %s" +msgstr "Effettua potatura dei duplicati locali di rami remoti cancellati da %s" + +#: lib/transport.tcl:25 lib/transport.tcl:71 +#, tcl-format +msgid "push %s" +msgstr "propaga verso %s" + +#: lib/transport.tcl:26 +#, tcl-format +msgid "Pushing changes to %s" +msgstr "Propagazione modifiche a %s" + +#: lib/transport.tcl:72 +#, tcl-format +msgid "Pushing %s %s to %s" +msgstr "Propagazione %s %s a %s" + +#: lib/transport.tcl:89 +msgid "Push Branches" +msgstr "Propaga rami" + +#: lib/transport.tcl:103 +msgid "Source Branches" +msgstr "Rami di origine" + +#: lib/transport.tcl:120 +msgid "Destination Repository" +msgstr "Archivio di destinazione" + +#: lib/transport.tcl:158 +msgid "Transfer Options" +msgstr "Opzioni di trasferimento" + +#: lib/transport.tcl:160 +msgid "Force overwrite existing branch (may discard changes)" +msgstr "Sovrascrivi ramo esistente (alcune modifiche potrebbero essere perse)" + +#: lib/transport.tcl:164 +msgid "Use thin pack (for slow network connections)" +msgstr "Utilizza 'thin pack' (per connessioni lente)" + +#: lib/transport.tcl:168 +msgid "Include tags" +msgstr "Includi etichette" diff --cc git-gui/po/ja.po index 28e6d6246,000000000..5db44a4ad mode 100644,000000..100644 --- a/git-gui/po/ja.po +++ b/git-gui/po/ja.po @@@ -1,1969 -1,0 +1,2004 @@@ +# Translation of git-gui to Japanese +# Copyright (C) 2007 Shawn Pearce +# This file is distributed under the same license as the git-gui package. +# しらいし ななこ , 2007. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: git-gui\n" +"Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2008-03-14 07:18+0100\n" - "PO-Revision-Date: 2008-03-15 20:12+0900\n" - "Last-Translator: しらいし ななこ \n" ++"POT-Creation-Date: 2008-08-02 14:45-0700\n" ++"PO-Revision-Date: 2008-08-03 17:00+0900\n" ++"Last-Translator: しらいし ななこ \n" +"Language-Team: Japanese\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + - #: git-gui.sh:41 git-gui.sh:634 git-gui.sh:648 git-gui.sh:661 git-gui.sh:744 - #: git-gui.sh:763 ++#: git-gui.sh:41 git-gui.sh:688 git-gui.sh:702 git-gui.sh:715 git-gui.sh:798 ++#: git-gui.sh:817 +msgid "git-gui: fatal error" +msgstr "git-gui: 致命的なエラー" + - #: git-gui.sh:593 ++#: git-gui.sh:644 +#, tcl-format +msgid "Invalid font specified in %s:" +msgstr "%s に無効なフォントが指定されています:" + - #: git-gui.sh:620 ++#: git-gui.sh:674 +msgid "Main Font" +msgstr "主フォント" + - #: git-gui.sh:621 ++#: git-gui.sh:675 +msgid "Diff/Console Font" +msgstr "diff/コンソール・フォント" + - #: git-gui.sh:635 ++#: git-gui.sh:689 +msgid "Cannot find git in PATH." +msgstr "PATH 中に git が見つかりません" + - #: git-gui.sh:662 ++#: git-gui.sh:716 +msgid "Cannot parse Git version string:" +msgstr "Git バージョン名が理解できません:" + - #: git-gui.sh:680 ++#: git-gui.sh:734 +#, tcl-format +msgid "" +"Git version cannot be determined.\n" +"\n" +"%s claims it is version '%s'.\n" +"\n" +"%s requires at least Git 1.5.0 or later.\n" +"\n" +"Assume '%s' is version 1.5.0?\n" +msgstr "" +"Git のバージョンが確認できません。\n" +"\n" +"%s はバージョン '%s' とのことです。\n" +"\n" +"%s は最低でも 1.5.0 かそれ以降の Git が必要です\n" +"\n" +"'%s' はバージョン 1.5.0 と思って良いですか?\n" + - #: git-gui.sh:918 ++#: git-gui.sh:972 +msgid "Git directory not found:" +msgstr "Git ディレクトリが見つかりません:" + - #: git-gui.sh:925 ++#: git-gui.sh:979 +msgid "Cannot move to top of working directory:" +msgstr "作業ディレクトリの最上位に移動できません" + - #: git-gui.sh:932 ++#: git-gui.sh:986 +msgid "Cannot use funny .git directory:" +msgstr "変な .git ディレクトリは使えません" + - #: git-gui.sh:937 ++#: git-gui.sh:991 +msgid "No working directory" +msgstr "作業ディレクトリがありません" + - #: git-gui.sh:1084 lib/checkout_op.tcl:283 ++#: git-gui.sh:1138 lib/checkout_op.tcl:305 +msgid "Refreshing file status..." +msgstr "ファイル状態を更新しています…" + - #: git-gui.sh:1149 ++#: git-gui.sh:1194 +msgid "Scanning for modified files ..." +msgstr "変更されたファイルをスキャンしています…" + - #: git-gui.sh:1324 lib/browser.tcl:246 ++#: git-gui.sh:1369 lib/browser.tcl:246 +msgid "Ready." +msgstr "準備完了" + - #: git-gui.sh:1590 ++#: git-gui.sh:1635 +msgid "Unmodified" +msgstr "変更無し" + - #: git-gui.sh:1592 ++#: git-gui.sh:1637 +msgid "Modified, not staged" +msgstr "変更あり、コミット未予定" + - #: git-gui.sh:1593 git-gui.sh:1598 ++#: git-gui.sh:1638 git-gui.sh:1643 +msgid "Staged for commit" +msgstr "コミット予定済" + - #: git-gui.sh:1594 git-gui.sh:1599 ++#: git-gui.sh:1639 git-gui.sh:1644 +msgid "Portions staged for commit" +msgstr "部分的にコミット予定済" + - #: git-gui.sh:1595 git-gui.sh:1600 ++#: git-gui.sh:1640 git-gui.sh:1645 +msgid "Staged for commit, missing" +msgstr "コミット予定済、ファイル無し" + - #: git-gui.sh:1597 ++#: git-gui.sh:1642 +msgid "Untracked, not staged" +msgstr "管理外、コミット未予定" + - #: git-gui.sh:1602 ++#: git-gui.sh:1647 +msgid "Missing" +msgstr "ファイル無し" + - #: git-gui.sh:1603 ++#: git-gui.sh:1648 +msgid "Staged for removal" +msgstr "削除予定済" + - #: git-gui.sh:1604 ++#: git-gui.sh:1649 +msgid "Staged for removal, still present" +msgstr "削除予定済、ファイル未削除" + - #: git-gui.sh:1606 git-gui.sh:1607 git-gui.sh:1608 git-gui.sh:1609 ++#: git-gui.sh:1651 git-gui.sh:1652 git-gui.sh:1653 git-gui.sh:1654 +msgid "Requires merge resolution" +msgstr "要マージ解決" + - #: git-gui.sh:1644 ++#: git-gui.sh:1689 +msgid "Starting gitk... please wait..." +msgstr "gitk を起動中…お待ち下さい…" + - #: git-gui.sh:1653 - #, tcl-format - msgid "" - "Unable to start gitk:\n" - "\n" - "%s does not exist" - msgstr "" - "gitk を起動できません:\n" - "\n" - "%s がありません" ++#: git-gui.sh:1698 ++msgid "Couldn't find gitk in PATH" ++msgstr "PATH 中に gitk が見つかりません" + - #: git-gui.sh:1860 lib/choose_repository.tcl:36 ++#: git-gui.sh:1948 lib/choose_repository.tcl:36 +msgid "Repository" +msgstr "リポジトリ" + - #: git-gui.sh:1861 ++#: git-gui.sh:1949 +msgid "Edit" +msgstr "編集" + - #: git-gui.sh:1863 lib/choose_rev.tcl:561 ++#: git-gui.sh:1951 lib/choose_rev.tcl:561 +msgid "Branch" +msgstr "ブランチ" + - #: git-gui.sh:1866 lib/choose_rev.tcl:548 ++#: git-gui.sh:1954 lib/choose_rev.tcl:548 +msgid "Commit@@noun" +msgstr "コミット" + - #: git-gui.sh:1869 lib/merge.tcl:120 lib/merge.tcl:149 lib/merge.tcl:167 ++#: git-gui.sh:1957 lib/merge.tcl:120 lib/merge.tcl:149 lib/merge.tcl:167 +msgid "Merge" +msgstr "マージ" + - #: git-gui.sh:1870 lib/choose_rev.tcl:557 ++#: git-gui.sh:1958 lib/choose_rev.tcl:557 +msgid "Remote" +msgstr "リモート" + - #: git-gui.sh:1879 ++#: git-gui.sh:1967 +msgid "Browse Current Branch's Files" +msgstr "現在のブランチのファイルを見る" + - #: git-gui.sh:1883 ++#: git-gui.sh:1971 +msgid "Browse Branch Files..." +msgstr "ブランチのファイルを見る…" + - #: git-gui.sh:1888 ++#: git-gui.sh:1976 +msgid "Visualize Current Branch's History" +msgstr "現在のブランチの履歴を見る" + - #: git-gui.sh:1892 ++#: git-gui.sh:1980 +msgid "Visualize All Branch History" +msgstr "全てのブランチの履歴を見る" + - #: git-gui.sh:1899 ++#: git-gui.sh:1987 +#, tcl-format +msgid "Browse %s's Files" +msgstr "ブランチ %s のファイルを見る" + - #: git-gui.sh:1901 ++#: git-gui.sh:1989 +#, tcl-format +msgid "Visualize %s's History" +msgstr "ブランチ %s の履歴を見る" + - #: git-gui.sh:1906 lib/database.tcl:27 lib/database.tcl:67 ++#: git-gui.sh:1994 lib/database.tcl:27 lib/database.tcl:67 +msgid "Database Statistics" +msgstr "データベース統計" + - #: git-gui.sh:1909 lib/database.tcl:34 ++#: git-gui.sh:1997 lib/database.tcl:34 +msgid "Compress Database" +msgstr "データベース圧縮" + - #: git-gui.sh:1912 ++#: git-gui.sh:2000 +msgid "Verify Database" +msgstr "データベース検証" + - #: git-gui.sh:1919 git-gui.sh:1923 git-gui.sh:1927 lib/shortcut.tcl:7 ++#: git-gui.sh:2007 git-gui.sh:2011 git-gui.sh:2015 lib/shortcut.tcl:7 +#: lib/shortcut.tcl:39 lib/shortcut.tcl:71 +msgid "Create Desktop Icon" +msgstr "デスクトップ・アイコンを作る" + - #: git-gui.sh:1932 lib/choose_repository.tcl:177 lib/choose_repository.tcl:185 ++#: git-gui.sh:2023 lib/choose_repository.tcl:177 lib/choose_repository.tcl:185 +msgid "Quit" +msgstr "終了" + - #: git-gui.sh:1939 ++#: git-gui.sh:2031 +msgid "Undo" +msgstr "元に戻す" + - #: git-gui.sh:1942 ++#: git-gui.sh:2034 +msgid "Redo" +msgstr "やり直し" + - #: git-gui.sh:1946 git-gui.sh:2443 ++#: git-gui.sh:2038 git-gui.sh:2545 +msgid "Cut" +msgstr "切り取り" + - #: git-gui.sh:1949 git-gui.sh:2446 git-gui.sh:2520 git-gui.sh:2614 ++#: git-gui.sh:2041 git-gui.sh:2548 git-gui.sh:2622 git-gui.sh:2715 +#: lib/console.tcl:69 +msgid "Copy" +msgstr "コピー" + - #: git-gui.sh:1952 git-gui.sh:2449 ++#: git-gui.sh:2044 git-gui.sh:2551 +msgid "Paste" +msgstr "貼り付け" + - #: git-gui.sh:1955 git-gui.sh:2452 lib/branch_delete.tcl:26 ++#: git-gui.sh:2047 git-gui.sh:2554 lib/branch_delete.tcl:26 +#: lib/remote_branch_delete.tcl:38 +msgid "Delete" +msgstr "削除" + - #: git-gui.sh:1959 git-gui.sh:2456 git-gui.sh:2618 lib/console.tcl:71 ++#: git-gui.sh:2051 git-gui.sh:2558 git-gui.sh:2719 lib/console.tcl:71 +msgid "Select All" +msgstr "全て選択" + - #: git-gui.sh:1968 ++#: git-gui.sh:2060 +msgid "Create..." +msgstr "作成…" + - #: git-gui.sh:1974 ++#: git-gui.sh:2066 +msgid "Checkout..." +msgstr "チェックアウト" + - #: git-gui.sh:1980 ++#: git-gui.sh:2072 +msgid "Rename..." +msgstr "名前変更…" + - #: git-gui.sh:1985 git-gui.sh:2085 ++#: git-gui.sh:2077 git-gui.sh:2187 +msgid "Delete..." +msgstr "削除…" + - #: git-gui.sh:1990 ++#: git-gui.sh:2082 +msgid "Reset..." +msgstr "リセット…" + - #: git-gui.sh:2002 git-gui.sh:2389 ++#: git-gui.sh:2094 git-gui.sh:2491 +msgid "New Commit" +msgstr "新規コミット" + - #: git-gui.sh:2010 git-gui.sh:2396 ++#: git-gui.sh:2102 git-gui.sh:2498 +msgid "Amend Last Commit" +msgstr "最新コミットを訂正" + - #: git-gui.sh:2019 git-gui.sh:2356 lib/remote_branch_delete.tcl:99 ++#: git-gui.sh:2111 git-gui.sh:2458 lib/remote_branch_delete.tcl:99 +msgid "Rescan" +msgstr "再スキャン" + - #: git-gui.sh:2025 ++#: git-gui.sh:2117 +msgid "Stage To Commit" +msgstr "コミット予定する" + - #: git-gui.sh:2031 ++#: git-gui.sh:2123 +msgid "Stage Changed Files To Commit" +msgstr "変更されたファイルをコミット予定" + - #: git-gui.sh:2037 ++#: git-gui.sh:2129 +msgid "Unstage From Commit" +msgstr "コミットから降ろす" + - #: git-gui.sh:2042 lib/index.tcl:395 ++#: git-gui.sh:2134 lib/index.tcl:395 +msgid "Revert Changes" +msgstr "変更を元に戻す" + - #: git-gui.sh:2049 git-gui.sh:2368 git-gui.sh:2467 ++#: git-gui.sh:2141 git-gui.sh:2702 ++msgid "Show Less Context" ++msgstr "文脈を少なく" ++ ++#: git-gui.sh:2145 git-gui.sh:2706 ++msgid "Show More Context" ++msgstr "文脈を多く" ++ ++#: git-gui.sh:2151 git-gui.sh:2470 git-gui.sh:2569 +msgid "Sign Off" +msgstr "署名" + - #: git-gui.sh:2053 git-gui.sh:2372 ++#: git-gui.sh:2155 git-gui.sh:2474 +msgid "Commit@@verb" +msgstr "コミット" + - #: git-gui.sh:2064 ++#: git-gui.sh:2166 +msgid "Local Merge..." +msgstr "ローカル・マージ…" + - #: git-gui.sh:2069 ++#: git-gui.sh:2171 +msgid "Abort Merge..." +msgstr "マージ中止…" + - #: git-gui.sh:2081 ++#: git-gui.sh:2183 +msgid "Push..." +msgstr "プッシュ…" + - #: git-gui.sh:2092 lib/choose_repository.tcl:41 - msgid "Apple" - msgstr "りんご" - - #: git-gui.sh:2095 git-gui.sh:2117 lib/about.tcl:14 ++#: git-gui.sh:2197 git-gui.sh:2219 lib/about.tcl:14 +#: lib/choose_repository.tcl:44 lib/choose_repository.tcl:50 +#, tcl-format +msgid "About %s" +msgstr "%s について" + - #: git-gui.sh:2099 ++#: git-gui.sh:2201 +msgid "Preferences..." +msgstr "設定…" + - #: git-gui.sh:2107 git-gui.sh:2639 ++#: git-gui.sh:2209 git-gui.sh:2740 +msgid "Options..." +msgstr "オプション…" + - #: git-gui.sh:2113 lib/choose_repository.tcl:47 ++#: git-gui.sh:2215 lib/choose_repository.tcl:47 +msgid "Help" +msgstr "ヘルプ" + - #: git-gui.sh:2154 ++#: git-gui.sh:2256 +msgid "Online Documentation" +msgstr "オンライン・ドキュメント" + - #: git-gui.sh:2238 ++#: git-gui.sh:2340 +#, tcl-format +msgid "fatal: cannot stat path %s: No such file or directory" +msgstr "" +"致命的: パス %s が stat できません。そのようなファイルやディレクトリはありま" +"せん" + - #: git-gui.sh:2271 ++#: git-gui.sh:2373 +msgid "Current Branch:" +msgstr "現在のブランチ" + - #: git-gui.sh:2292 ++#: git-gui.sh:2394 +msgid "Staged Changes (Will Commit)" +msgstr "ステージングされた(コミット予定済の)変更" + - #: git-gui.sh:2312 ++#: git-gui.sh:2414 +msgid "Unstaged Changes" +msgstr "コミット予定に入っていない変更" + - #: git-gui.sh:2362 ++#: git-gui.sh:2464 +msgid "Stage Changed" +msgstr "変更をコミット予定に入れる" + - #: git-gui.sh:2378 lib/transport.tcl:93 lib/transport.tcl:182 ++#: git-gui.sh:2480 lib/transport.tcl:93 lib/transport.tcl:182 +msgid "Push" +msgstr "プッシュ" + - #: git-gui.sh:2408 ++#: git-gui.sh:2510 +msgid "Initial Commit Message:" +msgstr "最初のコミットメッセージ:" + - #: git-gui.sh:2409 ++#: git-gui.sh:2511 +msgid "Amended Commit Message:" +msgstr "訂正したコミットメッセージ:" + - #: git-gui.sh:2410 ++#: git-gui.sh:2512 +msgid "Amended Initial Commit Message:" +msgstr "訂正した最初のコミットメッセージ:" + - #: git-gui.sh:2411 ++#: git-gui.sh:2513 +msgid "Amended Merge Commit Message:" +msgstr "訂正したマージコミットメッセージ:" + - #: git-gui.sh:2412 ++#: git-gui.sh:2514 +msgid "Merge Commit Message:" +msgstr "マージコミットメッセージ:" + - #: git-gui.sh:2413 ++#: git-gui.sh:2515 +msgid "Commit Message:" +msgstr "コミットメッセージ:" + - #: git-gui.sh:2459 git-gui.sh:2622 lib/console.tcl:73 ++#: git-gui.sh:2561 git-gui.sh:2723 lib/console.tcl:73 +msgid "Copy All" +msgstr "全てコピー" + - #: git-gui.sh:2483 lib/blame.tcl:107 ++#: git-gui.sh:2585 lib/blame.tcl:100 +msgid "File:" +msgstr "ファイル:" + - #: git-gui.sh:2589 ++#: git-gui.sh:2691 +msgid "Apply/Reverse Hunk" +msgstr "パッチを適用/取り消す" + - #: git-gui.sh:2595 - msgid "Show Less Context" - msgstr "文脈を少なく" - - #: git-gui.sh:2602 - msgid "Show More Context" - msgstr "文脈を多く" ++#: git-gui.sh:2696 ++msgid "Apply/Reverse Line" ++msgstr "パッチ行を適用/取り消す" + - #: git-gui.sh:2610 ++#: git-gui.sh:2711 +msgid "Refresh" +msgstr "再読み込み" + - #: git-gui.sh:2631 ++#: git-gui.sh:2732 +msgid "Decrease Font Size" +msgstr "フォントを小さく" + - #: git-gui.sh:2635 ++#: git-gui.sh:2736 +msgid "Increase Font Size" +msgstr "フォントを大きく" + - #: git-gui.sh:2646 ++#: git-gui.sh:2747 +msgid "Unstage Hunk From Commit" +msgstr "パッチをコミット予定から外す" + - #: git-gui.sh:2648 ++#: git-gui.sh:2748 ++msgid "Unstage Line From Commit" ++msgstr "コミット予定から行を外す" ++ ++#: git-gui.sh:2750 +msgid "Stage Hunk For Commit" +msgstr "パッチをコミット予定に加える" + - #: git-gui.sh:2667 ++#: git-gui.sh:2751 ++msgid "Stage Line For Commit" ++msgstr "パッチ行をコミット予定に加える" ++ ++#: git-gui.sh:2771 +msgid "Initializing..." +msgstr "初期化しています…" + - #: git-gui.sh:2762 ++#: git-gui.sh:2876 +#, tcl-format +msgid "" +"Possible environment issues exist.\n" +"\n" +"The following environment variables are probably\n" +"going to be ignored by any Git subprocess run\n" +"by %s:\n" +"\n" +msgstr "" +"環境に問題がある可能性があります\n" +"\n" +"以下の環境変数は %s が起動する Git サブプロセスによって無視されるでしょう:\n" +"\n" + - #: git-gui.sh:2792 ++#: git-gui.sh:2906 +msgid "" +"\n" +"This is due to a known issue with the\n" +"Tcl binary distributed by Cygwin." +msgstr "" +"\n" +"これは Cygwin で配布されている Tcl バイナリに\n" +"関しての既知の問題によります" + - #: git-gui.sh:2797 ++#: git-gui.sh:2911 +#, tcl-format +msgid "" +"\n" +"\n" +"A good replacement for %s\n" +"is placing values for the user.name and\n" +"user.email settings into your personal\n" +"~/.gitconfig file.\n" +msgstr "" +"\n" +"\n" +"個人的な ~/.gitconfig ファイル内で user.name と user.email の値を設定\n" +"するのが、%s の良い代用となります\n" + +#: lib/about.tcl:26 +msgid "git-gui - a graphical user interface for Git." +msgstr "Git のグラフィカルUI git-gui" + - #: lib/blame.tcl:77 ++#: lib/blame.tcl:70 +msgid "File Viewer" +msgstr "ファイルピューワ" + - #: lib/blame.tcl:81 ++#: lib/blame.tcl:74 +msgid "Commit:" +msgstr "コミット:" + - #: lib/blame.tcl:264 ++#: lib/blame.tcl:257 +msgid "Copy Commit" +msgstr "コミットをコピー" + - #: lib/blame.tcl:384 ++#: lib/blame.tcl:260 ++msgid "Do Full Copy Detection" ++msgstr "コピー検知" ++ ++#: lib/blame.tcl:388 +#, tcl-format +msgid "Reading %s..." +msgstr "%s を読んでいます…" + - #: lib/blame.tcl:488 ++#: lib/blame.tcl:492 +msgid "Loading copy/move tracking annotations..." +msgstr "コピー・移動追跡データを読んでいます…" + - #: lib/blame.tcl:508 ++#: lib/blame.tcl:512 +msgid "lines annotated" +msgstr "行を注釈しました" + - #: lib/blame.tcl:689 ++#: lib/blame.tcl:704 +msgid "Loading original location annotations..." +msgstr "元位置行の注釈データを読んでいます…" + - #: lib/blame.tcl:692 ++#: lib/blame.tcl:707 +msgid "Annotation complete." +msgstr "注釈完了しました" + - #: lib/blame.tcl:746 ++#: lib/blame.tcl:737 ++msgid "Busy" ++msgstr "実行中" ++ ++#: lib/blame.tcl:738 ++msgid "Annotation process is already running." ++msgstr "すでに blame プロセスを実行中です。" ++ ++#: lib/blame.tcl:777 ++msgid "Running thorough copy detection..." ++msgstr "コピー検知を実行中…" ++ ++#: lib/blame.tcl:827 +msgid "Loading annotation..." +msgstr "注釈を読み込んでいます…" + - #: lib/blame.tcl:802 ++#: lib/blame.tcl:883 +msgid "Author:" +msgstr "作者:" + - #: lib/blame.tcl:806 ++#: lib/blame.tcl:887 +msgid "Committer:" +msgstr "コミット者:" + - #: lib/blame.tcl:811 ++#: lib/blame.tcl:892 +msgid "Original File:" +msgstr "元ファイル" + - #: lib/blame.tcl:925 ++#: lib/blame.tcl:1006 +msgid "Originally By:" +msgstr "原作者:" + - #: lib/blame.tcl:931 ++#: lib/blame.tcl:1012 +msgid "In File:" +msgstr "ファイル:" + - #: lib/blame.tcl:936 ++#: lib/blame.tcl:1017 +msgid "Copied Or Moved Here By:" +msgstr "複写・移動者:" + +#: lib/branch_checkout.tcl:14 lib/branch_checkout.tcl:19 +msgid "Checkout Branch" +msgstr "ブランチをチェックアウト" + +#: lib/branch_checkout.tcl:23 +msgid "Checkout" +msgstr "チェックアウト" + +#: 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:522 lib/choose_font.tcl:43 lib/merge.tcl:171 ++#: lib/checkout_op.tcl:544 lib/choose_font.tcl:43 lib/merge.tcl:171 +#: lib/option.tcl:103 lib/remote_branch_delete.tcl:42 lib/transport.tcl:97 +msgid "Cancel" +msgstr "中止" + +#: lib/branch_checkout.tcl:32 lib/browser.tcl:287 +msgid "Revision" +msgstr "リビジョン" + - #: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:242 ++#: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:244 +msgid "Options" +msgstr "オプション" + +#: lib/branch_checkout.tcl:39 lib/branch_create.tcl:92 +msgid "Fetch Tracking Branch" +msgstr "トラッキング・ブランチをフェッチ" + +#: lib/branch_checkout.tcl:44 +msgid "Detach From Local Branch" +msgstr "ローカル・ブランチから削除" + +#: lib/branch_create.tcl:22 +msgid "Create Branch" +msgstr "ブランチを作成" + +#: lib/branch_create.tcl:27 +msgid "Create New Branch" +msgstr "ブランチを新規作成" + +#: lib/branch_create.tcl:31 lib/choose_repository.tcl:371 +msgid "Create" +msgstr "作成" + +#: lib/branch_create.tcl:40 +msgid "Branch Name" +msgstr "ブランチ名" + +#: lib/branch_create.tcl:43 +msgid "Name:" +msgstr "名前:" + +#: lib/branch_create.tcl:58 +msgid "Match Tracking Branch Name" +msgstr "トラッキング・ブランチ名を合わせる" + +#: lib/branch_create.tcl:66 +msgid "Starting Revision" +msgstr "初期リビジョン" + +#: lib/branch_create.tcl:72 +msgid "Update Existing Branch:" +msgstr "既存のブランチを更新:" + +#: lib/branch_create.tcl:75 +msgid "No" +msgstr "いいえ" + +#: lib/branch_create.tcl:80 +msgid "Fast Forward Only" +msgstr "早送りのみ" + - #: lib/branch_create.tcl:85 lib/checkout_op.tcl:514 ++#: lib/branch_create.tcl:85 lib/checkout_op.tcl:536 +msgid "Reset" +msgstr "リセット" + +#: lib/branch_create.tcl:97 +msgid "Checkout After Creation" +msgstr "作成してすぐチェックアウト" + +#: lib/branch_create.tcl:131 +msgid "Please select a tracking branch." +msgstr "トラッキング・ブランチを選択して下さい。" + +#: lib/branch_create.tcl:140 +#, tcl-format +msgid "Tracking branch %s is not a branch in the remote repository." +msgstr "トラッキング・ブランチ %s は遠隔リポジトリのブランチではありません。" + +#: lib/branch_create.tcl:153 lib/branch_rename.tcl:86 +msgid "Please supply a branch name." +msgstr "ブランチ名を指定して下さい。" + +#: lib/branch_create.tcl:164 lib/branch_rename.tcl:106 +#, tcl-format +msgid "'%s' is not an acceptable branch name." +msgstr "'%s' はブランチ名に使えません。" + +#: lib/branch_delete.tcl:15 +msgid "Delete Branch" +msgstr "ブランチ削除" + +#: lib/branch_delete.tcl:20 +msgid "Delete Local Branch" +msgstr "ローカル・ブランチを削除" + +#: lib/branch_delete.tcl:37 +msgid "Local Branches" +msgstr "ローカル・ブランチ" + +#: lib/branch_delete.tcl:52 +msgid "Delete Only If Merged Into" +msgstr "マージ済みの時のみ削除" + +#: lib/branch_delete.tcl:54 +msgid "Always (Do not perform merge test.)" +msgstr "無条件(マージテストしない)" + +#: lib/branch_delete.tcl:103 +#, tcl-format +msgid "The following branches are not completely merged into %s:" +msgstr "以下のブランチは %s に完全にマージされていません:" + +#: lib/branch_delete.tcl:115 +msgid "" +"Recovering deleted branches is difficult. \n" +"\n" +" Delete the selected branches?" +msgstr "" +"ブランチを削除すると元に戻すのは困難です。 \n" +"\n" +" 選択したブランチを削除しますか?" + +#: lib/branch_delete.tcl:141 +#, tcl-format +msgid "" +"Failed to delete branches:\n" +"%s" +msgstr "" +"以下のブランチを削除できません:\n" +"%s" + +#: lib/branch_rename.tcl:14 lib/branch_rename.tcl:22 +msgid "Rename Branch" +msgstr "ブランチの名前変更" + +#: lib/branch_rename.tcl:26 +msgid "Rename" +msgstr "名前変更" + +#: lib/branch_rename.tcl:36 +msgid "Branch:" +msgstr "ブランチ:" + +#: lib/branch_rename.tcl:39 +msgid "New Name:" +msgstr "新しい名前:" + +#: lib/branch_rename.tcl:75 +msgid "Please select a branch to rename." +msgstr "名前を変更するブランチを選んで下さい。" + - #: lib/branch_rename.tcl:96 lib/checkout_op.tcl:179 ++#: lib/branch_rename.tcl:96 lib/checkout_op.tcl:201 +#, tcl-format +msgid "Branch '%s' already exists." +msgstr "'%s'というブランチは既に存在します。" + +#: lib/branch_rename.tcl:117 +#, tcl-format +msgid "Failed to rename '%s'." +msgstr "'%s'の名前変更に失敗しました。" + +#: lib/browser.tcl:17 +msgid "Starting..." +msgstr "起動中…" + +#: lib/browser.tcl:26 +msgid "File Browser" +msgstr "ファイル・ブラウザ" + +#: lib/browser.tcl:126 lib/browser.tcl:143 +#, tcl-format +msgid "Loading %s..." +msgstr "%s をロード中…" + +#: lib/browser.tcl:187 +msgid "[Up To Parent]" +msgstr "[上位フォルダへ]" + +#: lib/browser.tcl:267 lib/browser.tcl:273 +msgid "Browse Branch Files" +msgstr "現在のブランチのファイルを見る" + +#: lib/browser.tcl:278 lib/choose_repository.tcl:387 - #: lib/choose_repository.tcl:474 lib/choose_repository.tcl:484 - #: lib/choose_repository.tcl:987 ++#: lib/choose_repository.tcl:472 lib/choose_repository.tcl:482 ++#: lib/choose_repository.tcl:985 +msgid "Browse" +msgstr "ブラウズ" + - #: lib/checkout_op.tcl:79 ++#: lib/checkout_op.tcl:84 +#, tcl-format +msgid "Fetching %s from %s" +msgstr "%s から %s をフェッチしています" + - #: lib/checkout_op.tcl:127 ++#: lib/checkout_op.tcl:132 +#, tcl-format +msgid "fatal: Cannot resolve %s" +msgstr "致命的エラー: %s を解決できません" + - #: lib/checkout_op.tcl:140 lib/console.tcl:81 lib/database.tcl:31 ++#: lib/checkout_op.tcl:145 lib/console.tcl:81 lib/database.tcl:31 +msgid "Close" +msgstr "閉じる" + - #: lib/checkout_op.tcl:169 ++#: lib/checkout_op.tcl:174 +#, tcl-format +msgid "Branch '%s' does not exist." +msgstr "ブランチ'%s'は存在しません。" + - #: lib/checkout_op.tcl:206 ++#: lib/checkout_op.tcl:193 ++#, tcl-format ++msgid "Failed to configure simplified git-pull for '%s'." ++msgstr "'%s' に簡易 git-pull を設定できませんでした" ++ ++#: lib/checkout_op.tcl:228 +#, tcl-format +msgid "" +"Branch '%s' already exists.\n" +"\n" +"It cannot fast-forward to %s.\n" +"A merge is required." +msgstr "" +"ブランチ '%s' は既に存在します。\n" +"\n" +"%s に早送りできません。\n" +"マージが必要です。" + - #: lib/checkout_op.tcl:220 ++#: lib/checkout_op.tcl:242 +#, tcl-format +msgid "Merge strategy '%s' not supported." +msgstr "'%s' マージ戦略はサポートされていません。" + - #: lib/checkout_op.tcl:239 ++#: lib/checkout_op.tcl:261 +#, tcl-format +msgid "Failed to update '%s'." +msgstr "'%s' の更新に失敗しました。" + - #: lib/checkout_op.tcl:251 ++#: lib/checkout_op.tcl:273 +msgid "Staging area (index) is already locked." +msgstr "インデックスは既にロックされています。" + - #: lib/checkout_op.tcl:266 ++#: lib/checkout_op.tcl:288 +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 "" +"最後にスキャンした状態はリポジトリの状態と合致しません。\n" +"\n" +"最後にスキャンして以後、別の Git プログラムがリポジトリを変更しています。現在" +"のブランチを変更する前に、再スキャンが必要です。\n" +"\n" +"自動的に再スキャンを開始します。\n" + - #: lib/checkout_op.tcl:322 ++#: lib/checkout_op.tcl:344 +#, tcl-format +msgid "Updating working directory to '%s'..." +msgstr "作業ディレクトリを '%s' に更新しています…" + - #: lib/checkout_op.tcl:323 ++#: lib/checkout_op.tcl:345 +msgid "files checked out" +msgstr "チェックアウトされたファイル" + - #: lib/checkout_op.tcl:353 ++#: lib/checkout_op.tcl:375 +#, tcl-format +msgid "Aborted checkout of '%s' (file level merging is required)." +msgstr "'%s' のチェックアウトを中止しました(ファイル毎のマージが必要です)。" + - #: lib/checkout_op.tcl:354 ++#: lib/checkout_op.tcl:376 +msgid "File level merge required." +msgstr "ファイル毎のマージが必要です。" + - #: lib/checkout_op.tcl:358 ++#: lib/checkout_op.tcl:380 +#, tcl-format +msgid "Staying on branch '%s'." +msgstr "ブランチ '%s' に滞まります。" + - #: lib/checkout_op.tcl:429 ++#: lib/checkout_op.tcl:451 +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 "" +"ローカル・ブランチから離れます。\n" +"\n" +"ブランチ上に滞まりたいときは、この「分離されたチェックアウト」から新規ブラン" +"チを開始してください。" + - #: lib/checkout_op.tcl:446 lib/checkout_op.tcl:450 ++#: lib/checkout_op.tcl:468 lib/checkout_op.tcl:472 +#, tcl-format +msgid "Checked out '%s'." +msgstr "'%s' をチェックアウトしました" + - #: lib/checkout_op.tcl:478 ++#: lib/checkout_op.tcl:500 +#, tcl-format +msgid "Resetting '%s' to '%s' will lose the following commits:" +msgstr "'%s' を '%s' にリセットすると、以下のコミットが失なわれます:" + - #: lib/checkout_op.tcl:500 ++#: lib/checkout_op.tcl:522 +msgid "Recovering lost commits may not be easy." +msgstr "失なわれたコミットを回復するのは簡単ではありません。" + - #: lib/checkout_op.tcl:505 ++#: lib/checkout_op.tcl:527 +#, tcl-format +msgid "Reset '%s'?" +msgstr "'%s' をリセットしますか?" + - #: lib/checkout_op.tcl:510 lib/merge.tcl:163 ++#: lib/checkout_op.tcl:532 lib/merge.tcl:163 +msgid "Visualize" +msgstr "可視化" + - #: lib/checkout_op.tcl:578 ++#: lib/checkout_op.tcl:600 +#, 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 "" +"現在のブランチを設定できません。\n" +"\n" +"作業ディレクトリは部分的にしか切り替わっていません。ファイルの更新には成功し" +"ましたが、 Git の内部データを更新できませんでした。\n" +"起こるはずのないエラーです。あきらめて %s を終了します。" + +#: lib/choose_font.tcl:39 +msgid "Select" +msgstr "選択" + +#: lib/choose_font.tcl:53 +msgid "Font Family" +msgstr "フォント・ファミリー" + +#: lib/choose_font.tcl:74 +msgid "Font Size" +msgstr "フォントの大きさ" + +#: lib/choose_font.tcl:91 +msgid "Font Example" +msgstr "フォント・サンプル" + +#: lib/choose_font.tcl:103 +msgid "" +"This is example text.\n" +"If you like this text, it can be your font." +msgstr "" +"これはサンプル文です。\n" +"このフォントが気に入ればお使いになれます。" + +#: lib/choose_repository.tcl:28 +msgid "Git Gui" +msgstr "Git GUI" + +#: lib/choose_repository.tcl:81 lib/choose_repository.tcl:376 +msgid "Create New Repository" +msgstr "新しいリポジトリを作る" + +#: lib/choose_repository.tcl:87 +msgid "New..." +msgstr "新規…" + - #: lib/choose_repository.tcl:94 lib/choose_repository.tcl:460 ++#: lib/choose_repository.tcl:94 lib/choose_repository.tcl:458 +msgid "Clone Existing Repository" +msgstr "既存リポジトリを複製する" + +#: lib/choose_repository.tcl:100 +msgid "Clone..." +msgstr "複製…" + - #: lib/choose_repository.tcl:107 lib/choose_repository.tcl:976 ++#: lib/choose_repository.tcl:107 lib/choose_repository.tcl:974 +msgid "Open Existing Repository" +msgstr "既存リポジトリを開く" + +#: lib/choose_repository.tcl:113 +msgid "Open..." +msgstr "開く…" + +#: lib/choose_repository.tcl:126 +msgid "Recent Repositories" +msgstr "最近使ったリポジトリ" + +#: lib/choose_repository.tcl:132 +msgid "Open Recent Repository:" +msgstr "最近使ったリポジトリを開く" + +#: lib/choose_repository.tcl:296 lib/choose_repository.tcl:303 +#: lib/choose_repository.tcl:310 +#, tcl-format +msgid "Failed to create repository %s:" +msgstr "リポジトリ %s を作製できません:" + - #: lib/choose_repository.tcl:381 lib/choose_repository.tcl:478 ++#: lib/choose_repository.tcl:381 lib/choose_repository.tcl:476 +msgid "Directory:" +msgstr "ディレクトリ:" + - #: lib/choose_repository.tcl:412 lib/choose_repository.tcl:537 - #: lib/choose_repository.tcl:1011 ++#: lib/choose_repository.tcl:410 lib/choose_repository.tcl:535 ++#: lib/choose_repository.tcl:1007 +msgid "Git Repository" +msgstr "GIT リポジトリ" + - #: lib/choose_repository.tcl:437 ++#: lib/choose_repository.tcl:435 +#, tcl-format +msgid "Directory %s already exists." +msgstr "ディレクトリ '%s' は既に存在します。" + - #: lib/choose_repository.tcl:441 ++#: lib/choose_repository.tcl:439 +#, tcl-format +msgid "File %s already exists." +msgstr "ファイル '%s' は既に存在します。" + - #: lib/choose_repository.tcl:455 ++#: lib/choose_repository.tcl:453 +msgid "Clone" +msgstr "複製" + - #: lib/choose_repository.tcl:468 ++#: lib/choose_repository.tcl:466 +msgid "URL:" +msgstr "URL:" + - #: lib/choose_repository.tcl:489 ++#: lib/choose_repository.tcl:487 +msgid "Clone Type:" +msgstr "複製方式:" + - #: lib/choose_repository.tcl:495 ++#: lib/choose_repository.tcl:493 +msgid "Standard (Fast, Semi-Redundant, Hardlinks)" +msgstr "標準(高速・中冗長度・ハードリンク)" + - #: lib/choose_repository.tcl:501 ++#: lib/choose_repository.tcl:499 +msgid "Full Copy (Slower, Redundant Backup)" +msgstr "全複写(低速・冗長バックアップ)" + - #: lib/choose_repository.tcl:507 ++#: lib/choose_repository.tcl:505 +msgid "Shared (Fastest, Not Recommended, No Backup)" +msgstr "共有(最高速・非推奨・バックアップ無し)" + - #: lib/choose_repository.tcl:543 lib/choose_repository.tcl:590 - #: lib/choose_repository.tcl:736 lib/choose_repository.tcl:806 - #: lib/choose_repository.tcl:1017 lib/choose_repository.tcl:1025 ++#: lib/choose_repository.tcl:541 lib/choose_repository.tcl:588 ++#: lib/choose_repository.tcl:734 lib/choose_repository.tcl:804 ++#: lib/choose_repository.tcl:1013 lib/choose_repository.tcl:1021 +#, tcl-format +msgid "Not a Git repository: %s" +msgstr "Git リポジトリではありません: %s" + - #: lib/choose_repository.tcl:579 ++#: lib/choose_repository.tcl:577 +msgid "Standard only available for local repository." +msgstr "標準方式は同一計算機上のリポジトリにのみ使えます。" + - #: lib/choose_repository.tcl:583 ++#: lib/choose_repository.tcl:581 +msgid "Shared only available for local repository." +msgstr "共有方式は同一計算機上のリポジトリにのみ使えます。" + - #: lib/choose_repository.tcl:604 ++#: lib/choose_repository.tcl:602 +#, tcl-format +msgid "Location %s already exists." +msgstr "'%s' は既に存在します。" + - #: lib/choose_repository.tcl:615 ++#: lib/choose_repository.tcl:613 +msgid "Failed to configure origin" +msgstr "origin を設定できませんでした" + - #: lib/choose_repository.tcl:627 ++#: lib/choose_repository.tcl:625 +msgid "Counting objects" +msgstr "オブジェクトを数えています" + - #: lib/choose_repository.tcl:628 ++#: lib/choose_repository.tcl:626 +msgid "buckets" +msgstr "バケツ" + - #: lib/choose_repository.tcl:652 ++#: lib/choose_repository.tcl:650 +#, tcl-format +msgid "Unable to copy objects/info/alternates: %s" +msgstr "objects/info/alternates を複写できません: %s" + - #: lib/choose_repository.tcl:688 ++#: lib/choose_repository.tcl:686 +#, tcl-format +msgid "Nothing to clone from %s." +msgstr "%s から複製する内容はありません" + - #: lib/choose_repository.tcl:690 lib/choose_repository.tcl:904 - #: lib/choose_repository.tcl:916 ++#: lib/choose_repository.tcl:688 lib/choose_repository.tcl:902 ++#: lib/choose_repository.tcl:914 +msgid "The 'master' branch has not been initialized." +msgstr "'master' ブランチが初期化されていません" + - #: lib/choose_repository.tcl:703 ++#: lib/choose_repository.tcl:701 +msgid "Hardlinks are unavailable. Falling back to copying." +msgstr "ハードリンクが作れないので、コピーします" + - #: lib/choose_repository.tcl:715 ++#: lib/choose_repository.tcl:713 +#, tcl-format +msgid "Cloning from %s" +msgstr "%s から複製しています" + - #: lib/choose_repository.tcl:746 ++#: lib/choose_repository.tcl:744 +msgid "Copying objects" +msgstr "オブジェクトを複写しています" + - #: lib/choose_repository.tcl:747 ++#: lib/choose_repository.tcl:745 +msgid "KiB" +msgstr "KiB" + - #: lib/choose_repository.tcl:771 ++#: lib/choose_repository.tcl:769 +#, tcl-format +msgid "Unable to copy object: %s" +msgstr "オブジェクトを複写できません: %s" + - #: lib/choose_repository.tcl:781 ++#: lib/choose_repository.tcl:779 +msgid "Linking objects" +msgstr "オブジェクトを連結しています" + - #: lib/choose_repository.tcl:782 ++#: lib/choose_repository.tcl:780 +msgid "objects" +msgstr "オブジェクト" + - #: lib/choose_repository.tcl:790 ++#: lib/choose_repository.tcl:788 +#, tcl-format +msgid "Unable to hardlink object: %s" +msgstr "オブジェクトをハードリンクできません: %s" + - #: lib/choose_repository.tcl:845 ++#: lib/choose_repository.tcl:843 +msgid "Cannot fetch branches and objects. See console output for details." +msgstr "ブランチやオブジェクトを取得できません。コンソール出力を見て下さい" + - #: lib/choose_repository.tcl:856 ++#: lib/choose_repository.tcl:854 +msgid "Cannot fetch tags. See console output for details." +msgstr "タグを取得できません。コンソール出力を見て下さい" + - #: lib/choose_repository.tcl:880 ++#: lib/choose_repository.tcl:878 +msgid "Cannot determine HEAD. See console output for details." +msgstr "HEAD を確定できません。コンソール出力を見て下さい" + - #: lib/choose_repository.tcl:889 ++#: lib/choose_repository.tcl:887 +#, tcl-format +msgid "Unable to cleanup %s" +msgstr "%s を掃除できません" + - #: lib/choose_repository.tcl:895 ++#: lib/choose_repository.tcl:893 +msgid "Clone failed." +msgstr "複写に失敗しました。" + - #: lib/choose_repository.tcl:902 ++#: lib/choose_repository.tcl:900 +msgid "No default branch obtained." +msgstr "デフォールト・ブランチが取得されませんでした" + - #: lib/choose_repository.tcl:913 ++#: lib/choose_repository.tcl:911 +#, tcl-format +msgid "Cannot resolve %s as a commit." +msgstr "%s をコミットとして解釈できません" + - #: lib/choose_repository.tcl:925 ++#: lib/choose_repository.tcl:923 +msgid "Creating working directory" +msgstr "作業ディレクトリを作成しています" + - #: lib/choose_repository.tcl:926 lib/index.tcl:65 lib/index.tcl:127 ++#: lib/choose_repository.tcl:924 lib/index.tcl:65 lib/index.tcl:127 +#: lib/index.tcl:193 +msgid "files" +msgstr "ファイル" + - #: lib/choose_repository.tcl:955 ++#: lib/choose_repository.tcl:953 +msgid "Initial file checkout failed." +msgstr "初期チェックアウトに失敗しました" + - #: lib/choose_repository.tcl:971 ++#: lib/choose_repository.tcl:969 +msgid "Open" +msgstr "開く" + - #: lib/choose_repository.tcl:981 ++#: lib/choose_repository.tcl:979 +msgid "Repository:" +msgstr "リポジトリ:" + - #: lib/choose_repository.tcl:1031 ++#: lib/choose_repository.tcl:1027 +#, tcl-format +msgid "Failed to open repository %s:" +msgstr "リポジトリ %s を開けません:" + +#: lib/choose_rev.tcl:53 +msgid "This Detached Checkout" +msgstr "分離されたチェックアウト" + +#: lib/choose_rev.tcl:60 +msgid "Revision Expression:" +msgstr "リビジョン式:" + +#: lib/choose_rev.tcl:74 +msgid "Local Branch" +msgstr "ローカル・ブランチ" + +#: lib/choose_rev.tcl:79 +msgid "Tracking Branch" +msgstr "トラッキング・ブランチ" + +#: lib/choose_rev.tcl:84 lib/choose_rev.tcl:538 +msgid "Tag" +msgstr "タグ" + +#: lib/choose_rev.tcl:317 +#, tcl-format +msgid "Invalid revision: %s" +msgstr "無効なリビジョン: %s" + +#: lib/choose_rev.tcl:338 +msgid "No revision selected." +msgstr "リビジョンが未選択です。" + +#: lib/choose_rev.tcl:346 +msgid "Revision expression is empty." +msgstr "リビジョン式が空です。" + +#: lib/choose_rev.tcl:531 +msgid "Updated" +msgstr "更新しました" + +#: lib/choose_rev.tcl:559 +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 "" +"訂正するコミットがそもそもありません。\n" +"\n" +"これから作るのは最初のコミットです。その前にはまだ訂正するようなコミットはあ" +"りません。\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 "" +"マージ中にコミットの訂正はできません。\n" +"\n" +"現在はまだマージの途中です。先にこのマージを中止しないと、前のコミットの訂正" +"はできません\n" + +#: lib/commit.tcl:49 +msgid "Error loading commit data for amend:" +msgstr "訂正するコミットのデータを読めません:" + +#: lib/commit.tcl:76 +msgid "Unable to obtain your identity:" +msgstr "ユーザの正体を確認できません:" + +#: lib/commit.tcl:81 +msgid "Invalid GIT_COMMITTER_IDENT:" +msgstr "GIT_COMMITTER_IDENT が無効です:" + +#: lib/commit.tcl:133 +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 "" +"最後にスキャンした状態はリポジトリの状態と合致しません。\n" +"\n" +"最後にスキャンして以後、別の Git プログラムがリポジトリを変更しています。新し" +"くコミットする前に、再スキャンが必要です。\n" +"\n" +"自動的に再スキャンを開始します。\n" + +#: lib/commit.tcl:154 +#, 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 "" +"マージしていないファイルはコミットできません。\n" +"\n" +"ファイル %s にはマージ衝突が残っています。まず解決してコミット予定に加える必" +"要があります。\n" + +#: lib/commit.tcl:162 +#, tcl-format +msgid "" +"Unknown file state %s detected.\n" +"\n" +"File %s cannot be committed by this program.\n" +msgstr "" +"不明なファイル状態 %s です。\n" +"\n" +"ファイル %s は本プログラムではコミットできません。\n" + +#: lib/commit.tcl:170 +msgid "" +"No changes to commit.\n" +"\n" +"You must stage at least 1 file before you can commit.\n" +msgstr "" +"コミットする変更がありません。\n" +"\n" +"最低一つの変更をコミット予定に加えてからコミットして下さい。\n" + +#: lib/commit.tcl:183 +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 "" +"コミット・メッセージを入力して下さい。\n" +"\n" +"正しいコミット・メッセージは:\n" +"\n" +"- 第1行: 何をしたか、を1行で要約。\n" +"- 第2行: 空白\n" +"- 残りの行: なぜ、この変更が良い変更か、の説明。\n" + +#: lib/commit.tcl:207 +#, tcl-format +msgid "warning: Tcl does not support encoding '%s'." +msgstr "警告: Tcl はエンコーディング '%s' をサポートしていません" + +#: lib/commit.tcl:221 +msgid "Calling pre-commit hook..." +msgstr "コミット前フックを実行中・・・" + +#: lib/commit.tcl:236 +msgid "Commit declined by pre-commit hook." +msgstr "コミット前フックがコミットを拒否しました" + +#: lib/commit.tcl:259 +msgid "Calling commit-msg hook..." +msgstr "コミット・メッセージ・フックを実行中・・・" + +#: lib/commit.tcl:274 +msgid "Commit declined by commit-msg hook." +msgstr "コミット・メッセージ・フックがコミットを拒否しました" + +#: lib/commit.tcl:287 +msgid "Committing changes..." +msgstr "変更点をコミット中・・・" + +#: lib/commit.tcl:303 +msgid "write-tree failed:" +msgstr "write-tree が失敗しました:" + +#: lib/commit.tcl:304 lib/commit.tcl:348 lib/commit.tcl:368 +msgid "Commit failed." +msgstr "コミットに失敗しました。" + +#: lib/commit.tcl:321 +#, tcl-format +msgid "Commit %s appears to be corrupt" +msgstr "コミット %s は壊れています" + +#: lib/commit.tcl:326 +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 "" +"コミットする変更がありません。\n" +"\n" +"マージでなく、また、一つも変更点がありません。\n" +"\n" +"自動的に再スキャンを開始します。\n" + +#: lib/commit.tcl:333 +msgid "No changes to commit." +msgstr "コミットする変更がありません。" + +#: lib/commit.tcl:347 +msgid "commit-tree failed:" +msgstr "commit-tree が失敗しました:" + +#: lib/commit.tcl:367 +msgid "update-ref failed:" +msgstr "update-ref が失敗しました:" + +#: lib/commit.tcl:454 +#, tcl-format +msgid "Created commit %s: %s" +msgstr "コミット %s を作成しました: %s" + +#: lib/console.tcl:59 +msgid "Working... please wait..." +msgstr "実行中…お待ち下さい…" + +#: lib/console.tcl:186 +msgid "Success" +msgstr "成功" + +#: lib/console.tcl:200 +msgid "Error: Command Failed" +msgstr "エラー: コマンドが失敗しました" + +#: lib/database.tcl:43 +msgid "Number of loose objects" +msgstr "ばらばらなオブジェクトの数" + +#: lib/database.tcl:44 +msgid "Disk space used by loose objects" +msgstr "ばらばらなオブジェクトの使用するディスク量" + +#: lib/database.tcl:45 +msgid "Number of packed objects" +msgstr "パックされたオブジェクトの数" + +#: lib/database.tcl:46 +msgid "Number of packs" +msgstr "パックの数" + +#: lib/database.tcl:47 +msgid "Disk space used by packed objects" +msgstr "パックされたオブジェクトの使用するディスク量" + +#: lib/database.tcl:48 +msgid "Packed objects waiting for pruning" +msgstr "パックに存在するので捨てて良いオブジェクトの数" + +#: lib/database.tcl:49 +msgid "Garbage files" +msgstr "ゴミファイル" + +#: lib/database.tcl:72 +msgid "Compressing the object database" +msgstr "データベース圧縮" + +#: lib/database.tcl:83 +msgid "Verifying the object database with fsck-objects" +msgstr "fsck-objects でオブジェクト・データベースを検証しています" + +#: lib/database.tcl:108 +#, 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 when more than %i loose objects exist.\n" +"\n" +"Compress the database now?" +msgstr "" +"このリポジトリにはおおよそ %i 個の個別オブジェクトがあります\n" +"\n" +"最適な性能を保つために、%i 個以上の個別オブジェクトを作る毎にデータベースを圧" +"縮することを推奨します\n" +"\n" +"データベースを圧縮しますか?" + +#: lib/date.tcl:25 +#, tcl-format +msgid "Invalid date from Git: %s" +msgstr "Git から出た無効な日付: %s" + - #: lib/diff.tcl:42 ++#: lib/diff.tcl:44 +#, 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 "" +"変更がありません。\n" +"\n" +"%s には変更がありません。\n" +"\n" +"このファイルの変更時刻は他のアプリケーションによって更新されていますがファイ" +"ル内容には変更がありません。\n" +"\n" +"同様な状態のファイルを探すために、自動的に再スキャンを開始します。" + - #: lib/diff.tcl:81 ++#: lib/diff.tcl:83 +#, tcl-format +msgid "Loading diff of %s..." +msgstr "%s の変更点をロード中…" + - #: lib/diff.tcl:114 lib/diff.tcl:184 ++#: lib/diff.tcl:116 lib/diff.tcl:190 +#, tcl-format +msgid "Unable to display %s" +msgstr "%s を表示できません" + - #: lib/diff.tcl:115 ++#: lib/diff.tcl:117 +msgid "Error loading file:" +msgstr "ファイルを読む際のエラーです:" + - #: lib/diff.tcl:122 ++#: lib/diff.tcl:124 +msgid "Git Repository (subproject)" +msgstr "Git リポジトリ(サブプロジェクト)" + - #: lib/diff.tcl:134 ++#: lib/diff.tcl:136 +msgid "* Binary file (not showing content)." +msgstr "* バイナリファイル(内容は表示しません)" + - #: lib/diff.tcl:185 ++#: lib/diff.tcl:191 +msgid "Error loading diff:" +msgstr "diff を読む際のエラーです:" + - #: lib/diff.tcl:303 ++#: lib/diff.tcl:313 +msgid "Failed to unstage selected hunk." +msgstr "選択されたパッチをコミット予定から外せません。" + - #: lib/diff.tcl:310 ++#: lib/diff.tcl:320 +msgid "Failed to stage selected hunk." +msgstr "選択されたパッチをコミット予定に加えられません。" + ++#: lib/diff.tcl:386 ++msgid "Failed to unstage selected line." ++msgstr "選択されたパッチ行をコミット予定から外せません。" ++ ++#: lib/diff.tcl:394 ++msgid "Failed to stage selected line." ++msgstr "選択されたパッチ行をコミット予定に加えられません。" ++ +#: lib/error.tcl:20 lib/error.tcl:114 +msgid "error" +msgstr "エラー" + +#: lib/error.tcl:36 +msgid "warning" +msgstr "警告" + +#: lib/error.tcl:94 +msgid "You must correct the above errors before committing." +msgstr "コミットする前に、以上のエラーを修正して下さい" + +#: lib/index.tcl:6 +msgid "Unable to unlock the index." +msgstr "インデックスをロックできません" + +#: lib/index.tcl:15 +msgid "Index Error" +msgstr "索引エラー" + +#: lib/index.tcl:21 +msgid "" +"Updating the Git index failed. A rescan will be automatically started to " +"resynchronize git-gui." +msgstr "" +"GIT インデックスの更新が失敗しました。git-gui と同期をとるために再スキャンし" +"ます。" + +#: lib/index.tcl:27 +msgid "Continue" +msgstr "続行" + +#: lib/index.tcl:31 +msgid "Unlock Index" +msgstr "インデックスのロック解除" + +#: lib/index.tcl:282 +#, tcl-format +msgid "Unstaging %s from commit" +msgstr "コミットから '%s' を降ろす" + +#: lib/index.tcl:313 +msgid "Ready to commit." +msgstr "コミット準備完了" + +#: lib/index.tcl:326 +#, tcl-format +msgid "Adding %s" +msgstr "コミットに %s を加えています" + +#: lib/index.tcl:381 +#, tcl-format +msgid "Revert changes in file %s?" +msgstr "ファイル %s にした変更を元に戻しますか?" + +#: lib/index.tcl:383 +#, tcl-format +msgid "Revert changes in these %i files?" +msgstr "これら %i 個のファイルにした変更を元に戻しますか?" + +#: lib/index.tcl:391 +msgid "Any unstaged changes will be permanently lost by the revert." +msgstr "変更を元に戻すとコミット予定していない変更は全て失われます。" + +#: lib/index.tcl:394 +msgid "Do Nothing" +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" +msgstr "" +"訂正中にはマージできません。\n" +"\n" +"訂正処理を完了するまでは新たにマージを開始できません。\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 "" +"最後にスキャンした状態はリポジトリの状態と合致しません。\n" +"\n" +"最後にスキャンして以後、別の Git プログラムがリポジトリを変更しています。マー" +"ジを開始する前に、再スキャンが必要です。\n" +"\n" +"自動的に再スキャンを開始します。\n" + +#: lib/merge.tcl:44 +#, 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 "" +"衝突のあったマージの途中です。\n" +"\n" +"ファイル %s にはマージ中の衝突が残っています。\n" +"\n" +"このファイルの衝突を解決し、コミット予定に加えて、コミットすることでマージを" +"完了します。そうやって始めて、新たなマージを開始できるようになります。\n" + +#: lib/merge.tcl:54 +#, 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 "" +"変更の途中です。\n" +"\n" +"ファイル %s は変更中です。\n" +"\n" +"現在のコミットを完了してからマージを開始して下さい。そうする方がマージに失敗" +"したときの回復が楽です。\n" + +#: lib/merge.tcl:106 +#, tcl-format +msgid "%s of %s" +msgstr "%s の %s ブランチ" + +#: lib/merge.tcl:119 +#, tcl-format +msgid "Merging %s and %s..." +msgstr "%s と %s をマージ中・・・" + +#: lib/merge.tcl:130 +msgid "Merge completed successfully." +msgstr "マージが完了しました" + +#: lib/merge.tcl:132 +msgid "Merge failed. Conflict resolution is required." +msgstr "マージが失敗しました。衝突の解決が必要です。" + +#: lib/merge.tcl:157 +#, tcl-format +msgid "Merge Into %s" +msgstr "%s にマージ" + +#: lib/merge.tcl:176 +msgid "Revision To Merge" +msgstr "マージするリビジョン" + +#: lib/merge.tcl:211 +msgid "" +"Cannot abort while amending.\n" +"\n" +"You must finish amending this commit.\n" +msgstr "" +"訂正中には中止できません。\n" +"\n" +"まず今のコミット訂正を完了させて下さい。\n" + +#: lib/merge.tcl:221 +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 "" +"マージを中断しますか?\n" +"\n" +"現在のマージを中断すると、コミットしていない全ての変更が失われます。\n" +"\n" +"マージを中断してよろしいですか?" + +#: lib/merge.tcl:227 +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 "" +"変更点をリセットしますか?\n" +"\n" +"変更点をリセットすると、コミットしていない全ての変更が失われます。\n" +"\n" +"リセットしてよろしいですか?" + +#: lib/merge.tcl:238 +msgid "Aborting" +msgstr "中断しています" + +#: lib/merge.tcl:238 +msgid "files reset" +msgstr "リセットしたファイル" + - #: lib/merge.tcl:265 ++#: lib/merge.tcl:266 +msgid "Abort failed." +msgstr "中断に失敗しました。" + - #: lib/merge.tcl:267 ++#: lib/merge.tcl:268 +msgid "Abort completed. Ready." +msgstr "中断完了。" + +#: lib/option.tcl:95 +msgid "Restore Defaults" +msgstr "既定値に戻す" + +#: lib/option.tcl:99 +msgid "Save" +msgstr "保存" + +#: lib/option.tcl:109 +#, tcl-format +msgid "%s Repository" +msgstr "%s リポジトリ" + +#: lib/option.tcl:110 +msgid "Global (All Repositories)" +msgstr "大域(全てのリポジトリ)" + +#: lib/option.tcl:116 +msgid "User Name" +msgstr "ユーザ名" + +#: lib/option.tcl:117 +msgid "Email Address" +msgstr "電子メールアドレス" + +#: lib/option.tcl:119 +msgid "Summarize Merge Commits" +msgstr "マージコミットの要約" + +#: lib/option.tcl:120 +msgid "Merge Verbosity" +msgstr "マージの冗長度" + +#: lib/option.tcl:121 +msgid "Show Diffstat After Merge" +msgstr "マージ後に diffstat を表示" + +#: lib/option.tcl:123 +msgid "Trust File Modification Timestamps" +msgstr "ファイル変更時刻を信頼する" + +#: lib/option.tcl:124 +msgid "Prune Tracking Branches During Fetch" +msgstr "フェッチ中にトラッキングブランチを刈る" + +#: lib/option.tcl:125 +msgid "Match Tracking Branches" +msgstr "トラッキングブランチを合わせる" + +#: lib/option.tcl:126 ++msgid "Blame Copy Only On Changed Files" ++msgstr "変更されたファイルのみコピー検知を行なう" ++ ++#: lib/option.tcl:127 ++msgid "Minimum Letters To Blame Copy On" ++msgstr "コピーを検知する最少文字数" ++ ++#: lib/option.tcl:128 +msgid "Number of Diff Context Lines" +msgstr "diff の文脈行数" + - #: lib/option.tcl:127 ++#: lib/option.tcl:129 +msgid "Commit Message Text Width" +msgstr "コミットメッセージのテキスト幅" + - #: lib/option.tcl:128 ++#: lib/option.tcl:130 +msgid "New Branch Name Template" +msgstr "新しいブランチ名のテンプレート" + - #: lib/option.tcl:192 ++#: lib/option.tcl:194 +msgid "Spelling Dictionary:" +msgstr "スペルチェック辞書" + - #: lib/option.tcl:216 ++#: lib/option.tcl:218 +msgid "Change Font" +msgstr "フォントを変更" + - #: lib/option.tcl:220 ++#: lib/option.tcl:222 +#, tcl-format +msgid "Choose %s" +msgstr "%s を選択" + - #: lib/option.tcl:226 ++#: lib/option.tcl:228 +msgid "pt." +msgstr "ポイント" + - #: lib/option.tcl:240 ++#: lib/option.tcl:242 +msgid "Preferences" +msgstr "設定" + - #: lib/option.tcl:275 ++#: lib/option.tcl:277 +msgid "Failed to completely save options:" +msgstr "完全にオプションを保存できません:" + ++#: lib/remote.tcl:165 ++msgid "Prune from" ++msgstr "から刈込む…" ++ ++#: lib/remote.tcl:170 ++msgid "Fetch from" ++msgstr "取得元" ++ ++#: lib/remote.tcl:213 ++msgid "Push to" ++msgstr "プッシュ先" ++ +#: lib/remote_branch_delete.tcl:29 lib/remote_branch_delete.tcl:34 +msgid "Delete Remote Branch" +msgstr "リモート・ブランチを削除" + +#: lib/remote_branch_delete.tcl:47 +msgid "From Repository" +msgstr "元のリポジトリ" + +#: lib/remote_branch_delete.tcl:50 lib/transport.tcl:123 +msgid "Remote:" +msgstr "リモート:" + +#: lib/remote_branch_delete.tcl:66 lib/transport.tcl:138 +msgid "Arbitrary URL:" +msgstr "任意の URL:" + +#: lib/remote_branch_delete.tcl:84 +msgid "Branches" +msgstr "ブランチ" + +#: lib/remote_branch_delete.tcl:109 +msgid "Delete Only If" +msgstr "条件付で削除" + +#: lib/remote_branch_delete.tcl:111 +msgid "Merged Into:" +msgstr "マージ先:" + +#: lib/remote_branch_delete.tcl:119 +msgid "Always (Do not perform merge checks)" +msgstr "無条件(マージ検査をしない)" + +#: lib/remote_branch_delete.tcl:152 +msgid "A branch is required for 'Merged Into'." +msgstr "'マージ先' にはブランチが必要です。" + +#: lib/remote_branch_delete.tcl:184 +#, tcl-format +msgid "" +"The following branches are not completely merged into %s:\n" +"\n" +" - %s" +msgstr "" +"以下のブランチは %s に完全にマージされていません:\n" +"\n" +" - %s" + +#: 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 "" +"必要なコミットが不足しているために、マージ検査が失敗しました。まず %s から" +"フェッチして下さい。" + +#: lib/remote_branch_delete.tcl:207 +msgid "Please select one or more branches to delete." +msgstr "削除するブランチを選択して下さい。" + +#: lib/remote_branch_delete.tcl:216 +msgid "" +"Recovering deleted branches is difficult.\n" +"\n" +"Delete the selected branches?" +msgstr "" +"削除したブランチを回復するのは困難です。\n" +"\n" +"選択したブランチを削除して良いですか?" + +#: lib/remote_branch_delete.tcl:226 +#, tcl-format +msgid "Deleting branches from %s" +msgstr "%s からブランチを削除しています。" + +#: lib/remote_branch_delete.tcl:286 +msgid "No repository selected." +msgstr "リポジトリが選択されていません。" + +#: lib/remote_branch_delete.tcl:291 +#, tcl-format +msgid "Scanning %s..." +msgstr "%s をスキャンしています…" + - #: lib/remote.tcl:165 - msgid "Prune from" - msgstr "から刈込む…" - - #: lib/remote.tcl:170 - msgid "Fetch from" - msgstr "取得元" - - #: lib/remote.tcl:213 - msgid "Push to" - msgstr "プッシュ先" - +#: lib/shortcut.tcl:20 lib/shortcut.tcl:61 +msgid "Cannot write shortcut:" +msgstr "ショートカットが書けません:" + +#: lib/shortcut.tcl:136 +msgid "Cannot write icon:" +msgstr "アイコンが書けません:" + +#: lib/spellcheck.tcl:57 +msgid "Unsupported spell checker" +msgstr "サポートされていないスペルチェッカーです" + +#: lib/spellcheck.tcl:65 +msgid "Spell checking is unavailable" +msgstr "スペルチェック機能は使えません" + +#: lib/spellcheck.tcl:68 +msgid "Invalid spell checking configuration" +msgstr "スペルチェックの設定が不正です" + +#: lib/spellcheck.tcl:70 +#, tcl-format +msgid "Reverting dictionary to %s." +msgstr "辞書を %s に巻き戻します" + +#: lib/spellcheck.tcl:73 +msgid "Spell checker silently failed on startup" +msgstr "スペルチェッカーの起動に失敗しました" + +#: lib/spellcheck.tcl:80 +msgid "Unrecognized spell checker" +msgstr "スペルチェッカーが判別できません" + - #: lib/spellcheck.tcl:180 ++#: lib/spellcheck.tcl:186 +msgid "No Suggestions" +msgstr "提案なし" + - #: lib/spellcheck.tcl:381 ++#: lib/spellcheck.tcl:387 +msgid "Unexpected EOF from spell checker" +msgstr "スペルチェッカーが予想外の EOF を返しました" + - #: lib/spellcheck.tcl:385 ++#: lib/spellcheck.tcl:391 +msgid "Spell Checker Failed" +msgstr "スペルチェック失敗" + +#: lib/status_bar.tcl:83 +#, tcl-format +msgid "%s ... %*i of %*i %s (%3i%%)" +msgstr "%1$s ... %4$*i %6$s 中の %2$*i (%7$3i%%)" + +#: lib/transport.tcl:6 +#, tcl-format +msgid "fetch %s" +msgstr "%s を取得" + +#: lib/transport.tcl:7 +#, tcl-format +msgid "Fetching new changes from %s" +msgstr "%s から新しい変更をフェッチしています" + +#: lib/transport.tcl:18 +#, tcl-format +msgid "remote prune %s" +msgstr "遠隔刈込 %s" + +#: lib/transport.tcl:19 +#, tcl-format +msgid "Pruning tracking branches deleted from %s" +msgstr "%s から削除されたトラッキング・ブランチを刈っています" + +#: lib/transport.tcl:25 lib/transport.tcl:71 +#, tcl-format +msgid "push %s" +msgstr "%s をプッシュ" + +#: lib/transport.tcl:26 +#, tcl-format +msgid "Pushing changes to %s" +msgstr "%s へ変更をプッシュしています" + +#: lib/transport.tcl:72 +#, tcl-format +msgid "Pushing %s %s to %s" +msgstr "%3$s へ %1$s %2$s をプッシュしています" + +#: lib/transport.tcl:89 +msgid "Push Branches" +msgstr "ブランチをプッシュ" + +#: lib/transport.tcl:103 +msgid "Source Branches" +msgstr "元のブランチ" + +#: lib/transport.tcl:120 +msgid "Destination Repository" +msgstr "送り先リポジトリ" + +#: lib/transport.tcl:158 +msgid "Transfer Options" +msgstr "通信オプション" + +#: lib/transport.tcl:160 +msgid "Force overwrite existing branch (may discard changes)" +msgstr "既存ブランチを上書き(変更を破棄する可能性があります)" + +#: lib/transport.tcl:164 +msgid "Use thin pack (for slow network connections)" +msgstr "Thin Pack を使う(遅いネットワーク接続)" + +#: lib/transport.tcl:168 +msgid "Include tags" +msgstr "タグを含める" - - #~ msgid "Not connected to aspell" - #~ msgstr "aspell に接続していません" diff --cc git-gui/po/sv.po index 4da687bb4,000000000..0196ba8ce mode 100644,000000..100644 --- a/git-gui/po/sv.po +++ b/git-gui/po/sv.po @@@ -1,1980 -1,0 +1,2031 @@@ +# Swedish translation of git-gui. +# Copyright (C) 2007 Shawn Pearce, et al. +# This file is distributed under the same license as the git-gui package. +# +# Peter Karlsson , 2007-2008. ++# Mikael Magnusson , 2008. +msgid "" +msgstr "" +"Project-Id-Version: sv\n" +"Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2008-03-14 07:18+0100\n" - "PO-Revision-Date: 2008-03-14 07:23+0100\n" - "Last-Translator: Peter Karlsson \n" ++"POT-Creation-Date: 2008-08-03 01:34+0200\n" ++"PO-Revision-Date: 2008-08-03 01:45+0200\n" ++"Last-Translator: Mikael Magnusson \n" +"Language-Team: Swedish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit" ++"Content-Transfer-Encoding: 8bit\n" + - #: git-gui.sh:41 git-gui.sh:634 git-gui.sh:648 git-gui.sh:661 git-gui.sh:744 - #: git-gui.sh:763 ++#: git-gui.sh:41 git-gui.sh:688 git-gui.sh:702 git-gui.sh:715 git-gui.sh:798 ++#: git-gui.sh:817 +msgid "git-gui: fatal error" +msgstr "git-gui: ödesdigert fel" + - #: git-gui.sh:593 ++#: git-gui.sh:644 +#, tcl-format +msgid "Invalid font specified in %s:" +msgstr "Ogiltigt teckensnitt angivet i %s:" + - #: git-gui.sh:620 ++#: git-gui.sh:674 +msgid "Main Font" +msgstr "Huvudteckensnitt" + - #: git-gui.sh:621 ++#: git-gui.sh:675 +msgid "Diff/Console Font" +msgstr "Diff/konsolteckensnitt" + - #: git-gui.sh:635 ++#: git-gui.sh:689 +msgid "Cannot find git in PATH." +msgstr "Hittar inte git i PATH." + - #: git-gui.sh:662 ++#: git-gui.sh:716 +msgid "Cannot parse Git version string:" +msgstr "Kan inte tolka versionssträng från Git:" + - #: git-gui.sh:680 ++#: git-gui.sh:734 +#, tcl-format +msgid "" +"Git version cannot be determined.\n" +"\n" +"%s claims it is version '%s'.\n" +"\n" +"%s requires at least Git 1.5.0 or later.\n" +"\n" +"Assume '%s' is version 1.5.0?\n" +msgstr "" +"Kan inte avgöra Gits version.\n" +"\n" +"%s säger att dess version är \"%s\".\n" +"\n" +"%s kräver minst Git 1.5.0 eller senare.\n" +"\n" +"Anta att \"%s\" är version 1.5.0?\n" + - #: git-gui.sh:918 ++#: git-gui.sh:972 +msgid "Git directory not found:" +msgstr "Git-katalogen hittades inte:" + - #: git-gui.sh:925 ++#: git-gui.sh:979 +msgid "Cannot move to top of working directory:" +msgstr "Kan inte gå till början på arbetskatalogen:" + - #: git-gui.sh:932 ++#: git-gui.sh:986 +msgid "Cannot use funny .git directory:" +msgstr "Kan inte använda underlig .git-katalog:" + - #: git-gui.sh:937 ++#: git-gui.sh:991 +msgid "No working directory" +msgstr "Ingen arbetskatalog" + - #: git-gui.sh:1084 lib/checkout_op.tcl:283 ++#: git-gui.sh:1138 lib/checkout_op.tcl:305 +msgid "Refreshing file status..." +msgstr "Uppdaterar filstatus..." + - #: git-gui.sh:1149 ++#: git-gui.sh:1194 +msgid "Scanning for modified files ..." +msgstr "Söker efter ändrade filer..." + - #: git-gui.sh:1324 lib/browser.tcl:246 ++#: git-gui.sh:1369 lib/browser.tcl:246 +msgid "Ready." +msgstr "Klar." + - #: git-gui.sh:1590 ++#: git-gui.sh:1635 +msgid "Unmodified" +msgstr "Oförändrade" + - #: git-gui.sh:1592 ++#: git-gui.sh:1637 +msgid "Modified, not staged" +msgstr "Förändrade, ej köade" + - #: git-gui.sh:1593 git-gui.sh:1598 ++#: git-gui.sh:1638 git-gui.sh:1643 +msgid "Staged for commit" +msgstr "Köade för incheckning" + - #: git-gui.sh:1594 git-gui.sh:1599 ++#: git-gui.sh:1639 git-gui.sh:1644 +msgid "Portions staged for commit" +msgstr "Delar köade för incheckning" + - #: git-gui.sh:1595 git-gui.sh:1600 ++#: git-gui.sh:1640 git-gui.sh:1645 +msgid "Staged for commit, missing" +msgstr "Köade för incheckning, saknade" + - #: git-gui.sh:1597 ++#: git-gui.sh:1642 +msgid "Untracked, not staged" +msgstr "Ej spårade, ej köade" + - #: git-gui.sh:1602 ++#: git-gui.sh:1647 +msgid "Missing" +msgstr "Saknade" + - #: git-gui.sh:1603 ++#: git-gui.sh:1648 +msgid "Staged for removal" +msgstr "Köade för borttagning" + - #: git-gui.sh:1604 ++#: git-gui.sh:1649 +msgid "Staged for removal, still present" +msgstr "Köade för borttagning, fortfarande närvarande" + - #: git-gui.sh:1606 git-gui.sh:1607 git-gui.sh:1608 git-gui.sh:1609 ++#: git-gui.sh:1651 git-gui.sh:1652 git-gui.sh:1653 git-gui.sh:1654 +msgid "Requires merge resolution" +msgstr "Kräver konflikthantering efter sammanslagning" + - #: git-gui.sh:1644 ++#: git-gui.sh:1689 +msgid "Starting gitk... please wait..." +msgstr "Startar gitk... vänta..." + - #: git-gui.sh:1653 - #, tcl-format - msgid "" - "Unable to start gitk:\n" - "\n" - "%s does not exist" - msgstr "" - "Kan inte starta gitk:\n" - "\n" - "%s finns inte" ++#: git-gui.sh:1698 ++msgid "Couldn't find gitk in PATH" ++msgstr "Hittar inte gitk i PATH." + - #: git-gui.sh:1860 lib/choose_repository.tcl:36 ++#: git-gui.sh:1948 lib/choose_repository.tcl:36 +msgid "Repository" +msgstr "Arkiv" + - #: git-gui.sh:1861 ++#: git-gui.sh:1949 +msgid "Edit" +msgstr "Redigera" + - #: git-gui.sh:1863 lib/choose_rev.tcl:561 ++#: git-gui.sh:1951 lib/choose_rev.tcl:561 +msgid "Branch" +msgstr "Gren" + - #: git-gui.sh:1866 lib/choose_rev.tcl:548 ++#: git-gui.sh:1954 lib/choose_rev.tcl:548 +msgid "Commit@@noun" +msgstr "Incheckning" + - #: git-gui.sh:1869 lib/merge.tcl:120 lib/merge.tcl:149 lib/merge.tcl:167 ++#: git-gui.sh:1957 lib/merge.tcl:120 lib/merge.tcl:149 lib/merge.tcl:167 +msgid "Merge" +msgstr "Slå ihop" + - #: git-gui.sh:1870 lib/choose_rev.tcl:557 ++#: git-gui.sh:1958 lib/choose_rev.tcl:557 +msgid "Remote" +msgstr "Fjärr" + - #: git-gui.sh:1879 ++#: git-gui.sh:1967 +msgid "Browse Current Branch's Files" +msgstr "Bläddra i grenens filer" + - #: git-gui.sh:1883 ++#: git-gui.sh:1971 +msgid "Browse Branch Files..." +msgstr "Bläddra filer på gren..." + - #: git-gui.sh:1888 ++#: git-gui.sh:1976 +msgid "Visualize Current Branch's History" +msgstr "Visualisera grenens historik" + - #: git-gui.sh:1892 ++#: git-gui.sh:1980 +msgid "Visualize All Branch History" +msgstr "Visualisera alla grenars historik" + - #: git-gui.sh:1899 ++#: git-gui.sh:1987 +#, tcl-format +msgid "Browse %s's Files" +msgstr "Bläddra i filer för %s" + - #: git-gui.sh:1901 ++#: git-gui.sh:1989 +#, tcl-format +msgid "Visualize %s's History" +msgstr "Visualisera historik för %s" + - #: git-gui.sh:1906 lib/database.tcl:27 lib/database.tcl:67 ++#: git-gui.sh:1994 lib/database.tcl:27 lib/database.tcl:67 +msgid "Database Statistics" +msgstr "Databasstatistik" + - #: git-gui.sh:1909 lib/database.tcl:34 ++#: git-gui.sh:1997 lib/database.tcl:34 +msgid "Compress Database" +msgstr "Komprimera databas" + - #: git-gui.sh:1912 ++#: git-gui.sh:2000 +msgid "Verify Database" +msgstr "Verifiera databas" + - #: git-gui.sh:1919 git-gui.sh:1923 git-gui.sh:1927 lib/shortcut.tcl:7 ++#: git-gui.sh:2007 git-gui.sh:2011 git-gui.sh:2015 lib/shortcut.tcl:7 +#: lib/shortcut.tcl:39 lib/shortcut.tcl:71 +msgid "Create Desktop Icon" +msgstr "Skapa skrivbordsikon" + - #: git-gui.sh:1932 lib/choose_repository.tcl:177 lib/choose_repository.tcl:185 ++#: git-gui.sh:2023 lib/choose_repository.tcl:177 lib/choose_repository.tcl:185 +msgid "Quit" +msgstr "Avsluta" + - #: git-gui.sh:1939 ++#: git-gui.sh:2031 +msgid "Undo" +msgstr "Ångra" + - #: git-gui.sh:1942 ++#: git-gui.sh:2034 +msgid "Redo" +msgstr "Gör om" + - #: git-gui.sh:1946 git-gui.sh:2443 ++#: git-gui.sh:2038 git-gui.sh:2545 +msgid "Cut" +msgstr "Klipp ut" + - #: git-gui.sh:1949 git-gui.sh:2446 git-gui.sh:2520 git-gui.sh:2614 ++#: git-gui.sh:2041 git-gui.sh:2548 git-gui.sh:2622 git-gui.sh:2715 +#: lib/console.tcl:69 +msgid "Copy" +msgstr "Kopiera" + - #: git-gui.sh:1952 git-gui.sh:2449 ++#: git-gui.sh:2044 git-gui.sh:2551 +msgid "Paste" +msgstr "Klistra in" + - #: git-gui.sh:1955 git-gui.sh:2452 lib/branch_delete.tcl:26 ++#: git-gui.sh:2047 git-gui.sh:2554 lib/branch_delete.tcl:26 +#: lib/remote_branch_delete.tcl:38 +msgid "Delete" +msgstr "Ta bort" + - #: git-gui.sh:1959 git-gui.sh:2456 git-gui.sh:2618 lib/console.tcl:71 ++#: git-gui.sh:2051 git-gui.sh:2558 git-gui.sh:2719 lib/console.tcl:71 +msgid "Select All" +msgstr "Markera alla" + - #: git-gui.sh:1968 ++#: git-gui.sh:2060 +msgid "Create..." +msgstr "Skapa..." + - #: git-gui.sh:1974 ++#: git-gui.sh:2066 +msgid "Checkout..." +msgstr "Checka ut..." + - #: git-gui.sh:1980 ++#: git-gui.sh:2072 +msgid "Rename..." +msgstr "Byt namn..." + - #: git-gui.sh:1985 git-gui.sh:2085 ++#: git-gui.sh:2077 git-gui.sh:2187 +msgid "Delete..." +msgstr "Ta bort..." + - #: git-gui.sh:1990 ++#: git-gui.sh:2082 +msgid "Reset..." +msgstr "Återställ..." + - #: git-gui.sh:2002 git-gui.sh:2389 ++#: git-gui.sh:2094 git-gui.sh:2491 +msgid "New Commit" +msgstr "Ny incheckning" + - #: git-gui.sh:2010 git-gui.sh:2396 ++#: git-gui.sh:2102 git-gui.sh:2498 +msgid "Amend Last Commit" +msgstr "Lägg till föregående incheckning" + - #: git-gui.sh:2019 git-gui.sh:2356 lib/remote_branch_delete.tcl:99 ++#: git-gui.sh:2111 git-gui.sh:2458 lib/remote_branch_delete.tcl:99 +msgid "Rescan" +msgstr "Sök på nytt" + - #: git-gui.sh:2025 ++#: git-gui.sh:2117 +msgid "Stage To Commit" +msgstr "Köa för incheckning" + - #: git-gui.sh:2031 ++#: git-gui.sh:2123 +msgid "Stage Changed Files To Commit" +msgstr "Köa ändrade filer för incheckning" + - #: git-gui.sh:2037 ++#: git-gui.sh:2129 +msgid "Unstage From Commit" +msgstr "Ta bort från incheckningskö" + - #: git-gui.sh:2042 lib/index.tcl:395 ++#: git-gui.sh:2134 lib/index.tcl:395 +msgid "Revert Changes" +msgstr "Återställ ändringar" + - #: git-gui.sh:2049 git-gui.sh:2368 git-gui.sh:2467 ++#: git-gui.sh:2141 git-gui.sh:2702 ++msgid "Show Less Context" ++msgstr "Visa mindre sammanhang" ++ ++#: git-gui.sh:2145 git-gui.sh:2706 ++msgid "Show More Context" ++msgstr "Visa mer sammanhang" ++ ++#: git-gui.sh:2151 git-gui.sh:2470 git-gui.sh:2569 +msgid "Sign Off" +msgstr "Skriv under" + - #: git-gui.sh:2053 git-gui.sh:2372 ++#: git-gui.sh:2155 git-gui.sh:2474 +msgid "Commit@@verb" +msgstr "Checka in" + - #: git-gui.sh:2064 ++#: git-gui.sh:2166 +msgid "Local Merge..." +msgstr "Lokal sammanslagning..." + - #: git-gui.sh:2069 ++#: git-gui.sh:2171 +msgid "Abort Merge..." +msgstr "Avbryt sammanslagning..." + - #: git-gui.sh:2081 ++#: git-gui.sh:2183 +msgid "Push..." +msgstr "Sänd..." + - #: git-gui.sh:2092 lib/choose_repository.tcl:41 - msgid "Apple" - msgstr "Äpple" - - #: git-gui.sh:2095 git-gui.sh:2117 lib/about.tcl:14 ++#: git-gui.sh:2197 git-gui.sh:2219 lib/about.tcl:14 +#: lib/choose_repository.tcl:44 lib/choose_repository.tcl:50 +#, tcl-format +msgid "About %s" +msgstr "Om %s" + - #: git-gui.sh:2099 ++#: git-gui.sh:2201 +msgid "Preferences..." +msgstr "Inställningar..." + - #: git-gui.sh:2107 git-gui.sh:2639 ++#: git-gui.sh:2209 git-gui.sh:2740 +msgid "Options..." +msgstr "Alternativ..." + - #: git-gui.sh:2113 lib/choose_repository.tcl:47 ++#: git-gui.sh:2215 lib/choose_repository.tcl:47 +msgid "Help" +msgstr "Hjälp" + - #: git-gui.sh:2154 ++#: git-gui.sh:2256 +msgid "Online Documentation" +msgstr "Webbdokumentation" + - #: git-gui.sh:2238 ++#: git-gui.sh:2340 +#, tcl-format +msgid "fatal: cannot stat path %s: No such file or directory" +msgstr "" +"ödesdigert: kunde inte ta status på sökvägen %s: Fil eller katalog saknas" + - #: git-gui.sh:2271 ++#: git-gui.sh:2373 +msgid "Current Branch:" +msgstr "Aktuell gren:" + - #: git-gui.sh:2292 ++#: git-gui.sh:2394 +msgid "Staged Changes (Will Commit)" +msgstr "Köade ändringar (kommer att checkas in)" + - #: git-gui.sh:2312 ++#: git-gui.sh:2414 +msgid "Unstaged Changes" +msgstr "Oköade ändringar" + - #: git-gui.sh:2362 ++#: git-gui.sh:2464 +msgid "Stage Changed" +msgstr "Köa ändrade" + - #: git-gui.sh:2378 lib/transport.tcl:93 lib/transport.tcl:182 ++#: git-gui.sh:2480 lib/transport.tcl:93 lib/transport.tcl:182 +msgid "Push" +msgstr "Sänd" + - #: git-gui.sh:2408 ++#: git-gui.sh:2510 +msgid "Initial Commit Message:" +msgstr "Inledande incheckningsmeddelande:" + - #: git-gui.sh:2409 ++#: git-gui.sh:2511 +msgid "Amended Commit Message:" +msgstr "Utökat incheckningsmeddelande:" + - #: git-gui.sh:2410 ++#: git-gui.sh:2512 +msgid "Amended Initial Commit Message:" +msgstr "Utökat inledande incheckningsmeddelande:" + - #: git-gui.sh:2411 ++#: git-gui.sh:2513 +msgid "Amended Merge Commit Message:" +msgstr "Utökat incheckningsmeddelande för sammanslagning:" + - #: git-gui.sh:2412 ++#: git-gui.sh:2514 +msgid "Merge Commit Message:" +msgstr "Incheckningsmeddelande för sammanslagning:" + - #: git-gui.sh:2413 ++#: git-gui.sh:2515 +msgid "Commit Message:" +msgstr "Incheckningsmeddelande:" + - #: git-gui.sh:2459 git-gui.sh:2622 lib/console.tcl:73 ++#: git-gui.sh:2561 git-gui.sh:2723 lib/console.tcl:73 +msgid "Copy All" +msgstr "Kopiera alla" + - #: git-gui.sh:2483 lib/blame.tcl:107 ++#: git-gui.sh:2585 lib/blame.tcl:100 +msgid "File:" +msgstr "Fil:" + - #: git-gui.sh:2589 ++#: git-gui.sh:2691 +msgid "Apply/Reverse Hunk" +msgstr "Använd/återställ del" + - #: git-gui.sh:2595 - msgid "Show Less Context" - msgstr "Visa mindre sammanhang" - - #: git-gui.sh:2602 - msgid "Show More Context" - msgstr "Visa mer sammanhang" ++#: git-gui.sh:2696 ++msgid "Apply/Reverse Line" ++msgstr "Använd/återställ rad" + - #: git-gui.sh:2610 ++#: git-gui.sh:2711 +msgid "Refresh" +msgstr "Uppdatera" + - #: git-gui.sh:2631 ++#: git-gui.sh:2732 +msgid "Decrease Font Size" +msgstr "Minska teckensnittsstorlek" + - #: git-gui.sh:2635 ++#: git-gui.sh:2736 +msgid "Increase Font Size" +msgstr "Öka teckensnittsstorlek" + - #: git-gui.sh:2646 ++#: git-gui.sh:2747 +msgid "Unstage Hunk From Commit" +msgstr "Ta bort del ur incheckningskö" + - #: git-gui.sh:2648 ++#: git-gui.sh:2748 ++msgid "Unstage Line From Commit" ++msgstr "Ta bort rad ur incheckningskö" ++ ++#: git-gui.sh:2750 +msgid "Stage Hunk For Commit" +msgstr "Ställ del i incheckningskö" + - #: git-gui.sh:2667 ++#: git-gui.sh:2751 ++msgid "Stage Line For Commit" ++msgstr "Ställ rad i incheckningskö" ++ ++#: git-gui.sh:2771 +msgid "Initializing..." +msgstr "Initierar..." + - #: git-gui.sh:2762 ++#: git-gui.sh:2876 +#, tcl-format +msgid "" +"Possible environment issues exist.\n" +"\n" +"The following environment variables are probably\n" +"going to be ignored by any Git subprocess run\n" +"by %s:\n" +"\n" +msgstr "" +"Det finns möjliga problem med miljövariabler.\n" +"\n" +"Följande miljövariabler kommer troligen att\n" +"ignoreras av alla Git-underprocesser som körs\n" +"av %s:\n" +"\n" + - #: git-gui.sh:2792 ++#: git-gui.sh:2906 +msgid "" +"\n" +"This is due to a known issue with the\n" +"Tcl binary distributed by Cygwin." +msgstr "" +"\n" +"Detta beror på ett känt problem med\n" +"Tcl-binären som följer med Cygwin." + - #: git-gui.sh:2797 ++#: git-gui.sh:2911 +#, tcl-format +msgid "" +"\n" +"\n" +"A good replacement for %s\n" +"is placing values for the user.name and\n" +"user.email settings into your personal\n" +"~/.gitconfig file.\n" +msgstr "" +"\n" +"\n" +"Du kan ersätta %s\n" +"med att lägga in värden för inställningarna\n" +"user.name och user.email i din personliga\n" +"~/.gitconfig-fil.\n" + +#: lib/about.tcl:26 +msgid "git-gui - a graphical user interface for Git." +msgstr "git-gui - ett grafiskt användargränssnitt för Git." + - #: lib/blame.tcl:77 ++#: lib/blame.tcl:70 +msgid "File Viewer" +msgstr "Filvisare" + - #: lib/blame.tcl:81 ++#: lib/blame.tcl:74 +msgid "Commit:" +msgstr "Incheckning:" + - #: lib/blame.tcl:264 ++#: lib/blame.tcl:257 +msgid "Copy Commit" +msgstr "Kopiera incheckning" + - #: lib/blame.tcl:384 ++#: lib/blame.tcl:260 ++msgid "Do Full Copy Detection" ++msgstr "Gör full kopieringsigenkänning" ++ ++#: lib/blame.tcl:388 +#, tcl-format +msgid "Reading %s..." +msgstr "Läser %s..." + - #: lib/blame.tcl:488 ++#: lib/blame.tcl:492 +msgid "Loading copy/move tracking annotations..." +msgstr "Läser annoteringar för kopiering/flyttning..." + - #: lib/blame.tcl:508 ++#: lib/blame.tcl:512 +msgid "lines annotated" +msgstr "rader annoterade" + - #: lib/blame.tcl:689 ++#: lib/blame.tcl:704 +msgid "Loading original location annotations..." +msgstr "Läser in annotering av originalplacering..." + - #: lib/blame.tcl:692 ++#: lib/blame.tcl:707 +msgid "Annotation complete." +msgstr "Annotering fullbordad." + - #: lib/blame.tcl:746 ++#: lib/blame.tcl:737 ++msgid "Busy" ++msgstr "Upptagen" ++ ++#: lib/blame.tcl:738 ++msgid "Annotation process is already running." ++msgstr "Annoteringsprocess körs redan." ++ ++#: lib/blame.tcl:777 ++msgid "Running thorough copy detection..." ++msgstr "Kör grundlig kopieringsigenkänning..." ++ ++#: lib/blame.tcl:827 +msgid "Loading annotation..." +msgstr "Läser in annotering..." + - #: lib/blame.tcl:802 ++#: lib/blame.tcl:883 +msgid "Author:" +msgstr "Författare:" + - #: lib/blame.tcl:806 ++#: lib/blame.tcl:887 +msgid "Committer:" +msgstr "Incheckare:" + - #: lib/blame.tcl:811 ++#: lib/blame.tcl:892 +msgid "Original File:" +msgstr "Ursprunglig fil:" + - #: lib/blame.tcl:925 ++#: lib/blame.tcl:1006 +msgid "Originally By:" +msgstr "Ursprungligen av:" + - #: lib/blame.tcl:931 ++#: lib/blame.tcl:1012 +msgid "In File:" +msgstr "I filen:" + - #: lib/blame.tcl:936 ++#: lib/blame.tcl:1017 +msgid "Copied Or Moved Here By:" +msgstr "Kopierad eller flyttad hit av:" + +#: lib/branch_checkout.tcl:14 lib/branch_checkout.tcl:19 +msgid "Checkout Branch" +msgstr "Checka ut gren" + +#: lib/branch_checkout.tcl:23 +msgid "Checkout" +msgstr "Checka ut" + +#: 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:522 lib/choose_font.tcl:43 lib/merge.tcl:171 ++#: lib/checkout_op.tcl:544 lib/choose_font.tcl:43 lib/merge.tcl:171 +#: lib/option.tcl:103 lib/remote_branch_delete.tcl:42 lib/transport.tcl:97 +msgid "Cancel" +msgstr "Avbryt" + +#: lib/branch_checkout.tcl:32 lib/browser.tcl:287 +msgid "Revision" +msgstr "Revision" + - #: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:242 ++#: lib/branch_checkout.tcl:36 lib/branch_create.tcl:69 lib/option.tcl:244 +msgid "Options" +msgstr "Alternativ" + +#: lib/branch_checkout.tcl:39 lib/branch_create.tcl:92 +msgid "Fetch Tracking Branch" +msgstr "Hämta spårande gren" + +#: lib/branch_checkout.tcl:44 +msgid "Detach From Local Branch" +msgstr "Koppla bort från lokal gren" + +#: lib/branch_create.tcl:22 +msgid "Create Branch" +msgstr "Skapa gren" + +#: lib/branch_create.tcl:27 +msgid "Create New Branch" +msgstr "Skapa ny gren" + +#: lib/branch_create.tcl:31 lib/choose_repository.tcl:371 +msgid "Create" +msgstr "Skapa" + +#: lib/branch_create.tcl:40 +msgid "Branch Name" +msgstr "Namn på gren" + +#: lib/branch_create.tcl:43 +msgid "Name:" +msgstr "Namn:" + +#: lib/branch_create.tcl:58 +msgid "Match Tracking Branch Name" +msgstr "Använd namn på spårad gren" + +#: lib/branch_create.tcl:66 +msgid "Starting Revision" +msgstr "Inledande revision" + +#: lib/branch_create.tcl:72 +msgid "Update Existing Branch:" +msgstr "Uppdatera befintlig gren:" + +#: lib/branch_create.tcl:75 +msgid "No" +msgstr "Nej" + +#: lib/branch_create.tcl:80 +msgid "Fast Forward Only" +msgstr "Endast snabbspolning" + - #: lib/branch_create.tcl:85 lib/checkout_op.tcl:514 ++#: lib/branch_create.tcl:85 lib/checkout_op.tcl:536 +msgid "Reset" +msgstr "Återställ" + +#: lib/branch_create.tcl:97 +msgid "Checkout After Creation" +msgstr "Checka ut när skapad" + +#: lib/branch_create.tcl:131 +msgid "Please select a tracking branch." +msgstr "Välj en gren att spåra." + +#: lib/branch_create.tcl:140 +#, tcl-format +msgid "Tracking branch %s is not a branch in the remote repository." +msgstr "Den spårade grenen %s är inte en gren i fjärrarkivet." + +#: lib/branch_create.tcl:153 lib/branch_rename.tcl:86 +msgid "Please supply a branch name." +msgstr "Ange ett namn för grenen." + +#: lib/branch_create.tcl:164 lib/branch_rename.tcl:106 +#, tcl-format +msgid "'%s' is not an acceptable branch name." +msgstr "\"%s\" kan inte användas som namn på grenen." + +#: lib/branch_delete.tcl:15 +msgid "Delete Branch" +msgstr "Ta bort gren" + +#: lib/branch_delete.tcl:20 +msgid "Delete Local Branch" +msgstr "Ta bort lokal gren" + +#: lib/branch_delete.tcl:37 +msgid "Local Branches" +msgstr "Lokala grenar" + +#: lib/branch_delete.tcl:52 +msgid "Delete Only If Merged Into" +msgstr "Ta bara bort om sammanslagen med" + +#: lib/branch_delete.tcl:54 +msgid "Always (Do not perform merge test.)" +msgstr "Alltid (utför inte sammanslagningstest)." + +#: lib/branch_delete.tcl:103 +#, tcl-format +msgid "The following branches are not completely merged into %s:" +msgstr "Följande grenar är inte till fullo sammanslagna med %s:" + +#: lib/branch_delete.tcl:115 +msgid "" +"Recovering deleted branches is difficult. \n" +"\n" +" Delete the selected branches?" +msgstr "" +"Det är svårt att återställa borttagna grenar.\n" +"\n" +" Ta bort valda grenar?" + +#: lib/branch_delete.tcl:141 +#, tcl-format +msgid "" +"Failed to delete branches:\n" +"%s" +msgstr "" +"Kunde inte ta bort grenar:\n" +"%s" + +#: lib/branch_rename.tcl:14 lib/branch_rename.tcl:22 +msgid "Rename Branch" +msgstr "Byt namn på gren" + +#: lib/branch_rename.tcl:26 +msgid "Rename" +msgstr "Byt namn" + +#: lib/branch_rename.tcl:36 +msgid "Branch:" +msgstr "Gren:" + +#: lib/branch_rename.tcl:39 +msgid "New Name:" +msgstr "Nytt namn:" + +#: lib/branch_rename.tcl:75 +msgid "Please select a branch to rename." +msgstr "Välj en gren att byta namn på." + - #: lib/branch_rename.tcl:96 lib/checkout_op.tcl:179 ++#: lib/branch_rename.tcl:96 lib/checkout_op.tcl:201 +#, tcl-format +msgid "Branch '%s' already exists." +msgstr "Grenen \"%s\" finns redan." + +#: lib/branch_rename.tcl:117 +#, tcl-format +msgid "Failed to rename '%s'." +msgstr "Kunde inte byta namn på \"%s\"." + +#: lib/browser.tcl:17 +msgid "Starting..." +msgstr "Startar..." + +#: lib/browser.tcl:26 +msgid "File Browser" +msgstr "Filbläddrare" + +#: lib/browser.tcl:126 lib/browser.tcl:143 +#, tcl-format +msgid "Loading %s..." +msgstr "Läser %s..." + +#: lib/browser.tcl:187 +msgid "[Up To Parent]" +msgstr "[Upp till förälder]" + +#: lib/browser.tcl:267 lib/browser.tcl:273 +msgid "Browse Branch Files" +msgstr "Bläddra filer på grenen" + +#: lib/browser.tcl:278 lib/choose_repository.tcl:387 - #: lib/choose_repository.tcl:474 lib/choose_repository.tcl:484 - #: lib/choose_repository.tcl:987 ++#: lib/choose_repository.tcl:472 lib/choose_repository.tcl:482 ++#: lib/choose_repository.tcl:985 +msgid "Browse" +msgstr "Bläddra" + - #: lib/checkout_op.tcl:79 ++#: lib/checkout_op.tcl:84 +#, tcl-format +msgid "Fetching %s from %s" +msgstr "Hämtar %s från %s" + - #: lib/checkout_op.tcl:127 ++#: lib/checkout_op.tcl:132 +#, tcl-format +msgid "fatal: Cannot resolve %s" +msgstr "ödesdigert: Kunde inte slå upp %s" + - #: lib/checkout_op.tcl:140 lib/console.tcl:81 lib/database.tcl:31 ++#: lib/checkout_op.tcl:145 lib/console.tcl:81 lib/database.tcl:31 +msgid "Close" +msgstr "Stäng" + - #: lib/checkout_op.tcl:169 ++#: lib/checkout_op.tcl:174 +#, tcl-format +msgid "Branch '%s' does not exist." +msgstr "Grenen \"%s\" finns inte." + - #: lib/checkout_op.tcl:206 ++#: lib/checkout_op.tcl:193 ++#, tcl-format ++msgid "Failed to configure simplified git-pull for '%s'." ++msgstr "Kunde inte konfigurera förenklad git-pull för '%s'." ++ ++#: lib/checkout_op.tcl:228 +#, tcl-format +msgid "" +"Branch '%s' already exists.\n" +"\n" +"It cannot fast-forward to %s.\n" +"A merge is required." +msgstr "" +"Grenen \"%s\" finns redan.\n" +"\n" +"Den kan inte snabbspolas till %s.\n" +"En sammanslagning krävs." + - #: lib/checkout_op.tcl:220 ++#: lib/checkout_op.tcl:242 +#, tcl-format +msgid "Merge strategy '%s' not supported." +msgstr "Sammanslagningsstrategin \"%s\" stöds inte." + - #: lib/checkout_op.tcl:239 ++#: lib/checkout_op.tcl:261 +#, tcl-format +msgid "Failed to update '%s'." +msgstr "Misslyckades med att uppdatera \"%s\"." + - #: lib/checkout_op.tcl:251 ++#: lib/checkout_op.tcl:273 +msgid "Staging area (index) is already locked." +msgstr "Köområdet (index) är redan låst." + - #: lib/checkout_op.tcl:266 ++#: lib/checkout_op.tcl:288 +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 "" +"Det senaste inlästa tillståndet motsvarar inte tillståndet i arkivet.\n" +"\n" +"Ett annat Git-program har ändrat arkivet sedan senaste avsökningen. Du måste " +"utföra en ny sökning innan den aktuella grenen kan ändras.\n" +"\n" +"Sökningen kommer att startas automatiskt nu.\n" + - #: lib/checkout_op.tcl:322 ++#: lib/checkout_op.tcl:344 +#, tcl-format +msgid "Updating working directory to '%s'..." +msgstr "Uppdaterar arbetskatalogen till \"%s\"..." + - #: lib/checkout_op.tcl:323 ++#: lib/checkout_op.tcl:345 +msgid "files checked out" +msgstr "filer utcheckade" + - #: lib/checkout_op.tcl:353 ++#: lib/checkout_op.tcl:375 +#, tcl-format +msgid "Aborted checkout of '%s' (file level merging is required)." +msgstr "Avbryter utcheckning av \"%s\" (sammanslagning på filnivå krävs)." + - #: lib/checkout_op.tcl:354 ++#: lib/checkout_op.tcl:376 +msgid "File level merge required." +msgstr "Sammanslagning på filnivå krävs." + - #: lib/checkout_op.tcl:358 ++#: lib/checkout_op.tcl:380 +#, tcl-format +msgid "Staying on branch '%s'." +msgstr "Stannar på grenen \"%s\"." + - #: lib/checkout_op.tcl:429 ++#: lib/checkout_op.tcl:451 +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 "" +"Du är inte längre på en lokal gren.\n" +"\n" +"Om du ville vara på en gren skapar du en nu, baserad på \"Denna frånkopplade " +"utcheckning\"." + - #: lib/checkout_op.tcl:446 lib/checkout_op.tcl:450 ++#: lib/checkout_op.tcl:468 lib/checkout_op.tcl:472 +#, tcl-format +msgid "Checked out '%s'." +msgstr "Checkade ut \"%s\"." + - #: lib/checkout_op.tcl:478 ++#: lib/checkout_op.tcl:500 +#, tcl-format +msgid "Resetting '%s' to '%s' will lose the following commits:" +msgstr "" +"Om du återställer \"%s\" till \"%s\" går följande incheckningar förlorade:" + - #: lib/checkout_op.tcl:500 ++#: lib/checkout_op.tcl:522 +msgid "Recovering lost commits may not be easy." +msgstr "Det kanske inte är så enkelt att återskapa förlorade incheckningar." + - #: lib/checkout_op.tcl:505 ++#: lib/checkout_op.tcl:527 +#, tcl-format +msgid "Reset '%s'?" +msgstr "Återställa \"%s\"?" + - #: lib/checkout_op.tcl:510 lib/merge.tcl:163 ++#: lib/checkout_op.tcl:532 lib/merge.tcl:163 +msgid "Visualize" +msgstr "Visualisera" + - #: lib/checkout_op.tcl:578 ++#: lib/checkout_op.tcl:600 +#, 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 "" +"Kunde inte ställa in aktuell gren.\n" +"\n" +"Arbetskatalogen har bara växlats delvis. Vi uppdaterade filerna utan " +"problem, men kunde inte uppdatera en intern fil i Git.\n" +"\n" +"Detta skulle inte ha hänt. %s kommer nu stängas och ge upp." + +#: lib/choose_font.tcl:39 +msgid "Select" +msgstr "Välj" + +#: lib/choose_font.tcl:53 +msgid "Font Family" +msgstr "Teckensnittsfamilj" + +#: lib/choose_font.tcl:74 +msgid "Font Size" +msgstr "Storlek" + +#: lib/choose_font.tcl:91 +msgid "Font Example" +msgstr "Exempel" + +#: lib/choose_font.tcl:103 +msgid "" +"This is example text.\n" +"If you like this text, it can be your font." +msgstr "" +"Detta är en exempeltext.\n" +"Om du tycker om den här texten kan den vara ditt teckensnitt." + +#: lib/choose_repository.tcl:28 +msgid "Git Gui" +msgstr "Git Gui" + +#: lib/choose_repository.tcl:81 lib/choose_repository.tcl:376 +msgid "Create New Repository" +msgstr "Skapa nytt arkiv" + +#: lib/choose_repository.tcl:87 +msgid "New..." +msgstr "Nytt..." + - #: lib/choose_repository.tcl:94 lib/choose_repository.tcl:460 ++#: lib/choose_repository.tcl:94 lib/choose_repository.tcl:458 +msgid "Clone Existing Repository" +msgstr "Klona befintligt arkiv" + +#: lib/choose_repository.tcl:100 +msgid "Clone..." +msgstr "Klona..." + - #: lib/choose_repository.tcl:107 lib/choose_repository.tcl:976 ++#: lib/choose_repository.tcl:107 lib/choose_repository.tcl:974 +msgid "Open Existing Repository" +msgstr "Öppna befintligt arkiv" + +#: lib/choose_repository.tcl:113 +msgid "Open..." +msgstr "Öppna..." + +#: lib/choose_repository.tcl:126 +msgid "Recent Repositories" +msgstr "Senaste arkiven" + +#: lib/choose_repository.tcl:132 +msgid "Open Recent Repository:" +msgstr "Öppna tidigare arkiv:" + +#: lib/choose_repository.tcl:296 lib/choose_repository.tcl:303 +#: lib/choose_repository.tcl:310 +#, tcl-format +msgid "Failed to create repository %s:" +msgstr "Kunde inte skapa arkivet %s:" + - #: lib/choose_repository.tcl:381 lib/choose_repository.tcl:478 ++#: lib/choose_repository.tcl:381 lib/choose_repository.tcl:476 +msgid "Directory:" +msgstr "Katalog:" + - #: lib/choose_repository.tcl:412 lib/choose_repository.tcl:537 - #: lib/choose_repository.tcl:1011 ++#: lib/choose_repository.tcl:410 lib/choose_repository.tcl:535 ++#: lib/choose_repository.tcl:1007 +msgid "Git Repository" +msgstr "Gitarkiv" + - #: lib/choose_repository.tcl:437 ++#: lib/choose_repository.tcl:435 +#, tcl-format +msgid "Directory %s already exists." +msgstr "Katalogen %s finns redan." + - #: lib/choose_repository.tcl:441 ++#: lib/choose_repository.tcl:439 +#, tcl-format +msgid "File %s already exists." +msgstr "Filen %s finns redan." + - #: lib/choose_repository.tcl:455 ++#: lib/choose_repository.tcl:453 +msgid "Clone" +msgstr "Klona" + - #: lib/choose_repository.tcl:468 ++#: lib/choose_repository.tcl:466 +msgid "URL:" +msgstr "Webbadress:" + - #: lib/choose_repository.tcl:489 ++#: lib/choose_repository.tcl:487 +msgid "Clone Type:" +msgstr "Typ av klon:" + - #: lib/choose_repository.tcl:495 ++#: lib/choose_repository.tcl:493 +msgid "Standard (Fast, Semi-Redundant, Hardlinks)" +msgstr "Standard (snabb, semiredundant, hårda länkar)" + - #: lib/choose_repository.tcl:501 ++#: lib/choose_repository.tcl:499 +msgid "Full Copy (Slower, Redundant Backup)" +msgstr "Full kopia (långsammare, redundant säkerhetskopia)" + - #: lib/choose_repository.tcl:507 ++#: lib/choose_repository.tcl:505 +msgid "Shared (Fastest, Not Recommended, No Backup)" +msgstr "Delad (snabbast, rekommenderas ej, ingen säkerhetskopia)" + - #: lib/choose_repository.tcl:543 lib/choose_repository.tcl:590 - #: lib/choose_repository.tcl:736 lib/choose_repository.tcl:806 - #: lib/choose_repository.tcl:1017 lib/choose_repository.tcl:1025 ++#: lib/choose_repository.tcl:541 lib/choose_repository.tcl:588 ++#: lib/choose_repository.tcl:734 lib/choose_repository.tcl:804 ++#: lib/choose_repository.tcl:1013 lib/choose_repository.tcl:1021 +#, tcl-format +msgid "Not a Git repository: %s" +msgstr "Inte ett Gitarkiv: %s" + - #: lib/choose_repository.tcl:579 ++#: lib/choose_repository.tcl:577 +msgid "Standard only available for local repository." +msgstr "Standard är endast tillgängligt för lokala arkiv." + - #: lib/choose_repository.tcl:583 ++#: lib/choose_repository.tcl:581 +msgid "Shared only available for local repository." +msgstr "Delat är endast tillgängligt för lokala arkiv." + - #: lib/choose_repository.tcl:604 ++#: lib/choose_repository.tcl:602 +#, tcl-format +msgid "Location %s already exists." +msgstr "Platsen %s finns redan." + - #: lib/choose_repository.tcl:615 ++#: lib/choose_repository.tcl:613 +msgid "Failed to configure origin" +msgstr "Kunde inte konfigurera ursprung" + - #: lib/choose_repository.tcl:627 ++#: lib/choose_repository.tcl:625 +msgid "Counting objects" +msgstr "Räknar objekt" + - #: lib/choose_repository.tcl:628 ++#: lib/choose_repository.tcl:626 +msgid "buckets" +msgstr "hinkar" + - #: lib/choose_repository.tcl:652 ++#: lib/choose_repository.tcl:650 +#, tcl-format +msgid "Unable to copy objects/info/alternates: %s" +msgstr "Kunde inte kopiera objekt/info/alternativ: %s" + - #: lib/choose_repository.tcl:688 ++#: lib/choose_repository.tcl:686 +#, tcl-format +msgid "Nothing to clone from %s." +msgstr "Ingenting att klona från %s." + - #: lib/choose_repository.tcl:690 lib/choose_repository.tcl:904 - #: lib/choose_repository.tcl:916 ++#: lib/choose_repository.tcl:688 lib/choose_repository.tcl:902 ++#: lib/choose_repository.tcl:914 +msgid "The 'master' branch has not been initialized." +msgstr "Grenen \"master\" har inte initierats." + - #: lib/choose_repository.tcl:703 ++#: lib/choose_repository.tcl:701 +msgid "Hardlinks are unavailable. Falling back to copying." +msgstr "Hårda länkar är inte tillgängliga. Faller tillbaka på kopiering." + - #: lib/choose_repository.tcl:715 ++#: lib/choose_repository.tcl:713 +#, tcl-format +msgid "Cloning from %s" +msgstr "Klonar från %s" + - #: lib/choose_repository.tcl:746 ++#: lib/choose_repository.tcl:744 +msgid "Copying objects" +msgstr "Kopierar objekt" + - #: lib/choose_repository.tcl:747 ++#: lib/choose_repository.tcl:745 +msgid "KiB" +msgstr "KiB" + - #: lib/choose_repository.tcl:771 ++#: lib/choose_repository.tcl:769 +#, tcl-format +msgid "Unable to copy object: %s" +msgstr "Kunde inte kopiera objekt: %s" + - #: lib/choose_repository.tcl:781 ++#: lib/choose_repository.tcl:779 +msgid "Linking objects" +msgstr "Länkar objekt" + - #: lib/choose_repository.tcl:782 ++#: lib/choose_repository.tcl:780 +msgid "objects" +msgstr "objekt" + - #: lib/choose_repository.tcl:790 ++#: lib/choose_repository.tcl:788 +#, tcl-format +msgid "Unable to hardlink object: %s" +msgstr "Kunde inte hårdlänka objekt: %s" + - #: lib/choose_repository.tcl:845 ++#: lib/choose_repository.tcl:843 +msgid "Cannot fetch branches and objects. See console output for details." +msgstr "Kunde inte hämta grenar och objekt. Se konsolutdata för detaljer." + - #: lib/choose_repository.tcl:856 ++#: lib/choose_repository.tcl:854 +msgid "Cannot fetch tags. See console output for details." +msgstr "Kunde inte hämta taggar. Se konsolutdata för detaljer." + - #: lib/choose_repository.tcl:880 ++#: lib/choose_repository.tcl:878 +msgid "Cannot determine HEAD. See console output for details." +msgstr "Kunde inte avgöra HEAD. Se konsolutdata för detaljer." + - #: lib/choose_repository.tcl:889 ++#: lib/choose_repository.tcl:887 +#, tcl-format +msgid "Unable to cleanup %s" +msgstr "Kunde inte städa upp %s" + - #: lib/choose_repository.tcl:895 ++#: lib/choose_repository.tcl:893 +msgid "Clone failed." +msgstr "Kloning misslyckades." + - #: lib/choose_repository.tcl:902 ++#: lib/choose_repository.tcl:900 +msgid "No default branch obtained." +msgstr "Hämtade ingen standardgren." + - #: lib/choose_repository.tcl:913 ++#: lib/choose_repository.tcl:911 +#, tcl-format +msgid "Cannot resolve %s as a commit." +msgstr "Kunde inte slå upp %s till någon incheckning." + - #: lib/choose_repository.tcl:925 ++#: lib/choose_repository.tcl:923 +msgid "Creating working directory" +msgstr "Skapar arbetskatalog" + - #: lib/choose_repository.tcl:926 lib/index.tcl:65 lib/index.tcl:127 ++#: lib/choose_repository.tcl:924 lib/index.tcl:65 lib/index.tcl:127 +#: lib/index.tcl:193 +msgid "files" +msgstr "filer" + - #: lib/choose_repository.tcl:955 ++#: lib/choose_repository.tcl:953 +msgid "Initial file checkout failed." +msgstr "Inledande filutcheckning misslyckades." + - #: lib/choose_repository.tcl:971 ++#: lib/choose_repository.tcl:969 +msgid "Open" +msgstr "Öppna" + - #: lib/choose_repository.tcl:981 ++#: lib/choose_repository.tcl:979 +msgid "Repository:" +msgstr "Arkiv:" + - #: lib/choose_repository.tcl:1031 ++#: lib/choose_repository.tcl:1027 +#, tcl-format +msgid "Failed to open repository %s:" +msgstr "Kunde inte öppna arkivet %s:" + +#: lib/choose_rev.tcl:53 +msgid "This Detached Checkout" +msgstr "Denna frånkopplade utcheckning" + +#: lib/choose_rev.tcl:60 +msgid "Revision Expression:" +msgstr "Revisionsuttryck:" + +#: lib/choose_rev.tcl:74 +msgid "Local Branch" +msgstr "Lokal gren" + +#: lib/choose_rev.tcl:79 +msgid "Tracking Branch" +msgstr "Spårande gren" + +#: lib/choose_rev.tcl:84 lib/choose_rev.tcl:538 +msgid "Tag" +msgstr "Tagg" + +#: lib/choose_rev.tcl:317 +#, tcl-format +msgid "Invalid revision: %s" +msgstr "Ogiltig revision: %s" + +#: lib/choose_rev.tcl:338 +msgid "No revision selected." +msgstr "Ingen revision vald." + +#: lib/choose_rev.tcl:346 +msgid "Revision expression is empty." +msgstr "Revisionsuttrycket är tomt." + +#: lib/choose_rev.tcl:531 +msgid "Updated" +msgstr "Uppdaterad" + +#: lib/choose_rev.tcl:559 +msgid "URL" +msgstr "Webbadress" + +#: 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 "" +"Det finns ingenting att utöka.\n" +"\n" +"Du håller på att skapa den inledande incheckningen. Det finns ingen tidigare " +"incheckning att utöka.\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 "" +"Kan inte utöka vid sammanslagning.\n" +"\n" +"Du är i mitten av en sammanslagning som inte är fullbordad. Du kan inte " +"utöka tidigare incheckningar om du inte först avbryter den pågående " +"sammanslagningen.\n" + +#: lib/commit.tcl:49 +msgid "Error loading commit data for amend:" +msgstr "Fel vid inläsning av incheckningsdata för utökning:" + +#: lib/commit.tcl:76 +msgid "Unable to obtain your identity:" +msgstr "Kunde inte hämta din identitet:" + +#: lib/commit.tcl:81 +msgid "Invalid GIT_COMMITTER_IDENT:" +msgstr "Felaktig GIT_COMMITTER_IDENT:" + +#: lib/commit.tcl:133 +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 "" +"Det senaste inlästa tillståndet motsvarar inte tillståndet i arkivet.\n" +"\n" +"Ett annat Git-program har ändrat arkivet sedan senaste avsökningen. Du måste " +"utföra en ny sökning innan du kan göra en ny incheckning.\n" +"\n" +"Sökningen kommer att startas automatiskt nu.\n" + +#: lib/commit.tcl:154 +#, 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 "" +"Osammanslagna filer kan inte checkas in.\n" +"\n" +"Filen %s har sammanslagningskonflikter. Du måste lösa dem och köa filen " +"innan du checkar in den.\n" + +#: lib/commit.tcl:162 +#, tcl-format +msgid "" +"Unknown file state %s detected.\n" +"\n" +"File %s cannot be committed by this program.\n" +msgstr "" +"Okänd filstatus %s upptäckt.\n" +"\n" +"Filen %s kan inte checkas in av programmet.\n" + +#: lib/commit.tcl:170 +msgid "" +"No changes to commit.\n" +"\n" +"You must stage at least 1 file before you can commit.\n" +msgstr "" +"Inga ändringar att checka in.\n" +"\n" +"Du måste köa åtminstone en fil innan du kan checka in.\n" + +#: lib/commit.tcl:183 +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 "" +"Ange ett incheckningsmeddelande.\n" +"\n" +"Ett bra incheckningsmeddelande har följande format:\n" +"\n" +"- Första raden: Beskriv i en mening vad du gjorde.\n" +"- Andra raden: Tom\n" +"- Följande rader: Beskriv varför det här är en bra ändring.\n" + +#: lib/commit.tcl:207 +#, tcl-format +msgid "warning: Tcl does not support encoding '%s'." +msgstr "varning: Tcl stöder inte teckenkodningen \"%s\"." + +#: lib/commit.tcl:221 +msgid "Calling pre-commit hook..." +msgstr "Anropar krok före incheckning..." + +#: lib/commit.tcl:236 +msgid "Commit declined by pre-commit hook." +msgstr "Incheckningen avvisades av krok före incheckning." + +#: lib/commit.tcl:259 +msgid "Calling commit-msg hook..." +msgstr "Anropar krok för incheckningsmeddelande..." + +#: lib/commit.tcl:274 +msgid "Commit declined by commit-msg hook." +msgstr "Incheckning avvisad av krok för incheckningsmeddelande." + +#: lib/commit.tcl:287 +msgid "Committing changes..." +msgstr "Checkar in ändringar..." + +#: lib/commit.tcl:303 +msgid "write-tree failed:" +msgstr "write-tree misslyckades:" + +#: lib/commit.tcl:304 lib/commit.tcl:348 lib/commit.tcl:368 +msgid "Commit failed." +msgstr "Incheckningen misslyckades." + +#: lib/commit.tcl:321 +#, tcl-format +msgid "Commit %s appears to be corrupt" +msgstr "Incheckningen %s verkar vara trasig" + +#: lib/commit.tcl:326 +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 "" +"Inga ändringar att checka in.\n" +"\n" +"Inga filer ändrades av incheckningen och det var inte en sammanslagning.\n" +"\n" +"En sökning kommer att startas automatiskt nu.\n" + +#: lib/commit.tcl:333 +msgid "No changes to commit." +msgstr "Inga ändringar att checka in." + +#: lib/commit.tcl:347 +msgid "commit-tree failed:" +msgstr "commit-tree misslyckades:" + +#: lib/commit.tcl:367 +msgid "update-ref failed:" +msgstr "update-ref misslyckades:" + +#: lib/commit.tcl:454 +#, tcl-format +msgid "Created commit %s: %s" +msgstr "Skapade incheckningen %s: %s" + +#: lib/console.tcl:59 +msgid "Working... please wait..." +msgstr "Arbetar... vänta..." + +#: lib/console.tcl:186 +msgid "Success" +msgstr "Lyckades" + +#: lib/console.tcl:200 +msgid "Error: Command Failed" +msgstr "Fel: Kommando misslyckades" + +#: lib/database.tcl:43 +msgid "Number of loose objects" +msgstr "Antal lösa objekt" + +#: lib/database.tcl:44 +msgid "Disk space used by loose objects" +msgstr "Diskutrymme använt av lösa objekt" + +#: lib/database.tcl:45 +msgid "Number of packed objects" +msgstr "Antal packade objekt" + +#: lib/database.tcl:46 +msgid "Number of packs" +msgstr "Antal paket" + +#: lib/database.tcl:47 +msgid "Disk space used by packed objects" +msgstr "Diskutrymme använt av packade objekt" + +#: lib/database.tcl:48 +msgid "Packed objects waiting for pruning" +msgstr "Packade objekt som väntar på städning" + +#: lib/database.tcl:49 +msgid "Garbage files" +msgstr "Skräpfiler" + +#: lib/database.tcl:72 +msgid "Compressing the object database" +msgstr "Komprimerar objektdatabasen" + +#: lib/database.tcl:83 +msgid "Verifying the object database with fsck-objects" +msgstr "Verifierar objektdatabasen med fsck-objects" + +#: lib/database.tcl:108 +#, 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 when more than %i loose objects exist.\n" +"\n" +"Compress the database now?" +msgstr "" +"Arkivet har för närvarande omkring %i lösa objekt.\n" +"\n" +"För att bibehålla optimal prestanda rekommenderas det å det bestämdaste att " +"du komprimerar databasen när den innehåller mer än %i lösa objekt.\n" +"\n" +"Komprimera databasen nu?" + +#: lib/date.tcl:25 +#, tcl-format +msgid "Invalid date from Git: %s" +msgstr "Ogiltigt datum från Git: %s" + - #: lib/diff.tcl:42 ++#: lib/diff.tcl:44 +#, 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 "" +"Hittade inga skillnader.\n" +"\n" +"%s innehåller inga ändringar.\n" +"\n" +"Modifieringsdatum för filen uppdaterades av ett annat program, men " +"innehållet i filen har inte ändrats.\n" +"\n" +"En sökning kommer automatiskt att startas för att hitta andra filer som kan " +"vara i samma tillstånd." + - #: lib/diff.tcl:81 ++#: lib/diff.tcl:83 +#, tcl-format +msgid "Loading diff of %s..." +msgstr "Läser differens för %s..." + - #: lib/diff.tcl:114 lib/diff.tcl:184 ++#: lib/diff.tcl:116 lib/diff.tcl:190 +#, tcl-format +msgid "Unable to display %s" +msgstr "Kan inte visa %s" + - #: lib/diff.tcl:115 ++#: lib/diff.tcl:117 +msgid "Error loading file:" +msgstr "Fel vid läsning av fil:" + - #: lib/diff.tcl:122 ++#: lib/diff.tcl:124 +msgid "Git Repository (subproject)" +msgstr "Gitarkiv (underprojekt)" + - #: lib/diff.tcl:134 ++#: lib/diff.tcl:136 +msgid "* Binary file (not showing content)." +msgstr "* Binärfil (visar inte innehållet)." + - #: lib/diff.tcl:185 ++#: lib/diff.tcl:191 +msgid "Error loading diff:" +msgstr "Fel vid inläsning av differens:" + - #: lib/diff.tcl:303 ++#: lib/diff.tcl:313 +msgid "Failed to unstage selected hunk." +msgstr "Kunde inte ta bort den valda delen från kön." + - #: lib/diff.tcl:310 ++#: lib/diff.tcl:320 +msgid "Failed to stage selected hunk." +msgstr "Kunde inte lägga till den valda delen till kön." + ++#: lib/diff.tcl:386 ++msgid "Failed to unstage selected line." ++msgstr "Kunde inte ta bort den valda raden från kön." ++ ++#: lib/diff.tcl:394 ++msgid "Failed to stage selected line." ++msgstr "Kunde inte lägga till den valda raden till kön." ++ +#: lib/error.tcl:20 lib/error.tcl:114 +msgid "error" +msgstr "fel" + +#: lib/error.tcl:36 +msgid "warning" +msgstr "varning" + +#: lib/error.tcl:94 +msgid "You must correct the above errors before committing." +msgstr "Du måste rätta till felen ovan innan du checkar in." + +#: lib/index.tcl:6 +msgid "Unable to unlock the index." +msgstr "Kunde inte låsa upp indexet." + +#: lib/index.tcl:15 +msgid "Index Error" +msgstr "Indexfel" + +#: lib/index.tcl:21 +msgid "" +"Updating the Git index failed. A rescan will be automatically started to " +"resynchronize git-gui." +msgstr "" +"Misslyckades med att uppdatera Gitindexet. En omsökning kommer att startas " +"automatiskt för att synkronisera om git-gui." + +#: lib/index.tcl:27 +msgid "Continue" +msgstr "Forstätt" + +#: lib/index.tcl:31 +msgid "Unlock Index" +msgstr "Lås upp index" + +#: lib/index.tcl:282 +#, tcl-format +msgid "Unstaging %s from commit" +msgstr "Tar bort %s för incheckningskön" + +#: lib/index.tcl:313 +msgid "Ready to commit." +msgstr "Redo att checka in." + +#: lib/index.tcl:326 +#, tcl-format +msgid "Adding %s" +msgstr "Lägger till %s" + +#: lib/index.tcl:381 +#, tcl-format +msgid "Revert changes in file %s?" +msgstr "Återställ ändringarna i filen %s?" + +#: lib/index.tcl:383 +#, tcl-format +msgid "Revert changes in these %i files?" +msgstr "Återställ ändringarna i dessa %i filer?" + +#: lib/index.tcl:391 +msgid "Any unstaged changes will be permanently lost by the revert." +msgstr "" +"Alla oköade ändringar kommer permanent gå förlorade vid återställningen." + +#: lib/index.tcl:394 +msgid "Do Nothing" +msgstr "Gör ingenting" + +#: 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 "" +"Kan inte slå ihop vid utökning.\n" +"\n" +"Du måste göra färdig utökningen av incheckningen innan du påbörjar någon " +"slags sammanslagning.\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 "" +"Det senaste inlästa tillståndet motsvarar inte tillståndet i arkivet.\n" +"\n" +"Ett annat Git-program har ändrat arkivet sedan senaste avsökningen. Du måste " +"utföra en ny sökning innan du kan utföra en sammanslagning.\n" +"\n" +"Sökningen kommer att startas automatiskt nu.\n" + +#: lib/merge.tcl:44 +#, 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 "" +"Du är mitt i en sammanslagning med konflikter.\n" +"\n" +"Filen %s har sammanslagningskonflikter.\n" +"\n" +"Du måste lösa dem, köa filen och checka in för att fullborda den aktuella " +"sammanslagningen. När du gjort det kan du påbörja en ny sammanslagning.\n" + +#: lib/merge.tcl:54 +#, 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 "" +"Du är mitt i en ändring.\n" +"\n" +"Filen %s har ändringar.\n" +"\n" +"Du bör fullborda den aktuella incheckningen innan du påbörjar en " +"sammanslagning. Om du gör det blir det enklare att avbryta en misslyckad " +"sammanslagning, om det skulle vara nödvändigt.\n" + +#: lib/merge.tcl:106 +#, tcl-format +msgid "%s of %s" +msgstr "%s av %s" + +#: lib/merge.tcl:119 +#, tcl-format +msgid "Merging %s and %s..." +msgstr "Slår ihop %s och %s..." + +#: lib/merge.tcl:130 +msgid "Merge completed successfully." +msgstr "Sammanslagningen avslutades framgångsrikt." + +#: lib/merge.tcl:132 +msgid "Merge failed. Conflict resolution is required." +msgstr "Sammanslagningen misslyckades. Du måste lösa konflikterna." + +#: lib/merge.tcl:157 +#, tcl-format +msgid "Merge Into %s" +msgstr "Slå ihop i %s" + +#: lib/merge.tcl:176 +msgid "Revision To Merge" +msgstr "Revisioner att slå ihop" + +#: lib/merge.tcl:211 +msgid "" +"Cannot abort while amending.\n" +"\n" +"You must finish amending this commit.\n" +msgstr "" +"Kan inte avbryta vid utökning.\n" +"\n" +"Du måste göra dig färdig med att utöka incheckningen.\n" + +#: lib/merge.tcl:221 +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 "" +"Avbryt sammanslagning?\n" +"\n" +"Om du avbryter sammanslagningen kommer *ALLA* ej incheckade ändringar att gå " +"förlorade.\n" +"\n" +"Gå vidare med att avbryta den aktuella sammanslagningen?" + +#: lib/merge.tcl:227 +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 "" +"Återställ ändringar?\n" +"\n" +"Om du återställer ändringarna kommer *ALLA* ej incheckade ändringar att gå " +"förlorade.\n" +"\n" +"Gå vidare med att återställa de aktuella ändringarna?" + +#: lib/merge.tcl:238 +msgid "Aborting" +msgstr "Avbryter" + +#: lib/merge.tcl:238 +msgid "files reset" +msgstr "filer återställda" + - #: lib/merge.tcl:265 ++#: lib/merge.tcl:266 +msgid "Abort failed." +msgstr "Misslyckades avbryta." + - #: lib/merge.tcl:267 ++#: lib/merge.tcl:268 +msgid "Abort completed. Ready." +msgstr "Avbrytning fullbordad. Redo." + +#: lib/option.tcl:95 +msgid "Restore Defaults" +msgstr "Återställ standardvärden" + +#: lib/option.tcl:99 +msgid "Save" +msgstr "Spara" + +#: lib/option.tcl:109 +#, tcl-format +msgid "%s Repository" +msgstr "Arkivet %s" + +#: lib/option.tcl:110 +msgid "Global (All Repositories)" +msgstr "Globalt (alla arkiv)" + +#: lib/option.tcl:116 +msgid "User Name" +msgstr "Användarnamn" + +#: lib/option.tcl:117 +msgid "Email Address" +msgstr "E-postadress" + +#: lib/option.tcl:119 +msgid "Summarize Merge Commits" +msgstr "Summera sammanslagningsincheckningar" + +#: lib/option.tcl:120 +msgid "Merge Verbosity" +msgstr "Pratsamhet för sammanslagningar" + +#: lib/option.tcl:121 +msgid "Show Diffstat After Merge" +msgstr "Visa diffstatistik efter sammanslagning" + +#: lib/option.tcl:123 +msgid "Trust File Modification Timestamps" +msgstr "Lita på filändringstidsstämplar" + +#: lib/option.tcl:124 +msgid "Prune Tracking Branches During Fetch" +msgstr "Städa spårade grenar vid hämtning" + +#: lib/option.tcl:125 +msgid "Match Tracking Branches" +msgstr "Matcha spårade grenar" + +#: lib/option.tcl:126 ++msgid "Blame Copy Only On Changed Files" ++msgstr "Klandra kopiering bara i ändrade filer" ++ ++#: lib/option.tcl:127 ++msgid "Minimum Letters To Blame Copy On" ++msgstr "Minsta antal tecken att klandra kopiering för" ++ ++#: lib/option.tcl:128 +msgid "Number of Diff Context Lines" +msgstr "Antal rader sammanhang i differenser" + - #: lib/option.tcl:127 ++#: lib/option.tcl:129 +msgid "Commit Message Text Width" +msgstr "Textbredd för incheckningsmeddelande" + - #: lib/option.tcl:128 ++#: lib/option.tcl:130 +msgid "New Branch Name Template" +msgstr "Mall för namn på nya grenar" + - #: lib/option.tcl:192 ++#: lib/option.tcl:194 +msgid "Spelling Dictionary:" +msgstr "Stavningsordlista:" + - #: lib/option.tcl:216 ++#: lib/option.tcl:218 +msgid "Change Font" +msgstr "Byt teckensnitt" + - #: lib/option.tcl:220 ++#: lib/option.tcl:222 +#, tcl-format +msgid "Choose %s" +msgstr "Välj %s" + - #: lib/option.tcl:226 ++#: lib/option.tcl:228 +msgid "pt." +msgstr "p." + - #: lib/option.tcl:240 ++#: lib/option.tcl:242 +msgid "Preferences" +msgstr "Inställningar" + - #: lib/option.tcl:275 ++#: lib/option.tcl:277 +msgid "Failed to completely save options:" +msgstr "Misslyckades med att helt spara alternativ:" + +#: lib/remote_branch_delete.tcl:29 lib/remote_branch_delete.tcl:34 +msgid "Delete Remote Branch" +msgstr "Ta bort fjärrgren" + +#: lib/remote_branch_delete.tcl:47 +msgid "From Repository" +msgstr "Från arkiv" + +#: lib/remote_branch_delete.tcl:50 lib/transport.tcl:123 +msgid "Remote:" +msgstr "Fjärr:" + +#: lib/remote_branch_delete.tcl:66 lib/transport.tcl:138 +msgid "Arbitrary URL:" +msgstr "Godtycklig webbadress:" + +#: lib/remote_branch_delete.tcl:84 +msgid "Branches" +msgstr "Grenar" + +#: lib/remote_branch_delete.tcl:109 +msgid "Delete Only If" +msgstr "Ta endast bort om" + +#: lib/remote_branch_delete.tcl:111 +msgid "Merged Into:" +msgstr "Sammanslagen i:" + +#: lib/remote_branch_delete.tcl:119 +msgid "Always (Do not perform merge checks)" +msgstr "Alltid (utför inte sammanslagningstest)" + +#: lib/remote_branch_delete.tcl:152 +msgid "A branch is required for 'Merged Into'." +msgstr "En gren krävs för \"Sammanslagen i\"." + +#: lib/remote_branch_delete.tcl:184 +#, tcl-format +msgid "" +"The following branches are not completely merged into %s:\n" +"\n" +" - %s" +msgstr "" +"Följande grenar har inte helt slagits samman i %s:\n" +"\n" +" - %s" + +#: 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 "" +"En eller flera av sammanslagningstesterna misslyckades eftersom du inte har " +"hämtat de nödvändiga incheckningarna. Försök hämta från %s först." + +#: lib/remote_branch_delete.tcl:207 +msgid "Please select one or more branches to delete." +msgstr "Välj en eller flera grenar att ta bort." + +#: lib/remote_branch_delete.tcl:216 +msgid "" +"Recovering deleted branches is difficult.\n" +"\n" +"Delete the selected branches?" +msgstr "" +"Det kan vara svårt att återställa borttagna grenar.\n" +"\n" +"Ta bort de valda grenarna?" + +#: lib/remote_branch_delete.tcl:226 +#, tcl-format +msgid "Deleting branches from %s" +msgstr "Tar bort grenar från %s" + +#: lib/remote_branch_delete.tcl:286 +msgid "No repository selected." +msgstr "Inget arkiv markerat." + +#: lib/remote_branch_delete.tcl:291 +#, tcl-format +msgid "Scanning %s..." +msgstr "Söker %s..." + +#: lib/remote.tcl:165 +msgid "Prune from" +msgstr "Ta bort från" + +#: lib/remote.tcl:170 +msgid "Fetch from" +msgstr "Hämta från" + +#: lib/remote.tcl:213 +msgid "Push to" +msgstr "Sänd till" + +#: lib/shortcut.tcl:20 lib/shortcut.tcl:61 +msgid "Cannot write shortcut:" +msgstr "Kan inte skriva genväg:" + +#: lib/shortcut.tcl:136 +msgid "Cannot write icon:" +msgstr "Kan inte skriva ikon:" + +#: lib/spellcheck.tcl:57 +msgid "Unsupported spell checker" +msgstr "Stavningskontrollprogrammet stöds inte" + +#: lib/spellcheck.tcl:65 +msgid "Spell checking is unavailable" +msgstr "Stavningskontroll är ej tillgänglig" + +#: lib/spellcheck.tcl:68 +msgid "Invalid spell checking configuration" +msgstr "Ogiltig inställning för stavningskontroll" + +#: lib/spellcheck.tcl:70 +#, tcl-format +msgid "Reverting dictionary to %s." +msgstr "Återställer ordlistan till %s." + +#: lib/spellcheck.tcl:73 +msgid "Spell checker silently failed on startup" +msgstr "Stavningskontroll misslyckades tyst vid start" + +#: lib/spellcheck.tcl:80 +msgid "Unrecognized spell checker" +msgstr "Stavningskontrollprogrammet känns inte igen" + - #: lib/spellcheck.tcl:180 ++#: lib/spellcheck.tcl:186 +msgid "No Suggestions" +msgstr "Inga förslag" + - #: lib/spellcheck.tcl:381 ++#: lib/spellcheck.tcl:387 +msgid "Unexpected EOF from spell checker" +msgstr "Oväntat filslut från stavningskontroll" + - #: lib/spellcheck.tcl:385 ++#: lib/spellcheck.tcl:391 +msgid "Spell Checker Failed" +msgstr "Stavningskontroll misslyckades" + +#: lib/status_bar.tcl:83 +#, tcl-format +msgid "%s ... %*i of %*i %s (%3i%%)" +msgstr "%s... %*i av %*i %s (%3i%%)" + +#: lib/transport.tcl:6 +#, tcl-format +msgid "fetch %s" +msgstr "hämta %s" + +#: lib/transport.tcl:7 +#, tcl-format +msgid "Fetching new changes from %s" +msgstr "Hämtar nya ändringar från %s" + +#: lib/transport.tcl:18 +#, tcl-format +msgid "remote prune %s" +msgstr "fjärrborttagning %s" + +#: lib/transport.tcl:19 +#, tcl-format +msgid "Pruning tracking branches deleted from %s" +msgstr "Tar bort spårande grenar som tagits bort från %s" + +#: lib/transport.tcl:25 lib/transport.tcl:71 +#, tcl-format +msgid "push %s" +msgstr "sänd %s" + +#: lib/transport.tcl:26 +#, tcl-format +msgid "Pushing changes to %s" +msgstr "Sänder ändringar till %s" + +#: lib/transport.tcl:72 +#, tcl-format +msgid "Pushing %s %s to %s" +msgstr "Sänder %s %s till %s" + +#: lib/transport.tcl:89 +msgid "Push Branches" +msgstr "Sänder grenar" + +#: lib/transport.tcl:103 +msgid "Source Branches" +msgstr "Källgrenar" + +#: lib/transport.tcl:120 +msgid "Destination Repository" +msgstr "Destinationsarkiv" + +#: lib/transport.tcl:158 +msgid "Transfer Options" +msgstr "Överföringsalternativ" + +#: lib/transport.tcl:160 +msgid "Force overwrite existing branch (may discard changes)" +msgstr "Tvinga överskrivning av befintlig gren (kan kasta bort ändringar)" + +#: lib/transport.tcl:164 +msgid "Use thin pack (for slow network connections)" +msgstr "Använd tunt paket (för långsamma nätverksanslutningar)" + +#: lib/transport.tcl:168 +msgid "Include tags" +msgstr "Ta med taggar" + ++#~ msgid "" ++#~ "Unable to start gitk:\n" ++#~ "\n" ++#~ "%s does not exist" ++#~ msgstr "" ++#~ "Kan inte starta gitk:\n" ++#~ "\n" ++#~ "%s finns inte" ++ ++#~ msgid "Apple" ++#~ msgstr "Äpple" ++ +#~ msgid "Not connected to aspell" +#~ msgstr "Inte ansluten till aspell"