Matthew Wang 8d9d883e63 Use symlink for #issue 1 as distutils does not support entry_points | 11 years ago | |
---|---|---|
img | 11 years ago | |
src | 11 years ago | |
tests | 11 years ago | |
.gitignore | 11 years ago | |
LICENSE | 11 years ago | |
Makefile | 11 years ago | |
README.md | 11 years ago | |
setup.py | 11 years ago |
View incremental, colored diff in unified format or side by side
with auto pager. Requires python (>= 2.5.0) and less
.
Cdiff is not in PyPI yet, so far you could download the script directly or use
the setup.py
to install.
Download directly
Save src/cdiff.py to
whatever directory which is in your $PATH
, for example, $HOME/bin
is in my
$PATH
, so I save the script there and name as cdiff
.
curl -ksS https://raw.github.com/ymattw/cdiff/master/src/cdiff.py > ~/bin/cdiff
chmod +x ~/bin/cdiff
Install with the setup.py
You can run the setup.py from the source to install cdiff
to system wide
directory.
git clone https://github.com/ymattw/cdiff.git
cd cdiff
sudo ./setup.py install
This usually installs it as /usr/local/bin/cdiff
.
Cdiff reads diff from diff (patch) file if given, or stdin if redirected, or
diff produced by revision tool if in a git/svn/hg workspace. Use option -s
to enable side by side view, and option -w N
to set a text width other than
default 80
. See examples below.
Show usage:
cdiff -h
View a diff (patch) file:
cdiff foo.patch # view incremental, colored udiff
cdiff foo.patch -s # view side by side
cdiff foo.patch -s -w 90 # use text width 90 other than default 80
Read diff from local modification in a svn, git, or hg workspace:
cd proj-workspace
cdiff
cdiff -s
cdiff -s -w 90
Pipe in a diff:
svn diff -r PREV | cdiff -s
git log -p -2 | cdiff -s
git show <commit> | cdiff -s
Redirect output to another patch file is safe:
svn diff | cdiff -s > my.patch