Merge branch 'ab/git-svn-get-record-typofix'
authorJunio C Hamano <gitster@pobox.com>
Tue, 8 May 2018 06:59:28 +0000 (15:59 +0900)
committerJunio C Hamano <gitster@pobox.com>
Tue, 8 May 2018 06:59:28 +0000 (15:59 +0900)
"git svn" had a minor thinko/typo which has been fixed.

* ab/git-svn-get-record-typofix:
  git-svn: avoid warning on undef readline()

1419 files changed:
.clang-format [new file with mode: 0644]
.gitattributes
.github/CONTRIBUTING.md [new file with mode: 0644]
.github/PULL_REQUEST_TEMPLATE.md [new file with mode: 0644]
.gitignore
.gitmodules [new file with mode: 0644]
.mailmap
.travis.yml
.tsan-suppressions [new file with mode: 0644]
Documentation/.gitignore
Documentation/CodingGuidelines
Documentation/Makefile
Documentation/RelNotes/1.7.10.1.txt
Documentation/RelNotes/2.10.2.txt
Documentation/RelNotes/2.10.3.txt [new file with mode: 0644]
Documentation/RelNotes/2.10.4.txt [new file with mode: 0644]
Documentation/RelNotes/2.10.5.txt [new file with mode: 0644]
Documentation/RelNotes/2.11.0.txt
Documentation/RelNotes/2.11.1.txt [new file with mode: 0644]
Documentation/RelNotes/2.11.2.txt [new file with mode: 0644]
Documentation/RelNotes/2.11.3.txt [new file with mode: 0644]
Documentation/RelNotes/2.11.4.txt [new file with mode: 0644]
Documentation/RelNotes/2.12.0.txt [new file with mode: 0644]
Documentation/RelNotes/2.12.1.txt [new file with mode: 0644]
Documentation/RelNotes/2.12.2.txt [new file with mode: 0644]
Documentation/RelNotes/2.12.3.txt [new file with mode: 0644]
Documentation/RelNotes/2.12.4.txt [new file with mode: 0644]
Documentation/RelNotes/2.12.5.txt [new file with mode: 0644]
Documentation/RelNotes/2.13.0.txt [new file with mode: 0644]
Documentation/RelNotes/2.13.1.txt [new file with mode: 0644]
Documentation/RelNotes/2.13.2.txt [new file with mode: 0644]
Documentation/RelNotes/2.13.3.txt [new file with mode: 0644]
Documentation/RelNotes/2.13.4.txt [new file with mode: 0644]
Documentation/RelNotes/2.13.5.txt [new file with mode: 0644]
Documentation/RelNotes/2.13.6.txt [new file with mode: 0644]
Documentation/RelNotes/2.14.0.txt [new file with mode: 0644]
Documentation/RelNotes/2.14.1.txt [new file with mode: 0644]
Documentation/RelNotes/2.14.2.txt [new file with mode: 0644]
Documentation/RelNotes/2.14.3.txt [new file with mode: 0644]
Documentation/RelNotes/2.15.0.txt [new file with mode: 0644]
Documentation/RelNotes/2.15.1.txt [new file with mode: 0644]
Documentation/RelNotes/2.15.2.txt [new file with mode: 0644]
Documentation/RelNotes/2.16.0.txt [new file with mode: 0644]
Documentation/RelNotes/2.16.1.txt [new file with mode: 0644]
Documentation/RelNotes/2.16.2.txt [new file with mode: 0644]
Documentation/RelNotes/2.16.3.txt [new file with mode: 0644]
Documentation/RelNotes/2.17.0.txt [new file with mode: 0644]
Documentation/RelNotes/2.18.0.txt [new file with mode: 0644]
Documentation/RelNotes/2.4.12.txt [new file with mode: 0644]
Documentation/RelNotes/2.5.6.txt [new file with mode: 0644]
Documentation/RelNotes/2.6.7.txt [new file with mode: 0644]
Documentation/RelNotes/2.7.5.txt [new file with mode: 0644]
Documentation/RelNotes/2.7.6.txt [new file with mode: 0644]
Documentation/RelNotes/2.8.5.txt [new file with mode: 0644]
Documentation/RelNotes/2.8.6.txt [new file with mode: 0644]
Documentation/RelNotes/2.9.4.txt
Documentation/RelNotes/2.9.5.txt [new file with mode: 0644]
Documentation/SubmittingPatches
Documentation/asciidoctor-extensions.rb [new file with mode: 0644]
Documentation/blame-options.txt
Documentation/cat-texi.perl
Documentation/config.txt
Documentation/date-formats.txt
Documentation/diff-config.txt
Documentation/diff-format.txt
Documentation/diff-generate-patch.txt
Documentation/diff-heuristic-options.txt [deleted file]
Documentation/diff-options.txt
Documentation/fetch-options.txt
Documentation/git-add.txt
Documentation/git-am.txt
Documentation/git-annotate.txt
Documentation/git-apply.txt
Documentation/git-archimport.txt
Documentation/git-bisect-lk2009.txt
Documentation/git-bisect.txt
Documentation/git-blame.txt
Documentation/git-branch.txt
Documentation/git-cat-file.txt
Documentation/git-check-ref-format.txt
Documentation/git-checkout.txt
Documentation/git-clone.txt
Documentation/git-commit-graph.txt [new file with mode: 0644]
Documentation/git-commit.txt
Documentation/git-config.txt
Documentation/git-count-objects.txt
Documentation/git-credential-cache.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-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-gc.txt
Documentation/git-grep.txt
Documentation/git-gui.txt
Documentation/git-index-pack.txt
Documentation/git-init.txt
Documentation/git-interpret-trailers.txt
Documentation/git-log.txt
Documentation/git-ls-files.txt
Documentation/git-ls-tree.txt
Documentation/git-merge-base.txt
Documentation/git-merge.txt
Documentation/git-mergetool.txt
Documentation/git-mktree.txt
Documentation/git-name-rev.txt
Documentation/git-notes.txt
Documentation/git-p4.txt
Documentation/git-pack-objects.txt
Documentation/git-patch-id.txt
Documentation/git-prune.txt
Documentation/git-pull.txt
Documentation/git-push.txt
Documentation/git-read-tree.txt
Documentation/git-rebase.txt
Documentation/git-receive-pack.txt
Documentation/git-reflog.txt
Documentation/git-relink.txt [deleted file]
Documentation/git-remote.txt
Documentation/git-repack.txt
Documentation/git-rerere.txt
Documentation/git-reset.txt
Documentation/git-rev-list.txt
Documentation/git-rev-parse.txt
Documentation/git-rm.txt
Documentation/git-send-email.txt
Documentation/git-send-pack.txt
Documentation/git-shell.txt
Documentation/git-shortlog.txt
Documentation/git-show.txt
Documentation/git-stash.txt
Documentation/git-status.txt
Documentation/git-submodule.txt
Documentation/git-svn.txt
Documentation/git-tag.txt
Documentation/git-tools.txt
Documentation/git-update-index.txt
Documentation/git-verify-tag.txt
Documentation/git-worktree.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/giteveryday.txt
Documentation/gitglossary.txt
Documentation/githooks.txt
Documentation/gitignore.txt
Documentation/gitk.txt
Documentation/gitmodules.txt
Documentation/gitnamespaces.txt
Documentation/gitremote-helpers.txt
Documentation/gitrepository-layout.txt
Documentation/gitsubmodules.txt [new file with mode: 0644]
Documentation/gittutorial-2.txt
Documentation/gittutorial.txt
Documentation/gitweb.conf.txt
Documentation/gitweb.txt
Documentation/gitworkflows.txt
Documentation/glossary-content.txt
Documentation/howto/rebuild-from-update-hook.txt
Documentation/howto/recover-corrupted-object-harder.txt
Documentation/howto/revert-a-faulty-merge.txt
Documentation/i18n.txt
Documentation/install-doc-quick.sh
Documentation/merge-config.txt
Documentation/merge-options.txt
Documentation/merge-strategies.txt
Documentation/pretty-formats.txt
Documentation/pull-fetch-param.txt
Documentation/rebase-config.txt [new file with mode: 0644]
Documentation/rev-list-options.txt
Documentation/revisions.txt
Documentation/technical/api-argv-array.txt
Documentation/technical/api-builtin.txt [deleted file]
Documentation/technical/api-config.txt
Documentation/technical/api-decorate.txt [deleted file]
Documentation/technical/api-directory-listing.txt
Documentation/technical/api-gitattributes.txt
Documentation/technical/api-hashmap.txt [deleted file]
Documentation/technical/api-in-core-index.txt [deleted file]
Documentation/technical/api-object-access.txt
Documentation/technical/api-oid-array.txt [moved from Documentation/technical/api-sha1-array.txt with 61% similarity]
Documentation/technical/api-parse-options.txt
Documentation/technical/api-ref-iteration.txt
Documentation/technical/api-setup.txt
Documentation/technical/api-string-list.txt [deleted file]
Documentation/technical/api-submodule-config.txt
Documentation/technical/api-tree-walking.txt
Documentation/technical/commit-graph-format.txt [new file with mode: 0644]
Documentation/technical/commit-graph.txt [new file with mode: 0644]
Documentation/technical/hash-function-transition.txt [new file with mode: 0644]
Documentation/technical/http-protocol.txt
Documentation/technical/index-format.txt
Documentation/technical/long-running-process-protocol.txt [new file with mode: 0644]
Documentation/technical/pack-protocol.txt
Documentation/technical/partial-clone.txt [new file with mode: 0644]
Documentation/technical/protocol-capabilities.txt
Documentation/technical/protocol-v2.txt [new file with mode: 0644]
Documentation/technical/repository-version.txt
Documentation/technical/trivial-merge.txt
Documentation/texi.xsl [new file with mode: 0644]
Documentation/transfer-data-leaks.txt [new file with mode: 0644]
Documentation/user-manual.txt
GIT-VERSION-GEN
INSTALL
Makefile
README.md
RelNotes
abspath.c
advice.c
advice.h
alias.c
alloc.c
apply.c
apply.h
archive-tar.c
archive-zip.c
archive.c
archive.h
attr.c
attr.h
bisect.c
bisect.h
blame.c [new file with mode: 0644]
blame.h [new file with mode: 0644]
blob.c
blob.h
branch.c
branch.h
builtin.h
builtin/add.c
builtin/am.c
builtin/apply.c
builtin/archive.c
builtin/bisect--helper.c
builtin/blame.c
builtin/branch.c
builtin/bundle.c
builtin/cat-file.c
builtin/check-attr.c
builtin/check-ignore.c
builtin/check-mailmap.c
builtin/check-ref-format.c
builtin/checkout-index.c
builtin/checkout.c
builtin/clean.c
builtin/clone.c
builtin/column.c
builtin/commit-graph.c [new file with mode: 0644]
builtin/commit-tree.c
builtin/commit.c
builtin/config.c
builtin/count-objects.c
builtin/credential.c
builtin/describe.c
builtin/diff-files.c
builtin/diff-index.c
builtin/diff-tree.c
builtin/diff.c
builtin/difftool.c [new file with mode: 0644]
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/get-tar-commit-id.c
builtin/grep.c
builtin/hash-object.c
builtin/help.c
builtin/index-pack.c
builtin/init-db.c
builtin/interpret-trailers.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-ours.c
builtin/merge-tree.c
builtin/merge.c
builtin/mktag.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/patch-id.c
builtin/prune-packed.c
builtin/prune.c
builtin/pull.c
builtin/push.c
builtin/read-tree.c
builtin/rebase--helper.c [new file with mode: 0644]
builtin/receive-pack.c
builtin/reflog.c
builtin/remote-ext.c
builtin/remote-fd.c
builtin/remote.c
builtin/repack.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/serve.c [new file with mode: 0644]
builtin/shortlog.c
builtin/show-branch.c
builtin/show-ref.c
builtin/stripspace.c
builtin/submodule--helper.c
builtin/symbolic-ref.c
builtin/tag.c
builtin/unpack-file.c
builtin/unpack-objects.c
builtin/update-index.c
builtin/update-ref.c
builtin/update-server-info.c
builtin/upload-archive.c
builtin/upload-pack.c [new file with mode: 0644]
builtin/var.c
builtin/verify-commit.c
builtin/verify-pack.c
builtin/verify-tag.c
builtin/worktree.c
builtin/write-tree.c
bulk-checkin.c
bulk-checkin.h
bundle.c
bundle.h
cache-tree.c
cache-tree.h
cache.h
chdir-notify.c [new file with mode: 0644]
chdir-notify.h [new file with mode: 0644]
checkout.c [new file with mode: 0644]
checkout.h [new file with mode: 0644]
ci/install-dependencies.sh [new file with mode: 0755]
ci/lib-travisci.sh [new file with mode: 0755]
ci/print-test-failures.sh [new file with mode: 0755]
ci/run-build-and-tests.sh [new file with mode: 0755]
ci/run-linux32-build.sh [new file with mode: 0755]
ci/run-linux32-docker.sh [new file with mode: 0755]
ci/run-static-analysis.sh [new file with mode: 0755]
ci/run-windows-build.sh [new file with mode: 0755]
ci/test-documentation.sh
color.c
color.h
column.c
combine-diff.c
command-list.txt
commit-graph.c [new file with mode: 0644]
commit-graph.h [new file with mode: 0644]
commit-slab.h
commit.c
commit.h
common-main.c
compat/bswap.h
compat/cygwin.c [new file with mode: 0644]
compat/cygwin.h [new file with mode: 0644]
compat/fopen.c
compat/mingw.c
compat/mingw.h
compat/obstack.c
compat/obstack.h
compat/poll/poll.c
compat/poll/poll.h
compat/precompose_utf8.c
compat/qsort_s.c [new file with mode: 0644]
compat/regex/regcomp.c
compat/regex/regex.c
compat/regex/regex.h
compat/regex/regex_internal.c
compat/regex/regex_internal.h
compat/regex/regexec.c
compat/win32/lazyload.h [new file with mode: 0644]
compat/win32/syslog.c
compat/winansi.c
config.c
config.h [new file with mode: 0644]
config.mak.dev [new file with mode: 0644]
config.mak.uname
configure.ac
connect.c
connect.h
connected.c
connected.h
contrib/coccinelle/array.cocci
contrib/coccinelle/free.cocci [new file with mode: 0644]
contrib/coccinelle/object_id.cocci
contrib/coccinelle/strbuf.cocci
contrib/coccinelle/swap.cocci [new file with mode: 0644]
contrib/coccinelle/xstrdup_or_null.cocci [new file with mode: 0644]
contrib/completion/.gitattributes [new file with mode: 0644]
contrib/completion/git-completion.bash
contrib/completion/git-completion.zsh
contrib/completion/git-prompt.sh
contrib/contacts/git-contacts
contrib/convert-objects/convert-objects.c [deleted file]
contrib/convert-objects/git-convert-objects.txt [deleted file]
contrib/credential/gnome-keyring/git-credential-gnome-keyring.c
contrib/credential/libsecret/Makefile [new file with mode: 0644]
contrib/credential/libsecret/git-credential-libsecret.c [new file with mode: 0644]
contrib/credential/wincred/git-credential-wincred.c
contrib/diff-highlight/.gitignore [new file with mode: 0644]
contrib/diff-highlight/DiffHighlight.pm [moved from contrib/diff-highlight/diff-highlight with 69% similarity, mode: 0644]
contrib/diff-highlight/Makefile
contrib/diff-highlight/README
contrib/diff-highlight/diff-highlight.perl [new file with mode: 0644]
contrib/diff-highlight/t/t9400-diff-highlight.sh
contrib/emacs/.gitignore [deleted file]
contrib/emacs/Makefile [deleted file]
contrib/emacs/README
contrib/emacs/git-blame.el
contrib/emacs/git.el
contrib/examples/README
contrib/examples/builtin-fetch--tool.c [deleted file]
contrib/examples/git-am.sh [deleted file]
contrib/examples/git-checkout.sh [deleted file]
contrib/examples/git-clean.sh [deleted file]
contrib/examples/git-clone.sh [deleted file]
contrib/examples/git-commit.sh [deleted file]
contrib/examples/git-fetch.sh [deleted file]
contrib/examples/git-gc.sh [deleted file]
contrib/examples/git-log.sh [deleted file]
contrib/examples/git-ls-remote.sh [deleted file]
contrib/examples/git-merge-ours.sh [deleted file]
contrib/examples/git-merge.sh [deleted file]
contrib/examples/git-notes.sh [deleted file]
contrib/examples/git-pull.sh [deleted file]
contrib/examples/git-remote.perl [deleted file]
contrib/examples/git-repack.sh [deleted file]
contrib/examples/git-rerere.perl [deleted file]
contrib/examples/git-reset.sh [deleted file]
contrib/examples/git-resolve.sh [deleted file]
contrib/examples/git-revert.sh [deleted file]
contrib/examples/git-svnimport.perl [deleted file]
contrib/examples/git-svnimport.txt [deleted file]
contrib/examples/git-tag.sh [deleted file]
contrib/examples/git-verify-tag.sh [deleted file]
contrib/examples/git-whatchanged.sh [deleted file]
contrib/fast-import/import-directories.perl
contrib/git-jump/README
contrib/git-jump/git-jump
contrib/git-resurrect.sh
contrib/gitview/gitview [deleted file]
contrib/gitview/gitview.txt [deleted file]
contrib/hg-to-git/hg-to-git.py
contrib/hooks/multimail/git_multimail.py
contrib/hooks/pre-auto-gc-battery
contrib/long-running-filter/example.pl [new file with mode: 0755]
contrib/mw-to-git/Git/Mediawiki.pm
contrib/mw-to-git/Makefile
contrib/mw-to-git/git-remote-mediawiki.perl
contrib/mw-to-git/t/README
contrib/persistent-https/README
contrib/remote-helpers/git-remote-bzr
contrib/remote-helpers/git-remote-hg
contrib/rerere-train.sh
contrib/subtree/Makefile
contrib/subtree/git-subtree.sh
contrib/subtree/git-subtree.txt
contrib/subtree/t/t7900-subtree.sh
contrib/update-unicode/.gitignore [new file with mode: 0644]
contrib/update-unicode/README [new file with mode: 0644]
contrib/update-unicode/update_unicode.sh [new file with mode: 0755]
contrib/workdir/.gitattributes [new file with mode: 0644]
convert.c
convert.h
credential-cache--daemon.c
credential-cache.c
credential-store.c
credential.c
csum-file.c
csum-file.h
daemon.c
date.c
decorate.c
decorate.h
detect-compiler [new file with mode: 0755]
diff-delta.c
diff-lib.c
diff-no-index.c
diff.c
diff.h
diffcore-break.c
diffcore-delta.c
diffcore-order.c
diffcore-pickaxe.c
diffcore-rename.c
diffcore.h
dir.c
dir.h
editor.c
entry.c
environment.c
ewah/bitmap.c
ewah/ewah_bitmap.c
ewah/ewah_io.c
ewah/ewah_rlw.c
ewah/ewok.h
ewah/ewok_rlw.h
exec-cmd.c [new file with mode: 0644]
exec-cmd.h [moved from exec_cmd.h with 78% similarity]
exec_cmd.c [deleted file]
fast-import.c
fetch-object.c [new file with mode: 0644]
fetch-object.h [new file with mode: 0644]
fetch-pack.c
fetch-pack.h
fsck.c
fsck.h
fsmonitor.c [new file with mode: 0644]
fsmonitor.h [new file with mode: 0644]
generate-cmdlist.sh
gettext.c
git-add--interactive.perl
git-archimport.perl
git-bisect.sh
git-compat-util.h
git-cvsimport.perl
git-cvsserver.perl
git-difftool.perl [deleted file]
git-filter-branch.sh
git-gui/.gitattributes
git-gui/GIT-VERSION-GEN
git-gui/Makefile
git-gui/git-gui.sh
git-gui/lib/blame.tcl
git-gui/lib/branch_checkout.tcl
git-gui/lib/branch_create.tcl
git-gui/lib/branch_delete.tcl
git-gui/lib/branch_rename.tcl
git-gui/lib/browser.tcl
git-gui/lib/choose_repository.tcl
git-gui/lib/commit.tcl
git-gui/lib/database.tcl
git-gui/lib/diff.tcl
git-gui/lib/error.tcl
git-gui/lib/index.tcl
git-gui/lib/merge.tcl
git-gui/lib/option.tcl
git-gui/lib/remote.tcl
git-gui/lib/remote_add.tcl
git-gui/lib/remote_branch_delete.tcl
git-gui/lib/shortcut.tcl
git-gui/lib/sshkey.tcl
git-gui/lib/themed.tcl
git-gui/lib/tools.tcl
git-gui/lib/tools_dlg.tcl
git-gui/lib/transport.tcl
git-gui/po/README
git-gui/po/bg.po
git-gui/po/ru.po
git-merge-octopus.sh
git-merge-one-file.sh
git-merge-resolve.sh
git-mergetool--lib.sh
git-mergetool.sh
git-p4.py
git-rebase--am.sh
git-rebase--interactive.sh
git-rebase--merge.sh
git-rebase.sh
git-relink.perl [deleted file]
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.c
git.rc
gitk-git/Makefile
gitk-git/gitk
gitk-git/po/bg.po
gitk-git/po/ca.po
gitk-git/po/de.po
gitk-git/po/es.po
gitk-git/po/fr.po
gitk-git/po/hu.po
gitk-git/po/it.po
gitk-git/po/ja.po
gitk-git/po/pt_br.po
gitk-git/po/pt_pt.po [new file with mode: 0644]
gitk-git/po/ru.po
gitk-git/po/sv.po
gitk-git/po/vi.po
gitweb/INSTALL
gitweb/gitweb.perl
gpg-interface.c
gpg-interface.h
graph.c
grep.c
grep.h
hash.h [new file with mode: 0644]
hashmap.c
hashmap.h
help.c
hex.c
http-backend.c
http-fetch.c
http-push.c
http-walker.c
http.c
http.h
ident.c
imap-send.c
kwset.c
kwset.h
line-log.c
line-log.h
line-range.c
list-objects-filter-options.c [new file with mode: 0644]
list-objects-filter-options.h [new file with mode: 0644]
list-objects-filter.c [new file with mode: 0644]
list-objects-filter.h [new file with mode: 0644]
list-objects.c
list-objects.h
list.h
ll-merge.c
lockfile.c
lockfile.h
log-tree.c
log-tree.h
ls-refs.c [new file with mode: 0644]
ls-refs.h [new file with mode: 0644]
mailinfo.c
mailmap.c
match-trees.c
mem-pool.c [new file with mode: 0644]
mem-pool.h [new file with mode: 0644]
merge-blobs.c
merge-recursive.c
merge-recursive.h
merge.c
mergetools/araxis
mergetools/bc
mergetools/codecompare
mergetools/deltawalker
mergetools/diffmerge
mergetools/diffuse
mergetools/ecmerge
mergetools/emerge
mergetools/examdiff
mergetools/guiffy [new file with mode: 0644]
mergetools/kdiff3
mergetools/kompare
mergetools/meld
mergetools/opendiff
mergetools/p4merge
mergetools/tkdiff
mergetools/tortoisemerge
mergetools/vimdiff
mergetools/winmerge
mergetools/xxdiff
mru.c [deleted file]
mru.h [deleted file]
name-hash.c
notes-cache.c
notes-cache.h
notes-merge.c
notes-merge.h
notes-utils.c
notes-utils.h
notes.c
notes.h
object-store.h [new file with mode: 0644]
object.c
object.h
oidmap.c [new file with mode: 0644]
oidmap.h [new file with mode: 0644]
oidset.c [new file with mode: 0644]
oidset.h [new file with mode: 0644]
pack-bitmap-write.c
pack-bitmap.c
pack-bitmap.h
pack-check.c
pack-objects.c
pack-objects.h
pack-revindex.c
pack-write.c
pack.h
packfile.c [new file with mode: 0644]
packfile.h [new file with mode: 0644]
pager.c
parse-options-cb.c
parse-options.c
parse-options.h
patch-ids.c
patch-ids.h
path.c
path.h [new file with mode: 0644]
pathspec.c
pathspec.h
perl/.gitignore
perl/FromCPAN/.gitattributes [new file with mode: 0644]
perl/FromCPAN/Error.pm [moved from perl/private-Error.pm with 72% similarity]
perl/FromCPAN/Mail/Address.pm [new file with mode: 0644]
perl/Git.pm
perl/Git/I18N.pm
perl/Git/LoadCPAN.pm [new file with mode: 0644]
perl/Git/LoadCPAN/Error.pm [new file with mode: 0644]
perl/Git/LoadCPAN/Mail/Address.pm [new file with mode: 0644]
perl/Git/Packet.pm [new file with mode: 0644]
perl/Git/SVN.pm
perl/Git/SVN/Migration.pm
perl/Git/SVN/Ra.pm
perl/Makefile [deleted file]
perl/Makefile.PL [deleted file]
perl/header_templates/fixed_prefix.template.pl [new file with mode: 0644]
perl/header_templates/runtime_prefix.template.pl [new file with mode: 0644]
pkt-line.c
pkt-line.h
po/TEAMS
po/bg.po
po/ca.po
po/de.po
po/es.po [new file with mode: 0644]
po/fr.po
po/git.pot
po/ko.po
po/pt_PT.po
po/ru.po
po/sv.po
po/vi.po
po/zh_CN.po
preload-index.c
pretty.c
pretty.h [new file with mode: 0644]
prio-queue.c
progress.c
progress.h
prompt.c
protocol.c [new file with mode: 0644]
protocol.h [new file with mode: 0644]
quote.c
quote.h
reachable.c
reachable.h
read-cache.c
ref-filter.c
ref-filter.h
reflog-walk.c
reflog-walk.h
refs.c
refs.h
refs/files-backend.c
refs/iterator.c
refs/packed-backend.c [new file with mode: 0644]
refs/packed-backend.h [new file with mode: 0644]
refs/ref-cache.c [new file with mode: 0644]
refs/ref-cache.h [new file with mode: 0644]
refs/refs-internal.h
remote-curl.c
remote-testsvn.c
remote.c
remote.h
replace-object.c [new file with mode: 0644]
replace-object.h [new file with mode: 0644]
replace_object.c [deleted file]
repository.c [new file with mode: 0644]
repository.h [new file with mode: 0644]
rerere.c
resolve-undo.c
resolve-undo.h
revision.c
revision.h
run-command.c
run-command.h
send-pack.c
send-pack.h
sequencer.c
sequencer.h
serve.c [new file with mode: 0644]
serve.h [new file with mode: 0644]
server-info.c
setup.c
sh-i18n--envsubst.c
sha1-array.c
sha1-array.h
sha1-file.c [new file with mode: 0644]
sha1-lookup.c
sha1-lookup.h
sha1-name.c [moved from sha1_name.c with 65% similarity]
sha1_file.c [deleted file]
sha1collisiondetection [new submodule]
sha1dc/.gitattributes [new file with mode: 0644]
sha1dc/LICENSE.txt [new file with mode: 0644]
sha1dc/sha1.c [new file with mode: 0644]
sha1dc/sha1.h [new file with mode: 0644]
sha1dc/ubc_check.c [new file with mode: 0644]
sha1dc/ubc_check.h [new file with mode: 0644]
sha1dc_git.c [new file with mode: 0644]
sha1dc_git.h [new file with mode: 0644]
shallow.c
shell.c
shortlog.h
sideband.c
split-index.c
split-index.h
strbuf.c
strbuf.h
streaming.c
streaming.h
string-list.c
string-list.h
sub-process.c [new file with mode: 0644]
sub-process.h [new file with mode: 0644]
submodule-config.c
submodule-config.h
submodule.c
submodule.h
t/.gitattributes
t/Makefile
t/README
t/check-non-portable-shell.pl
t/gitweb-lib.sh
t/helper/.gitignore
t/helper/test-chmtime.c
t/helper/test-config.c
t/helper/test-ctype.c
t/helper/test-date.c
t/helper/test-delta.c
t/helper/test-drop-caches.c [new file with mode: 0644]
t/helper/test-dump-cache-tree.c
t/helper/test-dump-fsmonitor.c [new file with mode: 0644]
t/helper/test-dump-split-index.c
t/helper/test-dump-untracked-cache.c
t/helper/test-example-decorate.c [new file with mode: 0644]
t/helper/test-genrandom.c
t/helper/test-hashmap.c
t/helper/test-index-version.c
t/helper/test-lazy-init-name-hash.c [new file with mode: 0644]
t/helper/test-line-buffer.c
t/helper/test-match-trees.c
t/helper/test-mergesort.c
t/helper/test-mktemp.c
t/helper/test-online-cpus.c [new file with mode: 0644]
t/helper/test-parse-options.c
t/helper/test-path-utils.c
t/helper/test-pkt-line.c [new file with mode: 0644]
t/helper/test-prio-queue.c
t/helper/test-read-cache.c
t/helper/test-ref-store.c [new file with mode: 0644]
t/helper/test-regex.c
t/helper/test-revision-walking.c
t/helper/test-run-command.c
t/helper/test-scrap-cache-tree.c
t/helper/test-sha1-array.c
t/helper/test-sha1.c
t/helper/test-sha1.sh
t/helper/test-sigchain.c
t/helper/test-strcmp-offset.c [new file with mode: 0644]
t/helper/test-string-list.c
t/helper/test-submodule-config.c
t/helper/test-subprocess.c
t/helper/test-tool.c [new file with mode: 0644]
t/helper/test-tool.h [new file with mode: 0644]
t/helper/test-urlmatch-normalization.c
t/helper/test-wildmatch.c
t/helper/test-write-cache.c [new file with mode: 0644]
t/interop/.gitignore [new file with mode: 0644]
t/interop/Makefile [new file with mode: 0644]
t/interop/README [new file with mode: 0644]
t/interop/i0000-basic.sh [new file with mode: 0755]
t/interop/i5500-git-daemon.sh [new file with mode: 0755]
t/interop/i5700-protocol-transition.sh [new file with mode: 0755]
t/interop/interop-lib.sh [new file with mode: 0644]
t/lib-credential.sh
t/lib-git-daemon.sh
t/lib-git-p4.sh
t/lib-git-svn.sh
t/lib-gpg.sh
t/lib-httpd/apache.conf
t/lib-pack.sh
t/lib-proto-disable.sh
t/lib-submodule-update.sh
t/lib-terminal.sh
t/perf/README
t/perf/aggregate.perl
t/perf/bisect_regression [new file with mode: 0755]
t/perf/bisect_run_script [new file with mode: 0755]
t/perf/lib-pack.sh [new file with mode: 0644]
t/perf/p0000-perf-lib-sanity.sh
t/perf/p0001-rev-list.sh
t/perf/p0002-read-cache.sh
t/perf/p0004-lazy-init-name-hash.sh [new file with mode: 0755]
t/perf/p0005-status.sh [new file with mode: 0755]
t/perf/p0006-read-tree-checkout.sh [new file with mode: 0755]
t/perf/p0007-write-cache.sh [new file with mode: 0755]
t/perf/p0071-sort.sh [new file with mode: 0755]
t/perf/p0100-globbing.sh [new file with mode: 0755]
t/perf/p3400-rebase.sh
t/perf/p4205-log-pretty-formats.sh [new file with mode: 0755]
t/perf/p4211-line-log.sh
t/perf/p4220-log-grep-engines.sh [new file with mode: 0755]
t/perf/p4221-log-grep-engines-fixed.sh [new file with mode: 0755]
t/perf/p5302-pack-index.sh
t/perf/p5550-fetch-tags.sh [new file with mode: 0755]
t/perf/p5551-fetch-rescan.sh [new file with mode: 0755]
t/perf/p7000-filter-branch.sh
t/perf/p7519-fsmonitor.sh [new file with mode: 0755]
t/perf/p7820-grep-engines.sh [new file with mode: 0755]
t/perf/p7821-grep-engines-fixed.sh [new file with mode: 0755]
t/perf/perf-lib.sh
t/perf/repos/.gitignore [new file with mode: 0644]
t/perf/repos/inflate-repo.sh [new file with mode: 0755]
t/perf/repos/many-files.sh [new file with mode: 0755]
t/perf/run
t/t0000-basic.sh
t/t0001-init.sh
t/t0002-gitfile.sh
t/t0003-attributes.sh
t/t0005-signals.sh
t/t0006-date.sh
t/t0008-ignores.sh
t/t0009-prio-queue.sh
t/t0011-hashmap.sh
t/t0012-help.sh
t/t0013-sha1dc.sh [new file with mode: 0755]
t/t0013/shattered-1.pdf [new file with mode: 0644]
t/t0020-crlf.sh
t/t0021-conversion.sh
t/t0021/rot13-filter.pl [new file with mode: 0644]
t/t0025-crlf-auto.sh [deleted file]
t/t0025-crlf-renormalize.sh [new file with mode: 0755]
t/t0027-auto-crlf.sh
t/t0028-working-tree-encoding.sh [new file with mode: 0755]
t/t0030-stripspace.sh
t/t0040-parse-options.sh
t/t0041-usage.sh [new file with mode: 0755]
t/t0050-filesystem.sh
t/t0060-path-utils.sh
t/t0061-run-command.sh
t/t0062-revision-walking.sh
t/t0063-string-list.sh
t/t0064-sha1-array.sh
t/t0065-strcmp-offset.sh [new file with mode: 0755]
t/t0070-fundamental.sh
t/t0090-cache-tree.sh
t/t0100-previous.sh
t/t0110-urlmatch-normalization.sh
t/t0202/test.pl
t/t0203-gettext-setlocale-sanity.sh
t/t0205-gettext-poison.sh
t/t0301-credential-cache.sh
t/t0302-credential-store.sh
t/t0410-partial-clone.sh [new file with mode: 0755]
t/t1000-read-tree-m-3way.sh
t/t1001-read-tree-m-2way.sh
t/t1002-read-tree-m-u-2way.sh
t/t1004-read-tree-m-u-wf.sh
t/t1006-cat-file.sh
t/t1007-hash-object.sh
t/t1011-read-tree-sparse-checkout.sh
t/t1013-read-tree-submodule.sh
t/t1050-large.sh
t/t1060-object-corruption.sh
t/t1200-tutorial.sh [deleted file]
t/t1300-config.sh [moved from t/t1300-repo-config.sh with 71% similarity]
t/t1301-shared-repo.sh
t/t1304-default-acl.sh
t/t1305-config-include.sh
t/t1308-config-set.sh
t/t1309-early-config.sh [new file with mode: 0755]
t/t1310-config-default.sh [new file with mode: 0755]
t/t1400-update-ref.sh
t/t1401-symbolic-ref.sh
t/t1402-check-ref-format.sh
t/t1403-show-ref.sh
t/t1404-update-ref-errors.sh
t/t1405-main-ref-store.sh [new file with mode: 0755]
t/t1406-submodule-ref-store.sh [new file with mode: 0755]
t/t1407-worktree-ref-store.sh [new file with mode: 0755]
t/t1408-packed-refs.sh [new file with mode: 0755]
t/t1409-avoid-packing-refs.sh [new file with mode: 0755]
t/t1411-reflog-show.sh
t/t1414-reflog-walk.sh [new file with mode: 0755]
t/t1430-bad-ref-name.sh
t/t1450-fsck.sh
t/t1500-rev-parse.sh
t/t1501-work-tree.sh
t/t1502-rev-parse-parseopt.sh
t/t1503-rev-parse-verify.sh
t/t1506-rev-parse-diagnosis.sh
t/t1507-rev-parse-upstream.sh
t/t1510-repo-setup.sh
t/t1512-rev-parse-disambiguation.sh
t/t1514-rev-parse-push.sh
t/t1600-index.sh
t/t1601-index-bogus.sh [new file with mode: 0755]
t/t1700-split-index.sh
t/t2013-checkout-submodule.sh
t/t2020-checkout-detach.sh
t/t2022-checkout-paths.sh
t/t2025-worktree-add.sh
t/t2026-worktree-prune.sh
t/t2027-worktree-list.sh
t/t2028-worktree-move.sh
t/t2101-update-index-reupdate.sh
t/t2104-update-index-skip-worktree.sh
t/t2107-update-index-basic.sh
t/t2203-add-intent.sh
t/t3007-ls-files-recurse-submodules.sh [new file with mode: 0755]
t/t3008-ls-files-lazy-init-name-hash.sh [new file with mode: 0755]
t/t3030-merge-recursive.sh
t/t3040-subprojects-basic.sh
t/t3070-wildmatch.sh
t/t3200-branch.sh
t/t3201-branch-contains.sh
t/t3203-branch-output.sh
t/t3204-branch-name-interpretation.sh [new file with mode: 0755]
t/t3205-branch-color.sh [new file with mode: 0755]
t/t3210-pack-refs.sh
t/t3306-notes-prune.sh
t/t3308-notes-merge.sh
t/t3310-notes-merge-manual-resolve.sh
t/t3320-notes-merge-worktrees.sh
t/t3400-rebase.sh
t/t3404-rebase-interactive.sh
t/t3405-rebase-malformed.sh
t/t3407-rebase-abort.sh
t/t3408-rebase-multi-line.sh
t/t3415-rebase-autosquash.sh
t/t3418-rebase-continue.sh
t/t3420-rebase-autostash.sh
t/t3421-rebase-topology-linear.sh
t/t3426-rebase-submodule.sh
t/t3428-rebase-signoff.sh [new file with mode: 0755]
t/t3429-rebase-edit-todo.sh [new file with mode: 0755]
t/t3501-revert-cherry-pick.sh
t/t3502-cherry-pick-merge.sh
t/t3504-cherry-pick-rerere.sh
t/t3510-cherry-pick-sequence.sh
t/t3511-cherry-pick-x.sh
t/t3512-cherry-pick-submodule.sh
t/t3513-revert-submodule.sh
t/t3600-rm.sh
t/t3700-add.sh
t/t3701-add-interactive.sh
t/t3900-i18n-commit.sh
t/t3901-i18n-patch.sh
t/t3901/8859-1.txt [moved from t/t3901-8859-1.txt with 100% similarity]
t/t3901/utf8.txt [moved from t/t3901-utf8.txt with 100% similarity]
t/t3903-stash.sh
t/t3904-stash-patch.sh
t/t3905-stash-include-untracked.sh
t/t4001-diff-rename.sh
t/t4005-diff-rename-2.sh
t/t4011-diff-symlink.sh
t/t4013-diff-various.sh
t/t4013/diff.diff-tree_--pretty_--root_--stat_--compact-summary_initial [new file with mode: 0644]
t/t4013/diff.diff-tree_--pretty_-R_--root_--stat_--compact-summary_initial [new file with mode: 0644]
t/t4013/diff.diff-tree_--stat_--compact-summary_initial_mode [new file with mode: 0644]
t/t4013/diff.diff-tree_--stat_initial_mode [new file with mode: 0644]
t/t4013/diff.diff-tree_--summary_initial_mode [new file with mode: 0644]
t/t4013/diff.diff-tree_-R_--stat_--compact-summary_initial_mode [new file with mode: 0644]
t/t4013/diff.diff-tree_initial_mode [new file with mode: 0644]
t/t4013/diff.diff_--no-index_--raw_--abbrev=4_dir2_dir [new file with mode: 0644]
t/t4013/diff.diff_--no-index_--raw_--no-abbrev_dir2_dir [new file with mode: 0644]
t/t4013/diff.diff_--no-index_--raw_dir2_dir [new file with mode: 0644]
t/t4013/diff.diff_--raw_--abbrev=4_initial [new file with mode: 0644]
t/t4013/diff.diff_--raw_--no-abbrev_initial [new file with mode: 0644]
t/t4013/diff.diff_--raw_initial [new file with mode: 0644]
t/t4013/diff.log_--decorate=full_--all
t/t4013/diff.log_--decorate_--all
t/t4013/diff.noellipses-diff-tree_--root_--abbrev_initial [new file with mode: 0644]
t/t4013/diff.noellipses-diff-tree_--root_-r_--abbrev=4_initial [new file with mode: 0644]
t/t4013/diff.noellipses-diff-tree_--root_-r_--abbrev_initial [new file with mode: 0644]
t/t4013/diff.noellipses-diff-tree_-c_--abbrev_master [new file with mode: 0644]
t/t4013/diff.noellipses-diff_--no-index_--raw_--abbrev=4_dir2_dir [new file with mode: 0644]
t/t4013/diff.noellipses-diff_--no-index_--raw_dir2_dir [new file with mode: 0644]
t/t4013/diff.noellipses-diff_--patch-with-raw_-r_initial..side [new file with mode: 0644]
t/t4013/diff.noellipses-diff_--patch-with-raw_initial..side [new file with mode: 0644]
t/t4013/diff.noellipses-diff_--raw_--abbrev=4_initial [new file with mode: 0644]
t/t4013/diff.noellipses-diff_--raw_initial [new file with mode: 0644]
t/t4013/diff.noellipses-show_--patch-with-raw_side [new file with mode: 0644]
t/t4013/diff.noellipses-whatchanged_--root_master [new file with mode: 0644]
t/t4013/diff.noellipses-whatchanged_-SF_master [new file with mode: 0644]
t/t4013/diff.noellipses-whatchanged_master [new file with mode: 0644]
t/t4014-format-patch.sh
t/t4015-diff-whitespace.sh
t/t4018-diff-funcname.sh
t/t4018/golang-complex-function [new file with mode: 0644]
t/t4018/golang-func [new file with mode: 0644]
t/t4018/golang-interface [new file with mode: 0644]
t/t4018/golang-long-func [new file with mode: 0644]
t/t4018/golang-struct [new file with mode: 0644]
t/t4026-color.sh
t/t4027-diff-submodule.sh
t/t4032-diff-inter-hunk-context.sh
t/t4035-diff-quiet.sh
t/t4038-diff-combined.sh
t/t4041-diff-submodule-option.sh
t/t4045-diff-relative.sh
t/t4051-diff-function-context.sh
t/t4051/hello.c
t/t4052-stat-output.sh
t/t4059-diff-submodule-not-initialized.sh
t/t4060-diff-submodule-option-diff-format.sh
t/t4061-diff-indent.sh
t/t4062-diff-pickaxe.sh
t/t4063-diff-blobs.sh [new file with mode: 0755]
t/t4064-diff-oidfind.sh [new file with mode: 0755]
t/t4065-diff-anchored.sh [new file with mode: 0755]
t/t4107-apply-ignore-whitespace.sh
t/t4124-apply-ws-rule.sh
t/t4129-apply-samemode.sh
t/t4133-apply-filenames.sh
t/t4135-apply-weird-filenames.sh
t/t4136-apply-check.sh
t/t4150-am.sh
t/t4151-am-abort.sh
t/t4200-rerere.sh
t/t4201-shortlog.sh
t/t4202-log.sh
t/t4205-log-pretty-formats.sh
t/t4207-log-decoration-colors.sh
t/t4208-log-magic-pathspec.sh
t/t4211-line-log.sh
t/t4213-log-tabexpand.sh
t/t4254-am-corrupt.sh
t/t5000-tar-tree.sh
t/t5001-archive-attr.sh
t/t5002-archive-attr-pattern.sh
t/t5003-archive-zip.sh
t/t5004-archive-corner-cases.sh
t/t5004/big-pack.zip [new file with mode: 0644]
t/t5100-mailinfo.sh
t/t5150-request-pull.sh
t/t5300-pack-object.sh
t/t5301-sliding-window.sh
t/t5302-pack-index.sh
t/t5303-pack-corruption-resilience.sh
t/t5304-prune.sh
t/t5308-pack-detect-duplicates.sh
t/t5310-pack-bitmaps.sh
t/t5313-pack-bounds-checks.sh
t/t5314-pack-cycle-detection.sh
t/t5315-pack-objects-compression.sh [new file with mode: 0755]
t/t5316-pack-delta-depth.sh [new file with mode: 0755]
t/t5317-pack-objects-filter-objects.sh [new file with mode: 0755]
t/t5318-commit-graph.sh [new file with mode: 0755]
t/t5400-send-pack.sh
t/t5404-tracking-branches.sh
t/t5500-fetch-pack.sh
t/t5504-fetch-receive-strict.sh
t/t5505-remote.sh
t/t5509-fetch-push-namespaces.sh
t/t5510-fetch.sh
t/t5512-ls-remote.sh
t/t5516-fetch-push.sh
t/t5520-pull.sh
t/t5521-pull-options.sh
t/t5526-fetch-submodules.sh
t/t5528-push-default.sh
t/t5531-deep-submodule-push.sh
t/t5532-fetch-proxy.sh
t/t5533-push-cas.sh
t/t5534-push-signed.sh
t/t5536-fetch-conflicts.sh
t/t5541-http-push-smart.sh
t/t5545-push-options.sh
t/t5546-receive-limits.sh
t/t5547-push-quarantine.sh [new file with mode: 0755]
t/t5550-http-fetch-dumb.sh
t/t5551-http-fetch-smart.sh
t/t5561-http-backend.sh
t/t5570-git-daemon.sh
t/t5572-pull-submodule.sh
t/t5573-pull-verify-signatures.sh [new file with mode: 0755]
t/t5580-clone-push-unc.sh [new file with mode: 0755]
t/t5600-clone-fail-cleanup.sh
t/t5601-clone.sh
t/t5603-clone-dirname.sh
t/t5608-clone-2gb.sh
t/t5611-clone-config.sh
t/t5612-clone-refspec.sh
t/t5613-info-alternate.sh
t/t5614-clone-submodules-shallow.sh [moved from t/t5614-clone-submodules.sh with 97% similarity]
t/t5615-alternate-env.sh [new file with mode: 0755]
t/t5616-partial-clone.sh [new file with mode: 0755]
t/t5700-protocol-v1.sh [new file with mode: 0755]
t/t5701-git-serve.sh [new file with mode: 0755]
t/t5702-protocol-v2.sh [new file with mode: 0755]
t/t5802-connect-helper.sh
t/t5810-proto-disable-local.sh
t/t5812-proto-disable-http.sh
t/t5813-proto-disable-ssh.sh
t/t6000-rev-list-misc.sh
t/t6002-rev-list-bisect.sh
t/t6006-rev-list-format.sh
t/t6007-rev-list-cherry-pick-file.sh
t/t6010-merge-base.sh
t/t6013-rev-list-reverse-parents.sh
t/t6015-rev-list-show-all-parents.sh [deleted file]
t/t6018-rev-list-glob.sh
t/t6022-merge-rename.sh
t/t6026-merge-attr.sh
t/t6030-bisect-porcelain.sh
t/t6037-merge-ours-theirs.sh
t/t6040-tracking-info.sh
t/t6044-merge-unrelated-index-changes.sh
t/t6045-merge-rename-delete.sh [new file with mode: 0755]
t/t6100-rev-list-in-order.sh [new file with mode: 0755]
t/t6101-rev-parse-parents.sh
t/t6112-rev-list-filters-objects.sh [new file with mode: 0755]
t/t6120-describe.sh
t/t6132-pathspec-exclude.sh
t/t6134-pathspec-in-submodule.sh [new file with mode: 0755]
t/t6135-pathspec-with-attrs.sh [new file with mode: 0755]
t/t6200-fmt-merge-msg.sh
t/t6300-for-each-ref.sh
t/t6302-for-each-ref-filter.sh
t/t6500-gc.sh
t/t6501-freshen-objects.sh
t/t7001-mv.sh
t/t7003-filter-branch.sh
t/t7004-tag.sh
t/t7005-editor.sh
t/t7006-pager.sh
t/t7008-grep-binary.sh
t/t7009-filter-branch-null-sha1.sh
t/t7030-verify-tag.sh
t/t7061-wtstatus-ignore.sh
t/t7063-status-untracked-cache.sh
t/t7064-wtstatus-pv2.sh
t/t7102-reset.sh
t/t7112-reset-submodule.sh
t/t7201-co.sh
t/t7300-clean.sh
t/t7301-clean-interactive.sh
t/t7400-submodule-basic.sh
t/t7401-submodule-summary.sh
t/t7405-submodule-merge.sh
t/t7406-submodule-update.sh
t/t7408-submodule-reference.sh
t/t7409-submodule-detached-work-tree.sh
t/t7411-submodule-config.sh
t/t7412-submodule-absorbgitdirs.sh [new file with mode: 0755]
t/t7413-submodule-is-active.sh [new file with mode: 0755]
t/t7414-submodule-mistakes.sh [new file with mode: 0755]
t/t7500-commit.sh
t/t7501-commit.sh
t/t7502-commit.sh
t/t7504-commit-msg-hook.sh
t/t7505-prepare-commit-msg-hook.sh
t/t7505/expected-rebase-i [new file with mode: 0644]
t/t7505/expected-rebase-p [new file with mode: 0644]
t/t7506-status-submodule.sh
t/t7508-status.sh
t/t7509-commit.sh
t/t7510-signed-commit.sh
t/t7512-status-help.sh
t/t7513-interpret-trailers.sh
t/t7518-ident-corner-cases.sh [new file with mode: 0755]
t/t7519-status-fsmonitor.sh [new file with mode: 0755]
t/t7519/fsmonitor-all [new file with mode: 0755]
t/t7519/fsmonitor-none [new file with mode: 0755]
t/t7519/fsmonitor-watchman [new file with mode: 0755]
t/t7520-ignored-hook-warning.sh [new file with mode: 0755]
t/t7521-ignored-mode.sh [new file with mode: 0755]
t/t7600-merge.sh
t/t7607-merge-overwrite.sh
t/t7609-merge-co-error-msgs.sh
t/t7610-mergetool.sh
t/t7612-merge-verify-signatures.sh
t/t7614-merge-signoff.sh [new file with mode: 0755]
t/t7701-repack-unpack-unreachable.sh
t/t7800-difftool.sh
t/t7810-grep.sh
t/t7812-grep-icase-non-ascii.sh
t/t7813-grep-icase-iso.sh
t/t7814-grep-recurse-submodules.sh [new file with mode: 0755]
t/t8002-blame.sh
t/t8008-blame-formats.sh
t/t8010-cat-file-filters.sh
t/t8011-blame-split-file.sh [new file with mode: 0755]
t/t9000-addresses.sh [deleted file]
t/t9000/test.pl [deleted file]
t/t9001-send-email.sh
t/t9004-example.sh [new file with mode: 0755]
t/t9010-svn-fe.sh
t/t9020-remote-svn.sh
t/t9100-git-svn-basic.sh
t/t9104-git-svn-follow-parent.sh
t/t9107-git-svn-migrate.sh
t/t9108-git-svn-glob.sh
t/t9109-git-svn-multi-glob.sh
t/t9110-git-svn-use-svm-props.sh
t/t9111-git-svn-use-svnsync-props.sh
t/t9114-git-svn-dcommit-merge.sh
t/t9117-git-svn-init-clone.sh
t/t9130-git-svn-authors-file.sh
t/t9138-git-svn-authors-prog.sh
t/t9153-git-svn-rewrite-uuid.sh
t/t9168-git-svn-partially-globbed-names.sh
t/t9169-git-svn-dcommit-crlf.sh [new file with mode: 0755]
t/t9200-git-cvsexportcommit.sh
t/t9300-fast-import.sh
t/t9301-fast-import-notes.sh
t/t9303-fast-import-compression.sh [new file with mode: 0755]
t/t9350-fast-export.sh
t/t9400-git-cvsserver-server.sh
t/t9402-git-cvsserver-refs.sh
t/t9500-gitweb-standalone-no-errors.sh
t/t9600-cvsimport.sh
t/t9700/test.pl
t/t9800-git-p4-basic.sh
t/t9802-git-p4-filetype.sh
t/t9803-git-p4-shell-metachars.sh
t/t9806-git-p4-options.sh
t/t9807-git-p4-submit.sh
t/t9813-git-p4-preserve-users.sh
t/t9814-git-p4-rename.sh
t/t9820-git-p4-editor-handling.sh
t/t9822-git-p4-path-encoding.sh
t/t9824-git-p4-git-lfs.sh
t/t9830-git-p4-symlink-dir.sh [new file with mode: 0755]
t/t9831-git-p4-triggers.sh [new file with mode: 0755]
t/t9902-completion.sh
t/t9903-bash-prompt.sh
t/test-lib-functions.sh
t/test-lib.sh
t/test-terminal.perl
t/valgrind/valgrind.sh
tag.c
tag.h
tempfile.c
tempfile.h
templates/hooks--fsmonitor-watchman.sample [new file with mode: 0755]
templates/hooks--pre-rebase.sample
templates/hooks--pre-receive.sample [changed mode: 0644->0755]
templates/hooks--prepare-commit-msg.sample
tmp-objdir.c [new file with mode: 0644]
tmp-objdir.h [new file with mode: 0644]
trace.c
trace.h
trailer.c
trailer.h
transport-helper.c
transport-internal.h [new file with mode: 0644]
transport.c
transport.h
tree-diff.c
tree-walk.c
tree-walk.h
tree.c
tree.h
unicode-width.h [moved from unicode_width.h with 69% similarity]
unpack-trees.c
unpack-trees.h
update_unicode.sh [deleted file]
upload-pack.c
upload-pack.h [new file with mode: 0644]
urlmatch.c
urlmatch.h
usage.c
userdiff.c
utf8.c
utf8.h
vcs-svn/fast_export.c
vcs-svn/fast_export.h
vcs-svn/repo_tree.c [deleted file]
vcs-svn/repo_tree.h [deleted file]
vcs-svn/svndump.c
version.c
version.h
versioncmp.c
walker.c
wildmatch.c
wildmatch.h
worktree.c
worktree.h
wrap-for-bin.sh
wrapper.c
write-or-die.c [moved from write_or_die.c with 88% similarity]
ws.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/xinclude.h
xdiff/xmacros.h
xdiff/xmerge.c
xdiff/xpatience.c
xdiff/xprepare.c
xdiff/xprepare.h
xdiff/xtypes.h
xdiff/xutils.c
xdiff/xutils.h

