git
11 years agogit-gui: change dialog button positions for Windows to suit platform.
Pat Thoyts [Fri, 17 May 2013 09:51:01 +0000 (10:51 +0100)] 
git-gui: change dialog button positions for Windows to suit platform.

On windows it is more common to have cancel furthest on the right.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
11 years agogit-gui: allow "\ No newline at end of file" for linewise staging
Heiko Voigt [Thu, 9 May 2013 16:30:02 +0000 (18:30 +0200)] 
git-gui: allow "\ No newline at end of file" for linewise staging

Counting of lines did not skip this line when generating the hunk
header.

Acked-by: Tobias Preuss <tobias.preuss@googlemail.com>
Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
11 years agogit-gui: fix the mergetool launcher for the Beyond Compare tool.
Pat Thoyts [Fri, 22 Feb 2013 20:13:21 +0000 (20:13 +0000)] 
git-gui: fix the mergetool launcher for the Beyond Compare tool.

When using Beyond Compare as the mergetool it fails to save the merged
result correctly due to a quoting problem when executing the tool.
This patch solves the quoting problem.

Signed-off-by: Warren Falk <warren@warrenfalk.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
11 years agoMakefile: replace "echo 1>..." with "echo >..."
Christian Couder [Tue, 18 Dec 2012 18:47:20 +0000 (19:47 +0100)] 
Makefile: replace "echo 1>..." with "echo >..."

This is clearer to many people this way.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
11 years agoFrench translation: copy -> copie.
Grahack [Wed, 28 Nov 2012 14:49:43 +0000 (15:49 +0100)] 
French translation: copy -> copie.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: Fix parsing of <rev> <path-which-not-present-in-worktree>
Kirill Smelkov [Tue, 13 Nov 2012 12:30:17 +0000 (16:30 +0400)] 
git-gui: Fix parsing of <rev> <path-which-not-present-in-worktree>

Commit e3d06ca9 (git-gui: Detect full path when parsing arguments) broke

    git gui blame rev path-not-present-in-worktree

in particular this does not work anymore:

    # in linux.git
    $ git gui blame 2bb8c26242c2393b097a993ffe9b003ec9b85395 drivers/net/sky2.c

This patch restores the original functionality in this case.

Acked-by: Andrew Wong <andrew.kw.w@gmail.com>
Signed-off-by: Kirill Smelkov <kirr@mns.spb.ru>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui 0.17 gitgui-0.17.0
Pat Thoyts [Wed, 17 Oct 2012 20:57:29 +0000 (21:57 +0100)] 
git-gui 0.17

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: Don't prepend the prefix if value looks like a full path
Andrew Wong [Tue, 2 Oct 2012 16:25:15 +0000 (12:25 -0400)] 
git-gui: Don't prepend the prefix if value looks like a full path

When argument parsing fails to detect a file name, "git-gui" will try to
use the previously detected "head" as the file name. We should avoid
prepending the prefix if "head" looks like a full path.

Signed-off-by: Andrew Wong <andrew.kw.w@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: Detect full path when parsing arguments
Andrew Wong [Tue, 2 Oct 2012 16:25:14 +0000 (12:25 -0400)] 
git-gui: Detect full path when parsing arguments

When running "git-gui blame" from a subfolder (which means prefix is
non-empty), if we pass a full path as argument, the argument parsing
will fail to recognize the argument as a file name, because prefix is
prepended to the argument.

This patch handles that scenario by adding an additional branch that
checks the file name without using the prefix.

Signed-off-by: Andrew Wong <andrew.kw.w@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: remove .git/CHERRY_PICK_HEAD after committing
Beat Bolli [Sat, 18 Aug 2012 20:28:00 +0000 (13:28 -0700)] 
git-gui: remove .git/CHERRY_PICK_HEAD after committing

Adding _git_ps1() to one's bash prompt displays various repo status
info after each command. After committing a git cherry-pick -n using
git-gui, the prompt still contains the "|CHERRY-PICKING" flag.

Delete the file causing this flag when cleaning up.

Signed-off-by: Beat Bolli <bbolli@ewanet.ch>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: Fix a loose/lose mistake
Beat Bolli [Sat, 18 Aug 2012 20:24:00 +0000 (13:24 -0700)] 
git-gui: Fix a loose/lose mistake

