Merge branch 'jc/t1512-fix'
authorJunio C Hamano <gitster@pobox.com>
Thu, 11 Jul 2013 20:06:11 +0000 (13:06 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 11 Jul 2013 20:06:11 +0000 (13:06 -0700)
A test that should have failed but didn't revealed a bug that needs
to be corrected.

* jc/t1512-fix:
  get_short_sha1(): correctly disambiguate type-limited abbreviation
  t1512: correct leftover constants from earlier edition

1314 files changed:
.gitignore
.mailmap
Documentation/.gitignore
Documentation/CodingGuidelines
Documentation/Makefile
Documentation/RelNotes/1.5.2.1.txt
Documentation/RelNotes/1.6.0.2.txt
Documentation/RelNotes/1.6.1.3.txt
Documentation/RelNotes/1.6.1.4.txt
Documentation/RelNotes/1.6.1.txt
Documentation/RelNotes/1.7.10.1.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.10.2.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.10.3.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.10.4.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.10.5.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.10.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.11.1.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.11.2.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.11.3.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.11.4.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.11.5.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.11.6.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.11.7.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.11.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.12.1.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.12.2.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.12.3.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.12.4.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.12.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.7.7.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.8.5.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.8.6.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.9.1.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.9.2.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.9.3.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.9.4.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.9.5.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.9.6.txt [new file with mode: 0644]
Documentation/RelNotes/1.7.9.7.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.0.1.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.0.2.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.0.3.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.0.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.1.1.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.1.2.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.1.3.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.1.4.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.1.5.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.1.6.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.1.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.2.1.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.2.2.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.2.3.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.2.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.3.1.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.3.2.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.3.3.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.3.txt [new file with mode: 0644]
Documentation/RelNotes/1.8.4.txt [new file with mode: 0644]
Documentation/SubmittingPatches
Documentation/asciidoc.conf
Documentation/blame-options.txt
Documentation/cat-texi.perl
Documentation/config.txt
Documentation/diff-config.txt
Documentation/diff-generate-patch.txt
Documentation/diff-options.txt
Documentation/everyday.txt
Documentation/fetch-options.txt
Documentation/git-add.txt
Documentation/git-am.txt
Documentation/git-apply.txt
Documentation/git-archimport.txt
Documentation/git-archive.txt
Documentation/git-bisect-lk2009.txt
Documentation/git-bisect.txt
Documentation/git-blame.txt
Documentation/git-branch.txt
Documentation/git-bundle.txt
Documentation/git-cat-file.txt
Documentation/git-check-attr.txt
Documentation/git-check-ignore.txt [new file with mode: 0644]
Documentation/git-check-ref-format.txt
Documentation/git-checkout.txt
Documentation/git-cherry-pick.txt
Documentation/git-clean.txt
Documentation/git-clone.txt
Documentation/git-column.txt [new file with mode: 0644]
Documentation/git-commit-tree.txt
Documentation/git-commit.txt
Documentation/git-config.txt
Documentation/git-count-objects.txt
Documentation/git-credential-cache--daemon.txt
Documentation/git-credential-cache.txt
Documentation/git-credential-store.txt
Documentation/git-credential.txt [new file with mode: 0644]
Documentation/git-cvsexportcommit.txt
Documentation/git-cvsimport.txt
Documentation/git-cvsserver.txt
Documentation/git-daemon.txt
Documentation/git-describe.txt
Documentation/git-diff-index.txt
Documentation/git-diff.txt
Documentation/git-difftool.txt
Documentation/git-fast-export.txt
Documentation/git-fast-import.txt
Documentation/git-fetch-pack.txt
Documentation/git-fetch.txt
Documentation/git-filter-branch.txt
Documentation/git-fmt-merge-msg.txt
Documentation/git-for-each-ref.txt
Documentation/git-format-patch.txt
Documentation/git-fsck.txt
Documentation/git-gc.txt
Documentation/git-grep.txt
Documentation/git-gui.txt
Documentation/git-hash-object.txt
Documentation/git-help.txt
Documentation/git-http-backend.txt
Documentation/git-http-fetch.txt
Documentation/git-index-pack.txt
Documentation/git-init-db.txt
Documentation/git-init.txt
Documentation/git-log.txt
Documentation/git-lost-found.txt
Documentation/git-ls-files.txt
Documentation/git-ls-remote.txt
Documentation/git-mailinfo.txt
Documentation/git-merge-base.txt
Documentation/git-merge-index.txt
Documentation/git-merge.txt
Documentation/git-mergetool--lib.txt
Documentation/git-mergetool.txt
Documentation/git-mktag.txt
Documentation/git-mv.txt
Documentation/git-name-rev.txt
Documentation/git-notes.txt
Documentation/git-p4.txt
Documentation/git-pack-objects.txt
Documentation/git-pack-refs.txt
Documentation/git-patch-id.txt
Documentation/git-pull.txt
Documentation/git-push.txt
Documentation/git-quiltimport.txt
Documentation/git-rebase.txt
Documentation/git-reflog.txt
Documentation/git-remote-ext.txt
Documentation/git-remote-fd.txt
Documentation/git-remote-helpers.txto [new file with mode: 0644]
Documentation/git-remote-testgit.txt
Documentation/git-remote.txt
Documentation/git-repack.txt
Documentation/git-replace.txt
Documentation/git-rerere.txt
Documentation/git-reset.txt
Documentation/git-rev-list.txt
Documentation/git-rev-parse.txt
Documentation/git-revert.txt
Documentation/git-rm.txt
Documentation/git-send-email.txt
Documentation/git-send-pack.txt
Documentation/git-sh-i18n--envsubst.txt
Documentation/git-sh-setup.txt
Documentation/git-shell.txt
Documentation/git-shortlog.txt
Documentation/git-show-branch.txt
Documentation/git-show-index.txt
Documentation/git-show-ref.txt
Documentation/git-show.txt
Documentation/git-stash.txt
Documentation/git-status.txt
Documentation/git-stripspace.txt
Documentation/git-submodule.txt
Documentation/git-svn.txt
Documentation/git-symbolic-ref.txt
Documentation/git-tag.txt
Documentation/git-tar-tree.txt
Documentation/git-tools.txt
Documentation/git-update-index.txt
Documentation/git-update-ref.txt
Documentation/git-upload-archive.txt
Documentation/git-upload-pack.txt
Documentation/git-var.txt
Documentation/git-verify-pack.txt
Documentation/git-verify-tag.txt
Documentation/git-web--browse.txt
Documentation/git-whatchanged.txt
Documentation/git.txt
Documentation/gitattributes.txt
Documentation/gitcli.txt
Documentation/gitcore-tutorial.txt
Documentation/gitcredentials.txt
Documentation/gitcvs-migration.txt
Documentation/gitdiffcore.txt
Documentation/gitglossary.txt
Documentation/githooks.txt
Documentation/gitignore.txt
Documentation/gitk.txt
Documentation/gitmodules.txt
Documentation/gitnamespaces.txt
Documentation/gitremote-helpers.txt [moved from Documentation/git-remote-helpers.txt with 66% similarity]
Documentation/gitrepository-layout.txt
Documentation/gitrevisions.txt
Documentation/gittutorial-2.txt
Documentation/gittutorial.txt
Documentation/gitweb.conf.txt
Documentation/gitweb.txt
Documentation/gitworkflows.txt
Documentation/glossary-content.txt
Documentation/howto-index.sh
Documentation/howto/maintain-git.txt
Documentation/howto/new-command.txt [new file with mode: 0644]
Documentation/howto/rebase-from-internal-branch.txt
Documentation/howto/rebuild-from-update-hook.txt
Documentation/howto/recover-corrupted-blob-object.txt
Documentation/howto/revert-a-faulty-merge.txt
Documentation/howto/revert-branch-rebase.txt
Documentation/howto/separating-topic-branches.txt
Documentation/howto/setup-git-server-over-http.txt
Documentation/howto/update-hook-example.txt
Documentation/howto/use-git-daemon.txt
Documentation/howto/using-merge-subtree.txt
Documentation/howto/using-signed-tag-in-pull-request.txt
Documentation/i18n.txt
Documentation/line-range-format.txt [new file with mode: 0644]
Documentation/mailmap.txt
Documentation/merge-config.txt
Documentation/merge-options.txt
Documentation/merge-strategies.txt
Documentation/pretty-formats.txt
Documentation/pretty-options.txt
Documentation/pt_BR/gittutorial.txt [deleted file]
Documentation/pull-fetch-param.txt
Documentation/rev-list-options.txt
Documentation/revisions.txt
Documentation/technical/api-allocation-growing.txt
Documentation/technical/api-argv-array.txt
Documentation/technical/api-builtin.txt
Documentation/technical/api-config.txt [new file with mode: 0644]
Documentation/technical/api-credentials.txt
Documentation/technical/api-directory-listing.txt
Documentation/technical/api-history-graph.txt
Documentation/technical/api-index-skel.txt
Documentation/technical/api-parse-options.txt
Documentation/technical/api-ref-iteration.txt
Documentation/technical/api-remote.txt
Documentation/technical/api-revision-walking.txt
Documentation/technical/api-run-command.txt
Documentation/technical/api-sha1-array.txt
Documentation/technical/api-strbuf.txt
Documentation/technical/api-string-list.txt
Documentation/technical/index-format.txt
Documentation/technical/pack-format.txt
Documentation/technical/pack-heuristics.txt
Documentation/technical/pack-protocol.txt
Documentation/technical/protocol-common.txt
Documentation/technical/racy-git.txt
Documentation/technical/send-pack-pipeline.txt
Documentation/technical/shallow.txt
Documentation/technical/trivial-merge.txt
Documentation/urls-remotes.txt
Documentation/urls.txt
Documentation/user-manual.conf
Documentation/user-manual.txt
GIT-VERSION-GEN
INSTALL
Makefile
README
RelNotes
abspath.c
advice.c
advice.h
archive-tar.c
archive-zip.c
archive.c
archive.h
argv-array.c
argv-array.h
attr.c
attr.h
bisect.c
bisect.h
block-sha1/sha1.c
branch.c
branch.h
builtin.h
builtin/add.c
builtin/apply.c
builtin/archive.c
builtin/bisect--helper.c
builtin/blame.c
builtin/branch.c
builtin/cat-file.c
builtin/check-attr.c
builtin/check-ignore.c [new file with mode: 0644]
builtin/checkout-index.c
builtin/checkout.c
builtin/clean.c
builtin/clone.c
builtin/column.c [new file with mode: 0644]
builtin/commit-tree.c
builtin/commit.c
builtin/config.c
builtin/count-objects.c
builtin/credential.c [new file with mode: 0644]
builtin/describe.c
builtin/diff-index.c
builtin/diff.c
builtin/fast-export.c
builtin/fetch-pack.c
builtin/fetch.c
builtin/fmt-merge-msg.c
builtin/for-each-ref.c
builtin/fsck.c
builtin/gc.c
builtin/grep.c
builtin/hash-object.c
builtin/help.c
builtin/index-pack.c
builtin/init-db.c
builtin/log.c
builtin/ls-files.c
builtin/ls-remote.c
builtin/ls-tree.c
builtin/mailinfo.c
builtin/mailsplit.c
builtin/merge-base.c
builtin/merge-file.c
builtin/merge-index.c
builtin/merge-tree.c
builtin/merge.c
builtin/mktree.c
builtin/mv.c
builtin/name-rev.c
builtin/notes.c
builtin/pack-objects.c
builtin/pack-redundant.c
builtin/pack-refs.c
builtin/prune-packed.c
builtin/prune.c
builtin/push.c
builtin/read-tree.c
builtin/receive-pack.c
builtin/reflog.c
builtin/remote.c
builtin/replace.c
builtin/rerere.c
builtin/reset.c
builtin/rev-list.c
builtin/rev-parse.c
builtin/revert.c
builtin/rm.c
builtin/send-pack.c
builtin/shortlog.c
builtin/show-branch.c
builtin/show-ref.c
builtin/stripspace.c
builtin/symbolic-ref.c
builtin/tag.c
builtin/unpack-objects.c
builtin/update-index.c
builtin/update-ref.c
builtin/update-server-info.c
builtin/upload-archive.c
builtin/var.c
builtin/verify-pack.c
builtin/verify-tag.c
builtin/write-tree.c
bundle.c
cache-tree.c
cache-tree.h
cache.h
color.c
column.c [new file with mode: 0644]
column.h [new file with mode: 0644]
combine-diff.c
command-list.txt
commit-slab.h [new file with mode: 0644]
commit.c
commit.h
compat/clipped-write.c [new file with mode: 0644]
compat/cygwin.c
compat/cygwin.h
compat/fnmatch/fnmatch.c
compat/inet_ntop.c
compat/inet_pton.c
compat/mingw.c
compat/mingw.h
compat/mkdir.c [new file with mode: 0644]
compat/msvc.h
compat/nedmalloc/Readme.txt
compat/nedmalloc/malloc.c.h
compat/nedmalloc/nedmalloc.c
compat/obstack.h
compat/poll/poll.c [moved from compat/win32/poll.c with 97% similarity]
compat/poll/poll.h [moved from compat/win32/poll.h with 100% similarity]
compat/precompose_utf8.c [new file with mode: 0644]
compat/precompose_utf8.h [new file with mode: 0644]
compat/regex/regcomp.c
compat/regex/regex.c
compat/regex/regex_internal.c
compat/regex/regexec.c
compat/strtok_r.c [deleted file]
compat/terminal.c
compat/unsetenv.c
compat/vcbuild/include/sys/poll.h [deleted file]
compat/vcbuild/include/unistd.h
compat/win32.h
compat/win32/pthread.c
compat/win32/pthread.h
compat/win32mmap.c
config.c
config.mak.in
config.mak.uname [new file with mode: 0644]
configure.ac
connect.c
connected.c
connected.h
contrib/blameview/README [deleted file]
contrib/blameview/blameview.perl [deleted file]
contrib/ciabot/INSTALL [new file with mode: 0644]
contrib/ciabot/README
contrib/ciabot/ciabot.py
contrib/ciabot/ciabot.sh
contrib/completion/git-completion.bash [changed mode: 0755->0644]
contrib/completion/git-completion.tcsh [new file with mode: 0644]
contrib/completion/git-completion.zsh [new file with mode: 0644]
contrib/completion/git-prompt.sh [new file with mode: 0644]
contrib/continuous/cidaemon [deleted file]
contrib/continuous/post-receive-cinotify [deleted file]
contrib/credential/gnome-keyring/.gitignore [new file with mode: 0644]
contrib/credential/gnome-keyring/Makefile [new file with mode: 0644]
contrib/credential/gnome-keyring/git-credential-gnome-keyring.c [new file with mode: 0644]
contrib/credential/netrc/Makefile [new file with mode: 0644]
contrib/credential/netrc/git-credential-netrc [new file with mode: 0755]
contrib/credential/netrc/test.netrc [new file with mode: 0644]
contrib/credential/netrc/test.pl [new file with mode: 0755]
contrib/credential/osxkeychain/Makefile
contrib/credential/osxkeychain/git-credential-osxkeychain.c
contrib/credential/wincred/Makefile [new file with mode: 0644]
contrib/credential/wincred/git-credential-wincred.c [new file with mode: 0644]
contrib/diff-highlight/README
contrib/diff-highlight/diff-highlight
contrib/diffall/README [new file with mode: 0644]
contrib/diffall/git-diffall [new file with mode: 0755]
contrib/emacs/git-blame.el
contrib/emacs/git.el
contrib/examples/builtin-fetch--tool.c
contrib/examples/git-remote.perl
contrib/examples/git-svnimport.perl
contrib/fast-import/git-import.perl
contrib/fast-import/git-import.sh
contrib/fast-import/git-p4.README [new file with mode: 0644]
contrib/fast-import/git-p4.bat [deleted file]
contrib/fast-import/import-zips.py
contrib/git-jump/git-jump
contrib/hg-to-git/hg-to-git.py
contrib/hooks/post-receive-email
contrib/hooks/setgitperms.perl
contrib/mw-to-git/.gitignore [new file with mode: 0644]
contrib/mw-to-git/.perlcriticrc [new file with mode: 0644]
contrib/mw-to-git/Makefile [new file with mode: 0644]
contrib/mw-to-git/git-remote-mediawiki [deleted file]
contrib/mw-to-git/git-remote-mediawiki.perl [new file with mode: 0755]
contrib/mw-to-git/git-remote-mediawiki.txt
contrib/mw-to-git/t/.gitignore [new file with mode: 0644]
contrib/mw-to-git/t/Makefile [new file with mode: 0644]
contrib/mw-to-git/t/README [new file with mode: 0644]
contrib/mw-to-git/t/install-wiki.sh [new file with mode: 0755]
contrib/mw-to-git/t/install-wiki/.gitignore [new file with mode: 0644]
contrib/mw-to-git/t/install-wiki/LocalSettings.php [new file with mode: 0644]
contrib/mw-to-git/t/install-wiki/db_install.php [new file with mode: 0644]
contrib/mw-to-git/t/push-pull-tests.sh [new file with mode: 0644]
contrib/mw-to-git/t/t9360-mw-to-git-clone.sh [new file with mode: 0755]
contrib/mw-to-git/t/t9361-mw-to-git-push-pull.sh [new file with mode: 0755]
contrib/mw-to-git/t/t9362-mw-to-git-utf8.sh [new file with mode: 0755]
contrib/mw-to-git/t/t9363-mw-to-git-export-import.sh [new file with mode: 0755]
contrib/mw-to-git/t/t9364-pull-by-rev.sh [new file with mode: 0755]
contrib/mw-to-git/t/test-gitmw-lib.sh [new file with mode: 0755]
contrib/mw-to-git/t/test-gitmw.pl [new file with mode: 0755]
contrib/mw-to-git/t/test.config [new file with mode: 0644]
contrib/p4import/git-p4import.py
contrib/patches/docbook-xsl-manpages-charmap.patch [deleted file]
contrib/persistent-https/LICENSE [new file with mode: 0644]
contrib/persistent-https/Makefile [new file with mode: 0644]
contrib/persistent-https/README [new file with mode: 0644]
contrib/persistent-https/client.go [new file with mode: 0644]
contrib/persistent-https/main.go [new file with mode: 0644]
contrib/persistent-https/proxy.go [new file with mode: 0644]
contrib/persistent-https/socket.go [new file with mode: 0644]
contrib/remote-helpers/Makefile [new file with mode: 0644]
contrib/remote-helpers/git-remote-bzr [new file with mode: 0755]
contrib/remote-helpers/git-remote-hg [new file with mode: 0755]
contrib/remote-helpers/test-bzr.sh [new file with mode: 0755]
contrib/remote-helpers/test-hg-bidi.sh [new file with mode: 0755]
contrib/remote-helpers/test-hg-hg-git.sh [new file with mode: 0755]
contrib/remote-helpers/test-hg.sh [new file with mode: 0755]
contrib/rerere-train.sh
contrib/stats/mailmap.pl
contrib/subtree/.gitignore [new file with mode: 0644]
contrib/subtree/COPYING [new file with mode: 0644]
contrib/subtree/INSTALL [new file with mode: 0644]
contrib/subtree/Makefile [new file with mode: 0644]
contrib/subtree/README [new file with mode: 0644]
contrib/subtree/git-subtree.sh [new file with mode: 0755]
contrib/subtree/git-subtree.txt [new file with mode: 0644]
contrib/subtree/t/Makefile [new file with mode: 0644]
contrib/subtree/t/t7900-subtree.sh [new file with mode: 0755]
contrib/subtree/todo [new file with mode: 0644]
contrib/svn-fe/svn-fe.c
contrib/svn-fe/svn-fe.txt
contrib/svn-fe/svnrdump_sim.py [new file with mode: 0755]
contrib/vim/README
convert.c
convert.h
credential-store.c
credential.c
credential.h
ctype.c
daemon.c
date.c
decorate.c
diff-lib.c
diff-no-index.c
diff.c
diff.h
diffcore-break.c
diffcore-pickaxe.c
diffcore-rename.c
diffcore.h
dir.c
dir.h
editor.c
entry.c
environment.c
exec_cmd.c
fast-import.c
fetch-pack.c [new file with mode: 0644]
fetch-pack.h
fixup-builtins [deleted file]
fsck.c
generate-cmdlist.sh
gettext.c
gettext.h
git-add--interactive.perl
git-am.sh
git-archimport.perl
git-bisect.sh
git-compat-util.h
git-cvsexportcommit.perl
git-cvsimport.perl
git-cvsserver.perl
git-difftool--helper.sh
git-difftool.perl
git-filter-branch.sh
git-gui/GIT-VERSION-GEN
git-gui/Makefile
git-gui/git-gui.sh
git-gui/lib/choose_repository.tcl
git-gui/lib/commit.tcl
git-gui/lib/diff.tcl
git-gui/lib/mergetool.tcl
git-gui/lib/remote.tcl
git-gui/lib/status_bar.tcl
git-gui/macosx/AppMain.tcl
git-gui/po/de.po
git-gui/po/fr.po
git-gui/po/git-gui.pot
git-gui/po/hu.po
git-gui/po/it.po
git-gui/po/ja.po
git-gui/po/nb.po
git-gui/po/pt_br.po
git-gui/po/ru.po
git-gui/po/sv.po
git-merge-one-file.sh
git-mergetool--lib.sh
git-mergetool.sh
git-p4.py [moved from contrib/fast-import/git-p4 with 61% similarity]
git-parse-remote.sh
git-pull.sh
git-quiltimport.sh
git-rebase--am.sh
git-rebase--interactive.sh
git-rebase--merge.sh
git-rebase.sh
git-relink.perl
git-remote-testgit.sh [new file with mode: 0755]
git-remote-testpy.py [moved from git-remote-testgit.py with 74% similarity]
git-repack.sh
git-request-pull.sh
git-send-email.perl
git-sh-i18n.sh
git-sh-setup.sh
git-stash.sh
git-submodule.sh
git-svn.perl
git-web--browse.sh
git.c
git.rc [new file with mode: 0644]
git.spec.in
git_remote_helpers/.gitignore
git_remote_helpers/Makefile
git_remote_helpers/git/__init__.py
git_remote_helpers/git/importer.py
git_remote_helpers/setup.py
gitk-git/.gitignore [new file with mode: 0644]
gitk-git/Makefile
gitk-git/gitk
gitk-git/po/sv.po
gitweb/INSTALL
gitweb/README
gitweb/gitweb.perl
gitweb/static/gitweb.css
gitweb/static/js/lib/cookies.js
gpg-interface.c
gpg-interface.h
graph.c
graph.h
grep.c
grep.h
hash.h
help.c
help.h
http-backend.c
http-push.c
http-walker.c
http.c
http.h
ident.c
imap-send.c
kwset.c
line-log.c [new file with mode: 0644]
line-log.h [new file with mode: 0644]
line-range.c [new file with mode: 0644]
line-range.h [new file with mode: 0644]
ll-merge.c
lockfile.c
log-tree.c
log-tree.h
mailmap.c
mailmap.h
match-trees.c
merge-blobs.c [moved from merge-file.c with 94% similarity]
merge-blobs.h [new file with mode: 0644]
merge-file.h [deleted file]
merge-recursive.c
merge-recursive.h
merge.c [new file with mode: 0644]
mergesort.c [new file with mode: 0644]
mergesort.h [new file with mode: 0644]
mergetools/codecompare [new file with mode: 0644]
mergetools/defaults [deleted file]
mergetools/deltawalker [new file with mode: 0644]
mergetools/gvimdiff [new file with mode: 0644]
mergetools/gvimdiff2 [new file with mode: 0644]
mergetools/kdiff3
mergetools/meld
mergetools/p4merge
mergetools/tortoisemerge
mergetools/vimdiff [moved from mergetools/vim with 68% similarity]
mergetools/vimdiff2 [new file with mode: 0644]
name-hash.c
notes-merge.c
notes-merge.h
notes-utils.c [new file with mode: 0644]
notes-utils.h [new file with mode: 0644]
notes.c
notes.h
object.c
object.h
pack-refs.c [deleted file]
pack-refs.h [deleted file]
pager.c
parse-options-cb.c
parse-options.c
parse-options.h
patch-ids.c
path.c
pathspec.c [new file with mode: 0644]
pathspec.h [new file with mode: 0644]
perl/.gitignore
perl/Git.pm
perl/Git/I18N.pm
perl/Git/IndexInfo.pm [new file with mode: 0644]
perl/Git/SVN.pm [new file with mode: 0644]
perl/Git/SVN/Editor.pm [new file with mode: 0644]
perl/Git/SVN/Fetcher.pm [new file with mode: 0644]
perl/Git/SVN/GlobSpec.pm [new file with mode: 0644]
perl/Git/SVN/Log.pm [new file with mode: 0644]
perl/Git/SVN/Memoize/YAML.pm [new file with mode: 0644]
perl/Git/SVN/Migration.pm [new file with mode: 0644]
perl/Git/SVN/Prompt.pm [new file with mode: 0644]
perl/Git/SVN/Ra.pm [new file with mode: 0644]
perl/Git/SVN/Utils.pm [new file with mode: 0644]
perl/Makefile
perl/Makefile.PL
perl/private-Error.pm
pkt-line.c
pkt-line.h
po/.gitignore
po/README
po/TEAMS [new file with mode: 0644]
po/da.po [new file with mode: 0644]
po/de.po [new file with mode: 0644]
po/git.pot [new file with mode: 0644]
po/it.po [new file with mode: 0644]
po/nl.po [new file with mode: 0644]
po/pt_PT.po [new file with mode: 0644]
po/sv.po [new file with mode: 0644]
po/vi.po [new file with mode: 0644]
po/zh_CN.po [new file with mode: 0644]
pretty.c
prio-queue.c [new file with mode: 0644]
prio-queue.h [new file with mode: 0644]
progress.c
prompt.c
reachable.c
read-cache.c
reflog-walk.c
reflog-walk.h
refs.c
refs.h
remote-curl.c
remote-testsvn.c [new file with mode: 0644]
remote.c
remote.h
rerere.c
rerere.h
resolve-undo.c
resolve-undo.h
revision.c
revision.h
run-command.c
run-command.h
send-pack.c [new file with mode: 0644]
sequencer.c
sequencer.h
setup.c
sha1-array.c
sha1-array.h
sha1_file.c
sha1_name.c
shallow.c
shell.c
sideband.c
sideband.h
strbuf.c
strbuf.h
streaming.c
streaming.h
string-list.c
string-list.h
submodule.c
submodule.h
symlinks.c
t/Git-SVN/00compile.t [new file with mode: 0644]
t/Git-SVN/Utils/add_path_to_url.t [new file with mode: 0644]
t/Git-SVN/Utils/can_compress.t [new file with mode: 0644]
t/Git-SVN/Utils/canonicalize_url.t [new file with mode: 0644]
t/Git-SVN/Utils/collapse_dotdot.t [new file with mode: 0644]
t/Git-SVN/Utils/fatal.t [new file with mode: 0644]
t/Git-SVN/Utils/join_paths.t [new file with mode: 0644]
t/Makefile
t/README
t/check-non-portable-shell.pl [new file with mode: 0755]
t/gitweb-lib.sh
t/harness [deleted file]
t/lib-bash.sh [new file with mode: 0644]
t/lib-credential.sh
t/lib-gettext.sh
t/lib-git-daemon.sh [new file with mode: 0644]
t/lib-git-p4.sh
t/lib-git-svn.sh
t/lib-gpg/pubring.gpg
t/lib-gpg/random_seed
t/lib-gpg/secring.gpg
t/lib-gpg/trustdb.gpg
t/lib-httpd.sh
t/lib-httpd/apache.conf
t/lib-httpd/broken-smart-http.sh [new file with mode: 0755]
t/lib-rebase.sh
t/lib-t6000.sh
t/perf/.gitignore [new file with mode: 0644]
t/perf/Makefile [new file with mode: 0644]
t/perf/README [new file with mode: 0644]
t/perf/aggregate.perl [new file with mode: 0755]
t/perf/min_time.perl [new file with mode: 0755]
t/perf/p0000-perf-lib-sanity.sh [new file with mode: 0755]
t/perf/p0001-rev-list.sh [new file with mode: 0755]
t/perf/p0002-read-cache.sh [new file with mode: 0755]
t/perf/p4000-diff-algorithms.sh [new file with mode: 0755]
t/perf/p4211-line-log.sh [new file with mode: 0755]
t/perf/p5302-pack-index.sh [new file with mode: 0755]
t/perf/p7810-grep.sh [new file with mode: 0755]
t/perf/perf-lib.sh [new file with mode: 0644]
t/perf/run [new file with mode: 0755]
t/t0000-basic.sh
t/t0003-attributes.sh
t/t0005-signals.sh
t/t0006-date.sh
t/t0007-git-var.sh [new file with mode: 0755]
t/t0008-ignores.sh [new file with mode: 0755]
t/t0009-prio-queue.sh [new file with mode: 0755]
t/t0020-crlf.sh
t/t0021-conversion.sh
t/t0023-crlf-am.sh
t/t0024-crlf-archive.sh
t/t0030-stripspace.sh
t/t0040-parse-options.sh
t/t0050-filesystem.sh
t/t0060-path-utils.sh
t/t0061-run-command.sh
t/t0062-revision-walking.sh [new file with mode: 0755]
t/t0063-string-list.sh [new file with mode: 0755]
t/t0070-fundamental.sh
t/t0080-vcs-svn.sh [deleted file]
t/t0100-previous.sh
t/t0201-gettext-fallbacks.sh
t/t0204-gettext-reencode-sanity.sh
t/t0300-credentials.sh
t/t0303-credential-external.sh
t/t1004-read-tree-m-u-wf.sh
t/t1006-cat-file.sh
t/t1010-mktree.sh
t/t1011-read-tree-sparse-checkout.sh
t/t1020-subdirectory.sh
t/t1050-large.sh
t/t1051-large-conversion.sh [new file with mode: 0755]
t/t1060-object-corruption.sh [new file with mode: 0755]
t/t1100-commit-tree-options.sh
t/t1200-tutorial.sh
t/t1300-repo-config.sh
t/t1304-default-acl.sh
t/t1305-config-include.sh [new file with mode: 0755]
t/t1306-xdg-files.sh [new file with mode: 0755]
t/t1400-update-ref.sh
t/t1401-symbolic-ref.sh
t/t1402-check-ref-format.sh
t/t1410-reflog.sh
t/t1411-reflog-show.sh
t/t1450-fsck.sh
t/t1501-worktree.sh
t/t1502-rev-parse-parseopt.sh
t/t1504-ceiling-dirs.sh
t/t1505-rev-parse-last.sh
t/t1506-rev-parse-diagnosis.sh
t/t1507-rev-parse-upstream.sh
t/t1508-at-combinations.sh
t/t1509/prepare-chroot.sh
t/t1510-repo-setup.sh
t/t1512-rev-parse-disambiguation.sh
t/t1513-rev-parse-prefix.sh [new file with mode: 0755]
t/t2001-checkout-cache-clash.sh
t/t2003-checkout-cache-mkdir.sh
t/t2004-checkout-cache-temp.sh
t/t2006-checkout-index-basic.sh
t/t2007-checkout-symlink.sh
t/t2012-checkout-last.sh
t/t2013-checkout-submodule.sh
t/t2015-checkout-unborn.sh
t/t2017-checkout-orphan.sh
t/t2020-checkout-detach.sh
t/t2021-checkout-overwrite.sh
t/t2022-checkout-paths.sh
t/t2024-checkout-dwim.sh [new file with mode: 0755]
t/t2030-unresolve-info.sh
t/t2107-update-index-basic.sh
t/t2200-add-update.sh
t/t2203-add-intent.sh
t/t3001-ls-files-others-exclude.sh
t/t3004-ls-files-basic.sh
t/t3006-ls-files-long.sh [new file with mode: 0755]
t/t3010-ls-files-killed-modified.sh
t/t3030-merge-recursive.sh
t/t3070-wildmatch.sh [new file with mode: 0755]
t/t3100-ls-tree-restrict.sh
t/t3200-branch.sh
t/t3201-branch-contains.sh
t/t3203-branch-output.sh
t/t3210-pack-refs.sh
t/t3211-peel-ref.sh [new file with mode: 0755]
t/t3300-funny-names.sh
t/t3310-notes-merge-manual-resolve.sh
t/t3400-rebase.sh
t/t3401-rebase-partial.sh [deleted file]
t/t3403-rebase-skip.sh
t/t3404-rebase-interactive.sh
t/t3405-rebase-malformed.sh
t/t3406-rebase-message.sh
t/t3409-rebase-preserve-merges.sh
t/t3411-rebase-preserve-around-merges.sh
t/t3412-rebase-root.sh
t/t3415-rebase-autosquash.sh
t/t3420-rebase-autostash.sh [new file with mode: 0755]
t/t3421-rebase-topology-linear.sh [new file with mode: 0755]
t/t3425-rebase-topology-merges.sh [new file with mode: 0755]
t/t3501-revert-cherry-pick.sh
t/t3505-cherry-pick-empty.sh
t/t3506-cherry-pick-ff.sh
t/t3507-cherry-pick-conflict.sh
t/t3508-cherry-pick-many-commits.sh
t/t3509-cherry-pick-merge-df.sh
t/t3510-cherry-pick-sequence.sh
t/t3511-cherry-pick-x.sh [new file with mode: 0755]
t/t3600-rm.sh
t/t3700-add.sh
t/t3701-add-interactive.sh
t/t3900-i18n-commit.sh
t/t3902-quoted.sh
t/t3903-stash.sh
t/t3910-mac-os-precompose.sh [new file with mode: 0755]
t/t4001-diff-rename.sh
t/t4006-diff-mode.sh
t/t4008-diff-break-rewrite.sh
t/t4011-diff-symlink.sh
t/t4012-diff-binary.sh
t/t4013-diff-various.sh
t/t4013/diff.diff-tree_--cc_--patch-with-stat_--summary_master
t/t4013/diff.diff-tree_--cc_--patch-with-stat_--summary_side
t/t4013/diff.diff-tree_--cc_--patch-with-stat_master
t/t4013/diff.diff-tree_--cc_--stat_--summary_master
t/t4013/diff.diff-tree_--cc_--stat_--summary_side
t/t4013/diff.diff-tree_--cc_--stat_master
t/t4013/diff.diff-tree_--pretty=oneline_--root_--patch-with-stat_initial
t/t4013/diff.diff-tree_--pretty_--patch-with-stat_side
t/t4013/diff.diff-tree_--pretty_--root_--patch-with-stat_initial
t/t4013/diff.diff-tree_--pretty_--root_--stat_--summary_initial
t/t4013/diff.diff-tree_--pretty_--root_--stat_initial
t/t4013/diff.diff-tree_--root_--patch-with-stat_initial
t/t4013/diff.diff-tree_-c_--stat_--summary_master
t/t4013/diff.diff-tree_-c_--stat_--summary_side
t/t4013/diff.diff-tree_-c_--stat_master
t/t4013/diff.diff_--patch-with-stat_-r_initial..side
t/t4013/diff.diff_--patch-with-stat_initial..side
t/t4013/diff.diff_--stat_initial..side
t/t4013/diff.diff_-r_--stat_initial..side
t/t4013/diff.format-patch_--attach_--stdout_--suffix=.diff_initial..side
t/t4013/diff.format-patch_--attach_--stdout_initial..master
t/t4013/diff.format-patch_--attach_--stdout_initial..master^
t/t4013/diff.format-patch_--attach_--stdout_initial..side
t/t4013/diff.format-patch_--inline_--stdout_--numbered-files_initial..master
t/t4013/diff.format-patch_--inline_--stdout_--subject-prefix=TESTCASE_initial..master
t/t4013/diff.format-patch_--inline_--stdout_initial..master
t/t4013/diff.format-patch_--inline_--stdout_initial..master^
t/t4013/diff.format-patch_--inline_--stdout_initial..master^^
t/t4013/diff.format-patch_--inline_--stdout_initial..side
t/t4013/diff.format-patch_--stdout_--cover-letter_-n_initial..master^
t/t4013/diff.format-patch_--stdout_--no-numbered_initial..master
t/t4013/diff.format-patch_--stdout_--numbered_initial..master
t/t4013/diff.format-patch_--stdout_initial..master
t/t4013/diff.format-patch_--stdout_initial..master^
t/t4013/diff.format-patch_--stdout_initial..side
t/t4013/diff.log_--patch-with-stat_--summary_master_--_dir_
t/t4013/diff.log_--patch-with-stat_master
t/t4013/diff.log_--patch-with-stat_master_--_dir_
t/t4013/diff.log_--root_--cc_--patch-with-stat_--summary_master
t/t4013/diff.log_--root_--patch-with-stat_--summary_master
t/t4013/diff.log_--root_--patch-with-stat_master
t/t4013/diff.log_--root_-c_--patch-with-stat_--summary_master
t/t4013/diff.show_--patch-with-stat_--summary_side
t/t4013/diff.show_--patch-with-stat_side
t/t4013/diff.show_--stat_--summary_side
t/t4013/diff.show_--stat_side
t/t4013/diff.whatchanged_--patch-with-stat_--summary_master_--_dir_
t/t4013/diff.whatchanged_--patch-with-stat_master
t/t4013/diff.whatchanged_--patch-with-stat_master_--_dir_
t/t4013/diff.whatchanged_--root_--cc_--patch-with-stat_--summary_master
t/t4013/diff.whatchanged_--root_--patch-with-stat_--summary_master
t/t4013/diff.whatchanged_--root_--patch-with-stat_master
t/t4013/diff.whatchanged_--root_-c_--patch-with-stat_--summary_master
t/t4014-format-patch.sh
t/t4015-diff-whitespace.sh
t/t4016-diff-quote.sh
t/t4018-diff-funcname.sh
t/t4020-diff-external.sh
t/t4022-diff-rewrite.sh
t/t4023-diff-rename-typechange.sh
t/t4029-diff-trailing-space.sh
t/t4030-diff-textconv.sh
t/t4031-diff-rewrite-binary.sh
t/t4034-diff-words.sh
t/t4034/ada/expect [new file with mode: 0644]
t/t4034/ada/post [new file with mode: 0644]
t/t4034/ada/pre [new file with mode: 0644]
t/t4035-diff-quiet.sh
t/t4038-diff-combined.sh
t/t4041-diff-submodule-option.sh
t/t4042-diff-textconv-caching.sh
t/t4043-diff-rename-binary.sh
t/t4045-diff-relative.sh
t/t4047-diff-dirstat.sh
t/t4049-diff-stat-count.sh
t/t4052-stat-output.sh [new file with mode: 0755]
t/t4053-diff-no-index.sh [new file with mode: 0755]
t/t4054-diff-bogus-tree.sh [new file with mode: 0755]
t/t4055-diff-context.sh [new file with mode: 0755]
t/t4100-apply-stat.sh
t/t4100/t-apply-8.expect
t/t4100/t-apply-9.expect
t/t4103-apply-binary.sh
t/t4108-apply-threeway.sh [new file with mode: 0755]
t/t4111-apply-subdir.sh
t/t4114-apply-typechange.sh
t/t4115-apply-symlink.sh
t/t4116-apply-reverse.sh
t/t4117-apply-reject.sh
t/t4120-apply-popt.sh
t/t4122-apply-symlink-inside.sh
t/t4124-apply-ws-rule.sh
t/t4133-apply-filenames.sh
t/t4150-am.sh
t/t4200-rerere.sh
t/t4201-shortlog.sh
t/t4202-log.sh
t/t4203-mailmap.sh
t/t4205-log-pretty-formats.sh
t/t4207-log-decoration-colors.sh
t/t4208-log-magic-pathspec.sh
t/t4209-log-pickaxe.sh [new file with mode: 0755]
t/t4210-log-i18n.sh [new file with mode: 0755]
t/t4211-line-log.sh [new file with mode: 0755]
t/t4211/expect.beginning-of-file [new file with mode: 0644]
t/t4211/expect.end-of-file [new file with mode: 0644]
t/t4211/expect.move-support-f [new file with mode: 0644]
t/t4211/expect.multiple [new file with mode: 0644]
t/t4211/expect.multiple-overlapping [new file with mode: 0644]
t/t4211/expect.multiple-superset [new file with mode: 0644]
t/t4211/expect.parallel-change-f-to-main [new file with mode: 0644]
t/t4211/expect.simple-f [new file with mode: 0644]
t/t4211/expect.simple-f-to-main [new file with mode: 0644]
t/t4211/expect.simple-main [new file with mode: 0644]
t/t4211/expect.simple-main-to-end [new file with mode: 0644]
t/t4211/expect.two-ranges [new file with mode: 0644]
t/t4211/expect.vanishes-early [new file with mode: 0644]
t/t4211/history.export [new file with mode: 0644]
t/t4212-log-corrupt.sh [new file with mode: 0755]
t/t4253-am-keep-cr-dos.sh
t/t4300-merge-tree.sh
t/t5000-tar-tree.sh
t/t5000/pax.tar [new file with mode: 0644]
t/t5002-archive-attr-pattern.sh [new file with mode: 0755]
t/t5003-archive-zip.sh [new file with mode: 0755]
t/t5003/infozip-symlinks.zip [new file with mode: 0644]
t/t5004-archive-corner-cases.sh [new file with mode: 0755]
t/t5004/empty-with-pax-header.tar [new file with mode: 0644]
t/t5004/empty.zip [new file with mode: 0644]
t/t5100-mailinfo.sh
t/t5100/info0017 [new file with mode: 0644]
t/t5100/msg0017 [new file with mode: 0644]
t/t5100/patch0001
t/t5100/patch0002
t/t5100/patch0003
t/t5100/patch0005
t/t5100/patch0006
t/t5100/patch0010
t/t5100/patch0011
t/t5100/patch0014
t/t5100/patch0014--scissors
t/t5100/patch0017 [new file with mode: 0644]
t/t5100/sample.mbox
t/t5150-request-pull.sh
t/t5300-pack-object.sh
t/t5302-pack-index.sh
t/t5303-pack-corruption-resilience.sh
t/t5304-prune.sh
t/t5400-send-pack.sh
t/t5404-tracking-branches.sh
t/t5407-post-rewrite-hook.sh
t/t5500-fetch-pack.sh
t/t5503-tagfollow.sh
t/t5504-fetch-receive-strict.sh
t/t5505-remote.sh
t/t5510-fetch.sh
t/t5512-ls-remote.sh
t/t5514-fetch-multiple.sh
t/t5516-fetch-push.sh
t/t5517-push-mirror.sh
t/t5519-push-alternates.sh
t/t5520-pull.sh
t/t5521-pull-options.sh
t/t5523-push-upstream.sh
t/t5528-push-default.sh [new file with mode: 0755]
t/t5530-upload-pack-error.sh
t/t5531-deep-submodule-push.sh
t/t5532-fetch-proxy.sh
t/t5535-fetch-push-symref.sh [new file with mode: 0755]
t/t5540-http-push.sh
t/t5541-http-push.sh
t/t5550-http-fetch.sh
t/t5551-http-fetch.sh
t/t5560-http-backend-noserver.sh
t/t5570-git-daemon.sh [new file with mode: 0755]
t/t5571-pre-push-hook.sh [new file with mode: 0755]
t/t5600-clone-fail-cleanup.sh
t/t5601-clone.sh
t/t5700-clone-reference.sh
t/t5701-clone-local.sh
t/t5702-clone-options.sh
t/t5704-bundle.sh
t/t5706-clone-branch.sh
t/t5709-clone-refspec.sh [new file with mode: 0755]
t/t5710-info-alternate.sh
t/t5800-remote-testpy.sh [moved from t/t5800-remote-helpers.sh with 65% similarity]
t/t5801-remote-helpers.sh [new file with mode: 0755]
t/t5900-repo-selection.sh [new file with mode: 0755]
t/t6002-rev-list-bisect.sh
t/t6003-rev-list-topo-order.sh
t/t6006-rev-list-format.sh
t/t6009-rev-list-parent.sh
t/t6011-rev-list-with-bad-commit.sh
t/t6012-rev-list-simplify.sh
t/t6013-rev-list-reverse-parents.sh
t/t6019-rev-list-ancestry-path.sh
t/t6022-merge-rename.sh
t/t6028-merge-up-to-date.sh
t/t6030-bisect-porcelain.sh
t/t6032-merge-large-rename.sh
t/t6035-merge-dir-to-symlink.sh
t/t6037-merge-ours-theirs.sh
t/t6040-tracking-info.sh
t/t6042-merge-rename-corner-cases.sh
t/t6050-replace.sh
t/t6111-rev-list-treesame.sh [new file with mode: 0755]
t/t6120-describe.sh
t/t6130-pathspec-noglob.sh [new file with mode: 0755]
t/t6200-fmt-merge-msg.sh
t/t6300-for-each-ref.sh
t/t6500-gc.sh
t/t7001-mv.sh
t/t7003-filter-branch.sh
t/t7004-tag.sh
t/t7007-show.sh
t/t7008-grep-binary.sh
t/t7011-skip-worktree-reading.sh
t/t7060-wtstatus.sh
t/t7061-wtstatus-ignore.sh [new file with mode: 0755]
t/t7062-wtstatus-ignorecase.sh [new file with mode: 0755]
t/t7102-reset.sh
t/t7106-reset-unborn-branch.sh [new file with mode: 0755]
t/t7201-co.sh
t/t7300-clean.sh
t/t7400-submodule-basic.sh
t/t7401-submodule-summary.sh
t/t7402-submodule-rebase.sh
t/t7403-submodule-sync.sh
t/t7406-submodule-update.sh
t/t7407-submodule-foreach.sh
t/t7408-submodule-reference.sh
t/t7409-submodule-detached-worktree.sh [new file with mode: 0755]
t/t7500-commit.sh
t/t7500/add-content-and-comment [new file with mode: 0755]
t/t7501-commit.sh
t/t7502-commit.sh
t/t7503-pre-commit-hook.sh
t/t7505-prepare-commit-msg-hook.sh
t/t7508-status.sh
t/t7512-status-help.sh [new file with mode: 0755]
t/t7600-merge.sh
t/t7601-merge-pull-config.sh
t/t7602-merge-octopus-many.sh
t/t7603-merge-reduce-heads.sh
t/t7607-merge-overwrite.sh
t/t7610-mergetool.sh
t/t7612-merge-verify-signatures.sh [new file with mode: 0755]
t/t7701-repack-unpack-unreachable.sh
t/t7800-difftool.sh
t/t7810-grep.sh
t/t7811-grep-open.sh
t/t8003-blame-corner-cases.sh
t/t8004-blame-with-conflicts.sh
t/t8006-blame-textconv.sh
t/t8007-cat-file-textconv.sh
t/t9001-send-email.sh
t/t9002-column.sh [new file with mode: 0755]
t/t9010-svn-fe.sh
t/t9011-svn-da.sh [new file with mode: 0755]
t/t9020-remote-svn.sh [new file with mode: 0755]
t/t9100-git-svn-basic.sh
t/t9107-git-svn-migrate.sh
t/t9114-git-svn-dcommit-merge.sh
t/t9118-git-svn-funky-branch-names.sh
t/t9129-git-svn-i18n-commitencoding.sh
t/t9130-git-svn-authors-file.sh
t/t9137-git-svn-dcommit-clobber-series.sh
t/t9147-git-svn-include-paths.sh [new file with mode: 0755]
t/t9154-git-svn-fancy-glob.sh
t/t9161-git-svn-mergeinfo-push.sh
t/t9163-git-svn-reset-clears-caches.sh [new file with mode: 0755]
t/t9164-git-svn-dcommit-concurrent.sh [new file with mode: 0755]
t/t9165-git-svn-fetch-merge-branch-of-branch.sh [new file with mode: 0755]
t/t9166-git-svn-fetch-merge-branch-of-branch2.sh [new file with mode: 0755]
t/t9167-git-svn-cmd-branch-subproject.sh [new file with mode: 0755]
t/t9200-git-cvsexportcommit.sh
t/t9300-fast-import.sh
t/t9350-fast-export.sh
t/t9400-git-cvsserver-server.sh
t/t9401-git-cvsserver-crlf.sh
t/t9402-git-cvsserver-refs.sh [new file with mode: 0755]
t/t9500-gitweb-standalone-no-errors.sh
t/t9501-gitweb-standalone-http-status.sh
t/t9502-gitweb-standalone-parse-output.sh
t/t9604-cvsimport-timestamps.sh [new file with mode: 0755]
t/t9604/cvsroot/.gitattributes [new file with mode: 0644]
t/t9604/cvsroot/CVSROOT/.gitignore [new file with mode: 0644]
t/t9604/cvsroot/module/a,v [new file with mode: 0644]
t/t9700/test.pl
t/t9800-git-p4-basic.sh
t/t9801-git-p4-branch.sh
t/t9802-git-p4-filetype.sh
t/t9803-git-p4-shell-metachars.sh
t/t9804-git-p4-label.sh [new file with mode: 0755]
t/t9805-git-p4-skip-submit-edit.sh
t/t9806-git-p4-options.sh
t/t9807-git-p4-submit.sh
t/t9808-git-p4-chdir.sh
t/t9809-git-p4-client-view.sh
t/t9810-git-p4-rcs.sh [new file with mode: 0755]
t/t9811-git-p4-label-import.sh [new file with mode: 0755]
t/t9812-git-p4-wildcards.sh [new file with mode: 0755]
t/t9813-git-p4-preserve-users.sh [new file with mode: 0755]
t/t9814-git-p4-rename.sh [new file with mode: 0755]
t/t9815-git-p4-submit-fail.sh [new file with mode: 0755]
t/t9902-completion.sh [new file with mode: 0755]
t/t9903-bash-prompt.sh [new file with mode: 0755]
t/test-lib-functions.sh [new file with mode: 0644]
t/test-lib.sh
t/test-terminal.perl
t/valgrind/analyze.sh
t/valgrind/valgrind.sh
tag.c
tag.h
templates/hooks--pre-push.sample [new file with mode: 0755]
templates/hooks--update.sample
test-chmtime.c
test-credential.c [deleted file]
test-date.c
test-delta.c
test-dump-cache-tree.c
test-genrandom.c
test-index-version.c
test-line-buffer.c
test-mergesort.c [new file with mode: 0644]
test-obj-pool.c [deleted file]
test-parse-options.c
test-path-utils.c
test-prio-queue.c [new file with mode: 0644]
test-read-cache.c [new file with mode: 0644]
test-regex.c [new file with mode: 0644]
test-revision-walking.c [new file with mode: 0644]
test-string-list.c [new file with mode: 0644]
test-string-pool.c [deleted file]
test-subprocess.c
test-svn-fe.c
test-treap.c [deleted file]
test-wildmatch.c [new file with mode: 0644]
thread-utils.c
trace.c
transport-helper.c
transport.c
transport.h
tree-diff.c
tree-walk.c
tree-walk.h
tree.c
unpack-trees.c
unpack-trees.h
upload-pack.c
usage.c
userdiff.c
utf8.c
utf8.h
varint.c [new file with mode: 0644]
varint.h [new file with mode: 0644]
vcs-svn/LICENSE
vcs-svn/fast_export.c
vcs-svn/fast_export.h
vcs-svn/line_buffer.c
vcs-svn/line_buffer.h
vcs-svn/obj_pool.h [deleted file]
vcs-svn/repo_tree.c
vcs-svn/repo_tree.h
vcs-svn/sliding_window.c [new file with mode: 0644]
vcs-svn/sliding_window.h [new file with mode: 0644]
vcs-svn/string_pool.c [deleted file]
vcs-svn/string_pool.h [deleted file]
vcs-svn/string_pool.txt [deleted file]
vcs-svn/svndiff.c [new file with mode: 0644]
vcs-svn/svndiff.h [new file with mode: 0644]
vcs-svn/svndump.c
vcs-svn/svndump.h
vcs-svn/trp.h [deleted file]
vcs-svn/trp.txt [deleted file]
version.c [new file with mode: 0644]
version.h [new file with mode: 0644]
wildmatch.c [new file with mode: 0644]
wildmatch.h [new file with mode: 0644]
wrapper.c
write_or_die.c
wt-status.c
wt-status.h
xdiff-interface.c
xdiff-interface.h
xdiff/xdiff.h
xdiff/xdiffi.c
xdiff/xdiffi.h
xdiff/xemit.c
xdiff/xemit.h
xdiff/xhistogram.c
xdiff/xpatience.c
xdiff/xprepare.c
xdiff/xutils.c
xdiff/xutils.h
zlib.c

index 3b7680e..efa8db0 100644 (file)
@@ -1,7 +1,10 @@
 /GIT-BUILD-OPTIONS
 /GIT-CFLAGS
 /GIT-LDFLAGS
-/GIT-GUI-VARS
+/GIT-PREFIX
+/GIT-PYTHON-VARS
+/GIT-SCRIPT-DEFINES
+/GIT-USER-AGENT
 /GIT-VERSION-FILE
 /bin-wrappers/
 /git
@@ -19,6 +22,7 @@
 /git-bundle
 /git-cat-file
 /git-check-attr
+/git-check-ignore
 /git-check-ref-format
 /git-checkout
 /git-checkout-index
 /git-cherry-pick
 /git-clean
 /git-clone
+/git-column
 /git-commit
 /git-commit-tree
 /git-config
 /git-count-objects
+/git-credential
 /git-credential-cache
 /git-credential-cache--daemon
 /git-credential-store
@@ -92,6 +98,7 @@
 /git-name-rev
 /git-mv
 /git-notes
+/git-p4
 /git-pack-redundant
 /git-pack-objects
 /git-pack-refs
 /git-remote-fd
 /git-remote-ext
 /git-remote-testgit
+/git-remote-testpy
+/git-remote-testsvn
 /git-repack
 /git-replace
 /git-repo-config
 /git-whatchanged
 /git-write-tree
 /git-core-*/?*
-/gitk-git/gitk-wish
 /gitweb/GITWEB-BUILD-OPTIONS
 /gitweb/gitweb.cgi
 /gitweb/static/gitweb.js
 /gitweb/static/gitweb.min.*
 /test-chmtime
-/test-credential
 /test-ctype
 /test-date
 /test-delta
 /test-index-version
 /test-line-buffer
 /test-match-trees
+/test-mergesort
 /test-mktemp
-/test-obj-pool
 /test-parse-options
 /test-path-utils
+/test-prio-queue
+/test-read-cache
+/test-regex
+/test-revision-walking
 /test-run-command
 /test-sha1
 /test-sigchain
-/test-string-pool
+/test-string-list
 /test-subprocess
 /test-svn-fe
-/test-treap
+/test-wildmatch
 /common-cmds.h
 *.tar.gz
 *.dsc
 /cscope*
 *.obj
 *.lib
+*.res
 *.sln
 *.suo
 *.ncb
index 19c8726..345cce6 100644 (file)
--- a/.mailmap
+++ b/.mailmap
@@ -9,7 +9,9 @@ Alex Bennée <kernel-hacker@bennee.com>
 Alexander Gavrilov <angavrilov@gmail.com>
 Aneesh Kumar K.V <aneesh.kumar@gmail.com>
 Brian M. Carlson <sandals@crustytoothpaste.ath.cx>
+Cheng Renquan <crquan@gmail.com>
 Chris Shoemaker <c.shoemaker@cox.net>
+Dan Johnson <computerdruid@gmail.com>
 Dana L. How <danahow@gmail.com>
 Dana L. How <how@deathvalley.cswitch.com>
 Daniel Barkalow <barkalow@iabervon.org>
@@ -18,25 +20,50 @@ David Kågedal <davidk@lysator.liu.se>
 David S. Miller <davem@davemloft.net>
 Deskin Miller <deskinm@umich.edu>
 Dirk Süsserott <newsletter@dirk.my1.cc>
+Eric S. Raymond <esr@thyrsus.com>
+Erik Faye-Lund <kusmabite@gmail.com> <kusmabite@googlemail.com>
 Fredrik Kuivinen <freku045@student.liu.se>
+Frédéric Heitzmann <frederic.heitzmann@gmail.com>
+H. Merijn Brand <h.m.brand@xs4all.nl> H.Merijn Brand <h.m.brand@xs4all.nl>
 H. Peter Anvin <hpa@bonde.sc.orionmulti.com>
 H. Peter Anvin <hpa@tazenda.sc.orionmulti.com>
 H. Peter Anvin <hpa@trantor.hos.anvin.org>
 Horst H. von Brand <vonbrand@inf.utfsm.cl>
 İsmail Dönmez <ismail@pardus.org.tr>
+Jakub Narębski <jnareb@gmail.com>
 Jay Soffian <jaysoffian+git@gmail.com>
+Jeff King <peff@peff.net> <peff@github.com>
 Joachim Berdal Haga <cjhaga@fys.uio.no>
+Johannes Sixt <j6t@kdbg.org> <johannes.sixt@telecom.at>
+Johannes Sixt <j6t@kdbg.org> <j.sixt@viscovery.net>
+Johannes Sixt <j6t@kdbg.org> <J.Sixt@eudaptics.com>
 Jon Loeliger <jdl@freescale.com>
 Jon Seymour <jon@blackcubes.dyndns.org>
 Jonathan Nieder <jrnieder@uchicago.edu>
-Junio C Hamano <junio@twinsun.com>
+Junio C Hamano <gitster@pobox.com> <gitster@pobox.com>
+Junio C Hamano <gitster@pobox.com> <junio@pobox.com>
+Junio C Hamano <gitster@pobox.com> <junio@twinsun.com>
+Junio C Hamano <gitster@pobox.com> <junkio@twinsun.com>
+Junio C Hamano <gitster@pobox.com> <junio@hera.kernel.org>
+Junio C Hamano <gitster@pobox.com> <junio@kernel.org>
+Junio C Hamano <gitster@pobox.com> <junkio@cox.net>
 Karl Hasselström <kha@treskal.com>
+Kevin Leung <kevinlsk@gmail.com>
 Kent Engstrom <kent@lysator.liu.se>
 Lars Doelle <lars.doelle@on-line ! de>
 Lars Doelle <lars.doelle@on-line.de>
 Li Hong <leehong@pku.edu.cn>
+Linus Torvalds <torvalds@linux-foundation.org> <torvalds@woody.linux-foundation.org>
+Linus Torvalds <torvalds@linux-foundation.org> <torvalds@osdl.org>
+Linus Torvalds <torvalds@linux-foundation.org> <torvalds@g5.osdl.org>
+Linus Torvalds <torvalds@linux-foundation.org> <torvalds@evo.osdl.org>
+Linus Torvalds <torvalds@linux-foundation.org> <torvalds@ppc970.osdl.org>
+Linus Torvalds <torvalds@linux-foundation.org> <torvalds@ppc970.osdl.org.(none)>
 Lukas Sandström <lukass@etek.chalmers.se>
-Martin Langhoff <martin@laptop.org>
+Marc-André Lureau <marcandre.lureau@gmail.com>
+Mark Rada <marada@uwaterloo.ca>
+Martin Langhoff <martin@laptop.org> <martin@catalyst.net.nz>
+Martin von Zweigbergk <martinvonz@gmail.com> <martin.von.zweigbergk@gmail.com>
 Michael Coleman <tutufan@gmail.com>
 Michael J Gruber <git@drmicha.warpmail.net> <michaeljgruber+gmane@fastmail.fm>
 Michael W. Olson <mwolson@gnu.org>
@@ -45,16 +72,23 @@ Nanako Shiraishi <nanako3@bluebottle.com>
 Nanako Shiraishi <nanako3@lavabit.com>
 Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
 <nico@fluxnic.net> <nico@cam.org>
+Peter Krefting <peter@softwolves.pp.se> <peter@svarten.intern.softwolves.pp.se>
+Peter Krefting <peter@softwolves.pp.se> <peter@softwolves.pp.se>
+Petr Baudis <pasky@ucw.cz> <pasky@suse.cz>
 Philippe Bruhat <book@cpan.org>
+Ralf Thielow <ralf.thielow@gmail.com> <ralf.thielow@googlemail.com>
 Ramsay Allan Jones <ramsay@ramsay1.demon.co.uk>
 René Scharfe <rene.scharfe@lsrfire.ath.cx>
 Robert Fitzsimons <robfitz@273k.net>
+Robert Zeh <robert.a.zeh@gmail.com>
 Sam Vilain <sam@vilain.net>
 Santi Béjar <sbejar@gmail.com>
 Sean Estabrooks <seanlkml@sympatico.ca>
 Shawn O. Pearce <spearce@spearce.org>
 Steven Grimm <koreth@midwinter.com>
+Tay Ray Chuan <rctay89@gmail.com>
 Theodore Ts'o <tytso@mit.edu>
+Thomas Rast <trast@inf.ethz.ch> <trast@student.ethz.ch>
 Tony Luck <tony.luck@intel.com>
 Uwe Kleine-König <Uwe_Zeisberger@digi.com>
 Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com>
index d62aebd..2c8b2d6 100644 (file)
@@ -9,4 +9,5 @@ gitman.info
 howto-index.txt
 doc.dep
 cmds-*.txt
+mergetools-*.txt
 manpage-base-url.xsl
index 4830086..559d5f9 100644 (file)
@@ -1,5 +1,5 @@
 Like other projects, we also have some guidelines to keep to the
-code.  For git in general, three rough rules are:
+code.  For Git in general, three rough rules are:
 
  - Most importantly, we never say "It's in POSIX; we'll happily
    ignore your needs should your system not conform to it."
@@ -18,11 +18,12 @@ code.  For git in general, three rough rules are:
    judgement call, the decision based more on real world
    constraints people face than what the paper standard says.
 
+Make your code readable and sensible, and don't try to be clever.
 
 As for more concrete guidelines, just imitate the existing code
 (this is a good guideline, no matter which project you are
 contributing to). It is always preferable to match the _local_
-convention. New code added to git suite is expected to match
+convention. New code added to Git suite is expected to match
 the overall style of existing code. Modifications to existing
 code is expected to match the style the surrounding code already
 uses (even if it doesn't match the overall style of existing code).
@@ -35,10 +36,22 @@ For shell scripts specifically (not exhaustive):
 
  - Case arms are indented at the same depth as case and esac lines.
 
+ - Redirection operators should be written with space before, but no
+   space after them.  In other words, write 'echo test >"$file"'
+   instead of 'echo test> $file' or 'echo test > $file'.  Note that
+   even though it is not required by POSIX to double-quote the
+   redirection target in a variable (as shown above), our code does so
+   because some versions of bash issue a warning without the quotes.
+
  - We prefer $( ... ) for command substitution; unlike ``, it
    properly nests.  It should have been the way Bourne spelled
    it from day one, but unfortunately isn't.
 
+ - If you want to find out if a command is available on the user's
+   $PATH, you should use 'type <command>', instead of 'which <command>'.
+   The output of 'which' is not machine parseable and its exit code
+   is not reliable across platforms.
+
  - We use POSIX compliant parameter substitutions and avoid bashisms;
    namely:
 
@@ -64,11 +77,19 @@ For shell scripts specifically (not exhaustive):
 
  - We do not use Process Substitution <(list) or >(list).
 
+ - Do not write control structures on a single line with semicolon.
+   "then" should be on the next line for if statements, and "do"
+   should be on the next line for "while" and "for".
+
  - We prefer "test" over "[ ... ]".
 
  - We do not write the noiseword "function" in front of shell
    functions.
 
+ - We prefer a space between the function name and the parentheses. The
+   opening "{" should also be on the same line.
+   E.g.: my_function () {
+
  - As to use of grep, stick to a subset of BRE (namely, no \{m,n\},
    [::], [==], nor [..]) for portability.
 
@@ -92,6 +113,14 @@ For C programs:
 
  - We try to keep to at most 80 characters per line.
 
+ - We try to support a wide range of C compilers to compile Git with,
+   including old ones. That means that you should not use C99
+   initializers, even if a lot of compilers grok it.
+
+ - Variables have to be declared at the beginning of the block.
+
+ - NULL pointers shall be written as NULL, not as 0.
+
  - When declaring pointers, the star sides with the variable
    name, i.e. "char *string", not "char* string" or
    "char * string".  This makes it easier to understand code
@@ -136,14 +165,14 @@ For C programs:
 
  - If you are planning a new command, consider writing it in shell
    or perl first, so that changes in semantics can be easily
-   changed and discussed.  Many git commands started out like
+   changed and discussed.  Many Git commands started out like
    that, and a few are still scripts.
 
- - Avoid introducing a new dependency into git. This means you
+ - Avoid introducing a new dependency into Git. This means you
    usually should stay away from scripting languages not already
-   used in the git core command set (unless your command is clearly
+   used in the Git core command set (unless your command is clearly
    separate from it, such as an importer to convert random-scm-X
-   repositories to git).
+   repositories to Git).
 
  - When we pass <string, length> pair to functions, we should try to
    pass them in that order.
@@ -151,8 +180,68 @@ For C programs:
  - Use Git's gettext wrappers to make the user interface
    translatable. See "Marking strings for translation" in po/README.
 
+For Perl programs:
+
+ - Most of the C guidelines above apply.
+
+ - We try to support Perl 5.8 and later ("use Perl 5.008").
+
+ - use strict and use warnings are strongly preferred.
+
+ - Don't overuse statement modifiers unless using them makes the
+   result easier to follow.
+
+       ... do something ...
+       do_this() unless (condition);
+        ... do something else ...
+
+   is more readable than:
+
+       ... do something ...
+       unless (condition) {
+               do_this();
+       }
+        ... do something else ...
+
+   *only* when the condition is so rare that do_this() will be almost
+   always called.
+
+ - We try to avoid assignments inside "if ()" conditions.
+
+ - Learn and use Git.pm if you need that functionality.
+
+ - For Emacs, it's useful to put the following in
+   GIT_CHECKOUT/.dir-locals.el, assuming you use cperl-mode:
+
+    ;; note the first part is useful for C editing, too
+    ((nil . ((indent-tabs-mode . t)
+                  (tab-width . 8)
+                  (fill-column . 80)))
+     (cperl-mode . ((cperl-indent-level . 8)
+                    (cperl-extra-newline-before-brace . nil)
+                    (cperl-merge-trailing-else . t))))
+
+For Python scripts:
+
+ - We follow PEP-8 (http://www.python.org/dev/peps/pep-0008/).
+
+ - As a minimum, we aim to be compatible with Python 2.6 and 2.7.
+
+ - Where required libraries do not restrict us to Python 2, we try to
+   also be compatible with Python 3.1 and later.
+
+ - When you must differentiate between Unicode literals and byte string
+   literals, it is OK to use the 'b' prefix.  Even though the Python
+   documentation for version 2.6 does not mention this prefix, it has
+   been supported since version 2.6.0.
+
 Writing Documentation:
 
+ Most (if not all) of the documentation pages are written in the
+ AsciiDoc format in *.txt files (e.g. Documentation/git.txt), and
+ processed into HTML and manpages (e.g. git.html and git.1 in the
+ same directory).
+
  Every user-visible change should be reflected in the documentation.
  The same general rule as for code applies -- imitate the existing
  conventions.  A few commented examples follow to provide reference
@@ -202,3 +291,8 @@ Writing Documentation:
    valid usage.  "*" has its own pair of brackets, because it can
    (optionally) be specified only when one or more of the letters is
    also provided.
+
+  A note on notation:
+   Use 'git' (all lowercase) when talking about commands i.e. something
+   the user would type into a shell and use 'Git' (uppercase first letter)
+   when talking about the version control system and its properties.
index d40e211..0cfdc36 100644 (file)
@@ -1,19 +1,41 @@
-MAN1_TXT= \
-       $(filter-out $(addsuffix .txt, $(ARTICLES) $(SP_ARTICLES)), \
-               $(wildcard git-*.txt)) \
-       gitk.txt gitweb.txt git.txt
-MAN5_TXT=gitattributes.txt gitignore.txt gitmodules.txt githooks.txt \
-       gitrepository-layout.txt gitweb.conf.txt
-MAN7_TXT=gitcli.txt gittutorial.txt gittutorial-2.txt \
-       gitcvs-migration.txt gitcore-tutorial.txt gitglossary.txt \
-       gitdiffcore.txt gitnamespaces.txt gitrevisions.txt gitworkflows.txt
+# Guard against environment variables
+MAN1_TXT =
+MAN5_TXT =
+MAN7_TXT =
+
+MAN1_TXT += $(filter-out \
+               $(addsuffix .txt, $(ARTICLES) $(SP_ARTICLES)), \
+               $(wildcard git-*.txt))
+MAN1_TXT += git.txt
+MAN1_TXT += gitk.txt
+MAN1_TXT += gitremote-helpers.txt
+MAN1_TXT += gitweb.txt
+
+MAN5_TXT += gitattributes.txt
+MAN5_TXT += githooks.txt
+MAN5_TXT += gitignore.txt
+MAN5_TXT += gitmodules.txt
+MAN5_TXT += gitrepository-layout.txt
+MAN5_TXT += gitweb.conf.txt
+
+MAN7_TXT += gitcli.txt
+MAN7_TXT += gitcore-tutorial.txt
 MAN7_TXT += gitcredentials.txt
+MAN7_TXT += gitcvs-migration.txt
+MAN7_TXT += gitdiffcore.txt
+MAN7_TXT += gitglossary.txt
+MAN7_TXT += gitnamespaces.txt
+MAN7_TXT += gitrevisions.txt
+MAN7_TXT += gittutorial-2.txt
+MAN7_TXT += gittutorial.txt
+MAN7_TXT += gitworkflows.txt
 
 MAN_TXT = $(MAN1_TXT) $(MAN5_TXT) $(MAN7_TXT)
-MAN_XML=$(patsubst %.txt,%.xml,$(MAN_TXT))
-MAN_HTML=$(patsubst %.txt,%.html,$(MAN_TXT))
+MAN_XML = $(patsubst %.txt,%.xml,$(MAN_TXT))
+MAN_HTML = $(patsubst %.txt,%.html,$(MAN_TXT))
 
-DOC_HTML=$(MAN_HTML)
+OBSOLETE_HTML = git-remote-helpers.html
+DOC_HTML = $(MAN_HTML) $(OBSOLETE_HTML)
 
 ARTICLES = howto-index
 ARTICLES += everyday
@@ -21,43 +43,66 @@ ARTICLES += git-tools
 ARTICLES += git-bisect-lk2009
 # with their own formatting rules.
 SP_ARTICLES = user-manual
+SP_ARTICLES += howto/new-command
 SP_ARTICLES += howto/revert-branch-rebase
 SP_ARTICLES += howto/using-merge-subtree
 SP_ARTICLES += howto/using-signed-tag-in-pull-request
+SP_ARTICLES += howto/use-git-daemon
+SP_ARTICLES += howto/update-hook-example
+SP_ARTICLES += howto/setup-git-server-over-http
+SP_ARTICLES += howto/separating-topic-branches
+SP_ARTICLES += howto/revert-a-faulty-merge
+SP_ARTICLES += howto/recover-corrupted-blob-object
+SP_ARTICLES += howto/rebuild-from-update-hook
+SP_ARTICLES += howto/rebase-from-internal-branch
+SP_ARTICLES += howto/maintain-git
 API_DOCS = $(patsubst %.txt,%,$(filter-out technical/api-index-skel.txt technical/api-index.txt, $(wildcard technical/api-*.txt)))
 SP_ARTICLES += $(API_DOCS)
+
+TECH_DOCS = technical/index-format
+TECH_DOCS += technical/pack-format
+TECH_DOCS += technical/pack-heuristics
+TECH_DOCS += technical/pack-protocol
+TECH_DOCS += technical/protocol-capabilities
+TECH_DOCS += technical/protocol-common
+TECH_DOCS += technical/racy-git
+TECH_DOCS += technical/send-pack-pipeline
+TECH_DOCS += technical/shallow
+TECH_DOCS += technical/trivial-merge
+SP_ARTICLES += $(TECH_DOCS)
 SP_ARTICLES += technical/api-index
 
 DOC_HTML += $(patsubst %,%.html,$(ARTICLES) $(SP_ARTICLES))
 
-DOC_MAN1=$(patsubst %.txt,%.1,$(MAN1_TXT))
-DOC_MAN5=$(patsubst %.txt,%.5,$(MAN5_TXT))
-DOC_MAN7=$(patsubst %.txt,%.7,$(MAN7_TXT))
-
-prefix?=$(HOME)
-bindir?=$(prefix)/bin
-htmldir?=$(prefix)/share/doc/git-doc
-pdfdir?=$(prefix)/share/doc/git-doc
-mandir?=$(prefix)/share/man
-man1dir=$(mandir)/man1
-man5dir=$(mandir)/man5
-man7dir=$(mandir)/man7
-# DESTDIR=
-
-ASCIIDOC=asciidoc
+DOC_MAN1 = $(patsubst %.txt,%.1,$(MAN1_TXT))
+DOC_MAN5 = $(patsubst %.txt,%.5,$(MAN5_TXT))
+DOC_MAN7 = $(patsubst %.txt,%.7,$(MAN7_TXT))
+
+prefix ?= $(HOME)
+bindir ?= $(prefix)/bin
+htmldir ?= $(prefix)/share/doc/git-doc
+infodir ?= $(prefix)/share/info
+pdfdir ?= $(prefix)/share/doc/git-doc
+mandir ?= $(prefix)/share/man
+man1dir = $(mandir)/man1
+man5dir = $(mandir)/man5
+man7dir = $(mandir)/man7
+# DESTDIR =
+
+ASCIIDOC = asciidoc
 ASCIIDOC_EXTRA =
 MANPAGE_XSL = manpage-normal.xsl
+XMLTO = xmlto
 XMLTO_EXTRA =
-INSTALL?=install
+INSTALL ?= install
 RM ?= rm -f
 MAN_REPO = ../../git-manpages
 HTML_REPO = ../../git-htmldocs
 
-infodir?=$(prefix)/share/info
-MAKEINFO=makeinfo
-INSTALL_INFO=install-info
-DOCBOOK2X_TEXI=docbook2x-texi
-DBLATEX=dblatex
+MAKEINFO = makeinfo
+INSTALL_INFO = install-info
+DOCBOOK2X_TEXI = docbook2x-texi
+DBLATEX = dblatex
 ifndef PERL_PATH
        PERL_PATH = /usr/bin/perl
 endif
@@ -65,12 +110,6 @@ endif
 -include ../config.mak.autogen
 -include ../config.mak
 
-#
-# For asciidoc ...
-#      -7.1.2, set ASCIIDOC7
-#      8.0-,   no extra settings are needed
-#
-
 #
 # For docbook-xsl ...
 #      -1.68.1,        no extra settings are needed?
@@ -81,9 +120,6 @@ endif
 #      1.73.0-,        no extra settings are needed
 #
 
-ifndef ASCIIDOC7
-ASCIIDOC_EXTRA += -a asciidoc7compatible -a no-inline-literal
-endif
 ifdef DOCBOOK_XSL_172
 ASCIIDOC_EXTRA += -a git-asciidoc-no-roff
 MANPAGE_XSL = manpage-1.72.xsl
@@ -124,14 +160,15 @@ SHELL_PATH ?= $(SHELL)
 # Shell quote;
 SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
 
-#
-# Please note that there is a minor bug in asciidoc.
-# The version after 6.0.3 _will_ include the patch found here:
-#   http://marc.theaimsgroup.com/?l=git&m=111558757202243&w=2
-#
-# Until that version is released you may have to apply the patch
-# yourself - yes, all 6 characters of it!
-#
+ifdef DEFAULT_PAGER
+DEFAULT_PAGER_SQ = $(subst ','\'',$(DEFAULT_PAGER))
+ASCIIDOC_EXTRA += -a 'git-default-pager=$(DEFAULT_PAGER_SQ)'
+endif
+
+ifdef DEFAULT_EDITOR
+DEFAULT_EDITOR_SQ = $(subst ','\'',$(DEFAULT_EDITOR))
+ASCIIDOC_EXTRA += -a 'git-default-editor=$(DEFAULT_EDITOR_SQ)'
+endif
 
 QUIET_SUBDIR0  = +$(MAKE) -C # space to separate -C and subdir
 QUIET_SUBDIR1  =
@@ -163,8 +200,6 @@ all: html man
 
 html: $(DOC_HTML)
 
-$(DOC_HTML) $(DOC_MAN1) $(DOC_MAN5) $(DOC_MAN7): asciidoc.conf
-
 man: man1 man5 man7
 man1: $(DOC_MAN1)
 man5: $(DOC_MAN5)
@@ -209,7 +244,11 @@ install-html: html
 #
 # Determine "include::" file references in asciidoc files.
 #
-doc.dep : $(wildcard *.txt) build-docdep.perl
+docdep_prereqs = \
+       mergetools-list.made $(mergetools_txt) \
+       cmd-list.made $(cmds_txt)
+
+doc.dep : $(docdep_prereqs) $(wildcard *.txt) build-docdep.perl
        $(QUIET_GEN)$(RM) $@+ $@ && \
        $(PERL_PATH) ./build-docdep.perl >$@+ $(QUIET_STDERR) && \
        mv $@+ $@
@@ -233,29 +272,49 @@ cmd-list.made: cmd-list.perl ../command-list.txt $(MAN1_TXT)
        $(PERL_PATH) ./cmd-list.perl ../command-list.txt $(QUIET_STDERR) && \
        date >$@
 
+mergetools_txt = mergetools-diff.txt mergetools-merge.txt
+
+$(mergetools_txt): mergetools-list.made
+
+mergetools-list.made: ../git-mergetool--lib.sh $(wildcard ../mergetools/*)
+       $(QUIET_GEN)$(RM) $@ && \
+       $(SHELL_PATH) -c 'MERGE_TOOLS_DIR=../mergetools && \
+               . ../git-mergetool--lib.sh && \
+               show_tool_names can_diff "* " || :' >mergetools-diff.txt && \
+       $(SHELL_PATH) -c 'MERGE_TOOLS_DIR=../mergetools && \
+               . ../git-mergetool--lib.sh && \
+               show_tool_names can_merge "* " || :' >mergetools-merge.txt && \
+       date >$@
+
 clean:
        $(RM) *.xml *.xml+ *.html *.html+ *.1 *.5 *.7
        $(RM) *.texi *.texi+ *.texi++ git.info gitman.info
        $(RM) *.pdf
        $(RM) howto-index.txt howto/*.html doc.dep
-       $(RM) technical/api-*.html technical/api-index.txt
-       $(RM) $(cmds_txt) *.made
+       $(RM) technical/*.html technical/api-index.txt
+       $(RM) $(cmds_txt) $(mergetools_txt) *.made
        $(RM) manpage-base-url.xsl
 
-$(MAN_HTML): %.html : %.txt
+$(MAN_HTML): %.html : %.txt asciidoc.conf
        $(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
        $(ASCIIDOC) -b xhtml11 -d manpage -f asciidoc.conf \
                $(ASCIIDOC_EXTRA) -agit_version=$(GIT_VERSION) -o $@+ $< && \
        mv $@+ $@
 
+$(OBSOLETE_HTML): %.html : %.txto asciidoc.conf
+       $(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
+       $(ASCIIDOC) -b xhtml11 -f asciidoc.conf \
+               $(ASCIIDOC_EXTRA) -agit_version=$(GIT_VERSION) -o $@+ $< && \
+       mv $@+ $@
+
 manpage-base-url.xsl: manpage-base-url.xsl.in
        sed "s|@@MAN_BASE_URL@@|$(MAN_BASE_URL)|" $< > $@
 
 %.1 %.5 %.7 : %.xml manpage-base-url.xsl
        $(QUIET_XMLTO)$(RM) $@ && \
-       xmlto -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $<
+       $(XMLTO) -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $<
 
-%.xml : %.txt
+%.xml : %.txt asciidoc.conf
        $(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
        $(ASCIIDOC) -b docbook -d manpage -f asciidoc.conf \
                $(ASCIIDOC_EXTRA) -agit_version=$(GIT_VERSION) -o $@+ $< && \
@@ -270,7 +329,8 @@ technical/api-index.txt: technical/api-index-skel.txt \
        technical/api-index.sh $(patsubst %,%.txt,$(API_DOCS))
        $(QUIET_GEN)cd technical && '$(SHELL_PATH_SQ)' ./api-index.sh
 
-$(patsubst %,%.html,$(API_DOCS) technical/api-index): %.html : %.txt
+technical/%.html: ASCIIDOC_EXTRA += -a git-relative-html-prefix=../
+$(patsubst %,%.html,$(API_DOCS) technical/api-index $(TECH_DOCS)): %.html : %.txt asciidoc.conf
        $(QUIET_ASCIIDOC)$(ASCIIDOC) -b xhtml11 -f asciidoc.conf \
                $(ASCIIDOC_EXTRA) -agit_version=$(GIT_VERSION) $*.txt
 
@@ -315,7 +375,7 @@ $(patsubst %.txt,%.texi,$(MAN_TXT)): %.texi : %.xml
 
 howto-index.txt: howto-index.sh $(wildcard howto/*.txt)
        $(QUIET_GEN)$(RM) $@+ $@ && \
-       '$(SHELL_PATH_SQ)' ./howto-index.sh $(wildcard howto/*.txt) >$@+ && \
+       '$(SHELL_PATH_SQ)' ./howto-index.sh $(sort $(wildcard howto/*.txt)) >$@+ && \
        mv $@+ $@
 
 $(patsubst %,%.html,$(ARTICLES)) : %.html : %.txt
@@ -323,6 +383,7 @@ $(patsubst %,%.html,$(ARTICLES)) : %.html : %.txt
 
 WEBDOC_DEST = /pub/software/scm/git/docs
 
+howto/%.html: ASCIIDOC_EXTRA += -a git-relative-html-prefix=../
 $(patsubst %.txt,%.html,$(wildcard howto/*.txt)): %.html : %.txt
        $(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
        sed -e '1,/^$$/d' $< | $(ASCIIDOC) $(ASCIIDOC_EXTRA) -b xhtml11 - >$@+ && \
@@ -331,8 +392,8 @@ $(patsubst %.txt,%.html,$(wildcard howto/*.txt)): %.html : %.txt
 install-webdoc : html
        '$(SHELL_PATH_SQ)' ./install-webdoc.sh $(WEBDOC_DEST)
 
-# You must have a clone of git-htmldocs and git-manpages repositories
-# next to the git repository itself for the following to work.
+# You must have a clone of 'git-htmldocs' and 'git-manpages' repositories
+# next to the 'git' repository itself for the following to work.
 
 quick-install: quick-install-man
 
@@ -350,4 +411,7 @@ require-htmlrepo::
 quick-install-html: require-htmlrepo
        '$(SHELL_PATH_SQ)' ./install-doc-quick.sh $(HTML_REPO) $(DESTDIR)$(htmldir)
 
+print-man1:
+       @for i in $(MAN1_TXT); do echo $$i; done
+
 .PHONY: FORCE
index ebf20e2..d41984d 100644 (file)
@@ -45,9 +45,3 @@ Fixes since v1.5.2
   - git-fastimport --import-marks was broken; fixed.
 
   - A lot of documentation updates, clarifications and fixes.
-
---
-exec >/var/tmp/1
-O=v1.5.2-65-g996e2d6
-echo O=`git describe refs/heads/maint`
-git shortlog --no-merges $O..refs/heads/maint
index e1e24b3..7d8fb85 100644 (file)
@@ -79,9 +79,3 @@ Fixes since v1.6.0.1
   packfile.
 
 Also contains many documentation updates.
-
---
-exec >/var/tmp/1
-O=v1.6.0.1-78-g3632cfc
-echo O=$(git describe maint)
-git shortlog --no-merges $O..maint
index 6f0bde1..cd08d81 100644 (file)
@@ -26,7 +26,3 @@ Fixes since v1.6.1.2
 * RPM binary package installed the html manpages in a wrong place.
 
 Also includes minor documentation fixes and updates.
-
-
---
-git shortlog --no-merges v1.6.1.2-33-gc789350..
index 0ce6316..ccbad79 100644 (file)
@@ -39,6 +39,3 @@ Fixes since v1.6.1.3
   This fix was first merged to 1.6.2.3.
 
 Also includes minor documentation fixes and updates.
-
---
-git shortlog --no-merges v1.6.1.3..
index adb7cca..7b152a6 100644 (file)
@@ -278,9 +278,3 @@ release, unless otherwise noted.
 
 * "gitweb" did not mark non-ASCII characters imported from external HTML fragments
   correctly.
-
---
-exec >/var/tmp/1
-O=v1.6.1-rc3-74-gf66bc5f
-echo O=$(git describe master)
-git shortlog --no-merges $O..master ^maint
diff --git a/Documentation/RelNotes/1.7.10.1.txt b/Documentation/RelNotes/1.7.10.1.txt
new file mode 100644 (file)
index 0000000..806a965
--- /dev/null
@@ -0,0 +1,78 @@
+Git v1.7.10.1 Release Notes
+===========================
+
+Additions since v1.7.10
+-----------------------
+
+Localization message files for Danish and German have been added.
+
+
+Fixes since v1.7.10
+-------------------
+
+ * "git add -p" is not designed to deal with unmerged paths but did
+   not exclude them and tried to apply funny patches only to fail.
+
+ * "git blame" started missing quite a few changes from the origin
+   since we stopped using the diff minimalization by default in v1.7.2
+   era.
+
+ * When PATH contains an unreadable directory, alias expansion code
+   did not kick in, and failed with an error that said "git-subcmd"
+   was not found.
+
+ * "git clean -d -f" (not "-d -f -f") is supposed to protect nested
+   working trees of independent git repositories that exist in the
+   current project working tree from getting removed, but the
+   protection applied only to such working trees that are at the
+   top-level of the current project by mistake.
+
+ * "git commit --author=$name" did not tell the name that was being
+   recorded in the resulting commit to hooks, even though it does do
+   so when the end user overrode the authorship via the
+   "GIT_AUTHOR_NAME" environment variable.
+
+ * When "git commit --template F" errors out because the user did not
+   touch the message, it claimed that it aborts due to "empty
+   message", which was utterly wrong.
+
+ * The regexp configured with diff.wordregex was incorrectly reused
+   across files.
+
+ * An age-old corner case bug in combine diff (only triggered with -U0
+   and the hunk at the beginning of the file needs to be shown) has
+   been fixed.
+
+ * Rename detection logic used to match two empty files as renames
+   during merge-recursive, leading to unnatural mismerges.
+
+ * The parser in "fast-import" did not diagnose ":9" style references
+   that is not followed by required SP/LF as an error.
+
+ * When "git fetch" encounters repositories with too many references,
+   the command line of "fetch-pack" that is run by a helper
+   e.g. remote-curl, may fail to hold all of them. Now such an
+   internal invocation can feed the references through the standard
+   input of "fetch-pack".
+
+ * "git fetch" that recurses into submodules on demand did not check
+   if it needs to go into submodules when non branches (most notably,
+   tags) are fetched.
+
+ * "log -p --graph" used with "--stat" had a few formatting error.
+
+ * Running "notes merge --commit" failed to perform correctly when run
+   from any directory inside $GIT_DIR/.  When "notes merge" stops with
+   conflicts, $GIT_DIR/NOTES_MERGE_WORKTREE is the place a user edits
+   to resolve it.
+
+ * The 'push to upstream' implementation was broken in some corner
+   cases. "git push $there" without refspec, when the current branch
+   is set to push to a remote different from $there, used to push to
+   $there using the upstream information to a remote unreleated to
+   $there.
+
+ * Giving "--continue" to a conflicted "rebase -i" session skipped a
+   commit that only results in changes to submodules.
+
+Also contains minor fixes and documentation updates.
diff --git a/Documentation/RelNotes/1.7.10.2.txt b/Documentation/RelNotes/1.7.10.2.txt
new file mode 100644 (file)
index 0000000..7a7e9d6
--- /dev/null
@@ -0,0 +1,85 @@
+Git v1.7.10.2 Release Notes
+===========================
+
+Fixes since v1.7.10.1
+---------------------
+
+ * The test scaffolding for git-daemon was flaky.
+
+ * The test scaffolding for fast-import was flaky.
+
+ * The filesystem boundary was not correctly reported when .git directory
+   discovery stopped at a mount point.
+
+ * HTTP transport that requires authentication did not work correctly when
+   multiple connections are used simultaneously.
+
+ * Minor memory leak during unpack_trees (hence "merge" and "checkout"
+   to check out another branch) has been plugged.
+
+ * In the older days, the header "Conflicts:" in "cherry-pick" and "merge"
+   was separated by a blank line from the list of paths that follow for
+   readability, but when "merge" was rewritten in C, we lost it by
+   mistake. Remove the newline from "cherry-pick" to make them match
+   again.
+
+ * The command line parser choked "git cherry-pick $name" when $name can
+   be both revision name and a pathname, even though $name can never be a
+   path in the context of the command.
+
+ * The "include.path" facility in the configuration mechanism added in
+   1.7.10 forgot to interpret "~/path" and "~user/path" as it should.
+
+ * "git config --rename-section" to rename an existing section into a
+   bogus one did not check the new name.
+
+ * The "diff --no-index" codepath used limited-length buffers, risking
+   pathnames getting truncated.  Update it to use the strbuf API.
+
+ * The report from "git fetch" said "new branch" even for a non branch
+   ref.
+
+ * The http-backend (the server side of the smart http transfer) used
+   to overwrite GIT_COMMITTER_NAME and GIT_COMMITTER_EMAIL with the
+   value obtained from REMOTE_USER unconditionally, making it
+   impossible for the server side site-specific customization to use
+   different identity sources to affect the names logged. It now uses
+   REMOTE_USER only as a fallback value.
+
+ * "log --graph" was not very friendly with "--stat" option and its
+   output had line breaks at wrong places.
+
+ * Octopus merge strategy did not reduce heads that are recorded in the
+   final commit correctly.
+
+ * "git push" over smart-http lost progress output a few releases ago;
+   this release resurrects it.
+
+ * The error and advice messages given by "git push" when it fails due
+   to non-ff were not very helpful to new users; it has been broken
+   into three cases, and each is given a separate advice message.
+
+ * The insn sheet given by "rebase -i" did not make it clear that the
+   insn lines can be re-ordered to affect the order of the commits in
+   the resulting history.
+
+ * "git repack" used to write out unreachable objects as loose objects
+   when repacking, even if such loose objects will immediately pruned
+   due to its age.
+
+ * A contrib script "rerere-train" did not work out of the box unless
+   user futzed with her $PATH.
+
+ * "git rev-parse --show-prefix" used to emit nothing when run at the
+   top-level of the working tree, but now it gives a blank line.
+
+ * The i18n of error message "git stash save" was not properly done.
+
+ * "git submodule" used a sed script that some platforms mishandled.
+
+ * When using a Perl script on a system where "perl" found on user's
+   $PATH could be ancient or otherwise broken, we allow builders to
+   specify the path to a good copy of Perl with $PERL_PATH.  The
+   gitweb test forgot to use that Perl when running its test.
+
+Also contains minor fixes and documentation updates.
diff --git a/Documentation/RelNotes/1.7.10.3.txt b/Documentation/RelNotes/1.7.10.3.txt
new file mode 100644 (file)
index 0000000..703fbf1
--- /dev/null
@@ -0,0 +1,43 @@
+Git v1.7.10.3 Release Notes
+===========================
+
+Fixes since v1.7.10.2
+---------------------
+
+ * The message file for German translation has been updated a bit.
+
+ * Running "git checkout" on an unborn branch used to corrupt HEAD.
+
+ * When checking out another commit from an already detached state, we
+   used to report all commits that are not reachable from any of the
+   refs as lossage, but some of them might be reachable from the new
+   HEAD, and there is no need to warn about them.
+
+ * Some time ago, "git clone" lost the progress output for its
+   "checkout" phase; when run without any "--quiet" option, it should
+   give progress to the lengthy operation.
+
+ * The directory path used in "git diff --no-index", when it recurses
+   down, was broken with a recent update after v1.7.10.1 release.
+
+ * "log -z --pretty=tformat:..." did not terminate each record with
+   NUL.  The fix is not entirely correct when the output also asks for
+   --patch and/or --stat, though.
+
+ * The DWIM behaviour for "log --pretty=format:%gd -g" was somewhat
+   broken and gave undue precedence to configured log.date, causing
+   "git stash list" to show "stash@{time stamp string}".
+
+ * "git status --porcelain" ignored "--branch" option by mistake.  The
+   output for "git status --branch -z" was also incorrect and did not
+   terminate the record for the current branch name with NUL as asked.
+
+ * When a submodule repository uses alternate object store mechanism,
+   some commands that were started from the superproject did not
+   notice it and failed with "No such object" errors.  The subcommands
+   of "git submodule" command that recursed into the submodule in a
+   separate process were OK; only the ones that cheated and peeked
+   directly into the submodule's repository from the primary process
+   were affected.
+
+Also contains minor fixes and documentation updates.
diff --git a/Documentation/RelNotes/1.7.10.4.txt b/Documentation/RelNotes/1.7.10.4.txt
new file mode 100644 (file)
index 0000000..326670d
--- /dev/null
@@ -0,0 +1,29 @@
+Git v1.7.10.4 Release Notes
+===========================
+
+Fixes since v1.7.10.3
+---------------------
+
+ * The message file for Swedish translation has been updated a bit.
+
+ * A name taken from mailmap was copied into an internal buffer
+   incorrectly and could overun the buffer if it is too long.
+
+ * A malformed commit object that has a header line chomped in the
+   middle could kill git with a NULL pointer dereference.
+
+ * An author/committer name that is a single character was mishandled
+   as an invalid name by mistake.
+
+ * The progress indicator for a large "git checkout" was sent to
+   stderr even if it is not a terminal.
+
+ * "git grep -e '$pattern'", unlike the case where the patterns are
+   read from a file, did not treat individual lines in the given
+   pattern argument as separate regular expressions as it should.
+
+ * When "git rebase" was given a bad commit to replay the history on,
+   its error message did not correctly give the command line argument
+   it had trouble parsing.
+
+Also contains minor fixes and documentation updates.
diff --git a/Documentation/RelNotes/1.7.10.5.txt b/Documentation/RelNotes/1.7.10.5.txt
new file mode 100644 (file)
index 0000000..4db1770
--- /dev/null
@@ -0,0 +1,12 @@
+Git v1.7.10.5 Release Notes
+===========================
+
+Fixes since v1.7.10.4
+---------------------
+
+ * "git fast-export" did not give a readable error message when the
+   same mark erroneously appeared twice in the --import-marks input.
+
+ * "git rebase -p" used to pay attention to rebase.autosquash which
+    was wrong.  "git rebase -p -i" should, but "git rebase -p" by
+    itself should not.
diff --git a/Documentation/RelNotes/1.7.10.txt b/Documentation/RelNotes/1.7.10.txt
new file mode 100644 (file)
index 0000000..58100bf
--- /dev/null
@@ -0,0 +1,219 @@
+Git v1.7.10 Release Notes
+=========================
+
+Compatibility Notes
+-------------------
+
+ * From this release on, the "git merge" command in an interactive
+   session will start an editor when it automatically resolves the
+   merge for the user to explain the resulting commit, just like the
+   "git commit" command does when it wasn't given a commit message.
+
+   If you have a script that runs "git merge" and keeps its standard
+   input and output attached to the user's terminal, and if you do not
+   want the user to explain the resulting merge commits, you can
+   export GIT_MERGE_AUTOEDIT environment variable set to "no", like
+   this:
+
+       #!/bin/sh
+       GIT_MERGE_AUTOEDIT=no
+       export GIT_MERGE_AUTOEDIT
+
+   to disable this behavior (if you want your users to explain their
+   merge commits, you do not have to do anything).  Alternatively, you
+   can give the "--no-edit" option to individual invocations of the
+   "git merge" command if you know everybody who uses your script has
+   Git v1.7.8 or newer.
+
+ * The "--binary/-b" options to "git am" have been a no-op for quite a
+   while and were deprecated in mid 2008 (v1.6.0).  When you give these
+   options to "git am", it will now warn and ask you not to use them.
+
+ * When you do not tell which branches and tags to push to the "git
+   push" command in any way, the command used "matching refs" rule to
+   update remote branches and tags with branches and tags with the
+   same name you locally have.  In future versions of Git, this will
+   change to push out only your current branch according to either the
+   "upstream" or the "current" rule.  Although "upstream" may be more
+   powerful once the user understands Git better, the semantics
+   "current" gives is simpler and easier to understand for beginners
+   and may be a safer and better default option.  We haven't decided
+   yet which one to switch to.
+
+
+Updates since v1.7.9
+--------------------
+
+UI, Workflows & Features
+
+ * various "gitk" updates.
+   - show the path to the top level directory in the window title
+   - update preference edit dialog
+   - display file list correctly when directories are given on command line
+   - make "git-describe" output in the log message into a clickable link
+   - avoid matching the UNIX timestamp part when searching all fields
+   - give preference to symbolic font names like sans & monospace
+   - allow comparing two commits using a mark
+   - "gitk" honors log.showroot configuration.
+
+ * Teams for localizing the messages from the Porcelain layer of
+   commands are starting to form, thanks to Jiang Xin who volunteered
+   to be the localization coordinator.  Translated messages for
+   simplified Chinese, Swedish and Portuguese are available.
+
+ * The configuration mechanism learned an "include" facility; an
+   assignment to the include.path pseudo-variable causes the named
+   file to be included in-place when Git looks up configuration
+   variables.
+
+ * A content filter (clean/smudge) used to be just a way to make the
+   recorded contents "more useful", and allowed to fail; a filter can
+   now optionally be marked as "required".
+
+ * Options whose names begin with "--no-" (e.g. the "--no-verify"
+   option of the "git commit" command) can be negated by omitting
+   "no-" from its name, e.g. "git commit --verify".
+
+ * "git am" learned to pass "-b" option to underlying "git mailinfo", so
+   that a bracketed string other than "PATCH" at the beginning can be kept.
+
+ * "git clone" learned "--single-branch" option to limit cloning to a
+   single branch (surprise!); tags that do not point into the history
+   of the branch are not fetched.
+
+ * "git clone" learned to detach the HEAD in the resulting repository
+   when the user specifies a tag with "--branch" (e.g., "--branch=v1.0").
+   Clone also learned to print the usual "detached HEAD" advice in such
+   a case, similar to "git checkout v1.0".
+
+ * When showing a patch while ignoring whitespace changes, the context
+   lines are taken from the postimage, in order to make it easier to
+   view the output.
+
+ * "git diff --stat" learned to adjust the width of the output on
+   wider terminals, and give more columns to pathnames as needed.
+
+ * "diff-highlight" filter (in contrib/) was updated to produce more
+   aesthetically pleasing output.
+
+ * "fsck" learned "--no-dangling" option to omit dangling object
+   information.
+
+ * "git log -G" and "git log -S" learned to pay attention to the "-i"
+   option.  With "-i", "log -G" ignores the case when finding patch
+   hunks that introduce or remove a string that matches the given
+   pattern.  Similarly with "-i", "log -S" ignores the case when
+   finding the commit the given block of text appears or disappears
+   from the file.
+
+ * "git merge" in an interactive session learned to spawn the editor
+   by default to let the user edit the auto-generated merge message,
+   to encourage people to explain their merges better. Legacy scripts
+   can export GIT_MERGE_AUTOEDIT=no to retain the historical behavior.
+   Both "git merge" and "git pull" can be given --no-edit from the
+   command line to accept the auto-generated merge message.
+
+ * The advice message given when the user didn't give enough clue on
+   what to merge to "git pull" and "git merge" has been updated to
+   be more concise and easier to understand.
+
+ * "git push" learned the "--prune" option, similar to "git fetch".
+
+ * The whole directory that houses a top-level superproject managed by
+   "git submodule" can be moved to another place.
+
+ * "git symbolic-ref" learned the "--short" option to abbreviate the
+   refname it shows unambiguously.
+
+ * "git tag --list" can be given "--points-at <object>" to limit its
+   output to those that point at the given object.
+
+ * "gitweb" allows intermediate entries in the directory hierarchy
+   that leads to a project to be clicked, which in turn shows the
+   list of projects inside that directory.
+
+ * "gitweb" learned to read various pieces of information for the
+   repositories lazily, instead of reading everything that could be
+   needed (including the ones that are not necessary for a specific
+   task).
+
+ * Project search in "gitweb" shows the substring that matched in the
+   project name and description highlighted.
+
+ * HTTP transport learned to authenticate with a proxy if needed.
+
+ * A new script "diffall" is added to contrib/; it drives an
+   external tool to perform a directory diff of two Git revisions
+   in one go, unlike "difftool" that compares one file at a time.
+
+Foreign Interface
+
+ * Improved handling of views, labels and branches in "git-p4" (in contrib).
+
+ * "git-p4" (in contrib) suffered from unnecessary merge conflicts when
+   p4 expanded the embedded $RCS$-like keywords; it can be now told to
+   unexpand them.
+
+ * Some "git-svn" updates.
+
+ * "vcs-svn"/"svn-fe" learned to read dumps with svn-deltas and
+   support incremental imports.
+
+ * "git difftool/mergetool" learned to drive DeltaWalker.
+
+Performance
+
+ * Unnecessary calls to parse_object() "git upload-pack" makes in
+   response to "git fetch", have been eliminated, to help performance
+   in repositories with excessive number of refs.
+
+Internal Implementation (please report possible regressions)
+
+ * Recursive call chains in "git index-pack" to deal with long delta
+   chains have been flattened, to reduce the stack footprint.
+
+ * Use of add_extra_ref() API is now gone, to make it possible to
+   cleanly restructure the overall refs API.
+
+ * The command line parser of "git pack-objects" now uses parse-options
+   API.
+
+ * The test suite supports the new "test_pause" helper function.
+
+ * Parallel to the test suite, there is a beginning of performance
+   benchmarking framework.
+
+ * t/Makefile is adjusted to prevent newer versions of GNU make from
+   running tests in seemingly random order.
+
+ * The code to check if a path points at a file beyond a symbolic link
+   has been restructured to be thread-safe.
+
+ * When pruning directories that has become empty during "git prune"
+   and "git prune-packed", call closedir() that iterates over a
+   directory before rmdir() it.
+
+Also contains minor documentation updates and code clean-ups.
+
+
+Fixes since v1.7.9
+------------------
+
+Unless otherwise noted, all the fixes since v1.7.9 in the maintenance
+releases are contained in this release (see release notes to them for
+details).
+
+ * Build with NO_PERL_MAKEMAKER was broken and Git::I18N did not work
+   with versions of Perl older than 5.8.3.
+   (merge 5eb660e ab/perl-i18n later to maint).
+
+ * "git tag -s" honored "gpg.program" configuration variable since
+   1.7.9, but "git tag -v" and "git verify-tag" didn't.
+   (merge a2c2506 az/verify-tag-use-gpg-config later to maint).
+
+ * "configure" script learned to take "--with-sane-tool-path" from the
+   command line to record SANE_TOOL_PATH (used to avoid broken platform
+   tools in /usr/bin) in config.mak.autogen.  This may be useful for
+   people on Solaris who have saner tools outside /usr/xpg[46]/bin.
+
+ * zsh port of bash completion script needed another workaround.
diff --git a/Documentation/RelNotes/1.7.11.1.txt b/Documentation/RelNotes/1.7.11.1.txt
new file mode 100644 (file)
index 0000000..577ecca
--- /dev/null
@@ -0,0 +1,9 @@
+Git v1.7.11.1 Release Notes
+===========================
+
+Fixes since v1.7.11
+-------------------
+
+ * The cross links in the HTML version of manual pages were broken.
+
+Also contains minor typofixes and documentation updates.
diff --git a/Documentation/RelNotes/1.7.11.2.txt b/Documentation/RelNotes/1.7.11.2.txt
new file mode 100644 (file)
index 0000000..a0d24d1
--- /dev/null
@@ -0,0 +1,53 @@
+Git v1.7.11.2 Release Notes
+===========================
+
+Fixes since v1.7.11.1
+---------------------
+
+ * On Cygwin, the platform pread(2) is not thread safe, just like our
+   own compat/ emulation, and cannot be used in the index-pack
+   program.  Makefile variable NO_THREAD_SAFE_PREAD can be defined to
+   avoid use of this function in a threaded program.
+
+ * "git add" allows adding a regular file to the path where a
+   submodule used to exist, but "git update-index" does not allow an
+   equivalent operation to Porcelain writers.
+
+ * "git archive" incorrectly computed the header checksum; the symptom
+   was observed only when using pathnames with hi-bit set.
+
+ * "git blame" did not try to make sure that the abbreviated commit
+   object names in its output are unique.
+
+ * Running "git bundle verify" on a bundle that records a complete
+   history said "it requires these 0 commits".
+
+ * "git clone --single-branch" to clone a single branch did not limit
+   the cloning to the specified branch.
+
+ * "git diff --no-index" did not correctly handle relative paths and
+   did not correctly give exit codes when run under "--quiet" option.
+
+ * "git diff --no-index" did not work with pagers correctly.
+
+ * "git diff COPYING HEAD:COPYING" gave a nonsense error message that
+   claimed that the treeish HEAD did not have COPYING in it.
+
+ * When "git log" gets "--simplify-merges/by-decoration" together with
+   "--first-parent", the combination of these options makes the
+   simplification logic to use in-core commit objects that haven't
+   been examined for relevance, either producing incorrect result or
+   taking too long to produce any output.  Teach the simplification
+   logic to ignore commits that the first-parent traversal logic
+   ignored when both are in effect to work around the issue.
+
+ * "git ls-files --exclude=t -i" did not consider anything under t/ as
+   excluded, as it did not pay attention to exclusion of leading paths
+   while walking the index.  Other two users of excluded() are also
+   updated.
+
+ * "git request-pull $url dev" when the tip of "dev" branch was tagged
+   with "ext4-for-linus" used the contents from the tag in the output
+   but still asked the "dev" branch to be pulled, not the tag.
+
+Also contains minor typofixes and documentation updates.
diff --git a/Documentation/RelNotes/1.7.11.3.txt b/Documentation/RelNotes/1.7.11.3.txt
new file mode 100644 (file)
index 0000000..64494f8
--- /dev/null
@@ -0,0 +1,53 @@
+Git v1.7.11.3 Release Notes
+===========================
+
+Fixes since v1.7.11.3
+---------------------
+
+ * The error message from "git push $there :bogo" (and its equivalent
+   "git push $there --delete bogo") mentioned that we tried and failed
+   to guess what ref is being deleted based on the LHS of the refspec,
+   which we don't.
+
+ * A handful of files and directories we create had tighter than
+   necessary permission bits when the user wanted to have group
+   writability (e.g. by setting "umask 002").
+
+ * "commit --amend" used to refuse amending a commit with an empty log
+   message, with or without "--allow-empty-message".
+
+ * "git commit --amend --only --" was meant to allow "Clever" people to
+   rewrite the commit message without making any change even when they
+   have already changes for the next commit added to their index, but
+   it never worked as advertised since it was introduced in 1.3.0 era.
+
+ * Even though the index can record pathnames longer than 1<<12 bytes,
+   in some places we were not comparing them in full, potentially
+   replacing index entries instead of adding.
+
+ * "git show"'s auto-walking behaviour was an unreliable and
+   unpredictable hack; it now behaves just like "git log" does when it
+   walks.
+
+ * "git diff", "git status" and anything that internally uses the
+   comparison machinery was utterly broken when the difference
+   involved a file with "-" as its name.  This was due to the way "git
+   diff --no-index" was incorrectly bolted on to the system, making
+   any comparison that involves a file "-" at the root level
+   incorrectly read from the standard input.
+
+ * We did not have test to make sure "git rebase" without extra options
+   filters out an empty commit in the original history.
+
+ * "git fast-export" produced an input stream for fast-import without
+   properly quoting pathnames when they contain SPs in them.
+
+ * "git checkout --detach", when you are still on an unborn branch,
+   should be forbidden, but it wasn't.
+
+ * Some implementations of Perl terminates "lines" with CRLF even when
+   the script is operating on just a sequence of bytes.  Make sure to
+   use "$PERL_PATH", the version of Perl the user told Git to use, in
+   our tests to avoid unnecessary breakages in tests.
+
+Also contains minor typofixes and documentation updates.
diff --git a/Documentation/RelNotes/1.7.11.4.txt b/Documentation/RelNotes/1.7.11.4.txt
new file mode 100644 (file)
index 0000000..3a640c2
--- /dev/null
@@ -0,0 +1,31 @@
+Git v1.7.11.4 Release Notes
+===========================
+
+Fixes since v1.7.11.3
+---------------------
+
+ * "$GIT_DIR/COMMIT_EDITMSG" file that is used to hold the commit log
+   message user edits was not documented.
+
+ * The advise() function did not use varargs correctly to format
+   its message.
+
+ * When "git am" failed, old timers knew to check .git/rebase-apply/patch
+   to see what went wrong, but we never told the users about it.
+
+ * "git commit-tree" learned a more natural "-p <parent> <tree>" order
+   of arguments long time ago, but recently forgot it by mistake.
+
+ * "git diff --no-ext-diff" did not output anything for a typechange
+   filepair when GIT_EXTERNAL_DIFF is in effect.
+
+ * In 1.7.9 era, we taught "git rebase" about the raw timestamp format
+   but we did not teach the same trick to "filter-branch", which rolled
+   a similar logic on its own.
+
+ * When "git submodule add" clones a submodule repository, it can get
+   confused where to store the resulting submodule repository in the
+   superproject's .git/ directory when there is a symbolic link in the
+   path to the current directory.
+
+Also contains minor typofixes and documentation updates.
diff --git a/Documentation/RelNotes/1.7.11.5.txt b/Documentation/RelNotes/1.7.11.5.txt
new file mode 100644 (file)
index 0000000..0a2ed85
--- /dev/null
@@ -0,0 +1,36 @@
+Git v1.7.11.5 Release Notes
+===========================
+
+Fixes since v1.7.11.4
+---------------------
+
+ * The Makefile rule to create assembly output (primarily for
+   debugging purposes) did not create it next to the source.
+
+ * The code to avoid mistaken attempt to add the object directory
+   itself as its own alternate could read beyond end of a string while
+   comparison.
+
+ * On some architectures, "block-sha1" did not compile correctly
+   when compilers inferred alignment guarantees from our source we
+   did not intend to make.
+
+ * When talking to a remote running ssh on IPv6 enabled host, whose
+   address is spelled as "[HOST]:PORT", we did not parse the address
+   correctly and failed to connect.
+
+ * git-blame.el (in compat/) have been updated to use Elisp more
+   correctly.
+
+ * "git checkout <branchname>" to come back from a detached HEAD state
+   incorrectly computed reachability of the detached HEAD, resulting
+   in unnecessary warnings.
+
+ * "git mergetool" did not support --tool-help option to give the list
+   of supported backends, like "git difftool" does.
+
+ * "git grep" stopped spawning an external "grep" long time ago, but a
+   duplicated test to check internal and external "grep" was left
+   behind.
+
+Also contains minor typofixes and documentation updates.
diff --git a/Documentation/RelNotes/1.7.11.6.txt b/Documentation/RelNotes/1.7.11.6.txt
new file mode 100644 (file)
index 0000000..ba7d3c3
--- /dev/null
@@ -0,0 +1,84 @@
+Git v1.7.11.6 Release Notes
+===========================
+
+Fixes since v1.7.11.5
+---------------------
+
+ * "ciabot" script (in contrib/) has been updated with extensive
+   documentation.
+
+ * "git foo" errored out with "Not a directory" when the user had a
+   non-directory on $PATH, and worse yet it masked an alias "foo" from
+   running.
+
+ * When the user exports a non-default IFS without HT, scripts that
+   rely on being able to parse "ls-files -s | while read a b c..."
+   started to fail.  Protect them from such a misconfiguration.
+
+ * When the user gives an argument that can be taken as both a
+   revision name and a pathname without disambiguating with "--", we
+   used to give a help message "Use '--' to separate".  The message
+   has been clarified to show where that '--' goes on the command
+   line.
+
+ * Documentation for the configuration file format had a confusing
+   example.
+
+ * Older parts of the documentation described as if having a regular
+   file in .git/refs/ hierarchy were the only way to have branches and
+   tags, which is not true for quite some time.
+
+ * It was generally understood that "--long-option"s to many of our
+   subcommands can be abbreviated to the unique prefix, but it was not
+   easy to find it described for new readers of the documentation set.
+
+ * The "--topo-order", "--date-order" (and the lack of either means
+   the default order) options to "rev-list" and "log" family of
+   commands were poorly described in the documentation.
+
+ * "git commit --amend" let the user edit the log message and then
+   died when the human-readable committer name was given
+   insufficiently by getpwent(3).
+
+ * The exit status code from "git config" was way overspecified while
+   being incorrect.  The implementation has been updated to give the
+   documented status for a case that was documented, and introduce a
+   new code for "all other errors".
+
+ * The output from "git diff -B" for a file that ends with an
+   incomplete line did not put "\ No newline..." on a line of its own.
+
+ * "git diff" had a confusion between taking data from a path in the
+   working tree and taking data from an object that happens to have
+   name 0{40} recorded in a tree.
+
+ * The "--rebase" option to "git&