diff --git a/.clang-format b/.clang-format
new file mode 100644 (file)
index 0000000..12a89f9
--- /dev/null
@@ -0,0 +1,169 @@
+# This file is an example configuration for clang-format 5.0.
+#
+# Note that this style definition should only be understood as a hint
+# for writing new code. The rules are still work-in-progress and does
+# not yet exactly match the style we have in the existing code.
+
+# Use tabs whenever we need to fill whitespace that spans at least from one tab
+# stop to the next one.
+UseTab: Always
+TabWidth: 8
+IndentWidth: 8
+ContinuationIndentWidth: 8
+ColumnLimit: 80
+
+# C Language specifics
+Language: Cpp
+
+# Align parameters on the open bracket
+# someLongFunction(argument1,
+#                  argument2);
+AlignAfterOpenBracket: Align
+
+# Don't align consecutive assignments
+# int aaaa = 12;
+# int b = 14;
+AlignConsecutiveAssignments: false
+
+# Don't align consecutive declarations
+# int aaaa = 12;
+# double b = 3.14;
+AlignConsecutiveDeclarations: false
+
+# Align escaped newlines as far left as possible
+# #define A   \
+#   int aaaa; \
+#   int b;    \
+#   int cccccccc;
+AlignEscapedNewlines: Left
+
+# Align operands of binary and ternary expressions
+# int aaa = bbbbbbbbbbb +
+#           cccccc;
+AlignOperands: true
+
+# Don't align trailing comments
+# int a; // Comment a
+# int b = 2; // Comment b
+AlignTrailingComments: false
+
+# By default don't allow putting parameters onto the next line
+# myFunction(foo, bar, baz);
+AllowAllParametersOfDeclarationOnNextLine: false
+
+# Don't allow short braced statements to be on a single line
+# if (a)           not       if (a) return;
+#   return;
+AllowShortBlocksOnASingleLine: false
+AllowShortCaseLabelsOnASingleLine: false
+AllowShortFunctionsOnASingleLine: false
+AllowShortIfStatementsOnASingleLine: false
+AllowShortLoopsOnASingleLine: false
+
+# By default don't add a line break after the return type of top-level functions
+# int foo();
+AlwaysBreakAfterReturnType: None
+
+# Pack as many parameters or arguments onto the same line as possible
+# int myFunction(int aaaaaaaaaaaa, int bbbbbbbb,
+#                int cccc);
+BinPackArguments: true
+BinPackParameters: true
+
+# Attach braces to surrounding context except break before braces on function
+# definitions.
+# void foo()
+# {
+#    if (true) {
+#    } else {
+#    }
+# };
+BreakBeforeBraces: Linux
+
+# Break after operators
+# int valuve = aaaaaaaaaaaaa +
+#              bbbbbb -
+#              ccccccccccc;
+BreakBeforeBinaryOperators: None
+BreakBeforeTernaryOperators: false
+
+# Don't break string literals
+BreakStringLiterals: false
+
+# Use the same indentation level as for the switch statement.
+# Switch statement body is always indented one level more than case labels.
+IndentCaseLabels: false
+
+# Don't indent a function definition or declaration if it is wrapped after the
+# type
+IndentWrappedFunctionNames: false
+
+# Align pointer to the right
+# int *a;
+PointerAlignment: Right
+
+# Don't insert a space after a cast
+# x = (int32)y;    not    x = (int32) y;
+SpaceAfterCStyleCast: false
+
+# Insert spaces before and after assignment operators
+# int a = 5;    not    int a=5;
+# a += 42;             a+=42;
+SpaceBeforeAssignmentOperators: true
+
+# Put a space before opening parentheses only after control statement keywords.
+# void f() {
+#   if (true) {
+#     f();
+#   }
+# }
+SpaceBeforeParens: ControlStatements
+
+# Don't insert spaces inside empty '()'
+SpaceInEmptyParentheses: false
+
+# The number of spaces before trailing line comments (// - comments).
+# This does not affect trailing block comments (/* - comments).
+SpacesBeforeTrailingComments: 1
+
+# Don't insert spaces in casts
+# x = (int32) y;    not    x = ( int32 ) y;
+SpacesInCStyleCastParentheses: false
+
+# Don't insert spaces inside container literals
+# var arr = [1, 2, 3];    not    var arr = [ 1, 2, 3 ];
+SpacesInContainerLiterals: false
+
+# Don't insert spaces after '(' or before ')'
+# f(arg);    not    f( arg );
+SpacesInParentheses: false
+
+# Don't insert spaces after '[' or before ']'
+# int a[5];    not    int a[ 5 ];
+SpacesInSquareBrackets: false
+
+# Insert a space after '{' and before '}' in struct initializers
+Cpp11BracedListStyle: false
+
+# A list of macros that should be interpreted as foreach loops instead of as
+# function calls.
+ForEachMacros: ['for_each_string_list_item']
+
+# The maximum number of consecutive empty lines to keep.
+MaxEmptyLinesToKeep: 1
+
+# No empty line at the start of a block.
+KeepEmptyLinesAtTheStartOfBlocks: false
+
+# Penalties
+# This decides what order things should be done if a line is too long
+PenaltyBreakAssignment: 10
+PenaltyBreakBeforeFirstCallParameter: 30
+PenaltyBreakComment: 10
+PenaltyBreakFirstLessLess: 0
+PenaltyBreakString: 10
+PenaltyExcessCharacter: 100
+PenaltyReturnTypeOnItsOwnLine: 60
+
+# Don't sort #include's
+SortIncludes: false
index 320e33c..8ce9c6b 100644 (file)
@@ -1,3 +1,9 @@
 * whitespace=!indent,trail,space
 *.[ch] whitespace=indent,trail,space diff=cpp