Acked-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Beat Bolli <bbolli@ewanet.ch>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: Fix semi-working shortcuts for unstage and revert
Vitaly _Vi Shukela [Fri, 14 Sep 2012 23:36:41 +0000 (02:36 +0300)] 
git-gui: Fix semi-working shortcuts for unstage and revert

Make Ctrl+U for unstaging and Ctrl+J for reverting selection behave
more like Ctrl+T for adding.

They were working only when one area was focused (diff or commit message),
now they should work everywhere.

Acked-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Vitaly _Vi Shukela <vi0oss@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agoMerge branch 'rt/trans'
Pat Thoyts [Tue, 19 Jun 2012 20:34:11 +0000 (21:34 +0100)] 
Merge branch 'rt/trans'

12 years agogit-gui: de.po: translate "remote" as "extern"
Ralf Thielow [Tue, 19 Jun 2012 18:25:41 +0000 (20:25 +0200)] 
git-gui: de.po: translate "remote" as "extern"

According to the translation in git-core, we
translate "remote" as "extern".

Signed-off-by: Ralf Thielow <ralf.thielow@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: de.po: translate "bare" as "bloß"
Ralf Thielow [Tue, 19 Jun 2012 18:25:40 +0000 (20:25 +0200)] 
git-gui: de.po: translate "bare" as "bloß"

According to the translation in git-core, we
translate "bare" as "bloß".

Signed-off-by: Ralf Thielow <ralf.thielow@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: de.po: consistently add untranslated hook names within braces
Ralf Thielow [Tue, 19 Jun 2012 18:25:39 +0000 (20:25 +0200)] 
git-gui: de.po: consistently add untranslated hook names within braces

The user might not really know what hook is
actually meant if it's translated. To avoid such
a confusion we should consistently write it untranslated
within braces after.

Signed-off-by: Ralf Thielow <ralf.thielow@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: preserve commit messages in utf-8
Pat Thoyts [Thu, 19 Apr 2012 10:19:58 +0000 (11:19 +0100)] 
git-gui: preserve commit messages in utf-8

The commit message buffer is automatically preserved to a local file
but this uses the system encoding which may fail to properly encode
unicode text. Forcing this file to use utf-8 preserves the message
correctly.

Reported-by: Ángel José Riesgo <ajriesgo@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: open console when using --trace on windows
Heiko Voigt [Fri, 23 Mar 2012 17:46:27 +0000 (18:46 +0100)] 
git-gui: open console when using --trace on windows

When starting a gui program on windows stdout, stderr and stdin are not
connected to the cmd console. As a workaround tk has a console window.
Lets open this when the --trace commandline option has been given.
This is helpful for debugging.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: fix a typo in po/ files
Benjamin Kerensa [Tue, 6 Mar 2012 01:53:23 +0000 (17:53 -0800)] 
git-gui: fix a typo in po/ files

"succeeded" was misspelled in the code, which propagated throughout the
 translations.

Fixed all of them.

Signed-off-by: Benjamin Kerensa <bkerensa <at> ubuntu.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: Use PWD if it exists on Mac OS X
Marcus Karlsson [Fri, 9 Mar 2012 23:17:22 +0000 (00:17 +0100)] 
git-gui: Use PWD if it exists on Mac OS X

The current working directory is set to / when git-gui is invoked
using the Git Gui.app bundle on Mac OS X. This means that if it is
launched from a directory which contains a repository then git-gui
won't automatically find it unless the repository happens to be
located in /.

The PWD environment variable is however preserved if the bundle is
invoked using open(1). If git-gui would check for PWD then a user
could for example type open -a 'Git Gui' on a command line in order to
launch the program and it would automatically find the repository.

Teach git-gui to use the PWD environment variable on Mac OS X.

Signed-off-by: Marcus Karlsson <mk@acc.umu.se>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: fix git-gui crash due to uninitialized variable
Clemens Buchacher [Sat, 21 Jan 2012 17:57:28 +0000 (18:57 +0100)] 
git-gui: fix git-gui crash due to uninitialized variable

Recently, a clone initiated via git gui on Windows crashed on me due to
an "unknown variable cdone". It turns out that there is a code path
where this variable is used uninitialized.

