From: Alexander Gavrilov <angavrilov@gmail.com>
To: git@vger.kernel.org
Cc: "Shawn O. Pearce" <spearce@spearce.org>
Subject: [PATCH (GIT-GUI) 0/8] Add mergetool functionality to git-gui.
Date: Sun, 31 Aug 2008 00:52:21 +0400 [thread overview]
Message-ID: <200808310052.21595.angavrilov@gmail.com> (raw)
The original git-mergetool program is intended to be used from
the command line, and thus does not integrate well with GUI
usage. For instance, it presents the user with its own interactive
interface, based on text-mode prompts.
This series implements mergetool functionality within git-gui,
replacing the default 'Stage Hunk/Line' context menu items
for unresolved files with conflict resolution commands.
It also enhances auto-selection behavior to minimize the
necessary number of clicks on the items of the file lists,
and adds special handling of diffs for conflicts involving
deletion or symlinks.
Custom merge tools are not supported as I'm not sure of
the best way to evaluate command line patterns that are
intended for the shell from Tcl.
PATCHES:
git-gui: Don't allow staging files with conflicts.
---
git-gui.sh | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
git-gui: Support resolving conflicts via the diff context menu.
---
git-gui.sh | 152 ++++++++++++++++++++++++++++++++---------------------
lib/mergetool.tcl | 98 ++++++++++++++++++++++++++++++++++
2 files changed, 190 insertions(+), 60 deletions(-)
create mode 100644 lib/mergetool.tcl
git-gui: Support calling merge tools.
---
git-gui.sh | 7 ++
lib/mergetool.tcl | 252 +++++++++++++++++++++++++++++++++++++++++++++++++++++
lib/option.tcl | 1 +
3 files changed, 260 insertions(+), 0 deletions(-)
git-gui: Support more merge tools.
---
lib/mergetool.tcl | 27 +++++++++++++++++++++++++++
1 files changed, 27 insertions(+), 0 deletions(-)
git-gui: Support conflict states _U & UT.
---
git-gui.sh | 6 ++++--
lib/commit.tcl | 1 +
lib/diff.tcl | 2 +-
lib/index.tcl | 1 +
4 files changed, 7 insertions(+), 3 deletions(-)
git-gui: Reimplement and enhance auto-selection of diffs.
---
git-gui.sh | 122 +++++++++++++++++++++++++++++++++++++++++------------
lib/diff.tcl | 18 +++++---
lib/mergetool.tcl | 8 +---
3 files changed, 109 insertions(+), 39 deletions(-)
git-gui: Make F5 reselect a diff, if an untracked file is selected.
---
git-gui.sh | 44 +++++++++++++++++++++++++++++++++++---------
1 files changed, 35 insertions(+), 9 deletions(-)
git-gui: Show special diffs for complex conflict cases.
---
lib/diff.tcl | 94 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 89 insertions(+), 5 deletions(-)
next reply other threads:[~2008-08-30 21:15 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-30 20:52 Alexander Gavrilov [this message]
2008-08-30 20:54 ` [PATCH (GIT-GUI) 1/8] git-gui: Don't allow staging files with conflicts Alexander Gavrilov
2008-08-30 20:55 ` [PATCH (GIT-GUI) 2/8] git-gui: Support resolving conflicts via the diff context menu Alexander Gavrilov
2008-08-30 20:56 ` [PATCH (GIT-GUI) 3/8] git-gui: Support calling merge tools Alexander Gavrilov
2008-08-30 20:59 ` [PATCH (GIT-GUI) 4/8] git-gui: Support more " Alexander Gavrilov
2008-08-30 21:00 ` [PATCH (GIT-GUI) 5/8] git-gui: Support conflict states _U & UT Alexander Gavrilov
2008-08-30 21:02 ` [PATCH (GIT-GUI) 6/8] git-gui: Reimplement and enhance auto-selection of diffs Alexander Gavrilov
2008-08-30 21:04 ` [PATCH (GIT-GUI) 7/8] git-gui: Make F5 reselect a diff, if an untracked file is selected Alexander Gavrilov
2008-08-30 21:05 ` [PATCH (GIT-GUI) 8/8] git-gui: Show special diffs for complex conflict cases Alexander Gavrilov
2008-09-08 12:10 ` [PATCH (GIT-GUI) 1/8] git-gui: Don't allow staging files with conflicts Johannes Sixt
2008-09-08 12:25 ` Alexander Gavrilov
2008-09-17 11:40 ` [PATCH/RFC 0/2] git-gui: issues with merge tool series Johannes Sixt
2008-09-17 11:40 ` [PATCH/RFC 1/2] Revert "git-gui: Don't allow staging files with conflicts." Johannes Sixt
2008-09-17 11:40 ` [PATCH/RFC 2/2] git-gui: Do not automatically stage file after merge tool finishes Johannes Sixt
2008-09-17 12:25 ` Alexander Gavrilov
2008-09-24 17:50 ` Shawn O. Pearce
2008-09-24 19:08 ` [PATCH/RFC 2/2 v2] " Johannes Sixt
2008-09-17 12:50 ` [PATCH/RFC 0/2] git-gui: issues with merge tool series Alexander Gavrilov
2008-09-17 21:40 ` Johannes Sixt
2008-09-17 22:24 ` Alexander Gavrilov
2008-09-24 17:48 ` Shawn O. Pearce
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200808310052.21595.angavrilov@gmail.com \
--to=angavrilov@gmail.com \
--cc=git@vger.kernel.org \
--cc=spearce@spearce.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).