-*.sh whitespace=indent,trail,space
+*.sh whitespace=indent,trail,space eol=lf
+*.perl eol=lf
+*.pm eol=lf
+/Documentation/git-*.txt eol=lf
+/command-list.txt eol=lf
+/GIT-VERSION-GEN eol=lf
+/mergetools/* eol=lf
diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
new file mode 100644 (file)
index 0000000..64e605a
--- /dev/null
@@ -0,0 +1,19 @@
+## Contributing to Git
+
+Thanks for taking the time to contribute to Git! Please be advised that the
+Git community does not use github.com for their contributions. Instead, we use
+a mailing list (git@vger.kernel.org) for code submissions, code
+reviews, and bug reports.
+
+Nevertheless, you can use [submitGit](http://submitgit.herokuapp.com/) to
+conveniently send your Pull Requests commits to our mailing list.
+
+Please read ["A note from the maintainer"](https://git.kernel.org/pub/scm/git/git.git/plain/MaintNotes?h=todo)
+to learn how the Git project is managed, and how you can work with it.
+In addition, we highly recommend you to read [our submission guidelines](../Documentation/SubmittingPatches).
+
+If you prefer video, then [this talk](https://www.youtube.com/watch?v=Q7i_qQW__q4&feature=youtu.be&t=6m4s)
+might be useful to you as the presenter walks you through the contribution
+process by example.
+
+Your friendly Git community!
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644 (file)
index 0000000..adba13e
--- /dev/null
@@ -0,0 +1,7 @@
+Thanks for taking the time to contribute to Git! Please be advised that the
+Git community does not use github.com for their contributions. Instead, we use
+a mailing list (git@vger.kernel.org) for code submissions, code reviews, and
+bug reports. Nevertheless, you can use submitGit to conveniently send your Pull
+Requests commits to our mailing list.
+
+Please read the "guidelines for contributing" linked above!
index 05cb58a..b2a1ae4 100644 (file)
@@ -3,6 +3,7 @@
 /GIT-LDFLAGS
 /GIT-PREFIX
 /GIT-PERL-DEFINES
+/GIT-PERL-HEADER
 /GIT-PYTHON-VARS
 /GIT-SCRIPT-DEFINES
 /GIT-USER-AGENT
@@ -34,6 +35,7 @@
 /git-clone
 /git-column
 /git-commit
+/git-commit-graph
 /git-commit-tree
 /git-config
 /git-count-objects
 /git-read-tree
 /git-rebase
 /git-rebase--am
+/git-rebase--helper
 /git-rebase--interactive
 /git-rebase--merge
 /git-receive-pack
 /git-reflog
-/git-relink
 /git-remote
 /git-remote-http
 /git-remote-https
 /git-rm
 /git-send-email
 /git-send-pack
+/git-serve
 /git-sh-i18n
 /git-sh-i18n--envsubst
 /git-sh-setup
 /config.mak.autogen
 /config.mak.append
 /configure
-/unicode
 /tags
 /TAGS
 /cscope*
diff --git a/.gitmodules b/.gitmodules
new file mode 100644 (file)
index 0000000..cbeebda
--- /dev/null
@@ -0,0 +1,4 @@
+[submodule "sha1collisiondetection"]
+       path = sha1collisiondetection
+       url = https://github.com/cr-marcstevens/sha1collisiondetection.git
+       branch = master
index 9cc33e9..7c71e88 100644 (file)
--- a/.mailmap
+++ b/.mailmap
@@ -113,6 +113,7 @@ 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@cox.net>
 Junio C Hamano <gitster@pobox.com> <junkio@twinsun.com>
+Kaartic Sivaraam <kaartic.sivaraam@gmail.com> <kaarticsivaraam91196@gmail.com>
 Karl Wiberg <kha@treskal.com> Karl  Hasselström
 Karl Wiberg <kha@treskal.com> <kha@yoghurt.hemma.treskal.com>
 Karsten Blees <blees@dcon.de> <karsten.blees@dcon.de>
@@ -151,7 +152,8 @@ Matthias Kestenholz <matthias@spinlock.ch> <mk@spinlock.ch>
 Matthias Urlichs <matthias@urlichs.de> <smurf@kiste.(none)>
 Matthias Urlichs <matthias@urlichs.de> <smurf@smurf.noris.de>
 Michael Coleman <tutufan@gmail.com>
-Michael J Gruber <git@drmicha.warpmail.net> <michaeljgruber+gmane@fastmail.fm>
+Michael J Gruber <git@grubix.eu> <michaeljgruber+gmane@fastmail.fm>
+Michael J Gruber <git@grubix.eu> <git@drmicha.warpmail.net>
 Michael S. Tsirkin <mst@kernel.org> <mst@redhat.com>
 Michael S. Tsirkin <mst@kernel.org> <mst@mellanox.co.il>
 Michael S. Tsirkin <mst@kernel.org> <mst@dev.mellanox.co.il>
@@ -177,6 +179,7 @@ Paolo Bonzini <bonzini@gnu.org> <paolo.bonzini@lu.unisi.ch>
 Pascal Obry <pascal@obry.net> <pascal.obry@gmail.com>
 Pascal Obry <pascal@obry.net> <pascal.obry@wanadoo.fr>
 Pat Notz <patnotz@gmail.com> <pknotz@sandia.gov>
+Patrick Steinhardt <ps@pks.im> <patrick.steinhardt@elego.de>
 Paul Mackerras <paulus@samba.org> <paulus@dorrigo.(none)>
 Paul Mackerras <paulus@samba.org> <paulus@pogo.(none)>
 Peter Baumann <waste.manager@gmx.de> <Peter.B.Baumann@stud.informatik.uni-erlangen.de>
@@ -192,6 +195,9 @@ Philippe Bruhat <book@cpan.org>
 Ralf Thielow <ralf.thielow@gmail.com> <ralf.thielow@googlemail.com>
 Ramsay Jones <ramsay@ramsayjones.plus.com> <ramsay@ramsay1.demon.co.uk>
 René Scharfe <l.s.r@web.de> <rene.scharfe@lsrfire.ath.cx>
+René Scharfe <l.s.r@web.de> Rene Scharfe
+Richard Hansen <rhansen@rhansen.org> <hansenr@google.com>
+Richard Hansen <rhansen@rhansen.org> <rhansen@bbn.com>
 Robert Fitzsimons <robfitz@273k.net>
 Robert Shearman <robertshearman@gmail.com> <rob@codeweavers.com>
 Robert Zeh <robert.a.zeh@gmail.com>
@@ -223,6 +229,7 @@ Steven Walter <stevenrwalter@gmail.com> <swalter@lexmark.com>
 Steven Walter <stevenrwalter@gmail.com> <swalter@lpdev.prtdev.lexmark.com>
 Sven Verdoolaege <skimo@kotnet.org> <Sven.Verdoolaege@cs.kuleuven.ac.be>
 Sven Verdoolaege <skimo@kotnet.org> <skimo@liacs.nl>
+SZEDER Gábor <szeder.dev@gmail.com> <szeder@ira.uka.de>
 Tay Ray Chuan <rctay89@gmail.com>
 Ted Percival <ted@midg3t.net> <ted.percival@quest.com>
 Theodore Ts'o <tytso@mit.edu>
index 37a1e1f..5f5ee4f 100644 (file)
@@ -21,102 +21,56 @@ addons:
     - git-svn
     - apache2
 
-env:
-  global:
-    - DEVELOPER=1
-    # The Linux build installs the defined dependency versions below.
-    # The OS X build installs the latest available versions. Keep that
-    # in mind when you encounter a broken OS X build!
-    - LINUX_P4_VERSION="16.1"
-    - LINUX_GIT_LFS_VERSION="1.2.0"
-    - DEFAULT_TEST_TARGET=prove
-    - GIT_PROVE_OPTS="--timer --jobs 3 --state=failed,slow,save"
-    - GIT_TEST_OPTS="--verbose --tee"
-    - GIT_TEST_HTTPD=true
-    - GIT_TEST_CLONE_2GB=YesPlease
-    # t9810 occasionally fails on Travis CI OS X
-    # t9816 occasionally fails with "TAP out of sequence errors" on Travis CI OS X
-    - GIT_SKIP_TESTS="t9810 t9816"
-
 matrix:
   include:
-    - env: Documentation
+    - env: jobname=GETTEXT_POISON
+      os: linux
+      compiler:
+      addons:
+      before_install:
+    - env: jobname=Windows
+      os: linux
+      compiler:
+      addons:
+      before_install:
+      script:
+        - >
+          test "$TRAVIS_REPO_SLUG" != "git/git" ||
+          ci/run-windows-build.sh $TRAVIS_BRANCH $(git rev-parse HEAD)
+      after_failure:
+    - env: jobname=Linux32
+      os: linux
+      compiler:
+      addons:
+      services:
+        - docker
+      before_install:
+      script: ci/run-linux32-docker.sh
+    - env: jobname=StaticAnalysis
+      os: linux
+      compiler:
+      addons:
+        apt:
+          packages:
+          - coccinelle
+      before_install:
+      script: ci/run-static-analysis.sh
+      after_failure:
+    - env: jobname=Documentation
       os: linux
-      compiler: clang
+      compiler:
       addons:
         apt:
           packages:
           - asciidoc
           - xmlto
       before_install:
-      before_script:
       script: ci/test-documentation.sh
       after_failure:
 
-before_install:
-  - >
-    case "${TRAVIS_OS_NAME:-linux}" in
-    linux)
-      mkdir --parents custom/p4
-      pushd custom/p4
-        wget --quiet http://filehost.perforce.com/perforce/r$LINUX_P4_VERSION/bin.linux26x86_64/p4d
-        wget --quiet http://filehost.perforce.com/perforce/r$LINUX_P4_VERSION/bin.linux26x86_64/p4
-        chmod u+x p4d
-        chmod u+x p4
-        export PATH="$(pwd):$PATH"
-      popd
-      mkdir --parents custom/git-lfs
-      pushd custom/git-lfs
-        wget --quiet https://github.com/github/git-lfs/releases/download/v$LINUX_GIT_LFS_VERSION/git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz
-        tar --extract --gunzip --file "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz"
-        cp git-lfs-$LINUX_GIT_LFS_VERSION/git-lfs .
-        export PATH="$(pwd):$PATH"
-      popd
-      ;;
-    osx)
-      brew_force_set_latest_binary_hash () {
-        FORMULA=$1
-        SHA=$(brew fetch --force $FORMULA 2>&1 | grep ^SHA256: | cut -d ' ' -f 2)
-        sed -E -i.bak "s/sha256 \"[0-9a-f]{64}\"/sha256 \"$SHA\"/g" \
-          "$(brew --repository homebrew/homebrew-binary)/$FORMULA.rb"
-      }
-      brew update --quiet
-      brew tap homebrew/binary --quiet
-      brew_force_set_latest_binary_hash perforce
-      brew_force_set_latest_binary_hash perforce-server
-      # Uncomment this if you want to run perf tests:
-      # brew install gnu-time
-      brew install git-lfs perforce-server perforce gettext
-      brew link --force gettext
-      ;;
-    esac;
-    echo "$(tput setaf 6)Perforce Server Version$(tput sgr0)";
-    p4d -V | grep Rev.;
-    echo "$(tput setaf 6)Perforce Client Version$(tput sgr0)";
-    p4 -V | grep Rev.;
-    echo "$(tput setaf 6)Git-LFS Version$(tput sgr0)";
-    git-lfs version;
-    mkdir -p $HOME/travis-cache;
-    ln -s $HOME/travis-cache/.prove t/.prove;
-
-before_script: make --jobs=2
-
-script: make --quiet test
-
-after_failure:
-  - >
-    : '<-- Click here to see detailed test output!                                                        ';
-    for TEST_EXIT in t/test-results/*.exit;
-    do
-      if [ "$(cat "$TEST_EXIT")" != "0" ];
-      then
-        TEST_OUT="${TEST_EXIT%exit}out";
-        echo "------------------------------------------------------------------------";
-        echo "$(tput setaf 1)${TEST_OUT}...$(tput sgr0)";
-        echo "------------------------------------------------------------------------";
-        cat "${TEST_OUT}";
-      fi;
-    done;
+before_install: ci/install-dependencies.sh
+script: ci/run-build-and-tests.sh
+after_failure: ci/print-test-failures.sh
 
 notifications:
   email: false
diff --git a/.tsan-suppressions b/.tsan-suppressions
new file mode 100644 (file)
index 0000000..8c85014
--- /dev/null
@@ -0,0 +1,10 @@
+# Suppressions for ThreadSanitizer (tsan).
+#
+# This file is used by setting the environment variable TSAN_OPTIONS to, e.g.,
+# "suppressions=$(pwd)/.tsan-suppressions". Observe that relative paths such as
+# ".tsan-suppressions" might not work.
+
+# A static variable is written to racily, but we always write the same value, so
+# in practice it (hopefully!) doesn't matter.
+race:^want_color$
+race:^transfer_debug$
index 2c8b2d6..c7096f1 100644 (file)
@@ -11,3 +11,4 @@ doc.dep
 cmds-*.txt
 mergetools-*.txt
 manpage-base-url.xsl
+SubmittingPatches.txt
index 4cd95da..48aa4ed 100644 (file)
@@ -24,7 +24,7 @@ code.  For Git in general, a few rough rules are:
 
    "Once it _is_ in the tree, it's not really worth the patch noise to
    go and fix it up."
-   Cf. http://article.gmane.org/gmane.linux.kernel/943020
+   Cf. http://lkml.iu.edu/hypermail/linux/kernel/1001.3/01069.html
 
 Make your code readable and sensible, and don't try to be clever.
 
@@ -206,11 +206,38 @@ For C programs:
                x = 1;
        }
 
-   is frowned upon.  A gray area is when the statement extends
-   over a few lines, and/or you have a lengthy comment atop of
-   it.  Also, like in the Linux kernel, if there is a long list
-   of "else if" statements, it can make sense to add braces to
-   single line blocks.
+   is frowned upon. But there are a few exceptions:
+
+       - When the statement extends over a few lines (e.g., a while loop
+         with an embedded conditional, or a comment). E.g.:
+
+               while (foo) {
+                       if (x)
+                               one();
+                       else
+                               two();
+               }
+
+               if (foo) {
+                       /*
+                        * This one requires some explanation,
+                        * so we're better off with braces to make
+                        * it obvious that the indentation is correct.
+                        */
+                       doit();
+               }
+
+       - When there are multiple arms to a conditional and some of them
+         require braces, enclose even a single line block in braces for
+         consistency. E.g.:
+
+               if (foo) {
+                       doit();
+               } else {
+                       one();
+                       two();
+                       three();
+               }
 
  - We try to avoid assignments in the condition of an "if" statement.
 