Signed-off-by: Clemens Buchacher <drizzd@aon.at>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui 0.16 gitgui-0.16.0
Pat Thoyts [Tue, 13 Dec 2011 23:44:30 +0000 (23:44 +0000)] 
git-gui 0.16

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: handle shell script text filters when loading for blame.
Pat Thoyts [Fri, 9 Dec 2011 15:14:32 +0000 (15:14 +0000)] 
git-gui: handle shell script text filters when loading for blame.

When loading a file into the blame window git-gui does all the work and
must handle the text conversion filters if defined. On Windows it is
necessary to detect the need for a shell script explicitly.

Such filter commands are run using non-blocking I/O but this has the
unfortunate side effect of losing any error that might be reported when
the pipe is closed. Switching to blocking mode just before closing
enables reporting of errors in the filter scripts to the user.

Tested-by: Sebastian Schuberth <sschuberth@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: Set both 16x16 and 32x32 icons on X to pacify Xming.
Samuel Bronson [Wed, 7 Dec 2011 12:48:04 +0000 (12:48 +0000)] 
git-gui: Set both 16x16 and 32x32 icons on X to pacify Xming.

It would be better if the 32x32 icon was equivalent to the one used on
Windows (in git-gui.ico), but I'm not sure how that would best be done,
so I copied this code from gitk instead.

Signed-off-by: Samuel Bronson <naesten@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: added config gui.gcwarning to disable the gc hint message
Pat Thoyts [Tue, 29 Nov 2011 09:27:17 +0000 (09:27 +0000)] 
git-gui: added config gui.gcwarning to disable the gc hint message

On startup in multicommit mode git-gui checks to see if the repository
has a lot of objects. If so it shows a dialog suggesting gc be run.
This adds 'gui.gcwarning' as a control config variable to allow this
to be disabled. The default is true (the warning is shown). Setting this
false will prevent the check being done.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
12 years agogit-gui: set whitespace warnings appropriate to this project
Pat Thoyts [Wed, 30 Nov 2011 11:35:28 +0000 (11:35 +0000)] 
git-gui: set whitespace warnings appropriate to this project

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: don't warn for detached head when rebasing
Bert Wesarg [Sat, 22 Oct 2011 19:39:40 +0000 (21:39 +0200)] 
git-gui: don't warn for detached head when rebasing

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: make config gui.warndetachedcommit a boolean
Bert Wesarg [Sat, 22 Oct 2011 19:39:39 +0000 (21:39 +0200)] 
git-gui: make config gui.warndetachedcommit a boolean

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: add config value gui.diffopts for passing additional diff options
Tilman Vogel [Fri, 21 Jan 2011 10:59:45 +0000 (11:59 +0100)] 
git-gui: add config value gui.diffopts for passing additional diff options

Signed-off-by: Tilman Vogel <tilman.vogel@web.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: sort the numeric ansi codes
Pat Thoyts [Fri, 19 Nov 2010 22:22:20 +0000 (22:22 +0000)] 
git-gui: sort the numeric ansi codes

This ensures that underline does not conflict with inverse colors.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: support underline style when parsing diff output
Pat Thoyts [Fri, 19 Nov 2010 10:00:49 +0000 (10:00 +0000)] 
git-gui: support underline style when parsing diff output

Suggested-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: fix spelling error in sshkey.tcl
Dejan Ribič [Sun, 30 Oct 2011 17:18:44 +0000 (18:18 +0100)] 
git-gui: fix spelling error in sshkey.tcl

Spelling error originally reported to Ubuntu as launchpad bug #879427.

Acked-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Dejan Ribič <dejan.ribic@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: include the file path in guitools confirmation dialog
Bert Wesarg [Thu, 20 Oct 2011 19:32:30 +0000 (21:32 +0200)] 
git-gui: include the file path in guitools confirmation dialog

For those guitools that require a filename, display this filename when
asking the user to confirm the tool launch.

[PT: modified to use positional parameters for i18n]

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: span widgets over the full file output area in the blame view
Bert Wesarg [Thu, 20 Oct 2011 19:30:30 +0000 (21:30 +0200)] 
git-gui: span widgets over the full file output area in the blame view

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: use a tristate to control the case mode in the searchbar
Bert Wesarg [Thu, 20 Oct 2011 19:27:27 +0000 (21:27 +0200)] 
git-gui: use a tristate to control the case mode in the searchbar

The config is now called gui.search.case and can have the three values:
no/yes/smart. yes is the default.

