summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-09-22git-gui: fix mixed tabs and spaces; prefer tabsLibravatar Serg Tereshchenko1-43/+43
Spaces are replaced with tabs when possible. In some cases just replacing spaces with tabs would break readability, so it was left as it is. Signed-off-by: Serg Tereshchenko <serg.partizan@gmail.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-06-22Merge branch 'mt/open-worktree'Libravatar Pratyush Yadav1-24/+3
Clean up the code that checks if a directory is a Git repo. Use git rev-parse instead of rolling our own logic to find that out. A side effect (which also happens to be the main motivation behind it) of this change is that git-gui can now open worktrees other than the main worktree. * mt/open-worktree: git-gui: allow opening work trees from the startup dialog
2020-06-08git-gui: allow opening work trees from the startup dialogLibravatar Mikhail Terekhov1-24/+3
In proc _is_git check that supplied path is a valid work tree path. This allows the choose_repository::pick dialog to accept path to a work tree directory. Signed-off-by: Mikhail Terekhov <termim@gmail.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-05-21Merge branch 'il/ctrl-bs-del'Libravatar Pratyush Yadav1-0/+2
Allow deleting words backwards and forwards using Ctrl + Backspace and Delete in the commit message buffer. * il/ctrl-bs-del: git-gui: Handle Ctrl + BS/Del in the commit msg
2020-05-12git-gui: Handle Ctrl + BS/Del in the commit msgLibravatar Ismael Luceno1-0/+2
- Control+BackSpace: Delete word to the left of the cursor. - Control+Delete : Delete word to the right of the cursor. Originally introduced by BRIEF and Turbo Vision between 1985 and 1992, they were adopted by most CUA-Compliant UIs, including those of: OS/2, Windows, Mac OS, Qt, GTK, Open/Libre Office, Gecko, and GNU Emacs. In both cases Tk already implements the functionality bound to other key combination, so we use that. Graphical examples: Deleting to the left: v------ pointer X_WORD____X ^-----^------ selection Deleting to the right: v--------- pointer X_WORD_X ^--^------ selection Signed-off-by: Ismael Luceno <ismael.luceno@tttech-auto.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-05-05Merge branch 'ar/ui-ready-semicolon'Libravatar Pratyush Yadav3-6/+6
Fix syntax error popups because of missing semicolons. * ar/ui-ready-semicolon: Subject: git-gui: fix syntax error because of missing semicolon
2020-04-22Subject: git-gui: fix syntax error because of missing semicolonLibravatar Ansgar Röber3-6/+6
For some asynchronous operations, we build a chain of callbacks to execute when the operation is done. These callbacks are held in $after, and a new callback can be added by appending to $after. Once the operation is done, $after is executed as a script. But if we don't append a semi-colon after the procedure calls, they will appear to Tcl as arguments to the previous procedure's arguments. So, for example, if $after is "foo", and we just append "bar", then $after becomes "foo bar", and bar will be treated as an argument to foo. If foo does not accept any optional arguments, it would result in Tcl throwing an error. If instead we do append a semi-colon, $after will look like "foo;bar;", and these will be treated as two separate procedure calls. Before d9c6469 (git-gui: update status bar to track operations, 2019-12-01), this problem was masked because ui_ready/ui_status did accept an optional argument. In d9c6469, ui_ready stopped accepting an optional argument, and this error started showing up. Another instance of this problem is when a call to ui_status without a trailing semicolon. ui_status never accepted an optional argument to begin with, but the issue never managed to surface. So, fix these errors by making sure we always append a semi-colon after procedure calls when multiple callbacks are involved in $after. Helped-by: Pratyush Yadav <me@yadavpratyush.com> Signed-off-by: Ansgar Röber <ansgar.roeber@rwth-aachen.de>
2020-03-19Merge branch 'py/remove-tcloo'Libravatar Pratyush Yadav3-35/+35
Reduce the Tcl version requirement to 8.5 to allow git-gui to run on MacOS distributions like High Sierra. While here, fix a potential variable name collision. * py/remove-tcloo: git-gui: create a new namespace for chord script evaluation git-gui: reduce Tcl version requirement from 8.6 to 8.5
2020-03-17git-gui: create a new namespace for chord script evaluationLibravatar Pratyush Yadav1-2/+4
Evaluating the script in the same namespace as the chord itself creates potential for variable name collision. And in that case the script would unknowingly use the chord's variables. For example, say the script has a variable called 'is_completed', which also exists in the chord's namespace. The script then calls 'eval' and sets 'is_completed' to 1 thinking it is setting its own variable, completely unaware of how the chord works behind the scenes. This leads to the chord never actually executing because it sees 'is_completed' as true and thinks it has already completed. Avoid the potential collision by creating a separate namespace for the script that is a child of the chord's namespace. Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-03-17git-gui: reduce Tcl version requirement from 8.6 to 8.5Libravatar Pratyush Yadav3-35/+33
On some MacOS distributions like High Sierra, Tcl 8.5 is shipped by default. This makes git-gui error out at startup because of the version mismatch. The only part that requires Tcl 8.6 is SimpleChord, which depends on TclOO. So, don't use it and use our homegrown class.tcl instead. This means some slight syntax changes. Since class.tcl doesn't have an "unknown" method like TclOO does, we can't just call '$note', but have to use '$note activate' instead. The constructor now needs a proper namespace qualifier. Update the documentation to reflect the new syntax. As of now, the only part of git-gui that needs Tcl 8.5 is a call to 'apply' in lib/index.tcl::lambda. Keep using it until someone shows up shouting that their OS ships with 8.4 only. Then we would have to look into implementing it in pure Tcl. Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-03-14Merge branch 'js/askpass-coerce-utf8'Libravatar Pratyush Yadav1-0/+5
Askpass can now send non-ASCII to Git on Windows. * js/askpass-coerce-utf8: git-gui--askpass: coerce answers to UTF-8 on Windows
2020-03-14git-gui--askpass: coerce answers to UTF-8 on WindowsLibravatar Luke Bonanomi1-0/+5
This addresses the issue where Git for Windows asks the user for a password, no credential helper is available, and then Git fails to pick up non-ASCII characters from the Git GUI helper. This can be verified e.g. via echo host=http://abc.com | git -c credential.helper= credential fill and then pasting some umlauts. The underlying reason is that Git for Windows tries to communicate using the UTF-8 encoding no matter what the actual current code page is. So let's indulge Git for Windows and do use that encoding. This fixes https://github.com/git-for-windows/git/issues/2215 Signed-off-by: Luke Bonanomi <lbonanomi@gmail.com> Helped-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-03-14Merge branch 'py/blame-status-error'Libravatar Pratyush Yadav1-4/+6
Fixes an error popup in blame because of a missing closing bracket. * py/blame-status-error: git-gui: fix error popup when doing blame -> "Show History Context"
2020-03-03git-gui: fix error popup when doing blame -> "Show History Context"Libravatar Pratyush Yadav1-4/+6
In d9c6469 (git-gui: update status bar to track operations, 2019-12-01) the call to 'ui_status' in 'do_gitk' was updated to create the newly introduced "status bar operation". This allowed this status text to show along with other operations happening in parallel, and removed a race between all these operations. But in that refactor, the fact that 'ui_status' checks for the existence of 'main_status' was overlooked. This leads to an error message popping up when the user selects "Show History Context" from the blame window context menu on a source line. The error occurs because when running "blame" 'main_status' is not initialized. So, add a check for the existence of 'main_status' in 'do_gitk'. This fix reverts to the original behaviour. In the future, we might want to look into a better way of telling 'do_gitk' which status bar to use. Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-02-18Merge branch 'py/missing-bracket'Libravatar Pratyush Yadav1-1/+1
Fix an error popping up because of an unmatched closed bracket. * py/missing-bracket: git-gui: add missing close bracket
2020-02-17git-gui: add missing close bracketLibravatar Pratyush Yadav1-1/+1
In d9c6469 (git-gui: update status bar to track operations, 2019-12-01), the status bar was refactored to allow multiple overlapping operations. Since the refactor changed the status bar interface, all callsites had to be refactored to use the new interface. During that refactoring, this closing bracket was missed. This leads to an error message popping up when doing 'Branch->Reset...'. Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-02-17Merge branch 'cs/german-translation'Libravatar Pratyush Yadav5-2753/+3807
Update the German translation and extend glossary. * cs/german-translation: git-gui: update German translation git-gui: extend translation glossary template with more terms git-gui: update pot template and German translation to current source code
2020-02-17git-gui: update German translationLibravatar Christian Stimming2-385/+602
Update German translation (glossary and final translation) with recent additions, but also switch several terms from uncommon translations back to English vocabulary. This most prominently concerns "commit" (noun, verb), "repository", "branch", and some more. These uncommon translations have been introduced long ago and never been changed since. In fact, the whole German translation here hasn't been touched for a long time. However, in German literature and magazines, git-gui is regularly noted for its uncommon choice of translated vocabulary. This somewhat distracts from the actual benefits of this tool. So it is probably better to abandon the uncommon translations and rather stick to the common English vocabulary in git version control. Signed-off-by: Christian Stimming <christian@cstimming.de> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-02-17git-gui: extend translation glossary template with more termsLibravatar Christian Stimming2-46/+305
The English glossary template was missing some terms, some of them not only for git-gui, but also gitk and/or git core. Many such terms have been added. Also, the list has been sorted alphabetically so that comparison to other glossary lists are easier. Signed-off-by: Christian Stimming <christian@cstimming.de> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-02-17git-gui: update pot template and German translation to current source codeLibravatar Christian Stimming2-2533/+3111
No content changes so far, only the preparation for subsequent edits. Signed-off-by: Christian Stimming <christian@cstimming.de> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2020-01-05Merge branch 'zs/open-current-file'Libravatar Pratyush Yadav1-5/+24
Allow opening the currently selected file in its default app by clicking on its name. * zs/open-current-file: git-gui: allow opening currently selected file in default app
2019-12-31git-gui: allow opening currently selected file in default appLibravatar Zoli Szabó1-5/+24
Many times there's the need to quickly open a source file (the one you're looking at in Git GUI) in the predefined text editor / IDE. Of course, the file can be searched for in your preferred file manager or directly in the text editor, but having the option to directly open the current file from Git GUI would be just faster. This change enables just that by: - clicking the diff header path (which is now highlighted as a hyperlink) - or diff header path context menu -> Open Note: executable files will be run and not opened for editing. Signed-off-by: Zoli Szabó <zoli.szabo@gmail.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-12-20Merge branch 'py/console-close-esc'Libravatar Pratyush Yadav1-0/+2
Allow closing console window with Escape once the command is completed. * py/console-close-esc: git-gui: allow closing console window with Escape
2019-12-19git-gui: allow closing console window with EscapeLibravatar Pratyush Yadav1-0/+2
This gives users a quick shortcut to close the window. But since the window can also show commands in progress, closing the window on Escape can give the perception that the command has been cancelled even though it hasn't been. So, only enable this binding when the command is done. Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-12-11Merge branch 'kk/branch-name-encoding'Libravatar Pratyush Yadav2-0/+3
Fix UTF-8 refnames not displaying properly because the encoding was not set to UTF-8. * kk/branch-name-encoding: git gui: fix branch name encoding error
2019-12-10git gui: fix branch name encoding errorLibravatar Kazuhiro Kato2-0/+3
After "git checkout -b '漢字'" to create a branch with UTF-8 character in it, "git gui" shows the branch name incorrectly, as it forgets to turn the bytes read from the "git for-each-ref" and read from "HEAD" file into Unicode characters. Signed-off-by: Kazuhiro Kato <kato-k@ksysllc.co.jp> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-12-06Merge branch 'jg/revert-untracked'Libravatar Pratyush Yadav8-227/+891
git-gui learned to delete untracked files when the "Revert Changes" option is selected. Since there are two types of revert operations (one for tracked files and one for untracked ones), the "checkout" and "deletion" operations are done in parallel. The status bar is updated to allow both to use it in parallel. * jg/revert-untracked: git-gui: revert untracked files by deleting them git-gui: update status bar to track operations git-gui: consolidate naming conventions
2019-12-06git-gui: revert untracked files by deleting themLibravatar Jonathan Gilbert3-84/+502
Update the revert_helper proc to check for untracked files as well as changes, and then handle changes to be reverted and untracked files with independent blocks of code. Prompt the user independently for untracked files, since the underlying action is fundamentally different (rm -f). If after deleting untracked files, the directory containing them becomes empty, then remove the directory as well. Migrate unlocking of the index out of _close_updateindex to a responsibility of the caller, to permit paths that don't directly unlock the index, and refactor the error handling added in d4e890e5 so that callers can make flow control decisions in the event of errors. Update Tcl/Tk dependency from 8.4 to 8.6 in git-gui.sh. A new proc delete_files takes care of actually deleting the files in batches, using the Tcler's Wiki recommended approach for keeping the UI responsive. Since the checkout_index and delete_files calls are both asynchronous and could potentially complete in any order, a "chord" is used to coordinate unlocking the index and returning the UI to a usable state only after both operations are complete. The `SimpleChord` class, based on TclOO (Tcl/Tk 8.6), is added in this commit. Signed-off-by: Jonathan Gilbert <JonathanG@iQmetrix.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-12-06git-gui: update status bar to track operationsLibravatar Jonathan Gilbert7-108/+354
Update the status bar to track updates as individual "operations" that can overlap. Update all call sites to interact with the new status bar mechanism. Update initialization to explicitly clear status text, since otherwise it may persist across future operations. Signed-off-by: Jonathan Gilbert <JonathanG@iQmetrix.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-12-06git-gui: consolidate naming conventionsLibravatar Jonathan Gilbert1-46/+46
A few variables in this file use camelCase, while the overall standard is snake_case. A consistent naming scheme will improve readability of future changes. To avoid mixing naming changes with semantic changes, this commit contains only naming changes. Signed-off-by: Jonathan Gilbert <JonathanG@iQmetrix.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-10-14Merge branch 'ka/japanese-translation'Libravatar Pratyush Yadav1-4/+5
Improve Japanese translation. * ka/japanese-translation: git-gui: improve Japanese translation
2019-10-14git-gui: improve Japanese translationLibravatar kdnakt1-4/+5
Signed-off-by: kdnakt <a.kid.1985@gmail.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-10-12Merge branch 'py/readme'Libravatar Pratyush Yadav1-0/+174
Add a readme to introduce people finding the repo to the project. * py/readme: git-gui: add a readme
2019-10-12git-gui: add a readmeLibravatar Pratyush Yadav1-0/+174
It is a good idea to have a readme so people finding the project can know more about it, and know how they can get involved. Signed-off-by: Pratyush Yadav <me@yadavpratyush.com> Acked-by: Bert Wesarg <bert.wesarg@googlemail.com>
2019-10-04Merge branch 'bw/diff3-conflict-style'Libravatar Pratyush Yadav2-15/+21
git-gui now highlights diff3 style conflicts properly. As an auxiliary change, querying a path's attribute is done via the existing interface instead of hand-rolling the code. * bw/diff3-conflict-style: git-gui: support for diff3 conflict style git-gui: use existing interface to query a path's attribute
2019-10-04git-gui: support for diff3 conflict styleLibravatar Bert Wesarg2-1/+20
This adds highlight support for the diff3 conflict style. The common pre-image will be reversed to --, because it has been removed and replaced with ours or theirs side respectively. Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-10-03git-gui: use existing interface to query a path's attributeLibravatar Bert Wesarg1-14/+1
Replace the hand-coded call to git check-attr with the already provided one. Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-10-03Merge branch 'js/git-bash-if-available'Libravatar Pratyush Yadav1-2/+10
git-gui will now use git-bash instead of bash on Windows, if it is available. * js/git-bash-if-available: git-gui (Windows): use git-bash.exe if it is available
2019-10-01git-gui (Windows): use git-bash.exe if it is availableLibravatar Thomas Klaeger1-2/+10
Git for Windows 2.x ships with an executable that starts the Git Bash with all the environment variables and what not properly set up. It is also adjusted according to the Terminal emulator option chosen when installing Git for Windows (while `bash.exe --login -i` would always launch with Windows' default console). So let's use that executable (usually C:\Program Files\Git\git-bash.exe) instead of `bash.exe --login -i` if its presence was detected. This fixes https://github.com/git-for-windows/git/issues/490 Signed-off-by: Thomas Kläger <thomas.klaeger@10a.ch> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-09-24Merge branch 'py/git-git-extra-stuff'Libravatar Pratyush Yadav8-16/+74
Some changes were added directly to git.git's git-gui subtree, instead of being added to the separate git-gui repo and then being pulled back into git.git. This means those changes are now not in the git-gui tree. So pull them back into git-gui so we match with what git.git has (after they pull in the recently added commits). Most of the changes could be added back in via an octopus merge of all the missing branches. But there were two commits (faf420e05a and b71c6c3b64) which touched other parts of git.git along with git-gui, so they had to be added back in via a cherry-pick because directly pulling them in would also pull in all the ancestors of those commits, needlessly bloating git-gui with git.git's history. Thanks to Denton Liu <liu.denton@gmail.com> for providing me with a script to generate and merge all the branches that were missing, which made this task much easier. * py/git-git-extra-stuff: treewide: correct several "up-to-date" to "up to date" Fix build with core.autocrlf=true git-gui: call do_quit before destroying the main window git-gui: workaround ttk:style theme use git-gui: bind CTRL/CMD+numpad ENTER to do_commit git-gui: search for all current SSH key types git-gui: allow Ctrl+T to toggle multiple paths git-gui: fix exception when trying to stage with empty file list git-gui: avoid exception upon Ctrl+T in an empty list git gui: fix staging a second line to a 1-line file git-gui: prevent double UTF-8 conversion git-gui: sort entries in optimized tclIndex Replace Free Software Foundation address in license notices git-gui (MinGW): make use of MSys2's msgfmt
2019-09-24treewide: correct several "up-to-date" to "up to date"Libravatar Martin Ågren1-1/+1
Follow the Oxford style, which says to use "up-to-date" before the noun, but "up to date" after it. Don't change plumbing (specifically send-pack.c, but transport.c (git push) also has the same string). This was produced by grepping for "up-to-date" and "up to date". It turned out we only had to edit in one direction, removing the hyphens. Fix a typo in Documentation/git-diff-index.txt while we're there. Reported-by: Jeffrey Manian <jeffrey.manian@gmail.com> Reported-by: STEVEN WHITE <stevencharleswhitevoices@gmail.com> Signed-off-by: Martin Ågren <martin.agren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-09-24Fix build with core.autocrlf=trueLibravatar Johannes Schindelin1-0/+1
On Windows, the default line endings are denoted by a Carriage Return byte followed by a Line Feed byte, while Linux and MacOSX use a single Line Feed byte to denote a line ending. To help with this situation, Git introduced several mechanisms over the last decade, most prominently the `core.autocrlf` setting. Sometimes, however, a single setting is incorrect, e.g. when certain files in the source code are to be consumed by software that can handle only LF line endings, while other files can use whatever is appropriate for the current platform. To allow for that, Git added the `eol` option to its .gitattributes handling, expecting every user of Git to mark their source code appropriately. Bash assumes that line-endings of scripts are denoted by a single Line Feed byte. Therefore, shell scripts in Git's source code are one example where that `eol=lf` option is *required*. When generating common-cmds.h, the Unix tools we use generally operate on the assumption that input and output deliminate their lines using LF-only line endings. Consequently, they would happily copy the CR byte verbatim into the strings in common-cmds.h, which in turn makes the C preprocessor barf (that interprets them as MacOS-style line endings). Therefore, we have to mark the input files as LF-only: command-list.txt and Documentation/git-*.txt. Quite a bit belatedly, this patch brings Git's own source code in line with those expectations by setting those attributes to allow for a correct build even when core.autocrlf=true. This patch can be validated even on Linux, by using this cadence: git config core.autocrlf true rm .git/index && git stash make -j15 DEVELOPER=1 Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-09-24Merge branches 'js/msgfmt-on-windows', 'tz/fsf-address-update', ↵Libravatar Pratyush Yadav6-15/+72
'jn/reproducible-build', 'ls/no-double-utf8-author-name', 'js/misc-git-gui-stuff', 'bb/ssh-key-files', 'bp/bind-kp-enter', 'cb/ttk-style' and 'py/call-do-quit-before-exit' of ../git into py/git-git-extra-stuff
2019-09-14Merge branch 'bp/amend-toggle-bind'Libravatar Pratyush Yadav1-0/+9
Toggle amend on and off with the keyboard shortcut "Ctrl+e". * bp/amend-toggle-bind: git-gui: add hotkey to toggle "Amend Last Commit"
2019-09-14git-gui: add hotkey to toggle "Amend Last Commit"Libravatar Birger Skogeng Pedersen1-0/+9
Selecting whether to "Amend Last Commit" or not does not have a hotkey. With this patch, the user may toggle between the two options with CTRL/CMD+e. Signed-off-by: Birger Skogeng Pedersen <birger.sp@gmail.com> Rebased-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-09-14Merge branch 'bw/commit-scrollbuffer'Libravatar Pratyush Yadav1-0/+6
Add a scrollbar at the bottom of the commit message buffer. * bw/commit-scrollbuffer: git-gui: add horizontal scrollbar to commit buffer
2019-09-14Merge branch 'bw/amend-checkbutton'Libravatar Pratyush Yadav4-36/+18
Change the amend setting from two radio buttons ("New commit" and "Amend commit") to a single checkbutton. The two radio buttons can never be selected together because they are exactly the opposite of each other, so it makes sense to change it to a single checkbutton. * bw/amend-checkbutton: git-gui: convert new/amend commit radiobutton to checkbutton
2019-09-14git-gui: add horizontal scrollbar to commit bufferLibravatar Bert Wesarg1-0/+6
While the commit message widget has a configurable fixed width, it nevertheless allowed to write commit messages which exceeded this limit. Though there is no visual clue, that there is scrolling going on. Now there is a horizontal scrollbar. There seems to be a bug in at least Tcl/Tk up to version 8.6.8, which does not update the horizontal scrollbar if one removes the whole content at once. Suggested-by: Birger Skogeng Pedersen <birger.sp@gmail.com> Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-09-14git-gui: convert new/amend commit radiobutton to checkbuttonLibravatar Bert Wesarg4-36/+18
Its a bi-state anyway and also saves one line in the menu. Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
2019-09-12Merge branch 'py/revert-hunks-lines'Libravatar Pratyush Yadav2-18/+135
git-gui learned to revert selected lines and hunks, just like it can stage selected lines and hunks. To provide a safety net for accidental revert, the most recent revert can be undone. * py/revert-hunks-lines: git-gui: allow undoing last revert git-gui: return early when patch fails to apply git-gui: allow reverting selected hunk git-gui: allow reverting selected lines