@@ -229,12 +256,12 @@ For C programs:
 
    Note however that a comment that explains a translatable string to
    translators uses a convention of starting with a magic token
-   "TRANSLATORS: " immediately after the opening delimiter, even when
-   it spans multiple lines.  We do not add an asterisk at the beginning
-   of each line, either.  E.g.
+   "TRANSLATORS: ", e.g.
 
-       /* TRANSLATORS: here is a comment that explains the string
-          to be translated, that follows immediately after it */
+       /*
+        * TRANSLATORS: here is a comment that explains the string to
+        * be translated, that follows immediately after it.
+        */
        _("Here is a translatable string explained by the above.");
 
  - Double negation is often harder to understand than no negation
@@ -359,6 +386,11 @@ For C programs:
  - Use Git's gettext wrappers to make the user interface
    translatable. See "Marking strings for translation" in po/README.
 
+ - Variables and functions local to a given source file should be marked
+   with "static". Variables that are visible to other source files
+   must be declared with "extern" in header files. However, function
+   declarations should not use "extern", as that is already the default.
+
 For Perl programs:
 
  - Most of the C guidelines above apply.
index b43d66e..fa9e5c0 100644 (file)
@@ -31,6 +31,7 @@ MAN7_TXT += giteveryday.txt
 MAN7_TXT += gitglossary.txt
 MAN7_TXT += gitnamespaces.txt
 MAN7_TXT += gitrevisions.txt