It also resets the case detection in smart mode, when the entry field was
cleared by the use.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: set suitable extended window manager hints.
Pat Thoyts [Wed, 19 Oct 2011 13:26:29 +0000 (14:26 +0100)] 
git-gui: set suitable extended window manager hints.

This patch uses recent Tk attributes support to specify the intended use of new
toplevels by setting the correct EWMH hint. This helps modern window managers
to apply sensible decoration for the tooltip and dialogs.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: fix display of path in browser title
Bert Wesarg [Tue, 23 Nov 2010 07:37:50 +0000 (08:37 +0100)] 
git-gui: fix display of path in browser title

Ensure the browser path is shown on the title with a / suffix and escape
any backslashes or newlines in path elements before display.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agoMerge branch 'bw/searching' gitgui-0.15.0
Pat Thoyts [Wed, 19 Oct 2011 12:35:30 +0000 (13:35 +0100)] 
Merge branch 'bw/searching'

13 years agogit-gui: enable the smart case sensitive search only if gui.search.smartcase is true
Pat Thoyts [Wed, 19 Oct 2011 12:29:52 +0000 (13:29 +0100)] 
git-gui: enable the smart case sensitive search only if gui.search.smartcase is true

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: catch invalid or complete regular expressions and treat as no match.
Pat Thoyts [Wed, 19 Oct 2011 12:22:33 +0000 (13:22 +0100)] 
git-gui: catch invalid or complete regular expressions and treat as no match.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: theme the search and line-number entry fields on blame screen
Pat Thoyts [Wed, 19 Oct 2011 11:44:39 +0000 (12:44 +0100)] 
git-gui: theme the search and line-number entry fields on blame screen

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: include the number of untracked files to stage when asking the user
Pat Thoyts [Tue, 18 Oct 2011 08:32:22 +0000 (09:32 +0100)] 
git-gui: include the number of untracked files to stage when asking the user

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: new config to control staging of untracked files
Bert Wesarg [Fri, 14 Oct 2011 19:25:21 +0000 (21:25 +0200)] 
git-gui: new config to control staging of untracked files

The default is the current "ask".

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: use "untracked" for files which are not known to git
Bert Wesarg [Fri, 14 Oct 2011 19:25:20 +0000 (21:25 +0200)] 
git-gui: use "untracked" for files which are not known to git

"untracked" is the right phrase for files new to git. For example
git-status uses this phrase. Also make the question shorter.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: fix unintended line break in message string
Bert Wesarg [Fri, 14 Oct 2011 19:25:19 +0000 (21:25 +0200)] 
git-gui: fix unintended line break in message string

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: add search history to searchbar
Bert Wesarg [Fri, 14 Oct 2011 08:14:52 +0000 (10:14 +0200)] 
git-gui: add search history to searchbar

Use the up/down keys to browse the history.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: add regexp search mode to the searchbar
Bert Wesarg [Fri, 14 Oct 2011 08:14:51 +0000 (10:14 +0200)] 
git-gui: add regexp search mode to the searchbar

It's off by default, but can be enabled via the config gui.search.regexp.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: add smart case search mode in searchbar
Bert Wesarg [Fri, 14 Oct 2011 08:14:50 +0000 (10:14 +0200)] 
git-gui: add smart case search mode in searchbar

Setting config gui.search.smartcase to true, the search mode in the
searchbar (from the blame view) is by default case-insensitive. But
entering an upper case letter into the search field activates the case-
sensitive search mode.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: handle config booleans without value
Bert Wesarg [Fri, 14 Oct 2011 08:14:49 +0000 (10:14 +0200)] 
git-gui: handle config booleans without value

When git interprets a config variable without a value as bool it is considered
as true. But git-gui doesn't so until yet.

The value for boolean configs are also case-insensitive.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: fix multi selected file operation
Bert Wesarg [Fri, 14 Oct 2011 08:19:26 +0000 (10:19 +0200)] 
git-gui: fix multi selected file operation

When staging a selection of files using Shift-Click to choose a range
of files then using Ctrl-T or the Stage To Commit menu item will stage
all the selected files. However if a non-sequential range is selected
using Ctrl-Click then all but the first name selected gets staged. This
commit fixes this to properly stage all selected files by explicitly
adding the path to the list before showing the diff.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: incremental goto line in blame view
Bert Wesarg [Thu, 13 Oct 2011 13:48:15 +0000 (15:48 +0200)] 
git-gui: incremental goto line in blame view

