OSDN Git Service

git-core/git.git
6 years agogit-gui: allow Ctrl+T to toggle multiple paths
Johannes Schindelin [Tue, 9 Jan 2018 14:33:04 +0000 (15:33 +0100)]
git-gui: allow Ctrl+T to toggle multiple paths

It is possible to select multiple files in the "Unstaged Changes" and
the "Staged Changes" lists. But when hitting Ctrl+T, surprisingly only
one entry is handled, not all selected ones.

Let's just use the same code path as for the "Stage To Commit" and the
"Unstage From Commit" menu items.

This fixes https://github.com/git-for-windows/git/issues/1012

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
6 years agogit-gui: fix exception when trying to stage with empty file list
Johannes Schindelin [Tue, 9 Jan 2018 14:33:01 +0000 (15:33 +0100)]
git-gui: fix exception when trying to stage with empty file list

If there is nothing to stage, there is nothing to stage. Let's not try
to, even if the file list contains nothing at all.

This fixes https://github.com/git-for-windows/git/issues/1075

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
6 years agogit-gui: avoid exception upon Ctrl+T in an empty list
Johannes Schindelin [Tue, 9 Jan 2018 14:32:58 +0000 (15:32 +0100)]
git-gui: avoid exception upon Ctrl+T in an empty list

Previously unstaged files can be staged by clicking on them and then
pressing Ctrl+T. Conveniently, the next unstaged file is selected
automatically so that the unstaged files can be staged by repeatedly
pressing Ctrl+T.

When a user hits Ctrl+T one time too many, though, Git GUI used to throw
this exception:

expected number but got ""
expected number but got ""
    while executing
"expr {int([lindex [$w tag ranges in_diff] 0])}"
    (procedure "toggle_or_diff" line 13)
    invoked from within
"toggle_or_diff toggle .vpane.files.workdir.list "
    (command bound to event)

Let's just avoid that by skipping the operation when there are no more
files to stage.

This fixes https://github.com/git-for-windows/git/issues/1060

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
6 years agogit gui: fix staging a second line to a 1-line file
Johannes Schindelin [Tue, 9 Jan 2018 14:32:54 +0000 (15:32 +0100)]
git gui: fix staging a second line to a 1-line file

When a 1-line file is augmented by a second line, and the user tries to
stage that single line via the "Stage Line" context menu item, we do not
want to see "apply: corrupt patch at line 5".

The reason for this error was that the hunk header looks like this:

@@ -1 +1,2 @@

but the existing code expects the original range always to contain a
comma. This problem is easily fixed by cutting the string "1 +1,2"
(that Git GUI formerly mistook for the starting line) at the space.

This fixes https://github.com/git-for-windows/git/issues/515

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge remote-tracking branch 'philoakley/dup-gui'
Pat Thoyts [Sat, 18 Mar 2017 15:35:09 +0000 (15:35 +0000)]
Merge remote-tracking branch 'philoakley/dup-gui'

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit gui: allow for a long recentrepo list
Philip Oakley [Mon, 14 Dec 2015 12:56:40 +0000 (12:56 +0000)]
git gui: allow for a long recentrepo list

The gui.recentrepo list may be longer than the maxrecent setting.
Allow extra space to show any extra entries.

In an ideal world, the git gui would limit the number of entries
to the maxrecent setting, however the recentrepo config list may
have been extended outwith the gui, or the maxrecent setting changed
to a reduced value. Further, when testing the gui's recentrepo
logic it is useful to show these extra, but valid, entries.

Signed-off-by: Philip Oakley <philipoakley@iee.org>
7 years agogit gui: de-dup selected repo from recentrepo history
Philip Oakley [Mon, 14 Dec 2015 10:42:04 +0000 (10:42 +0000)]
git gui: de-dup selected repo from recentrepo history

When the gui/user selects a repo for display, that repo is brought to
the end of the recentrepo config list. The logic can fail if there are
duplicate old entries for the repo (you cannot unset a single config
entry when duplicates are present).

Similarly, the maxrecentrepo logic could fail if older duplicate entries
are present.

The first commit of this series ({this}~2) fixed the config unsetting
issue. Rather than manipulating a local copy of the $recent list (one
cannot know how many entries were removed), simply re-read it.

We must also catch the error when the attempt to remove the second copy
from the re-read list is performed.

Signed-off-by: Philip Oakley <philipoakley@iee.org>
7 years agogit gui: cope with duplicates in _get_recentrepo
Philip Oakley [Mon, 14 Dec 2015 11:19:32 +0000 (11:19 +0000)]
git gui: cope with duplicates in _get_recentrepo

_get_recentrepo will fail if duplicate invalid entries are present
in the recentrepo config list. The previous commit fixed the
'git config' limitations in _unset_recentrepo by unsetting all config
entries, however this code would fail on the second attempt to unset it.

Refactor the code to pre-sort and de-duplicate the recentrepo list to
avoid a potential second unset attempt.