+MAN7_TXT += gitsubmodules.txt
 MAN7_TXT += gittutorial-2.txt
 MAN7_TXT += gittutorial.txt
 MAN7_TXT += gitworkflows.txt
@@ -38,6 +39,7 @@ 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))
+GIT_MAN_REF = master
 
 OBSOLETE_HTML += everyday.html
 OBSOLETE_HTML += git-remote-helpers.html
@@ -66,13 +68,17 @@ 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 += SubmittingPatches
+TECH_DOCS += technical/hash-function-transition
 TECH_DOCS += technical/http-protocol
 TECH_DOCS += technical/index-format
+TECH_DOCS += technical/long-running-process-protocol
 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/protocol-v2
 TECH_DOCS += technical/racy-git
 TECH_DOCS += technical/send-pack-pipeline
 TECH_DOCS += technical/shallow
@@ -120,6 +126,7 @@ INSTALL_INFO = install-info
 DOCBOOK2X_TEXI = docbook2x-texi
 DBLATEX = dblatex
 ASCIIDOC_DBLATEX_DIR = /etc/asciidoc/dblatex
+DBLATEX_COMMON = -p $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.xsl -s $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.sty
 ifndef PERL_PATH
        PERL_PATH = /usr/bin/perl
 endif
@@ -173,6 +180,17 @@ ifdef GNU_ROFF
 XMLTO_EXTRA += -m manpage-quote-apos.xsl
 endif
 