The view jumps now to the given line number after each key press.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: clear the goto line input when hiding
Bert Wesarg [Thu, 13 Oct 2011 13:48:13 +0000 (15:48 +0200)] 
git-gui: clear the goto line input when hiding

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: only accept numbers in the goto-line input
Bert Wesarg [Thu, 13 Oct 2011 13:48:14 +0000 (15:48 +0200)] 
git-gui: only accept numbers in the goto-line input

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: search and linenumber input are mutual exclusive in the blame view
Bert Wesarg [Thu, 13 Oct 2011 13:48:12 +0000 (15:48 +0200)] 
git-gui: search and linenumber input are mutual exclusive in the blame view

It was possible to open the search input (Ctrl+S) and the goto-line input
(Ctrl+G) at the same time. Prevent this.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: deal with unknown files when pressing the "Stage Changed" button
Heiko Voigt [Fri, 27 May 2011 15:40:24 +0000 (17:40 +0200)] 
git-gui: deal with unknown files when pressing the "Stage Changed" button

As a shortcut the "Stage Changed" button can be used to stage all current
changes in the worktree which are not set to ignore. Previously unknown
files would be ignored. The user might want to say: "Just save everything
in my worktree". To support this workflow we now ask whether the user also
wants to stage the unknown files if there are some present.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: drop the 'n' and 'Shift-n' bindings from the last patch.
Pat Thoyts [Tue, 19 Jul 2011 14:33:34 +0000 (15:33 +0100)] 
git-gui: drop the 'n' and 'Shift-n' bindings from the last patch.

The 'n' binding should cause the next match to be selected but results
in the search field gaining focus and additional 'n's being appended.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: Add keyboard shortcuts for search and goto commands in blame view.
David Fries [Sat, 16 Jul 2011 16:59:45 +0000 (11:59 -0500)] 
git-gui: Add keyboard shortcuts for search and goto commands in blame view.

Use forward-slash or Control-S to bring up the search dialog.
In the blame view, Enter or 'n' jump to the next selected region while
Shift-Enter or Shift-n will jump to the previous selected region.
Within the search control, hitting Enter will now jump to the next matching
region.

Signed-off-by: David Fries <David@Fries.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: Enable jumping to a specific line number in blame view.
David Fries [Sun, 17 Jul 2011 01:47:14 +0000 (20:47 -0500)] 
git-gui: Enable jumping to a specific line number in blame view.

This patch adds a goto control similar to the search control currently
available. The goto control permits the user to specify a line number to
jump to.
When in blame, Control-G is bound to display this control.

Signed-off-by: David Fries <David@Fries.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agoFix tooltip display with multiple monitors on windows.
Pat Thoyts [Mon, 11 Jul 2011 12:55:38 +0000 (13:55 +0100)] 
Fix tooltip display with multiple monitors on windows.

On Windows the position of a window may be negative on a monitor to the
left of the primary display. A plus sign is used as the separator between
the width and height and the positional parts of the geometry so always
include the plus sign even for negative positions on this platform.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agoFix typo: existant->existent
Dmitry Ivankov [Thu, 16 Jun 2011 12:22:39 +0000 (18:22 +0600)] 
Fix typo: existant->existent

This typo was discovered in core git sources.
Clean in it up in git-gui too.
There is just one occurence in a comment line.

Signed-off-by: Dmitry Ivankov <divanorama@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: updated translator README for current procedures.
Pat Thoyts [Thu, 31 Mar 2011 15:24:36 +0000 (16:24 +0100)] 
git-gui: updated translator README for current procedures.

We do not have a mob branch and the i18n fork is no longer used. Suggest
translators simply send patches as per other contributors.

Reported-by: Rodrigo Rosenfeld <rr.rosas@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: warn when trying to commit on a detached head
Heiko Voigt [Tue, 15 Feb 2011 19:43:54 +0000 (19:43 +0000)] 
git-gui: warn when trying to commit on a detached head

The commandline is already warning when checking out a detached head.
Since the only thing thats potentially dangerous is to create commits
on a detached head lets warn in case the user is about to do that.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: Corrected a typo in the Swedish translation of 'Continue'
Christoffer Pettersson [Mon, 16 May 2011 09:36:00 +0000 (10:36 +0100)] 
git-gui: Corrected a typo in the Swedish translation of 'Continue'