Signed-off-by: Philip Oakley <philipoakley@iee.org>
7 years agogit-gui: remove duplicate entries from .gitconfig's gui.recentrepo
Philip Oakley [Mon, 14 Dec 2015 10:37:02 +0000 (10:37 +0000)]
git-gui: remove duplicate entries from .gitconfig's gui.recentrepo

The git gui's recent repo list may become contaminated with duplicate
entries. The git gui would barf when attempting to remove one entry.
Remove them all - there is no option within 'git config' to selectively
remove one of the entries.

This issue was reported on the 'Git User' list
(https://groups.google.com/forum/#!topic/git-users/msev4KsQGFc,
Warning: gui.recentrepo has multiply values while executing).

And also by zosrothko as a Git-for-Windows issue
https://github.com/git-for-windows/git/issues/1014.

On startup the gui checks that entries in the recentrepo list are still
valid repos and deletes thoses that are not. If duplicate entries are
present the 'git config --unset' will barf and this prevents the gui
from starting.

Subsequent patches fix other parts of recentrepo logic used for syncing
internal lists with the external .gitconfig.

Reported-by: Alexey Astakhov <asstv7@gmail.com>
Signed-off-by: Philip Oakley <philipoakley@iee.org>
7 years agogit-gui: set version 0.21 gitgui-0.21.0
Pat Thoyts [Thu, 20 Oct 2016 10:19:43 +0000 (11:19 +0100)]
git-gui: set version 0.21

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agoMerge branch 'as/bulgarian' into pu
Pat Thoyts [Thu, 20 Oct 2016 10:13:42 +0000 (11:13 +0100)]
Merge branch 'as/bulgarian' into pu

7 years agogit-gui: Mark 'All' in remote.tcl for translation
Alexander Shopov [Thu, 13 Oct 2016 18:43:48 +0000 (21:43 +0300)]
git-gui: Mark 'All' in remote.tcl for translation

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui i18n: Updated Bulgarian translation (565,0f,0u)
Alexander Shopov [Thu, 13 Oct 2016 18:43:49 +0000 (21:43 +0300)]
git-gui i18n: Updated Bulgarian translation (565,0f,0u)

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agoMerge branch 'os/preserve-author' into pu
Pat Thoyts [Thu, 20 Oct 2016 10:07:24 +0000 (11:07 +0100)]
Merge branch 'os/preserve-author' into pu

7 years agoMerge branch 'kb/unicode' into pu
Pat Thoyts [Thu, 20 Oct 2016 10:06:28 +0000 (11:06 +0100)]
Merge branch 'kb/unicode' into pu

7 years agogit-gui: avoid persisting modified author identity
Pat Thoyts [Thu, 6 Oct 2016 13:04:42 +0000 (14:04 +0100)]
git-gui: avoid persisting modified author identity

Commit 7e71adc77f fixes a problem with git-gui failing to pick up the
original author identity during a commit --amend operation. However, the
new author details then become persistent for the remainder of the session.
This commit fixes this by ensuring the environment variables are reset
and the author information reset once the commit is completed.
The relevant changes were reworked to reduce global variables.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui: handle the encoding of Git's output correctly
Karsten Blees [Thu, 26 Feb 2015 09:19:45 +0000 (17:19 +0800)]
git-gui: handle the encoding of Git's output correctly

If we use 'eval exec $opt $cmdp $args' to execute git command,
tcl engine will convert the output of the git comand with the rule
system default code page to unicode.

But cp936 -> unicode conversion implicitly done by exec is not reversible.
So we have to use git_read instead.

Bug report and an original reproducer by Cloud Chou:
https://github.com/msysgit/git/issues/302

Cloud Chou find the reason of the bug.

Thanks-to: Johannes Schindelin <johannes.schindelin@gmx.de>
Thanks-to: Pat Thoyts <patthoyts@users.sourceforge.net>
Reported-by: Cloud Chou <515312382@qq.com>
Original-test-by: Cloud Chou <515312382@qq.com>
Signed-off-by: Karsten Blees <blees@dcon.de>
Signed-off-by: Cloud Chou <515312382@qq.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui: unicode file name support on windows
Karsten Blees [Sat, 4 Feb 2012 20:54:36 +0000 (21:54 +0100)]
git-gui: unicode file name support on windows

Assumes file names in git tree objects are UTF-8 encoded.

On most unix systems, the system encoding (and thus the TCL system
encoding) will be UTF-8, so file names will be displayed correctly.

On Windows, it is impossible to set the system encoding to UTF-8. Changing
the TCL system encoding (via 'encoding system ...', e.g. in the startup
code) is explicitly discouraged by the TCL docs.

Change git-gui functions dealing with file names to always convert
from and to UTF-8.

Signed-off-by: Karsten Blees <blees@dcon.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agoMerge branch 'dr/ru' into pu
Pat Thoyts [Tue, 4 Oct 2016 22:29:40 +0000 (23:29 +0100)]
Merge branch 'dr/ru' into pu

