xaizek / zograscope (License: AGPLv3 only) (since 2018-12-07)
Mainly a syntax-aware diff that also provides a number of additional tools.
<root> / man / zs-gdiff.1 (6fc4f734e1021001136a451ded4b8e9563c9f756) (2,202B) (mode 100644) [raw]
.\" Automatically generated by Pandoc 2.17.1.1
.\"
.\" Define V font for inline verbatim, using C font in formats
.\" that render this, and otherwise B font.
.ie "\f[CB]x\f[]"x" \{\
. ftr V B
. ftr VI BI
. ftr VB B
. ftr VBI BI
.\}
.el \{\
. ftr V CR
. ftr VI CI
. ftr VB CB
. ftr VBI CBI
.\}
.TH "zs-gdiff" "1" "July 19, 2022" "" ""
.hy
.SH NAME
.PP
\f[I]zs-gdiff\f[R] is a GUI syntax-aware diff that uses Qt5.
See \f[B]zs-diff\f[R](1) for more details and comparison against other
tools.
.PP
The tool can either accept two files on command-line, be integrated with
\f[V]git\f[R] by its means (yet using external GUI tools from
\f[V]git\f[R] isn\[cq]t very convenient in general) or pick up list of
changed files in the repository (staged or unstaged in index or from a
commit) by itself.
The latter way of using \f[V]zs-gdiff\f[R] with \f[V]git\f[R]
doesn\[cq]t require any configuration and allows going through files
without restarting it, unlike when \f[V]git\f[R] invokes external tools.
.PP
It works, but it\[cq]s far from being polished.
.SH INVOCATION
.SS Manual Form
.PP
\f[V]zs-gdiff\f[R] \f[V][options...]\f[R] \f[I]old-file\f[R]
\f[I]new-file\f[R]
.PP
To be used in a shell.
.SS Git Status Form
.PP
\f[V]zs-gdiff\f[R] [\f[V]--cached\f[R]]
.PP
To be used in a shell to view staged/unstaged changes.
.SS Git Commit Form
.PP
\f[V]zs-gdiff\f[R] \f[I]git-reference\f[R]
.PP
To be used in a shell to view commit changes.
.SS Git Form
.PP
\f[V]zs-gdiff\f[R] \f[V][options...]\f[R] \f[I]path\f[R]
\f[I]old-file\f[R] \f[I]old-hex\f[R] \f[I]old-mode\f[R]
\f[I]new-file\f[R] \f[I]new-hex\f[R] \f[I]new-mode\f[R]
.PP
When Git calls external diff for a changed file.
.SS Git Rename Form
.PP
\f[V]zs-gdiff\f[R] \f[V][options...]\f[R] \f[I]path\f[R]
\f[I]old-file\f[R] \f[I]old-hex\f[R] \f[I]old-mode\f[R]
\f[I]new-file\f[R] \f[I]new-hex\f[R] \f[I]new-mode\f[R]
\f[I]new-path\f[R] \f[I]rename-msg\f[R]
.PP
When Git calls external diff for renamed and possibly changed file.
.SS Tool-specific Options
.PP
\f[V]--cached\f[R]
.PD 0
.P
.PD
use staged changes instead of unstaged
.SH SEE ALSO
.PP
\f[B]zograscope\f[R](7) for common options and list of all tools there.
.SH AUTHORS
xaizek <xaizek@posteo.net>.
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/zograscope

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/zograscope

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master