Reported-by: Christoffer Pettersson <corgrath@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agoMerge branch 'ss/git-gui-mergetool' gitgui-0.14.0
Pat Thoyts [Fri, 25 Mar 2011 08:26:47 +0000 (08:26 +0000)] 
Merge branch 'ss/git-gui-mergetool'

13 years agogit-gui: detect the use of MUI langauge packs on Windows
Pat Thoyts [Fri, 18 Feb 2011 13:42:54 +0000 (13:42 +0000)] 
git-gui: detect the use of MUI langauge packs on Windows

The Tcl msgcat package doesn't detect the use of a multi-lingual language
pack on Windows 7. This means that a user may have their display language
set to Japanese but the system installed langauge was English.
This patch reads the relevent registry key to fix this before loading in
the locale specific parts of git-gui.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agomergetool--lib: Add Beyond Compare 3 as a tool
Sebastian Schuberth [Sat, 26 Feb 2011 10:52:17 +0000 (11:52 +0100)] 
mergetool--lib: Add Beyond Compare 3 as a tool

Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agomergetool--lib: Sort tools alphabetically for easier lookup
Sebastian Schuberth [Sat, 26 Feb 2011 10:51:14 +0000 (11:51 +0100)] 
mergetool--lib: Sort tools alphabetically for easier lookup

Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
13 years agogit-gui: fetch/prune all entry appears last
Heiko Voigt [Tue, 22 Feb 2011 19:30:21 +0000 (20:30 +0100)] 
git-gui: fetch/prune all entry appears last

The user might have got used to the order the remotes appeared previously.
Lets add the all entry last so the all entry does not confuse previous
users.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Tested-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: fetch/prune all entry only for more than one entry
Heiko Voigt [Tue, 22 Feb 2011 19:28:36 +0000 (20:28 +0100)] 
git-gui: fetch/prune all entry only for more than one entry

In case there is only one remote a fetch/prune all entry
is redundant.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Tested-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: Include version check and test for tearoff menu entry
Pat Thoyts [Tue, 15 Feb 2011 00:20:36 +0000 (00:20 +0000)] 
git-gui: Include version check and test for tearoff menu entry

The --all option for git fetch was added in v1.6.6 so ensure we have a usable version before adding
the menu items.
Sometimes people use tearoff menus and these offset the entry indices by one.

Acked-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: teach fetch/prune menu to do it for all remotes
Heiko Voigt [Sun, 13 Feb 2011 13:57:15 +0000 (14:57 +0100)] 
git-gui: teach fetch/prune menu to do it for all remotes

The commandline fetch already has this option for some time.  Since this
was not available at the time git gui was written lets implement it now.

Signed-off-by: Heiko Voigt <heiko.voigt@mahr.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: refactor remote submenu creation into subroutine
Heiko Voigt [Sun, 13 Feb 2011 13:50:38 +0000 (14:50 +0100)] 
git-gui: refactor remote submenu creation into subroutine

Signed-off-by: Heiko Voigt <heiko.voigt@mahr.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: always default to the last merged branch in remote delete
Heiko Voigt [Sat, 12 Feb 2011 16:44:58 +0000 (17:44 +0100)] 
git-gui: always default to the last merged branch in remote delete

This is useful if you are directly working together with other
developers pushing feature branches on a shared remote. You typically
push feature branches to the remote so others can review. Once they are
satisfied and the branch is merged into the main branch it needs to be
deleted on the server.

Since we did not yet have a preselected default branch in the remote
delete dialog lets use the last merged branch if it is found on the
server.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: fix deleting item from all_remotes variable
Heiko Voigt [Sat, 12 Feb 2011 16:43:44 +0000 (17:43 +0100)] 
git-gui: fix deleting item from all_remotes variable

lsearch and lreplace both take the variable content as argument and not
just their name.

Signed-off-by: Heiko Voigt <heiko.voigt@mahr.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: instead of defaulting to home directory use working directory
Heiko Voigt [Sun, 6 Feb 2011 17:22:46 +0000 (18:22 +0100)] 
git-gui: instead of defaulting to home directory use working directory

When starting git gui in a non-git directory it presents the user a
dialog which asks to create, clone or open a repository. The filedialogs
used to choose the path(s) would always default to the home directory of
the user. This patch changes this behavior and uses the current working
directory in which git gui was started as default.