7 years agogit-gui: Update Russian translation
Dimitriy Ryazantcev [Tue, 4 Oct 2016 15:15:16 +0000 (18:15 +0300)]
git-gui: Update Russian translation

Signed-off-by: Dimitriy Ryazantcev <dimitriy.ryazantcev@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui: maintain backwards compatibility for merge syntax
Pat Thoyts [Tue, 4 Oct 2016 11:49:05 +0000 (12:49 +0100)]
git-gui: maintain backwards compatibility for merge syntax

Commit b5f325c updated to use the newer merge syntax but continue to
support older versions of git.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agoMerge branch 'va/i18n_2' into pu
Pat Thoyts [Mon, 3 Oct 2016 22:40:50 +0000 (23:40 +0100)]
Merge branch 'va/i18n_2' into pu

7 years agogit-gui i18n: mark string in lib/error.tcl for translation
Vasco Almeida [Sun, 8 May 2016 10:52:58 +0000 (10:52 +0000)]
git-gui i18n: mark string in lib/error.tcl for translation

Mark string "$hook hook failed:" in lib/error.tcl for translation.

Signed-off-by: Vasco Almeida <vascomalmeida@sapo.pt>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui: fix incorrect use of Tcl append command
Vasco Almeida [Sun, 8 May 2016 10:52:57 +0000 (10:52 +0000)]
git-gui: fix incorrect use of Tcl append command

Fix wrong use of append command in strings marked for translation.
According to Tcl/Tk Documentation [1],
append varName ?value value value ...?
appends all value arguments to the current value of variable varName.
This means that
append "[appname] ([reponame]): " [mc "File Viewer"]
is setting a variable named "[appname] ([reponame]): " to the output of
[mc "File Viewer"], rather than returning the concatenation of both
expressions as one might expect.

The format for some strings enables, for instance, a French translator
to translate like "%s (%s) : Create Branch" (space before colon).
Conversely, strings already translated will be marked as fuzzy and the
translator must update them herself.

For some cases, use alternative way for concatenation instead of using
strcat procedure defined in git-gui.sh.

Reference: 31bb1d1 ("git-gui: Paper bag fix missing translated strings",
2007-09-14) fixes the same issue slightly differently.

[1] http://www.tcl.tk/man/tcl/TclCmd/append.htm

Signed-off-by: Vasco Almeida <vascomalmeida@sapo.pt>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui i18n: mark "usage:" strings for translation
Vasco Almeida [Sun, 8 May 2016 10:52:56 +0000 (10:52 +0000)]
git-gui i18n: mark "usage:" strings for translation

Mark command-line "usage:" string for translation in git-gui.sh.

Signed-off-by: Vasco Almeida <vascomalmeida@sapo.pt>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui i18n: internationalize use of colon punctuation
Vasco Almeida [Sun, 8 May 2016 10:52:55 +0000 (10:52 +0000)]
git-gui i18n: internationalize use of colon punctuation

Internationalize use of colon punctuation ':' in options window, windows
titles, database statistics window. Some languages might use a different
style, for instance French uses "User Name :" (space before colon).

Signed-off-by: Vasco Almeida <vascomalmeida@sapo.pt>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agoMerge branch 'pt/non-mouse-usage' into pu
Pat Thoyts [Mon, 3 Oct 2016 22:30:44 +0000 (23:30 +0100)]
Merge branch 'pt/non-mouse-usage' into pu

7 years agoMerge branch 'pt/git4win-mods' into pu
Pat Thoyts [Mon, 3 Oct 2016 22:30:32 +0000 (23:30 +0100)]
Merge branch 'pt/git4win-mods' into pu

7 years agoMerge branch 'patches' into pu
Pat Thoyts [Mon, 3 Oct 2016 22:28:57 +0000 (23:28 +0100)]
Merge branch 'patches' into pu

7 years agogit-gui: ensure the file in the diff pane is in the list of selected files
Alex Riesen [Tue, 28 Jun 2016 08:59:25 +0000 (10:59 +0200)]
git-gui: ensure the file in the diff pane is in the list of selected files

It is very confusing that the file which diff is displayed is marked as
selected, but it is not in fact selected (that means the array of selected
files does not include the file in question).

Fixing this also improves the use of $FILENAMES in custom defined tools: one
does not have to click the file in the list to make it selected.

Signed-off-by: Alex Riesen <alexander.riesen@cetitec.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui: support for $FILENAMES in tool definitions
Alex Riesen [Tue, 28 Jun 2016 08:57:42 +0000 (10:57 +0200)]
git-gui: support for $FILENAMES in tool definitions

This adds a FILENAMES environment variable, which contains the repository
pathnames of all selected files the list.
The variable contains the names separated by LF (\n, \x0a).

If the file names contain LF characters, the tool command might be unable to
unambiguously split the value of $FILENAME into the separate names.

Note that the file marked and diffed immediately after starting the GUI up,
is not actually selected. One must click on it once to really select it.

