Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Peff's git repository
C Shell Perl Tcl Python C++ Other
branch: private

This branch is 317 commits ahead, 27 commits behind git:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
Documentation Merge branch 'js/fsck-opt' into HEAD
block-sha1 Merge branch 'jk/pack-bitmap'
builtin Merge branch 'ukk/zdiff3' into HEAD
compat Merge branch 'dm/compat-s-ifmt-for-zos'
contrib Merge branch 'ukk/zdiff3' into HEAD
git-gui Merge git://
gitk-git Merge branch 'master' of git://
gitweb gitweb: hack around CGI's list-context param() handling
mergetools mergetools: stop setting $status in merge_cmd()
perl Merge branch 'svn-maint-fixes' into svn-fixes
ppc fix openssl headers conflicting with custom SHA1 implementations
templates Merge branch 'nd/multiple-work-trees' into next
xdiff Merge branch 'ukk/zdiff3' into HEAD
.gitattributes .gitattributes: detect 8-space indent in shell scripts
.gitignore Merge branch 'jk/preapprove-helper-credentials' into HEAD
.mailmap .mailmap: add Stefan Bellers corporate mail address
COPYING Update COPYING with GPLv2 with new FSF address
GIT-VERSION-GEN Git 2.4.0-rc0
LGPL-2.1 provide a copy of the LGPLv2.1
README doc: add 'everyday' to 'git help'
RelNotes Post 2.3 cyce (batch #10)
abspath.c abspath: convert absolute_path() to strbuf
aclocal.m4 configure: use AC_LANG_PROGRAM consistently
advice.c standardize usage info string format
advice.h Merge branch 'jc/push-2.0-default-to-simple'
alloc.c alloc: factor out commit index
archive.h archive: convert to use parse_pathspec
argv-array.c argv-array: drop "detach" code
argv-array.h argv-array: drop "detach" code
attr.c attr: avoid heavy work when we know the specified attr is not defined
attr.h correct a few doubled-word nits in comments and documentation
base85.c base85.c: have SP around arithmetic operators
bisect.h Move print_commit_list to libgit.a
bitset.h add functions for memory-efficient bitmaps
blame-tree.h add blame-tree command
branch.c teach core.logallrefupdates an "always" mode
builtin.h Merge branch 'jk/pager-subcommand' into HEAD
bulk-checkin.c Merge branch 'bc/object-id' into next
bundle.c bundle.c: fix memory leak
bundle.h Merge branch 'jc/unseekable-bundle'
cache-tree.c Merge branch 'jk/cache-tree-protect-from-broken-libgit2'
cache-tree.h Merge branch 'dt/cache-tree-repair'
cache.h Merge branch 'jk/rename-progress' into HEAD check-builtins: strip executable suffix $X when enumerating builtins
check-racy.c ce_match_stat, run_diff_files: use symbolic constants for readability
check_bindir check_bindir: avoid "test <cond> -a/-o <cond>"
color.c parse_color: fix return value for numeric color values 0-8
color.h parse_color: recognize "no$foo" to clear the $foo attribute
column.h column: support piping stdout to external git-column process
combine-diff.c Merge branch 'jk/faster-blame-tree' into HEAD
command-list.txt Documentation: add documentation for 'git interpret-trailers'
commit-slab.h use REALLOC_ARRAY for changing the allocation size of arrays
commit.c Merge branch 'jk/contains-merge-base' into HEAD
config.c Merge branch 'jc/remove-export-from-config-mak-in'
config.mak.uname configure: support HAVE_BSD_SYSCTL option configure: support HAVE_BSD_SYSCTL option
connect.h connect.c: refactor url parsing
connected.c check_everything_connected: assume alternate ref tips are valid
convert.h convert: stream from fd to required clean filter to reduce used addre…
credential-cache.c run-command: introduce CHILD_PROCESS_INIT
credential-store.c Merge branch 'pt/credential-xdg' into next
credential-wrap.c add credential-wrap
credential.c Merge branch 'jk/preapprove-helper-credentials' into HEAD
credential.h Merge branch 'jk/preapprove-helper-credentials' into HEAD
csum-file.c sha1fd_check: die when we cannot open the file
csum-file.h Merge branch 'jk/pack-bitmap'
ctype.c kwset: use unsigned char to store values with high-bit set
daemon.c Merge branch 'rs/daemon-hostname-in-strbuf' into next
decorate.h decorate: allow const objects to be decorated
diff-delta.c create_delta_index: simplify condition always evaluating to true
diff-no-index.c diff: turn on rename detection progress reporting
diff.c Merge branch 'jk/diff-attr-hook' into HEAD
diff.h Merge branch 'jk/faster-blame-tree' into HEAD
diffcore-delta.c Fix diff -B/--dirstat miscounting of newly added contents
diffcore-order.c Merge branch 'nd/no-more-fnmatch'
diffcore-pickaxe.c pickaxe: simplify kwset loop in contains()
diffcore-rename.c Merge branch 'jk/diffcore-rename-duplicate' into maint
diffcore.h diff --stat: mark any file larger than core.bigfilethreshold binary
dir.c within_depth: fix return for empty path
dir.h Merge branch 'jc/report-path-error-to-dir'
editor.c run-command: introduce CHILD_PROCESS_INIT
entry.c read-cache: mark updated entries for split index
environment.c Merge branch 'jk/packed-refs-safety' into HEAD
exec_cmd.c Merge branch 'jc/exec-cmd-system-path-leak-fix'
fast-import.c Merge branch 'rs/deflate-init-cleanup' into next
fetch-pack.c fetch-pack: remove dead assignment to ref->new_sha1
fetch-pack.h Merge branch 'nd/shallow-clone'
fmt-merge-msg.h fmt-merge-msg: use branch.$name.description
fsck.h fsck: git receive-pack: support excluding objects from fsck'ing i18n: help: mark strings for translation
gettext.h Merge branch 'ye/http-accept-language'
git-add--interactive.perl hacky interactive clang format Merge branch 'nd/multiple-work-trees' into next
git-archimport.perl git-archimport: use a lowercase "usage:" string hacky interactive clang format
git-compat-util.h Merge branch 'km/bsd-sysctl'
git-cvsimport.perl git-cvsimport: use a lowercase "usage:" string
git-cvsserver.perl Merge branch 'ak/cvsserver-stabilize-use-of-hash-keys' difftool--helper: add explicit exit statement
git-difftool.perl filter-branch: eliminate duplicate mapped parents merge-octopus: Work around environment issue on Windows Merge branch 'kb/p4merge' mergetool--lib: remove use of $status global Merge branch 'ld/p4-submit-hint' remove #!interpreter line from shell libraries add variable to use the stuck-long mode rebase: omit patch-identical commits with --fork-point Merge branch 'es/rebase-i-count-todo' into next *.sh: avoid hardcoding $GIT_DIR/hooks/... *.sh: avoid hardcoding $GIT_DIR/hooks/...
git-relink.perl transport-helper: do not request symbolic refs to remote helpers
git-send-email.perl Merge branch 'km/send-email-getopt-long-workarounds' Merge branch 'nd/multiple-work-trees' into next git-stash: avoid hardcoding $GIT_DIR/logs/....
git-svn.perl use the $( ... ) construct for command substitution
git.c Merge branch 'jk/sigpipe-report' into HEAD
git.rc Makefile: Fix compilation of Windows resource file spec: add missing build dependency
gpg-interface.h gpg-interface: move parse_signature() to where it should be
graph.c Merge branch 'rs/graph-simplify'
grep.c Merge branch 'jk/blame-commit-label' into maint
grep.h grep: add color.grep.matchcontext and color.grep.matchselected
hashmap.c hashmap: add string interning API
help.h help: add help_unknown_ref()
hex.c define utility functions for object IDs
http-backend.c Merge branch 'rs/run-command-env-array'
http-fetch.c Merge branch 'ab/enable-i18n'
http-walker.c http-walker: simplify process_alternates_response() using strbuf
http.c http: release the memory of a http pack request as well
ident.c Merge branch 'jk/commit-author-parsing'
kwset.h kwset: use unsigned char to store values with high-bit set
levenshtein.h Typofixes outside documentation area
line-log.c line-log.c: make line_log_data_init() static
line-log.h line-log.c: make line_log_data_init() static
line-range.c line-range: reject -L line numbers less than 1
list-objects.h list-objects: reduce one argument in mark_edges_uninteresting
ll-merge.c ll-merge.c: refactor `read_merge_config()` to use `git_config_string()`
ll-merge.h merge-recursive --patience
lockfile.h teach lockfile to wait for some locks
log-tree.h Merge branch 'jn/parse-config-slot'
mailmap.c mailmap: use higher level string list functions
mailmap.h mailmap: simplify map_user() interface
merge-recursive.c merge-recursive: fix memleaks
merge-recursive.h Move try_merge_command and checkout_fast_forward to libgit.a
merge.c lockfile.h: extract new header file for the functions in lockfile.c
mergesort.h mergesort: rename it to llist_mergesort()
name-hash.c hashmap: add simplified hashmap_get_from_hash() API
notes-cache.c Merge branch 'jk/commit-buffer-length'
notes-cache.h introduce notes-cache interface
notes-merge.c Merge branch 'nd/multiple-work-trees' into next
notes-utils.c use strbuf_complete_line() for adding a newline if needed
notes-utils.h commit_tree: take a pointer/len pair rather than a const strbuf
notes.c Merge branch 'jk/blame-commit-label' into maint
object.c drop add_object_array_with_mode
object.h drop add_object_array_with_mode
pack-bitmap-write.c Merge branch 'jk/pack-bitmap'
pack-bitmap.h preferred base reuse wip
pack-check.c fsck: print progress
pack-objects.c use REALLOC_ARRAY for changing the allocation size of arrays
pack-revindex.c pack-revindex.c: rearrange xcalloc arguments
pack.h finish_tmp_packfile():use strbuf for pathname construction
pager.c pager: save the original stderr when redirecting to pager
parse-options-cb.c prune: introduce OPT_EXPIRY_DATE() and use it
parse-options.c Merge branch 'jc/parseopt-verify-short-name'
parse-options.h Merge branch 'jk/squelch-compiler-warning-from-funny-error-macro'
patch-ids.c patch-ids.c: use ALLOC_GROW() in add_commit()
patch-ids.h Refactor patch-id filtering out of git-cherry and git-format-patch.
path.c Merge branch 'nd/multiple-work-trees' into next
pathspec.c pathspec: turn on tries when appropriate
pathspec.h pathspec: turn on tries when appropriate
pkt-line.c pkt-line: allow writing of LARGE_PACKET_MAX buffers
pkt-line.h comments: fix misuses of "nor"
prio-queue.c prio-queue: make output stable with respect to insertion
prio-queue.h prio-queue: make output stable with respect to insertion
progress.c progress: use pager's original_stderr if available
prompt.c prompt.c: remove git_getpass() nobody uses
prompt.h prompt.c: remove git_getpass() nobody uses
quote.c ls-tree: remove path filtering logic in show_tree
reachable.h pack-objects: match prune logic for discarding objects
read-cache.c Merge branch 'sb/leaks' into next
reflog-walk.c refs.c: change resolve_ref_unsafe reading argument to be a flags field
refs.c Merge branch 'jk/packed-refs-safety' into HEAD
remote-curl.c Merge branch 'rs/deflate-init-cleanup'
remote-testsvn.c run-command: introduce CHILD_PROCESS_INIT
remote.c branch_get: provide per-branch pushremote pointers
replace_object.c Merge branch 'dd/use-alloc-grow'
rerere.c Merge branch 'jn/rerere-fail-on-auto-update-failure' into maint
rerere.h rerere.h: mark string for translation
resolve-undo.c resolve-undo: be specific what part of the index has changed
resolve-undo.h convert unmerge_cache to take struct pathspec
revision.c check_everything_connected: assume alternate ref tips are valid
revision.h Merge branch 'jc/unused-symbols'
run-command.c Merge branch 'jk/sigpipe-report' into HEAD
run-command.h Merge branch 'jk/run-command-capture' into next
send-pack.h send-pack.c: add --atomic command line argument
sequencer.c Merge branch 'mg/sequencer-commit-messages-always-verbatim'
sequencer.h Merge branch 'jc/conflict-hint' into cc/interpret-trailers-more
server-info.c update-server-info: create info/* with mode 0666
setup.c prune: strategies for linked checkouts
sh-i18n--envsubst.c use REALLOC_ARRAY for changing the allocation size of arrays
sha1-array.c sha1-array.c: mark a private file-scope symbol as static
sha1-lookup.c sha1-lookup: handle duplicates in sha1_pos()
sha1_file.c Merge branch 'rs/deflate-init-cleanup' into next
sha1_name.c implement @{publish} shorthand
shallow.c Merge branch 'bc/object-id' into next
shell.c use xstrfmt to replace xmalloc + strcpy/strcat
shortlog.h pretty: Respect --abbrev option
show-index.c i18n: add infrastructure for translating Git with gettext
sideband.h pkt-line: move LARGE_PACKET_MAX definition from sideband
sigchain.c cleanups: ensure that git-compat-util.h is included first
sigchain.h refactor signal handling for cleanup functions
siphash.h add siphash.h
split-index.c update-index: new options to enable/disable split index mode
split-index.h split-index: the reading part
strbuf.h strbuf.h: group documentation for trim functions
streaming.h streaming: void pointer instead of char pointer
string-list.c Merge branch 'sb/string-list'
string-list.h Merge branch 'sb/string-list'
submodule.c Merge branch 'jk/run-command-capture' into next
submodule.h rm: delete .gitmodules entry of submodules removed from the work tree
symlinks.c symlinks: remove PATH_MAX limitation
tag.c gpg-interface: move parse_signature() to where it should be
tar.h tar-tree: Introduce write_entry()
test-chmtime.c comments: fix misuses of "nor"
test-config.c add tests for `git_config_get_string_const()`
test-ctype.c test-ctype: add test for is_pathspec_magic
test-date.c date: use strbufs in date-formatting functions
test-delta.c tests: use a lowercase "usage:" string
test-dump-cache-tree.c Merge branch 'dt/cache-tree-repair'
test-hashmap.c Merge branch 'js/test-hashmap-squelch-gcc'
test-index-version.c sparse: Fix mingw_main() argument number/type errors
test-line-buffer.c replace {pre,suf}fixcmp() with {starts,ends}_with()
test-match-trees.c use 'tree-ish' instead of 'treeish'
test-mktemp.c Improve error messages when temporary file creation fails
test-path-utils.c path-utils test: rename mingw_path function to print_path
test-pathspec.c pathspec: turn on tries when appropriate
test-read-cache.c read-cache: add simple performance test
test-revision-walking.c Teach revision walking machinery to walk multiple times sequencially
test-run-command.c run-command: introduce CHILD_PROCESS_INIT
test-sha1.c test-sha1: add a binary output mode more tr portability test script fixes
test-sigchain.c cleanups: ensure that git-compat-util.h is included first
test-string-list.c replace {pre,suf}fixcmp() with {starts,ends}_with()
test-subprocess.c run-command: introduce CHILD_PROCESS_INIT
test-svn-fe.c msvc: test-svn-fe: Fix linker "unresolved external" error
test-urlmatch-normalization.c builtin/config.c: compilation fix
test-wildmatch.c stop using fnmatch (either native or compat)
thread-utils.h pack-objects: set number of threads before checking and warning
trace.c Merge branch 'nd/multiple-work-trees' into next
trace.h git: add performance tracing for git's main() function to debug scripts
transport-helper.c Merge branch 'jk/valgrind-fixups' into HEAD
transport.c Merge branch 'jk/fetch-pack' into next
tree-diff.c Merge branch 'jk/follow-multiple' into HEAD
tree-walk.c tree-walk: be more specific about corrupt tree errors
tree-walk.h tree-walk: finally switch over tree descriptors to contain a pre-pars…
tree.c tree.c: update read_tree_recursive callback to pass strbuf as base
tree.h tree.c: update read_tree_recursive callback to pass strbuf as base
unicode_width.h Update of unicode_width.h to Unicode Version 7.0 Makefile: allow building without perl
unix-socket.c Merge branch 'rs/strbuf-getcwd'
unix-socket.h credentials: add "cache" helper
unpack-trees.c Sync with v2.2.1
unpack-trees.h diff-lib, read-tree, unpack-trees: mark cache_entry array paramters c…
upload-pack.c Merge branch 'jk/dumpstat' into HEAD
url.c use strbuf_addch for adding single characters
url.h url: decode buffers that are not NUL-terminated
urlmatch.h urlmatch.c: make match_urls() static
usage.c Merge branch 'jk/a-thread-only-dies-once' into maint
userdiff.c do not include the same header twice
userdiff.h refactor get_textconv to not require diff_filespec
utf8.h utf8: add is_hfs_dotgit() helper
varint.h cleanups: ensure that git-compat-util.h is included first
version.h include agent identifier in capability string
walker.c ref_transaction_update(): remove "have_old" parameter
wildmatch.c wildmatch: properly fold case everywhere
wildmatch.h wildmatch: support "no FNM_PATHNAME" mode
wrapper.c Merge branch 'jc/max-io-size-and-ssize-max' into next
ws.c use strchrnul() in place of strchr() and strlen()
wt-status.h wt-status: refactor detached HEAD analysis
xdiff-interface.c xdiff: implement a zealous diff3
xdiff-interface.h xdiff: remove emit_func() and xdi_diff_hunks()
zlib.c zlib: initialize git_zstream in git_deflate_init{,_gzip,_raw}



	Git - the stupid content tracker


"git" can mean anything, depending on your mood.

 - random three-letter combination that is pronounceable, and not
   actually used by any common UNIX command.  The fact that it is a
   mispronunciation of "get" may or may not be relevant.
 - stupid. contemptible and despicable. simple. Take your pick from the
   dictionary of slang.
 - "global information tracker": you're in a good mood, and it actually
   works for you. Angels sing, and a light suddenly fills the room.
 - "goddamn idiotic truckload of sh*t": when it breaks

Git is a fast, scalable, distributed revision control system with an
unusually rich command set that provides both high-level operations
and full access to internals.

Git is an Open Source project covered by the GNU General Public
License version 2 (some parts of it are under different licenses,
compatible with the GPLv2). It was originally written by Linus
Torvalds with help of a group of hackers around the net.

Please read the file INSTALL for installation instructions.

See Documentation/gittutorial.txt to get started, then see
Documentation/giteveryday.txt for a useful minimum set of commands, and
Documentation/git-commandname.txt for documentation of each command.
If git has been correctly installed, then the tutorial can also be
read with "man gittutorial" or "git help tutorial", and the
documentation of each command with "man git-commandname" or "git help

CVS users may also want to read Documentation/gitcvs-migration.txt
("man gitcvs-migration" or "git help cvs-migration" if git is

Many Git online resources are accessible from
including full documentation and Git related tools.

The user discussion and development of Git take place on the Git
mailing list -- everyone is welcome to post bug reports, feature
requests, comments and patches to (read
Documentation/SubmittingPatches for instructions on patch submission).
To subscribe to the list, send an email with just "subscribe git" in
the body to The mailing list archives are
available at, and other archival sites.

The maintainer frequently sends the "What's cooking" reports that
list the current status of various development topics to the mailing
list.  The discussion following them give a good reference for
project status, development direction and remaining tasks.
Something went wrong with that request. Please try again.