This is useful in various cases. First being that the user starts the
gui in some directory and can go search to create, open or clone a
repository from there. Another use case is that tools like filemanager
context menues can transport a natural default when selected from a
folder.

Users who like to have their home folder as a default can fall back on
starting git gui with its working directory set to the home folder.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: scroll down to default selection for push dialog
Heiko Voigt [Sun, 6 Feb 2011 17:04:27 +0000 (18:04 +0100)] 
git-gui: scroll down to default selection for push dialog

If the list of remote/local branches is very long its inconvenient
to scroll down and find the selected branch. This patch makes the
widget automatically scroll down so its shown on the top.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit gui: keep selected branch when remote is changed in push dialog
Heiko Voigt [Sun, 6 Feb 2011 17:01:08 +0000 (18:01 +0100)] 
git gui: keep selected branch when remote is changed in push dialog

The selection of the branch to be pushed would be cleared when
the remote was changed. This seems to be dependent on the fact that
the selected content in the combobox was exported to the clipboard. It
was only apparent when using the new ttk widget.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: handle meta diff header lines only in the header section
Bert Wesarg [Thu, 9 Dec 2010 20:47:59 +0000 (21:47 +0100)] 
git-gui: handle meta diff header lines only in the header section

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: handle special content lines only in the diff header section
Bert Wesarg [Thu, 9 Dec 2010 20:47:58 +0000 (21:47 +0100)] 
git-gui: handle special content lines only in the diff header section

These two also stop the diff header.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: always reset the current tag
Bert Wesarg [Thu, 9 Dec 2010 20:47:57 +0000 (21:47 +0100)] 
git-gui: always reset the current tag

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: move 3way diff autodetect up
Bert Wesarg [Thu, 9 Dec 2010 20:47:56 +0000 (21:47 +0100)] 
git-gui: move 3way diff autodetect up

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: there is no "mode *" diff header line
Bert Wesarg [Thu, 9 Dec 2010 20:47:55 +0000 (21:47 +0100)] 
git-gui: there is no "mode *" diff header line

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: name also new symlinks so
Bert Wesarg [Thu, 9 Dec 2010 20:47:54 +0000 (21:47 +0100)] 
git-gui: name also new symlinks so

and rename them only in the diff header

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: handle index lines only in the diff header
Bert Wesarg [Thu, 9 Dec 2010 20:47:53 +0000 (21:47 +0100)] 
git-gui: handle index lines only in the diff header

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: rework handling of diff header
Bert Wesarg [Thu, 9 Dec 2010 20:47:52 +0000 (21:47 +0100)] 
git-gui: rework handling of diff header

The fix in ca53c3f (Fix diff parsing for lines starting with "--" or "++",
2008-09-05) got a bug report from Johannes Sixt, that new files in the
index now looks like:

  new file mode 100644
  --- /dev/null
  +++ b/foo
  @@ -0,0 +1 @@
  +foo

The introduced problem was that the 'in-diff-header'-flag was unconditially
disabled. Now it is only disabled when a hunk line is detected. And also
re-enabled when we encounter a new diff header.

The second part solves also the issue reported by me for diffs with file
type changes (i.e. the ''error: Unhandled 2 way diff marker: {d}"', which
comes from the second 'diff --git' line).

Reported-by: Johannes Sixt <j.sixt@viscovery.net>
Reported-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: learn more type change states
Bert Wesarg [Thu, 9 Dec 2010 20:46:23 +0000 (21:46 +0100)] 
git-gui: learn more type change states

Support the following states with type change in git-gui: AT, MT, TD, TM

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: remove 'no such variable' for s error when encounter unknown file states
Bert Wesarg [Thu, 9 Dec 2010 20:46:22 +0000 (21:46 +0100)] 
git-gui: remove 'no such variable' for s error when encounter unknown file states

$s will be referenced in the error message. Which was broken since
"git-gui: Automatically update-index all included files before commit"
(bbe3b3b, 2006-11-16).

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: fix typo in image data
Bert Wesarg [Thu, 9 Dec 2010 20:46:21 +0000 (21:46 +0100)] 
git-gui: fix typo in image data

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: add Brazilian Portuguese (pt-BR) translation
Alexandre Erwin Ittner [Mon, 13 Dec 2010 22:28:19 +0000 (20:28 -0200)] 
git-gui: add Brazilian Portuguese (pt-BR) translation