+ifdef USE_ASCIIDOCTOR
+ASCIIDOC = asciidoctor
+ASCIIDOC_CONF =
+ASCIIDOC_HTML = xhtml5
+ASCIIDOC_DOCBOOK = docbook45
+ASCIIDOC_EXTRA += -acompat-mode
+ASCIIDOC_EXTRA += -I. -rasciidoctor-extensions
+ASCIIDOC_EXTRA += -alitdd='&\#x2d;&\#x2d;'
+DBLATEX_COMMON =
+endif
+
 SHELL_PATH ?= $(SHELL)
 # Shell quote;
 SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
@@ -310,6 +328,7 @@ clean:
        $(RM) *.pdf
        $(RM) howto-index.txt howto/*.html doc.dep
        $(RM) technical/*.html technical/api-index.txt
+       $(RM) SubmittingPatches.txt
        $(RM) $(cmds_txt) $(mergetools_txt) *.made
        $(RM) manpage-base-url.xsl
 
@@ -337,7 +356,7 @@ manpage-base-url.xsl: manpage-base-url.xsl.in
 
 user-manual.xml: user-manual.txt user-manual.conf
        $(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
-       $(TXT_TO_XML) -d article -o $@+ $< && \
+       $(TXT_TO_XML) -d book -o $@+ $< && \
        mv $@+ $@
 
 technical/api-index.txt: technical/api-index-skel.txt \
@@ -348,6 +367,9 @@ technical/%.html: ASCIIDOC_EXTRA += -a git-relative-html-prefix=../
 $(patsubst %,%.html,$(API_DOCS) technical/api-index $(TECH_DOCS)): %.html : %.txt asciidoc.conf
        $(QUIET_ASCIIDOC)$(TXT_TO_HTML) $*.txt
 
+SubmittingPatches.txt: SubmittingPatches
+       $(QUIET_GEN) cp $< $@
+
 XSLT = docbook.xsl
 XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
 
@@ -368,13 +390,14 @@ user-manual.texi: user-manual.xml
 
 user-manual.pdf: user-manual.xml
        $(QUIET_DBLATEX)$(RM) $@+ $@ && \
-       $(DBLATEX) -o $@+ -p $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.xsl -s $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.sty $< && \
+       $(DBLATEX) -o $@+ $(DBLATEX_COMMON) $< && \
        mv $@+ $@
 
-gitman.texi: $(MAN_XML) cat-texi.perl
+gitman.texi: $(MAN_XML) cat-texi.perl texi.xsl
        $(QUIET_DB2TEXI)$(RM) $@+ $@ && \
-       ($(foreach xml,$(MAN_XML),$(DOCBOOK2X_TEXI) --encoding=UTF-8 \
-               --to-stdout $(xml) &&) true) > $@++ && \
+       ($(foreach xml,$(sort $(MAN_XML)),xsltproc -o $(xml)+ texi.xsl $(xml) && \
+               $(DOCBOOK2X_TEXI) --encoding=UTF-8 --to-stdout $(xml)+ && \
+               rm $(xml)+ &&) true) > $@++ && \
        $(PERL_PATH) cat-texi.perl $@ <$@++ >$@+ && \
        rm $@++ && \
        mv $@+ $@
@@ -417,14 +440,14 @@ require-manrepo::
        then echo "git-manpages repository must exist at $(MAN_REPO)"; exit 1; fi
 
 quick-install-man: require-manrepo
-       '$(SHELL_PATH_SQ)' ./install-doc-quick.sh $(MAN_REPO) $(DESTDIR)$(mandir)
+       '$(SHELL_PATH_SQ)' ./install-doc-quick.sh $(MAN_REPO) $(DESTDIR)$(mandir) $(GIT_MAN_REF)
 
 require-htmlrepo::
        @if test ! -d $(HTML_REPO); \
        then echo "git-htmldocs repository must exist at $(HTML_REPO)"; exit 1; fi
 
 quick-install-html: require-htmlrepo
-       '$(SHELL_PATH_SQ)' ./install-doc-quick.sh $(HTML_REPO) $(DESTDIR)$(htmldir)
+       '$(SHELL_PATH_SQ)' ./install-doc-quick.sh $(HTML_REPO) $(DESTDIR)$(htmldir) $(GIT_MAN_REF)
 
 print-man1:
        @for i in $(MAN1_TXT); do echo $$i; done
index be68524..71a86cb 100644 (file)
@@ -69,7 +69,7 @@ Fixes since v1.7.10
  * 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 using the upstream information to a remote unrelated to
    $there.
 
  * Giving "--continue" to a conflicted "rebase -i" session skipped a
index ed2de0d..c4d4397 100644 (file)
@@ -41,5 +41,71 @@ Fixes since v2.10.1
    that were detected without dying itself, but under some conditions
    it didn't and died instead, which has been fixed.
 
+ * When "git fetch" tries to find where the history of the repository
+   it runs in has diverged from what the other side has, it has a
+   mechanism to avoid digging too deep into irrelevant side branches.
+   This however did not work well over the "smart-http" transport due
+   to a design bug, which has been fixed.
+
+ * When we started cURL to talk to imap server when a new enough
+   version of cURL library is available, we forgot to explicitly add
+   imap(s):// before the destination.  To some folks, that didn't work
+   and the library tried to make HTTP(s) requests instead.
+
+ * The ./configure script generated from configure.ac was taught how
+   to detect support of SSL by libcurl better.
+
+ * http.emptyauth configuration is a way to allow an empty username to
+   pass when attempting to authenticate using mechanisms like
+   Kerberos.  We took an unspecified (NULL) username and sent ":"
+   (i.e. no username, no password) to CURLOPT_USERPWD, but did not do
+   the same when the username is explicitly set to an empty string.
+
+ * "git clone" of a local repository can be done at the filesystem
+   level, but the codepath did not check errors while copying and
+   adjusting the file that lists alternate object stores.
+
+ * Documentation for "git commit" was updated to clarify that "commit
+   -p <paths>" adds to the current contents of the index to come up
+   with what to commit.
+
+ * A stray symbolic link in $GIT_DIR/refs/ directory could make name
+   resolution loop forever, which has been corrected.
+
+ * The "submodule.<name>.path" stored in .gitmodules is never copied
+   to .git/config and such a key in .git/config has no meaning, but
+   the documentation described it and submodule.<name>.url next to
+   each other as if both belong to .git/config.  This has been fixed.
+
+ * Recent git allows submodule.<name>.branch to use a special token
+   "." instead of the branch name; the documentation has been updated
+   to describe it.
+
+ * In a worktree connected to a repository elsewhere, created via "git
+   worktree", "git checkout" attempts to protect users from confusion
+   by refusing to check out a branch that is already checked out in
+   another worktree.  However, this also prevented checking out a
+   branch, which is designated as the primary branch of a bare
+   reopsitory, in a worktree that is connected to the bare
+   repository.  The check has been corrected to allow it.
+
+ * "git rebase" immediately after "git clone" failed to find the fork
+   point from the upstream.
+
+ * When fetching from a remote that has many tags that are irrelevant
+   to branches we are following, we used to waste way too many cycles
+   when checking if the object pointed at by a tag (that we are not
+   going to fetch!) exists in our repository too carefully.
+
+ * The Travis CI configuration we ship ran the tests with --verbose
+   option but this risks non-TAP output that happens to be "ok" to be
+   misinterpreted as TAP signalling a test that passed.  This resulted
+   in unnecessary failure.  This has been corrected by introducing a
+   new mode to run our tests in the test harness to send the verbose
+   output separately to the log file.
+
+ * Some AsciiDoc formatter mishandles a displayed illustration with
+   tabs in it.  Adjust a few of them in merge-base documentation to
+   work around them.
 
 Also contains minor documentation updates and code clean-ups.
diff --git a/Documentation/RelNotes/2.10.3.txt b/Documentation/RelNotes/2.10.3.txt
new file mode 100644 (file)
index 0000000..ad6a01b
--- /dev/null
@@ -0,0 +1,55 @@
+Git v2.10.3 Release Notes
+=========================
+
+Fixes since v2.10.2
+-------------------
+
+ * Extract a small helper out of the function that reads the authors
+   script file "git am" internally uses.
+   This by itself is not useful until a second caller appears in the
+   future for "rebase -i" helper.
+
+ * The command-line completion script (in contrib/) learned to
+   complete "git cmd ^mas<HT>" to complete the negative end of
+   reference to "git cmd ^master".
+
+ * "git send-email" attempts to pick up valid e-mails from the
+   trailers, but people in real world write non-addresses there, like
+   "Cc: Stable <add@re.ss> # 4.8+", which broke the output depending
+   on the availability and vintage of Mail::Address perl module.
+
+ * The code that we have used for the past 10+ years to cycle
+   4-element ring buffers turns out to be not quite portable in
+   theoretical world.
+
+ * "git daemon" used fixed-length buffers to turn URL to the
+   repository the client asked for into the server side directory
+   path, using snprintf() to avoid overflowing these buffers, but
+   allowed possibly truncated paths to the directory.  This has been
+   tightened to reject such a request that causes overlong path to be
+   required to serve.
+
+ * Recent update to git-sh-setup (a library of shell functions that
+   are used by our in-tree scripted Porcelain commands) included
+   another shell library git-sh-i18n without specifying where it is,
+   relying on the $PATH.  This has been fixed to be more explicit by
+   prefixing $(git --exec-path) output in front.
+
+ * Fix for a racy false-positive test failure.
+
+ * Portability update and workaround for builds on recent Mac OS X.
+
+ * Update to the test framework made in 2.9 timeframe broke running
+   the tests under valgrind, which has been fixed.
+
+ * Improve the rule to convert "unsigned char [20]" into "struct
+   object_id *" in contrib/coccinelle/
+
+ * "git-shell" rejects a request to serve a repository whose name
+   begins with a dash, which makes it no longer possible to get it
+   confused into spawning service programs like "git-upload-pack" with
+   an option like "--help", which in turn would spawn an interactive
+   pager, instead of working with the repository user asked to access
+   (i.e. the one whose name is "--help").
+
+Also contains minor documentation updates and code clean-ups.
diff --git a/Documentation/RelNotes/2.10.4.txt b/Documentation/RelNotes/2.10.4.txt
new file mode 100644 (file)
index 0000000..ee8142a
--- /dev/null
@@ -0,0 +1,4 @@
+Git v2.10.4 Release Notes
+=========================
+
+This release forward-ports the fix for "ssh://..." URL from Git v2.7.6
diff --git a/Documentation/RelNotes/2.10.5.txt b/Documentation/RelNotes/2.10.5.txt
new file mode 100644 (file)
index 0000000..a498fd6
--- /dev/null
@@ -0,0 +1,17 @@
+Git v2.10.5 Release Notes
+=========================
+
+Fixes since v2.10.4
+-------------------
+
+ * "git cvsserver" no longer is invoked by "git daemon" by default,
+   as it is old and largely unmaintained.
+
+ * Various Perl scripts did not use safe_pipe_capture() instead of
+   backticks, leaving them susceptible to end-user input.  They have
+   been corrected.
+
+Credits go to joernchen <joernchen@phenoelit.de> for finding the
+unsafe constructs in "git cvsserver", and to Jeff King at GitHub for
+finding and fixing instances of the same issue in other scripts.
+
index 8608e86..b7b7dd3 100644 (file)
@@ -1,11 +1,38 @@
 Git 2.11 Release Notes
 ======================
 
+Backward compatibility notes.
+
+ * An empty string used as a pathspec element has always meant
+   'everything matches', but it is too easy to write a script that
+   finds a path to remove in $path and run 'git rm "$paht"' by
+   mistake (when the user meant to give "$path"), which ends up
+   removing everything.  This release starts warning about the
+   use of an empty string that is used for 'everything matches' and
+   asks users to use a more explicit '.' for that instead.
+
+   The hope is that existing users will not mind this change, and
+   eventually the warning can be turned into a hard error, upgrading
+   the deprecation into removal of this (mis)feature.
+
+ * The historical argument order "git merge <msg> HEAD <commit>..."
+   has been deprecated for quite some time, and will be removed in the
+   next release (not this one).
+
+ * The default abbreviation length, which has historically been 7, now
+   scales as the repository grows, using the approximate number of
+   objects in the repository and a bit of math around the birthday
+   paradox.  The logic suggests to use 12 hexdigits for the Linux
+   kernel, and 9 to 10 for Git itself.
+
+
 Updates since v2.10
 -------------------
 
 UI, Workflows & Features