Signed-off-by: Alex Riesen <alexander.riesen@cetitec.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui: fix initial git gui message encoding
yaras [Tue, 23 Feb 2016 11:55:46 +0000 (11:55 +0000)]
git-gui: fix initial git gui message encoding

This fix refers https://github.com/git-for-windows/git/issues/664

After `git merge --squash` git creates .git/SQUASH_MSG (UTF-8 encoded)
which contains squashed commits. When run `git gui` it copies SQUASH_MSG
to PREPARE_COMMIT_MSG, but without honoring UTF-8. This leads to encoding
problems on `git gui` commit prompt.

The same applies on git cherry-pick conflict, where MERGE_MSG is created
and then is copied to PREPARE_COMMIT_MSG.

In both cases PREPARE_COMMIT_MSG must be configured to store data in UTF-8.

Signed-off-by: yaras <yaras6@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui/po/glossary/txt-to-pot.sh: use the $( ... ) construct for command substitution
Elia Pinto [Tue, 22 Dec 2015 14:10:29 +0000 (15:10 +0100)]
git-gui/po/glossary/txt-to-pot.sh: use the $( ... ) construct for command substitution

The Git CodingGuidelines prefer the $(...) construct for command
substitution instead of using the backquotes `...`.

The backquoted form is the traditional method for command
substitution, and is supported by POSIX.  However, all but the
simplest uses become complicated quickly.  In particular, embedded
command substitutions and/or the use of double quotes require
careful escaping with the backslash character.

The patch was generated by:

for _f in $(find . -name "*.sh")
do
perl -i -pe 'BEGIN{undef $/;} s/`(.+?)`/\$(\1)/smg'  "${_f}"
done

and then carefully proof-read.

Signed-off-by: Elia Pinto <gitter.spiros@gmail.com>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agoMerge branch 'va/i18n' into pu
Pat Thoyts [Mon, 3 Oct 2016 22:23:27 +0000 (23:23 +0100)]
Merge branch 'va/i18n' into pu

7 years agoMerge branch 'rs/use-modern-git-merge-syntax' into pu
Pat Thoyts [Mon, 3 Oct 2016 22:23:19 +0000 (23:23 +0100)]
Merge branch 'rs/use-modern-git-merge-syntax' into pu

7 years agoMerge branch 'js/commit-gpgsign' into pu
Pat Thoyts [Mon, 3 Oct 2016 22:23:05 +0000 (23:23 +0100)]
Merge branch 'js/commit-gpgsign' into pu

7 years agoMerge branch 'sy/i18n' into pu
Pat Thoyts [Mon, 3 Oct 2016 22:22:46 +0000 (23:22 +0100)]
Merge branch 'sy/i18n' into pu

7 years agogit-gui (Windows): use git-gui.exe in `Create Desktop Shortcut`
Pat Thoyts [Sun, 2 Oct 2016 21:19:47 +0000 (22:19 +0100)]
git-gui (Windows): use git-gui.exe in `Create Desktop Shortcut`

When calling `Repository>Create Desktop Shortcut`, Git GUI assumes
that it is okay to call `wish.exe` directly on Windows. However, in
Git for Windows 2.x' context, that leaves several crucial environment
variables uninitialized, resulting in a shortcut that does not work.

To fix those environment variable woes, Git for Windows comes with a
convenient `git-gui.exe`, so let's just use it when it is available.

This fixes https://github.com/git-for-windows/git/issues/448

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui: fix detection of Cygwin
Pat Thoyts [Sun, 2 Oct 2016 10:51:29 +0000 (11:51 +0100)]
git-gui: fix detection of Cygwin

MSys2 might *look* like Cygwin, but it is *not* Cygwin... Unless it
is run with `MSYSTEM=MSYS`, that is.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agoAmend tab ordering and text widget border and highlighting.
Pat Thoyts [Sat, 1 Oct 2016 23:13:07 +0000 (00:13 +0100)]
Amend tab ordering and text widget border and highlighting.

Tab order follows widget creation order (and Z-order) so amend this to
match the layout more logically.
For keyboard selection a highlight around the selected text widget is
useful. Customized on Windows themed Tk to follow the native theme more
closely with a custom EntryFrame style.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agoAllow keyboard control to work in the staging widgets.
Pat Thoyts [Sat, 1 Oct 2016 21:04:39 +0000 (22:04 +0100)]
Allow keyboard control to work in the staging widgets.

Keyboard focus was restricted to the commit message widget and users were
forced to use the mouse to select files in the workdir widget and only then
could use a key combination to stage the file.
It is now possible to use key navigation (Ctrl-Tab, arrow keys and Ctrl-T
or Ctrl-U) to stage and unstage files.
Suggested by @koppor in git-for-window/git issue #859

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
7 years agogit-gui: l10n: add Portuguese translation
Vasco Almeida [Fri, 6 May 2016 16:06:42 +0000 (16:06 +0000)]
git-gui: l10n: add Portuguese translation

Add Portuguese glossary.

