Show all
Author Commit Message Labels Comments Date
Shawn O. Pearce
git-gui: Remove unused icon file_parttick This icon hasn't been used in git gui. I think it dates back to the original set of icons I took from Paul Mackerras' prototype that I turned into git gui. Signed-off-by: Shawn O. Pearce <>
Peter Oberndorfer
git-gui: use different icon for new and modified files in the index This allows to quickly differentiate between new and modified files in the index without selecting the file and looking at the diff. Signed-off-by: Peter Oberndorfer <> Signed-off-by: Shawn O. Pearce <>
Giuseppe Bilotta
git-gui: set GIT_DIR and GIT_WORK_TREE after setup Rather than juggling with the env var GIT_DIR around the invocation of gitk, set it and GIT_WORK_TREE after finishing setup, ensuring that any external tool works with the setup we're running with. This also allows us to remove a couple of conditionals when running gitk or git gui in a submodule, as we know that the variables are present and have to be unset and reset before and after the invocat…
Giuseppe Bilotta
git-gui: update shortcut tools to use _gitworktree Signed-off-by: Giuseppe Bilotta <> Signed-off-by: Shawn O. Pearce <>
Giuseppe Bilotta
git-gui: handle bare repos correctly Refactor checking for a bare repository into its own proc, that relies on git rev-parse --is-bare-repository if possible. For older versions of git we fall back to a logic such that the repository is considered bare if: * either the core.bare setting is true * or the worktree is not set and the directory name ends with .git The error message for the case of an unhandled bare repository is also u…
Giuseppe Bilotta
git-gui: handle non-standard worktree locations Don't rely on the git worktree being the updir of the gitdir, since it might not be. Instead, define (and use) a new _gitworktree global variable, setting it to $GIT_WORK_TREE if present, falling back to core.worktree if defined, and finally to whatever we guess the correct worktree is. Getting core.worktree requires the config from the alleged git dir _gitdir to be loaded early. Supporting non-s…
git-gui: Support applying a range of changes at once Multiple lines can be selected in the diff viewer and applied all at once, rather than selecting "Stage Line For Commit" on each individual line. Signed-off-by: Jeff Epler <> Signed-off-by: Shawn O. Pearce <>
Jens Lehmann
git-gui: Add a special diff popup menu for submodules To make it easier for users to deal with submodules, a special diff popup menu has been added for submodules. The "Show Less Context" and "Show More Context" entries have been removed, as they don't make any sense for a submodule summary. Four new entries are added to the top of the popup menu to gain access to more detailed information about the changes in a submodule than the plain summary does …
Jens Lehmann
git-gui: Use git diff --submodule when available Doing so is much faster and gives the same output. Here are some numbers: $ time git submodule summary real 0m0.219s user 0m0.050s sys 0m0.111s $ time git diff --submodule real 0m0.012s user 0m0.003s sys 0m0.009s Signed-off-by: Jens Lehmann <> Signed-off-by: Shawn O. Pearce <>
Giuseppe Bilotta
git-gui: work from the .git dir When git-gui is run from a .git dir, _gitdir would be set to "." by rev-parse, something that confuses the worktree detection. Fix by expanding the value of _gitdir to pwd in this special case. Signed-off-by: Giuseppe Bilotta <> Signed-off-by: Shawn O. Pearce <>
git-gui: Fix applying a line when all following lines are deletions If a diff looked like: @@ context -del1 -del2 and you wanted to stage the deletion 'del1', the generated patch wouldn't apply because it was missing the line 'del2' converted to context, but this line was counted in the @@-line Signed-off-by: Jeff Epler <> Signed-off-by: Shawn O. Pearce <>
Jens Lehmann
git-gui: Correct file_states when unstaging partly staged entry When unstaging a partly staged file or submodule, the file_states list was not updated properly (unless unstaged linewise). Its index_info part did not contain the former head_info as it should have but kept its old value. This seems not to have had any bad effects but diminishes the value of the file_states list for future enhancements. Signed-off-by: Jens Lehmann <> Signed-o…
Peter Krefting
git-gui: Fix gitk for branch whose name matches local file When trying to run gitk on a branch name whose name matches a local file, it will toss an error saying that the name is ambiguous. Adding a pair of dashes will make gitk parse the options to the left of it as branch names. Since wish eats the first pair of dashes we throw at it, we need to add a second one to ensure they get through. Signed-off-by: Peter Krefting <> Signed-o…
Chris Beelby
git-gui: Keep repo_config(gui.recentrepos) and .gitconfig in sync When the number of recent repo's gets to ten there can be a situation where an item is removed from the .gitconfig file via a call to git config --unset, but the internal representation of that file (repo_config(gui.recentrepo)) is not updated. Then a subsequent attempt to remove an item from the list fails because git-gui attempts to call --unset on a value that has already been removed. This l…
Pat Thoyts
git-gui: handle really long error messages in updateindex. As reported to msysGit (bug #340) it is possible to get some very long error messages when updating the index. The use of a label to display this prevents scrolling the output. This patch replaces the label with a scrollable text widget configured to look like a label. Signed-off-by: Pat Thoyts <> Signed-off-by: Shawn O. Pearce <>
Vitaly _Vi Shukela
git-gui: Add hotkeys for "Unstage from commit" and "Revert changes" Signed-off-by: Vitaly _Vi Shukela <> Signed-off-by: Shawn O. Pearce <>
Jonathan Nieder
git-gui: Makefile: consolidate .FORCE-* targets Providing multiple targets to force a rebuild is unnecessary complication. Avoid using a name that could conflict with future special targets in GNU make (a leading period followed by uppercase letters). Cc: Junio C Hamano <> Signed-off-by: Jonathan Nieder <> Signed-off-by: Shawn O. Pearce <>
Jindrich Makovicka
git-gui: suppress RenderBadPicture X error caused by Tk bug Due to a bug in Tk, git-gui almost always (unless git-gui is closed right after starting) produces an X window error message on exit, something like: X Error of failed request: RenderBadPicture (invalid Picture parameter) Major opcode of failed request: 150 (RENDER) Minor opcode of failed request: 7 (RenderFreePicture) Picture id in failed request: 0x3a000dc Serial number of failed req…
Alexander Gavrilov
git-gui: Increase blame viewer usability on MacOS. On MacOS raising a window causes the focus to be transferred to it -- although it may actually be a bug in the Tcl/Tk port. When this happens with the blame viewer tooltips, it makes the interface less usable, because Entry and Leave handlers on the text view cause the tip to disappear once the mouse is moved even 1 pixel. This commit makes the code raise the main window on MacOS when Tk 8.5 is u…
Clemens Buchacher
git-gui: search 4 directories to improve statistic of gc hint On Windows, git-gui suggests running the garbage collector if it finds 1 or more files in .git/objects/42 (as opposed to 8 files on other platforms). The probability of that happening if the repo contains about 100 loose objects is 32%. The probability for the same to happen when searching 4 directories is only 8%, which is bit more reasonable. Also remove $objects_limit from the message, because…
Heiko Voigt
git gui: make current branch default in "remote delete branch" merge check We already do the same when locally deleting a branch. Signed-off-by: Heiko Voigt <> Signed-off-by: Shawn O. Pearce <>
Vietor Liu
git-gui: adjust the minimum height of diff pane for shorter screen height When the main window is maximized, if the screen height is shorter (e.g. Netbook screen 1024x600), both the partial commit pane and the status bar are hidden. The diff pane is resizable, so that it can use less vertical height, allowing the overall window to be shorter and still display both the entire commit pane and status bar. Signed-off-by: Vietor Liu <> Signed-off-by: Shawn O.…
Jens Lehmann
git-gui: fix use of uninitialized variable This fixes a bug introduced by the "display summary when showing diff of a submodule" patch. It lead to a "no such variable" error when opening the diff context menu while no diff was shown. Signed-off-by: Jens Lehmann <> Signed-off-by: Shawn O. Pearce <>
Alexey Borzenkov
git-gui: store wm state and fix wm geometry I often close git gui window when it is maximized, and when I reopen it next time the it would usually become out of place (e.g. a huge window with a top-left corner somewhere close to the center of the screen). Fix it by storing and restoring wm state in config, as well as setting wm state to normal before retrieving wm geometry info. Signed-off-by: Alexey Borzenkov <> Signed-off…
Shawn O. Pearce
git-gui: Ensure submodule path is quoted properly When quoting an arbitrary user string in Tcl, its better to use [list ...] than to use {...}, in case the user string has spaces or { embedded within it. Signed-off-by: Shawn O. Pearce <>
Jens Lehmann
git-gui: fix diff for partially staged submodule changes When a submodule commit had already been staged and another commit had been checked out inside the submodule, the diff always displayed the submodule commit log messages between the last supermodule commit and the working tree, totally ignoring the commit in the index. Signed-off-by: Jens Lehmann <> Signed-off-by: Shawn O. Pearce <>
Alex Riesen
git-gui: Update russian translation Signed-off-by: Alex Riesen <> Signed-off-by: Shawn O. Pearce <>
Dan Zwell
git-gui: Limit display to a maximum number of files When there is a large number of new or modified files, "display_all_files" takes a long time, and git-gui appears to hang. This change limits the number of files that are displayed. This limit can be set as gui.maxfilesdisplayed, and is 5000 by default. A warning is shown the first time the list of files is truncated in this GUI session. Subsequent truncations are not mentioned to the user. S…
Heiko Voigt
git-gui: remove warning when deleting correctly merged remote branch If the user wants to delete a remote branch and selects the correct "merged into" we should not warn that "Recovering deleted branches is difficult". For local branches we do the same already. Signed-off-by: Heiko Voigt <> Signed-off-by: Shawn O. Pearce <>
Jimmy Angelakos
git-gui: Added Greek translation & glossary Signed-off-by: Shawn O. Pearce <>
  1. Prev
  2. Next