summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2015-03-07git-gui: Makes chooser set 'gitdir' to the resolved pathLibravatar Remi Rampin1-3/+8
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>
2015-03-07git-gui: Fixes chooser not accepting gitfilesLibravatar Remi Rampin1-0/+10
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>
2014-10-06git-gui: add configurable tab size to the diff viewLibravatar Michael Lutz2-1/+20
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>
2014-06-13git-gui: align the new recursive checkbox with the radiobuttons.Libravatar Pat Thoyts1-1/+1
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2014-06-13git-gui: Add a 'recursive' checkbox in the clone menu.Libravatar Henri GEIST1-2/+32
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>
2014-06-13git-gui: show staged submodules regardless of ignore configLibravatar Jens Lehmann1-0/+3
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>
2013-11-15git-gui: correct spelling errors in commentsLibravatar Masanari Iida3-4/+4
Signed-off-by: Masanari Iida <standby24x7@gmail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2013-08-27git-gui: Add gui.displayuntracked optionLibravatar Max Kirillov1-0/+1
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>
2013-08-27git-gui: show the maxrecentrepo config option in the preferences dialogLibravatar Pat Thoyts1-0/+1
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2013-08-27git-gui: added gui.maxrecentrepo to extend the number of remembered reposLibravatar Pat Thoyts1-2/+10
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>
2013-06-15git-gui: avoid an error message when removing the last remoteLibravatar Pat Thoyts1-2/+4
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>
2013-05-17git-gui: change dialog button positions for Windows to suit platform.Libravatar Pat Thoyts1-1/+3
On windows it is more common to have cancel furthest on the right. Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2013-05-16git-gui: allow "\ No newline at end of file" for linewise stagingLibravatar Heiko Voigt1-2/+9
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>
2013-02-22git-gui: fix the mergetool launcher for the Beyond Compare tool.Libravatar Pat Thoyts1-2/+2
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>
2012-09-17git-gui: remove .git/CHERRY_PICK_HEAD after committingLibravatar Beat Bolli1-0/+1
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>
2012-09-17git-gui: Fix a loose/lose mistakeLibravatar Beat Bolli1-1/+1
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>
2012-01-22git-gui: fix git-gui crash due to uninitialized variableLibravatar Clemens Buchacher1-0/+1
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>
2011-12-09git-gui: handle shell script text filters when loading for blame.Libravatar Pat Thoyts1-11/+8
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>
2011-11-05git-gui: don't warn for detached head when rebasingLibravatar Bert Wesarg1-1/+3
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-11-05git-gui: make config gui.warndetachedcommit a booleanLibravatar Bert Wesarg2-1/+2
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-11-05git-gui: add config value gui.diffopts for passing additional diff optionsLibravatar Tilman Vogel2-0/+2
Signed-off-by: Tilman Vogel <tilman.vogel@web.de> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-11-04git-gui: sort the numeric ansi codesLibravatar Pat Thoyts1-1/+1
This ensures that underline does not conflict with inverse colors. Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-11-04git-gui: support underline style when parsing diff outputLibravatar Pat Thoyts1-1/+1
Suggested-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-10-31git-gui: fix spelling error in sshkey.tclLibravatar Dejan Ribič1-1/+1
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>
2011-10-21git-gui: include the file path in guitools confirmation dialogLibravatar Bert Wesarg1-2/+8
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>
2011-10-21git-gui: span widgets over the full file output area in the blame viewLibravatar Bert Wesarg1-3/+6
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-10-21git-gui: use a tristate to control the case mode in the searchbarLibravatar Bert Wesarg1-7/+17
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>
2011-10-19git-gui: set suitable extended window manager hints.Libravatar Pat Thoyts5-0/+5
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>
2011-10-19git-gui: fix display of path in browser titleLibravatar Bert Wesarg1-1/+7
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>
2011-10-19Merge branch 'bw/searching'Libravatar Pat Thoyts3-17/+196
2011-10-19git-gui: enable the smart case sensitive search only if gui.search.smartcase ↵Libravatar Pat Thoyts1-3/+7
is true Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-10-19git-gui: catch invalid or complete regular expressions and treat as no match.Libravatar Pat Thoyts1-7/+9
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-10-19git-gui: theme the search and line-number entry fields on blame screenLibravatar Pat Thoyts3-8/+100
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-10-18git-gui: include the number of untracked files to stage when asking the userLibravatar Pat Thoyts1-1/+2
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-10-18git-gui: new config to control staging of untracked filesLibravatar Bert Wesarg2-1/+31
The default is the current "ask". Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-10-18git-gui: use "untracked" for files which are not known to gitLibravatar Bert Wesarg1-5/+5
"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>
2011-10-18git-gui: fix unintended line break in message stringLibravatar Bert Wesarg1-2/+1
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-10-18git-gui: add search history to searchbarLibravatar Bert Wesarg1-0/+60
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>
2011-10-18git-gui: add regexp search mode to the searchbarLibravatar Bert Wesarg1-1/+11
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>
2011-10-18git-gui: add smart case search mode in searchbarLibravatar Bert Wesarg1-1/+12
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>
2011-10-15git-gui: incremental goto line in blame viewLibravatar Bert Wesarg1-4/+11
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>
2011-10-15git-gui: clear the goto line input when hidingLibravatar Bert Wesarg1-0/+1
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-10-15git-gui: only accept numbers in the goto-line inputLibravatar Bert Wesarg1-2/+11
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2011-10-15git-gui: search and linenumber input are mutual exclusive in the blame viewLibravatar Bert Wesarg1-6/+16
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>
2011-10-06git-gui: deal with unknown files when pressing the "Stage Changed" buttonLibravatar Heiko Voigt1-0/+9
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>
2011-07-19git-gui: drop the 'n' and 'Shift-n' bindings from the last patch.Libravatar Pat Thoyts1-2/+0
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>
2011-07-19git-gui: Add keyboard shortcuts for search and goto commands in blame view.Libravatar David Fries2-1/+7
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>
2011-07-19git-gui: Enable jumping to a specific line number in blame view.Libravatar David Fries2-0/+75
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>
2011-07-11Fix tooltip display with multiple monitors on windows.Libravatar Pat Thoyts2-4/+4
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>
2011-05-20git-gui: warn when trying to commit on a detached headLibravatar Heiko Voigt1-0/+15
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>