Translating a SCM is tricky due to amount of jargon, so, I tried to
keep the wording consistent with both the German and Italian git
translations and the pt-BR translation of other SCMs.

Signed-off-by: Alexandre Erwin Ittner <alexandre@ittner.com.br>
13 years agogit-gui: update russian translation
Alex Riesen [Wed, 19 Jan 2011 21:01:32 +0000 (22:01 +0100)] 
git-gui: update russian translation

Improve the translation of warning given by mergetool when staging files with
conflict markers.

Suggested-by: Alexey Shumkin <zapped@mail.ru>
Tipping-vote-by: Dmitry Potapov <dpotapov@gmail.com>
Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: update russian translation
Alex Riesen [Mon, 17 Jan 2011 21:08:55 +0000 (22:08 +0100)] 
git-gui: update russian translation

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: spelling fixes in russian translation
Skip [Mon, 17 Jan 2011 21:08:28 +0000 (22:08 +0100)] 
git-gui: spelling fixes in russian translation

Signed-off-by: Skip <bsvskip@rambler.ru>
Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: fix russian translation typos
Serge Ziryukin [Mon, 17 Jan 2011 21:08:24 +0000 (22:08 +0100)] 
git-gui: fix russian translation typos

Signed-off-by: Serge Ziryukin <ftrvxmtrx@gmail.com>
Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: use --exclude-standard to check for untracked files
Stefan Naewe [Fri, 10 Dec 2010 15:41:09 +0000 (15:41 +0000)] 
git-gui: use --exclude-standard to check for untracked files

This fixes git-gui failing to display untracked files that are listed
if core.excludefiles is set to ~/.gitexcludes

[PT: added expansion of core.excludesfile value by tcl]

Signed-off-by: Stefan Naewe <stefan.naewe@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: Fix use of hunk tag for non-hunk content.
Bert Wesarg [Mon, 6 Dec 2010 22:01:01 +0000 (22:01 +0000)] 
git-gui: Fix use of hunk tag for non-hunk content.

The hunk tag d_@ lost its blue forground color in "apply color information
from git diff output" (2010-10-22, 8f85599). But this tag was also used
for non-hunk content like untracked file mime types or git submodules.

Introduce a new tag for this type of content which has the blue forground
again.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: Fix use of renamed tag.
Bert Wesarg [Mon, 29 Nov 2010 08:21:57 +0000 (09:21 +0100)] 
git-gui: Fix use of renamed tag.

The d======= was renamed to d= in 4590307.

Fix this.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: fix browsers [Up To Parent] in sub-sub-directories.
Bert Wesarg [Fri, 19 Nov 2010 20:43:48 +0000 (21:43 +0100)] 
git-gui: fix browsers [Up To Parent] in sub-sub-directories.

browser_path used to end with a slash, so the regexp matches the empty string
and therefore removes nothing.

Fix this.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: respect conflict marker size
Bert Wesarg [Tue, 16 Nov 2010 09:21:52 +0000 (10:21 +0100)] 
git-gui: respect conflict marker size

Respect the conflict-marker-size attribute on paths when detecting merge
conflicts.

[PT: fixed problem with variable substitution in the regexps]

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
13 years agogit-gui: fix ANSI-color parsing
Bert Wesarg [Mon, 15 Nov 2010 10:00:33 +0000 (11:00 +0100)] 
git-gui: fix ANSI-color parsing

git diff always outputs color reset commands, even when the color for the
current part is disabled (ie. normal). But the current ANSI-color parsing code
assumes that color start and reset commands appear in matching pairs.

Relax this assumption.

Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
14 years agogit-gui: apply color information from git diff output
Pat Thoyts [Fri, 22 Oct 2010 15:14:38 +0000 (16:14 +0100)] 
git-gui: apply color information from git diff output

This patch extracts the ANSI color sequences from git diff output and
applies these to the diff view window. This ensures that the gui view
makes use of the current git configuration for whitespace display.

ANSI codes may include attributes, foreground and background in a single
sequence. Handle this and support bold and reverse attributes. Ignore
all other attributes.

Suggested-by: Tor Arvid Lund <torarvid@gmail.com>
Suggested-by: Junio C Hamano <gitster@pobox.com>
Tested-by: Tor Arvid Lund <torarvid@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>