Signed-off-by: Vasco Almeida <vascomalmeida@sapo.pt>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit-gui i18n: mark strings for translation
Vasco Almeida [Sun, 8 May 2016 10:52:54 +0000 (10:52 +0000)]
git-gui i18n: mark strings for translation

Mark strings for translation in lib/index.tcl that were seemingly
left behind by 700e560 ("git-gui: Mark forgotten strings for
translation.", 2008-09-04) which marks string in do_revert_selection
procedure.
These strings are passed to unstage_help and add_helper procedures.

Signed-off-by: Vasco Almeida <vascomalmeida@sapo.pt>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit-gui: stop using deprecated merge syntax
René Scharfe [Sat, 24 Sep 2016 11:30:22 +0000 (13:30 +0200)]
git-gui: stop using deprecated merge syntax

Starting with v2.5.0 git merge can handle FETCH_HEAD internally and
warns when it's called like 'git merge <message> HEAD <commit>' because
that syntax is deprecated.  Use this feature in git-gui and get rid of
that warning.

Signed-off-by: Rene Scharfe <l.s.r@web.de>
Tested-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit-gui: respect commit.gpgsign again
Johannes Schindelin [Fri, 9 Sep 2016 12:28:24 +0000 (14:28 +0200)]
git-gui: respect commit.gpgsign again

As of v2.9.0, `git commit-tree` no longer heeds the `commit.gpgsign`
config setting. This broke committing with GPG signature in Git GUI.

This fixes https://github.com/git-for-windows/git/issues/850

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit-gui: update Japanese information
Satoshi Yasushima [Tue, 6 Sep 2016 16:02:21 +0000 (01:02 +0900)]
git-gui: update Japanese information

Signed-off-by: Satoshi Yasushima <s.yasushima@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit-gui: update Japanese translation
Satoshi Yasushima [Tue, 6 Sep 2016 16:02:20 +0000 (01:02 +0900)]
git-gui: update Japanese translation

Signed-off-by: Satoshi Yasushima <s.yasushima@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit-gui: add Japanese language code
Satoshi Yasushima [Tue, 6 Sep 2016 16:02:19 +0000 (01:02 +0900)]
git-gui: add Japanese language code

Signed-off-by: Satoshi Yasushima <s.yasushima@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit-gui: apply po template to Japanese translation
Satoshi Yasushima [Tue, 6 Sep 2016 16:02:18 +0000 (01:02 +0900)]
git-gui: apply po template to Japanese translation

Signed-off-by: Satoshi Yasushima <s.yasushima@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit-gui: consistently use the same word for "blame" in Japanese
Satoshi Yasushima [Tue, 6 Sep 2016 16:02:17 +0000 (01:02 +0900)]
git-gui: consistently use the same word for "blame" in Japanese

Signed-off-by: Satoshi Yasushima <s.yasushima@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogit-gui: consistently use the same word for "remote" in Japanese
Satoshi Yasushima [Tue, 6 Sep 2016 16:02:16 +0000 (01:02 +0900)]
git-gui: consistently use the same word for "remote" in Japanese

Signed-off-by: Satoshi Yasushima <s.yasushima@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
8 years agogit-gui: Do not reset author details on amend
Orgad Shaneh [Mon, 11 Apr 2016 06:57:39 +0000 (09:57 +0300)]
git-gui: Do not reset author details on amend

git commit --amend preserves the author details unless --reset-author is
given.

git-gui discards the author details on amend.

Fix by reading the author details along with the commit message, and
setting the appropriate environment variables required for preserving
them.

Reported long ago in the mailing list[1].

[1] http://article.gmane.org/gmane.comp.version-control.git/243921

Signed-off-by: Orgad Shaneh <orgad.shaneh@audiocodes.com>
9 years agogit-gui: sort entries in tclIndex
Olaf Hering [Mon, 26 Jan 2015 15:07:21 +0000 (17:07 +0200)]
git-gui: sort entries in tclIndex

ALL_LIBFILES uses wildcard, which provides the result in directory
order. This order depends on the underlying filesystem on the
buildhost. To get reproducible builds it is required to sort such list
before using them.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: set version 0.20 gitgui-0.20.0
Pat Thoyts [Sat, 18 Apr 2015 11:15:32 +0000 (12:15 +0100)]
git-gui: set version 0.20

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: sv.po: Update Swedish translation (547t0f0u)
Peter Krefting [Fri, 27 Mar 2015 09:25:32 +0000 (10:25 +0100)]
git-gui: sv.po: Update Swedish translation (547t0f0u)

Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui i18n: Updated Bulgarian translation (547t,0f,0u)
Alexander Shopov [Tue, 7 Apr 2015 15:29:46 +0000 (18:29 +0300)]
git-gui i18n: Updated Bulgarian translation (547t,0f,0u)

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: Makes chooser set 'gitdir' to the resolved path
Remi Rampin [Fri, 6 Mar 2015 16:21:53 +0000 (11:21 -0500)]
git-gui: Makes chooser set 'gitdir' to the resolved path

If _is_git follows a "gitdir: ..." file link to get to the actual
repository, we want _gitdir to be set to that final path.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Remi Rampin <remirampin@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: Fixes chooser not accepting gitfiles
Remi Rampin [Fri, 6 Mar 2015 16:21:52 +0000 (11:21 -0500)]
git-gui: Fixes chooser not accepting gitfiles

Support the case where .git is a platform independent symbolic link
and not a directory. This occurs when --separate-git-dir is used when
creating the local repository to store the .git directory elsewhere.

git-gui does not support such repositories when using the repository
chooser as the test to determine that the chosen directory is a git
repository fails for such repositories.

This commit enables _is_git to read the real location from the
symbolic link file.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Remi Rampin <remirampin@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: reinstate support for Tcl 8.4
Kyle J. McKay [Tue, 6 Jan 2015 10:41:21 +0000 (02:41 -0800)]
git-gui: reinstate support for Tcl 8.4

Tcl 8.5 introduced an extended vsatisfies syntax that is not
supported by Tcl 8.4.

Since only Tcl 8.4 is required this presents a problem.

The extended syntax was used starting with Git 2.0.0 in commit
b3f0c5c0 (git-gui: tolerate major version changes when comparing the
git version, 2014-05-17), so that a major version change would still
satisfy the condition.

However, what we really want is just a basic version compare, so use
vcompare instead to restore compatibility with Tcl 8.4.

Signed-off-by: Kyle J. McKay <mackyle@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: fix problem with gui.maxfilesdisplayed
Csaba Kiraly [Mon, 15 Dec 2014 15:38:00 +0000 (16:38 +0100)]
git-gui: fix problem with gui.maxfilesdisplayed

gui.maxfilesdisplayed (added in dd6451f9c7c5a36d3006231b618ac6da06c7c7b4)
was applied brute force on the file list in alphabetic order. As a result,
files that had modifications might not be displayed by git-gui. Even
worse, files that are already in the index might not be displayed, which
makes git-gui hard to use in some workflows.

This fix changes the meaning of gui.maxfilesdisplayed, making it a soft
limit that only applies to "_O" files, i.e. files that are "Untracked,
not staged".

Signed-off-by: Csaba Kiraly <kiraly@disi.unitn.it>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: fix verbose loading when git path contains spaces.
Pat Thoyts [Fri, 7 Nov 2014 00:37:28 +0000 (00:37 +0000)]
git-gui: fix verbose loading when git path contains spaces.

After setting GITGUI_VERBOSE to enable load tracing the source command is
redefined but fails if the git installation path has spaces. Fixed quoting
by using lists to handle the arguments.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui/gitk: Do not depend on Cygwin's "kill" command on Windows
Sebastian Schuberth [Thu, 23 Oct 2014 19:30:54 +0000 (21:30 +0200)]
git-gui/gitk: Do not depend on Cygwin's "kill" command on Windows

Windows does not necessarily mean Cygwin, it could also be MSYS. The
latter ships with a version of "kill" that does not understand "-f". In
msysgit this was addressed shipping Cygwin's version of kill.

Properly fix this by using the stock Windows "taskkill" command instead,
which is available since Windows XP Professional.

Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: add configurable tab size to the diff view
Michael Lutz [Sun, 12 Feb 2012 15:55:17 +0000 (16:55 +0100)]
git-gui: add configurable tab size to the diff view

For Tk 8.5 the "wordprocessor" mode allows us to get a bit fancy for merge
diffs and intend the tabs by one to compensate for the additional diff
marker at the line start.

The code is heavily based on how gitk handles tabs.

Signed-off-by: Michael Lutz <michi@icosahedron.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: Make git-gui lib dir configurable at runime
David Turner [Mon, 21 Jul 2014 20:41:38 +0000 (16:41 -0400)]
git-gui: Make git-gui lib dir configurable at runime

Introduce the GIT_GUI_LIB_DIR environment variable, to tell git-gui
where to look for TCL libs.  This allows a git-gui which has been
built with a prefix of /foo to be run out of directory /bar.  This is
the equivalent of GIT_EXEC_PATH or GITPERLLIB but for git-gui's TCL
libraries.

Signed-off-by: David Turner <dturner@twitter.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui i18n: Updated Bulgarian translation (520t,0f,0u)
Alexander Shopov [Fri, 8 Aug 2014 06:10:03 +0000 (09:10 +0300)]
git-gui i18n: Updated Bulgarian translation (520t,0f,0u)

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agoMerge remote-tracking branch 'vnwildman/master'
Pat Thoyts [Sun, 29 Jun 2014 11:59:15 +0000 (12:59 +0100)]
Merge remote-tracking branch 'vnwildman/master'

9 years agoL10n: vi.po (543t): Init translation for Vietnamese
Trần Ngọc Quân [Sat, 28 Jun 2014 00:10:58 +0000 (07:10 +0700)]
L10n: vi.po (543t): Init translation for Vietnamese

  * Pickup pot file then msginit from it

Signed-off-by: Trần Ngọc Quân <vnwildman@gmail.com>
9 years agogit-gui: align the new recursive checkbox with the radiobuttons.
Pat Thoyts [Fri, 13 Jun 2014 18:38:28 +0000 (19:38 +0100)]
git-gui: align the new recursive checkbox with the radiobuttons.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: Add a 'recursive' checkbox in the clone menu.
Henri GEIST [Tue, 11 Mar 2014 18:21:01 +0000 (19:21 +0100)]
git-gui: Add a 'recursive' checkbox in the clone menu.

Permit to do a 'git clone --recursive' through git-gui.
Add a 'recursive' checkbox in the clone menu which allows
users to clone a repository and all its submodules in one
go (unless the 'update' flag is set to "none" in the
.gitmodules file for a submodule, in that case that
specific submodule is not cloned automatically).

Enable this new option per default, as most users want to
clone all submodules too when cloning the superproject
(This is currently not possible without leaving git gui
or adding a custom tool entry for that).

Signed-off-by: Henri GEIST <geist.henri@laposte.net>
Thanks-to: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
9 years agogit-gui: tolerate major version changes when comparing the git version
Jens Lehmann [Sat, 17 May 2014 19:49:05 +0000 (21:49 +0200)]
git-gui: tolerate major version changes when comparing the git version

Since git 2.0.0 starting git gui in a submodule using a gitfile fails with
the following error:

   No working directory ../../../<path>

   couldn't change working directory
   to "../../../<path>": no such file or
   directory

This is because "git rev-parse --show-toplevel" is only run when git gui
sees a git version of at least 1.7.0 (which is the version in which the
 --show-toplevel option was introduced). But "package vsatisfies" returns
false when the major version changes, which is not what we want here.

Fix that for both places where the git version is checked using vsatisfies
by appending a '-' to the version number. This tells vsatisfies that a
change of the major version is not considered to be a problem, as long as
the new major version is larger. This is done for both the place that
caused the reported bug and another spot where the git version is tested
for another feature.

Reported-by: Chris Packham <judge.packham@gmail.com>
Reported-by: Yann Dirson <ydirson@free.fr>
Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
9 years agogit-gui: show staged submodules regardless of ignore config
Jens Lehmann [Tue, 8 Apr 2014 19:30:51 +0000 (21:30 +0200)]
git-gui: show staged submodules regardless of ignore config

Currently setting submodule.<name>.ignore and/or diff.ignoreSubmodules to
"all" suppresses all output of submodule changes for git-gui. This is
really confusing, as even when the user chooses to record a new commit for
an ignored submodule by adding it manually this change won't show up under
"Staged Changes (Will Commit)".

Fix that by using the '--ignore-submodules=dirty' option for both callers
of "git diff-index --cached" when the underlying git version supports that
option.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui 0.19 gitgui-0.19.0
Pat Thoyts [Sat, 18 Jan 2014 17:29:34 +0000 (17:29 +0000)]
git-gui 0.19

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: chmod +x po2msg, windows/git-gui.sh
Jonathan Nieder [Mon, 25 Nov 2013 21:01:05 +0000 (13:01 -0800)]
git-gui: chmod +x po2msg, windows/git-gui.sh

The Makefile only runs po/po2msg.sh using tclsh, but because the
script has the usual tcl preamble starting with #!/bin/sh it can also
be run directly.

The Windows git-gui wrapper is usable in-place for the same reason.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: fallback right pane to packed widgets with Tk 8.4
Max Kirillov [Tue, 14 Jan 2014 23:58:09 +0000 (01:58 +0200)]
git-gui: fallback right pane to packed widgets with Tk 8.4

Since 918dbf58, git-gui crashes if started with Tk 8.4. The reason is that
tk < 8.5 does not support -stretch option for panedwindow.

Without the option it's not possible to properly expand the right half -
the commit area is expanded, while desired behavior is to expand the diff
area. So the whole feature should be disabled with Tk
version less than 8.5.

Signed-off-by: Max Kirillov <max@max630.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui i18n: Added Bulgarian translation
Alexander Shopov [Wed, 15 Jan 2014 11:07:56 +0000 (13:07 +0200)]
git-gui i18n: Added Bulgarian translation

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui l10n: Add 29 more terms to glossary
Alexander Shopov [Wed, 15 Jan 2014 11:07:57 +0000 (13:07 +0200)]
git-gui l10n: Add 29 more terms to glossary

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui i18n: Initial glossary in Bulgarian
Alexander Shopov [Wed, 15 Jan 2014 11:07:55 +0000 (13:07 +0200)]
git-gui i18n: Initial glossary in Bulgarian

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: correct spelling errors in comments
Masanari Iida [Tue, 12 Nov 2013 15:17:44 +0000 (00:17 +0900)]
git-gui: correct spelling errors in comments

Signed-off-by: Masanari Iida <standby24x7@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: add menu item to launch a bash shell on Windows.
Pat Thoyts [Thu, 12 Sep 2013 20:15:19 +0000 (21:15 +0100)]
git-gui: add menu item to launch a bash shell on Windows.

When using git-gui as the primary git application on Windows it can be
awkward obtaining a suitable shell. This commit adds a menu item to the
Repository menu that launches the bash shell provided with the git
installation on Windows.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: corrected setup of git worktree under cygwin.
John Murphy [Wed, 4 Sep 2013 15:03:48 +0000 (11:03 -0400)]
git-gui: corrected setup of git worktree under cygwin.

Under cygwin the _gitworktree variable needs to contain the Windows
style path string so the output provided by git rev-parse must
be converted from cygwin path style to native.

Reviewed-by: Jesse Welch <jesse.welch@baml.com>
Signed-off-by: John Patrick Murphy <john.murphy@baml.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: right half window is paned
Max Kirillov [Wed, 21 Aug 2013 03:38:40 +0000 (06:38 +0300)]
git-gui: right half window is paned

For long descriptions it would be nice to be able to resize
the comment text field.

Signed-off-by: Max Kirillov <max@max630.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: Add gui.displayuntracked option
Max Kirillov [Wed, 21 Aug 2013 03:29:13 +0000 (06:29 +0300)]
git-gui: Add gui.displayuntracked option

When git is used to track only a subset of a directory, or
there is no sure way to divide files to ignore from files to track,
git user have to live with large number of untracked files. These files
present in file list, and should always be scrolled through
to handle real changes. Situation can become even worse, then number
of the untracked files grows above the maxfilesdisplayed limit. In the
case, even staged can be hidden by git-gui.

This change introduces new configuration variable gui.displayuntracked,
which, when set to false, instructs git-gui not to show untracked files
in files list. They can be staged from commandline or other tools (like
IDE of file manager), then they become visible. Default value of the
option is true, which is compatible with current behavior.

Signed-off-by: Max Kirillov <max@max630.net>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: show the maxrecentrepo config option in the preferences dialog
Pat Thoyts [Tue, 27 Aug 2013 10:11:15 +0000 (11:11 +0100)]
git-gui: show the maxrecentrepo config option in the preferences dialog

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: added gui.maxrecentrepo to extend the number of remembered repos
Pat Thoyts [Wed, 10 Jul 2013 12:31:13 +0000 (13:31 +0100)]
git-gui: added gui.maxrecentrepo to extend the number of remembered repos

The list of recently opened repositories shown when launching git-gui from
outside a repository was hard coded to only show a maximum of 10 items.
This config variable allows the user to override this default.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: Improve font rendering on retina macbooks
Mads Dørup [Sun, 21 Jul 2013 12:23:48 +0000 (14:23 +0200)]
git-gui: Improve font rendering on retina macbooks

Signed-off-by: Mads Dørup <mads@dorup.dk>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui 0.18 gitgui-0.18.0
Pat Thoyts [Sat, 15 Jun 2013 22:53:34 +0000 (23:53 +0100)]
git-gui 0.18

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: avoid an error message when removing the last remote
Pat Thoyts [Sat, 15 Jun 2013 22:36:27 +0000 (23:36 +0100)]
git-gui: avoid an error message when removing the last remote

When the last remote is removed on a system that has tearoff menu items
the code that adjusts the fetch and prune menus may raise an error when
probing the menu entry for a non-existing -label option.
Check the entry type to avoid this fault.

Reported-by: Vedran Miletić <rivanvx@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: fix file name handling with non-empty prefix
John Keeping [Sat, 27 Apr 2013 13:24:16 +0000 (14:24 +0100)]
git-gui: fix file name handling with non-empty prefix

Commit e3d06ca (git-gui: Detect full path when parsing arguments -
2012-10-02) fixed the handling of absolute paths passed to the browser
and blame subcommands by checking whether the file exists without the
prefix before prepending the prefix and checking again.  Since we have
chdir'd to the top level of the working tree before doing this, this
does not work if a file with the same name exists in a subdirectory and
at the top level (for example Makefile in git.git's t/ directory).

Instead of doing this, revert that patch and fix absolute path issue by
using "file join" to prepend the prefix to the supplied path.  This will
correctly handle absolute paths by skipping the prefix in that case.

Acked-by: Andrew Wong <andrew.kw.w@gmail.com>
Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 years agogit-gui: bring wish process to front on Mac
Stefan Haller [Thu, 6 Jun 2013 08:17:47 +0000 (10:17 +0200)]
git-gui: bring wish process to front on Mac

On Mac OS X, any application that is started from the Terminal will open
behind all running applications; as a work-around, manually bring ourselves
to the front. (Stolen from gitk, commit 76bf6ff93e.)

We do this as the very first thing, so that any message boxes that might pop
up during the rest of the startup sequence are actually seen by the user.

[PT: added catch and moved down to ensure Tk has been loaded]

Signed-off-by: Stefan Haller <stefan@haller-berlin.de>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
10 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>
10 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>
11 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>
11 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>
11 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>
11 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>
11 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>
11 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>