All Projects → nickolasburr → Git Follow

nickolasburr / Git Follow

Licence: mit
Follow lifetime changes of a pathspec in Git.

Programming Languages

perl
6916 projects

Projects that are alternatives of or similar to Git Follow

deltaq
Fast and portable delta encoding for .NET in 100% safe, managed code.
Stars: ✭ 26 (+4%)
Mutual labels:  diff, patch
Editscript
A library designed to diff and patch Clojure data structures
Stars: ✭ 281 (+1024%)
Mutual labels:  patch, diff
go-gitdiff
Go library for parsing and applying patches created by Git
Stars: ✭ 41 (+64%)
Mutual labels:  diff, patch
intellij-diff-plugin
Syntax highlighting for .diff files and .patch files in IntelliJ IDEs
Stars: ✭ 17 (-32%)
Mutual labels:  diff, patch
Similar
A high level diffing library for rust based on diffs
Stars: ✭ 386 (+1444%)
Mutual labels:  patch, diff
dipa
dipa makes it easy to efficiently delta encode large Rust data structures.
Stars: ✭ 243 (+872%)
Mutual labels:  diff, patch
Diffson
A scala diff/patch library for Json
Stars: ✭ 258 (+932%)
Mutual labels:  patch, diff
Python Patch
Library to parse and apply unified diffs
Stars: ✭ 65 (+160%)
Mutual labels:  patch, diff
Gojsondiff
Go JSON Diff
Stars: ✭ 371 (+1384%)
Mutual labels:  patch, diff
Jsondiffpatch
Diff & patch JavaScript objects
Stars: ✭ 3,951 (+15704%)
Mutual labels:  patch, diff
diffy
Tools for finding and manipulating differences between files
Stars: ✭ 47 (+88%)
Mutual labels:  diff, patch
Hdiffpatch
a C\C++ library and command-line tools for Diff & Patch between binary files or directories(folder); cross-platform; run fast; create small delta/differential; support large files and limit memory requires when diff & patch.
Stars: ✭ 459 (+1736%)
Mutual labels:  patch, diff
Ex audit
Ecto auditing library that transparently tracks changes and can revert them.
Stars: ✭ 214 (+756%)
Mutual labels:  patch, diff
duff
Pure OCaml implementation of libXdiff (Rabin's fingerprint)
Stars: ✭ 20 (-20%)
Mutual labels:  diff, patch
Apkdiffpatch
a C++ library and command-line tools for Zip(Jar,Apk) file Diff & Patch; create minimal delta/differential; support Jar sign(apk v1 sign) & apk v2,v3 sign .
Stars: ✭ 121 (+384%)
Mutual labels:  patch, diff
tmux-eaw-fix
tmux 2.6 以降において East Asian Ambiguous Character を全角文字の幅で表示する
Stars: ✭ 16 (-36%)
Mutual labels:  diff, patch
Gsync
gSync is an rsync based library for sending delta updates of files to a remote server.
Stars: ✭ 344 (+1276%)
Mutual labels:  patch, diff
Diff Match Patch
Diff Match Patch is a high-performance library in multiple languages that manipulates plain text.
Stars: ✭ 4,910 (+19540%)
Mutual labels:  patch, diff
Patch Package
Fix broken node modules instantly 🏃🏽‍♀️💨
Stars: ✭ 6,062 (+24148%)
Mutual labels:  patch, diff
Diffdom
A diff for DOM elements, as client-side JavaScript code. Gets all modifications, insertions and removals between two DOM fragments.
Stars: ✭ 660 (+2540%)
Mutual labels:  diff

git-follow(1)

git-follow follows lifetime changes of a pathspec in Git, providing a simplified log and patch diff.

Table of Contents

Installation

You can install git-follow via Homebrew or manually.

Homebrew

brew tap nickolasburr/pfa
brew install git-follow

Manual

git clone https://github.com/nickolasburr/git-follow.git
cd git-follow
make
make install

By default, files are installed to /usr/local. You can install to an alternate location by passing PREFIX to make install.

For example, make install PREFIX=$HOME/.usr/local.

Configuration

Configuration values set via git-config(1) can be used to customize the behavior of git-follow.

  • follow.diff.mode: Diff mode. Choices are inline (default), sxs, and colorsxs. See --word-diff of git-log(1).
  • follow.log.format: Log format. See --format of git-log(1) for syntax.
  • follow.pager.disable: Disable pager. Defaults to false. Set to true to disable pager. See --no-pager of git(1).

Options

Options can be specified to provide more refined information. If no options are given, all applicable commits will be shown.

  • -b, --branch <branch>: Show commits for <branch>.
  • -f, --first: Show first commit where Git initiated tracking of pathspec.
  • -F, --func <funcname>: Show commits for function <funcname> in pathspec. See -L of git-log(1).
  • -l, --last [<count>]: Show last <count> commits for pathspec. Omit <count> defaults to last commit.
  • -L, --lines <start>[,<end>]: Show commits for lines <start> to <end>. Omit <end> defaults to EOF.
  • -M, --no-merges: Show commits which have a maximum of one parent. See --no-merges of git-log(1).
  • -N, --no-patch: Suppress diff output. See --no-patch of git-log(1).
  • -O, --no-renames: Disable rename detection. See --no-renames of git-log(1).
  • -p, --pager: Force pager when invoking git-log(1). Overrides follow.pager.disable config value.
  • -P, --pickaxe <string>: Show commits which change the # of occurrences of <string>. See -S of git-log(1).
  • -r, --range <start>[,<end>]: Show commits in range <start> to <end>. Omit <end> defaults to HEAD.
  • -R, --reverse: Show commits in reverse chronological order. See --walk-reflogs of git-log(1).
  • -t, --tag <tag>: Show commits specific to a tag.
  • -T, --total: Show total number of commits for pathspec.
  • -h, --help, --usage: Show usage information.
  • -V, --version: Show current version number.

Notes

Like standard Git builtins, git-follow supports an optional pathspec delimiter -- to help disambiguate options, option arguments, and refs from pathspecs.

Examples

Display commits on branch topic which affected blame.c

git follow --branch topic -- blame.c

Display first commit where Git initiated tracking of branch.c

git follow --first -- branch.c

Display last 5 commits which affected column.c

git follow --last 5 -- column.c

Display last commit where lines 5 through EOF were affected in diff.c

git follow --last --lines 5 -- diff.c

Display last 3 commits where lines 10 through 15 were affected in bisect.c

git follow --last 3 --lines 10,15 -- bisect.c

Display commits where function funcname was affected in archive.c

git follow --func funcname -- archive.c

Display commits in range from aa03428 to b354ef9 which affected worktree.c

git follow --range aa03428,b354ef9 -- worktree.c

Display commits in range from tag v1.5.3 to tag v1.5.4 which affected apply.c

git follow --range v1.5.3,v1.5.4 -- apply.c

Display commits up to tag v1.5.3 which affected graph.c

git follow --tag v1.5.3 -- graph.c

Display total number of commits which affected rebase.c

git follow --total -- rebase.c

See Also

git(1), git-branch(1), git-check-ref-format(1), git-config(1), git-diff(1), git-log(1), git-remote(1), gitrevisions(1), git-tag(1)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].