OSDN Git Service

git-core/git.git
7 years agoMerge branch 'bw/submodule-config-cleanup'
Junio C Hamano [Sun, 27 Aug 2017 05:55:07 +0000 (22:55 -0700)]
Merge branch 'bw/submodule-config-cleanup'

Code clean-up to avoid mixing values read from the .gitmodules file
and values read from the .git/config file.

* bw/submodule-config-cleanup:
  submodule: remove gitmodules_config
  unpack-trees: improve loading of .gitmodules
  submodule-config: lazy-load a repository's .gitmodules file
  submodule-config: move submodule-config functions to submodule-config.c
  submodule-config: remove support for overlaying repository config
  diff: stop allowing diff to have submodules configured in .git/config
  submodule: remove submodule_config callback routine
  unpack-trees: don't respect submodule.update
  submodule: don't rely on overlayed config when setting diffopts
  fetch: don't overlay config with submodule-config
  submodule--helper: don't overlay config in update-clone
  submodule--helper: don't overlay config in remote_submodule_branch
  add, reset: ensure submodules can be added or reset
  submodule: don't use submodule_from_name
  t7411: check configuration parsing errors

7 years agoMerge branch 'js/gitweb-raw-blob-link-in-history'
Junio C Hamano [Sun, 27 Aug 2017 05:55:07 +0000 (22:55 -0700)]
Merge branch 'js/gitweb-raw-blob-link-in-history'

"gitweb" shows a link to visit the 'raw' contents of blbos in the
history overview page.

* js/gitweb-raw-blob-link-in-history:
  gitweb: add 'raw' blob_plain link in history overview

7 years agoMerge branch 'po/object-id'
Junio C Hamano [Sun, 27 Aug 2017 05:55:06 +0000 (22:55 -0700)]
Merge branch 'po/object-id'

* po/object-id:
  sha1_file: convert index_stream to struct object_id
  sha1_file: convert hash_sha1_file_literally to struct object_id
  sha1_file: convert index_fd to struct object_id
  sha1_file: convert index_path to struct object_id
  read-cache: convert to struct object_id
  builtin/hash-object: convert to struct object_id

7 years agoMerge branch 'jn/vcs-svn-cleanup'
Junio C Hamano [Sun, 27 Aug 2017 05:55:06 +0000 (22:55 -0700)]
Merge branch 'jn/vcs-svn-cleanup'

Code clean-up.

* jn/vcs-svn-cleanup:
  vcs-svn: move remaining repo_tree functions to fast_export.h
  vcs-svn: remove repo_delete wrapper function
  vcs-svn: remove custom mode constants
  vcs-svn: remove more unused prototypes and declarations

7 years agoMerge branch 'bc/vcs-svn-cleanup'
Junio C Hamano [Sun, 27 Aug 2017 05:55:05 +0000 (22:55 -0700)]
Merge branch 'bc/vcs-svn-cleanup'

Code clean-up.

* bc/vcs-svn-cleanup:
  vcs-svn: rename repo functions to "svn_repo"
  vcs-svn: remove unused prototypes

7 years agoMerge branch 'tb/apply-with-crlf'
Junio C Hamano [Sun, 27 Aug 2017 05:55:05 +0000 (22:55 -0700)]
Merge branch 'tb/apply-with-crlf'

"git apply" that is used as a better "patch -p1" failed to apply a
taken from a file with CRLF line endings to a file with CRLF line
endings.  The root cause was because it misused convert_to_git()
that tried to do "safe-crlf" processing by looking at the index
entry at the same path, which is a nonsense---in that mode, "apply"
is not working on the data in (or derived from) the index at all.
This has been fixed.

* tb/apply-with-crlf:
  apply: file commited with CRLF should roundtrip diff and apply
  convert: add SAFE_CRLF_KEEP_CRLF

7 years agoMerge branch 'jt/stash-tests'
Junio C Hamano [Sun, 27 Aug 2017 05:55:04 +0000 (22:55 -0700)]
Merge branch 'jt/stash-tests'

Test update to improve coverage for "git stash" operations.

* jt/stash-tests:
  stash: add a test for stashing in a detached state
  stash: add a test for when apply fails during stash branch
  stash: add a test for stash create with no files

7 years agoMerge branch 'jk/trailers-parse'
Junio C Hamano [Sun, 27 Aug 2017 05:55:04 +0000 (22:55 -0700)]
Merge branch 'jk/trailers-parse'

"git interpret-trailers" has been taught a "--parse" and a few
other options to make it easier for scripts to grab existing
trailer lines from a commit log message.

* jk/trailers-parse:
  doc/interpret-trailers: fix "the this" typo
  pretty: support normalization options for %(trailers)
  t4205: refactor %(trailers) tests
  pretty: move trailer formatting to trailer.c
  interpret-trailers: add --parse convenience option
  interpret-trailers: add an option to unfold values
  interpret-trailers: add an option to show only existing trailers
  interpret-trailers: add an option to show only the trailers
  trailer: put process_trailers() options into a struct

7 years agoMerge branch 'pb/trailers-from-command-line'
Junio C Hamano [Sun, 27 Aug 2017 05:55:04 +0000 (22:55 -0700)]
Merge branch 'pb/trailers-from-command-line'

"git interpret-trailers" learned to take the trailer specifications
from the command line that overrides the configured values.

* pb/trailers-from-command-line:
  interpret-trailers: fix documentation typo
  interpret-trailers: add options for actions
  trailers: introduce struct new_trailer_item
  trailers: export action enums and corresponding lookup functions

7 years agoMerge branch 'jt/diff-color-move-fix'
Junio C Hamano [Sun, 27 Aug 2017 05:55:04 +0000 (22:55 -0700)]
Merge branch 'jt/diff-color-move-fix'

A handful of bugfixes and an improvement to "diff --color-moved".

* jt/diff-color-move-fix:
  diff: define block by number of alphanumeric chars
  diff: respect MIN_BLOCK_LENGTH for last block
  diff: avoid redundantly clearing a flag

7 years agoMerge branch 'sb/diff-color-move'
Junio C Hamano [Sun, 27 Aug 2017 05:55:03 +0000 (22:55 -0700)]
Merge branch 'sb/diff-color-move'

"git diff" has been taught to optionally paint new lines that are
the same as deleted lines elsewhere differently from genuinely new
lines.

* sb/diff-color-move: (25 commits)
  diff: document the new --color-moved setting
  diff.c: add dimming to moved line detection
  diff.c: color moved lines differently, plain mode
  diff.c: color moved lines differently
  diff.c: buffer all output if asked to
  diff.c: emit_diff_symbol learns about DIFF_SYMBOL_SUMMARY
  diff.c: emit_diff_symbol learns about DIFF_SYMBOL_STAT_SEP
  diff.c: convert word diffing to use emit_diff_symbol
  diff.c: convert show_stats to use emit_diff_symbol
  diff.c: convert emit_binary_diff_body to use emit_diff_symbol
  submodule.c: migrate diff output to use emit_diff_symbol
  diff.c: emit_diff_symbol learns DIFF_SYMBOL_REWRITE_DIFF
  diff.c: emit_diff_symbol learns about DIFF_SYMBOL_BINARY_FILES
  diff.c: emit_diff_symbol learns DIFF_SYMBOL_HEADER
  diff.c: emit_diff_symbol learns DIFF_SYMBOL_FILEPAIR_{PLUS, MINUS}
  diff.c: emit_diff_symbol learns DIFF_SYMBOL_CONTEXT_INCOMPLETE
  diff.c: emit_diff_symbol learns DIFF_SYMBOL_WORDS[_PORCELAIN]
  diff.c: migrate emit_line_checked to use emit_diff_symbol
  diff.c: emit_diff_symbol learns DIFF_SYMBOL_NO_LF_EOF
  diff.c: emit_diff_symbol learns DIFF_SYMBOL_CONTEXT_FRAGINFO
  ...

7 years agoThe fourth batch post 2.14
Junio C Hamano [Thu, 24 Aug 2017 17:37:44 +0000 (10:37 -0700)]
The fourth batch post 2.14

Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge branch 'jk/doc-the-this'
Junio C Hamano [Thu, 24 Aug 2017 17:20:03 +0000 (10:20 -0700)]
Merge branch 'jk/doc-the-this'

Doc clean-up.

* jk/doc-the-this:
  doc: fix typo in sendemail.identity

7 years agoMerge branch 'rs/commit-h-single-parent-cleanup'
Junio C Hamano [Thu, 24 Aug 2017 17:20:03 +0000 (10:20 -0700)]
Merge branch 'rs/commit-h-single-parent-cleanup'

Code clean-up.

* rs/commit-h-single-parent-cleanup:
  commit: remove unused inline function single_parent()

7 years agoMerge branch 'jc/simplify-progress'
Junio C Hamano [Thu, 24 Aug 2017 17:20:02 +0000 (10:20 -0700)]
Merge branch 'jc/simplify-progress'

The API to start showing progress meter after a short delay has
been simplified.

* jc/simplify-progress:
  progress: simplify "delayed" progress API

7 years agoMerge branch 'tc/curl-with-backports'
Junio C Hamano [Thu, 24 Aug 2017 17:20:02 +0000 (10:20 -0700)]
Merge branch 'tc/curl-with-backports'

Updates to the HTTP layer we made recently unconditionally used
features of libCurl without checking the existence of them, causing
compilation errors, which has been fixed.  Also migrate the code to
check feature macros, not version numbers, to cope better with
libCurl that vendor ships with backported features.

* tc/curl-with-backports:
  http: use a feature check to enable GSSAPI delegation control
  http: fix handling of missing CURLPROTO_*

7 years agoMerge branch 'cc/subprocess-handshake-missing-capabilities'
Junio C Hamano [Thu, 24 Aug 2017 17:20:02 +0000 (10:20 -0700)]
Merge branch 'cc/subprocess-handshake-missing-capabilities'

When handshake with a subprocess filter notices that the process
asked for an unknown capability, Git did not report what program
the offending subprocess was running.  This has been corrected.

* cc/subprocess-handshake-missing-capabilities:
  sub-process: print the cmd when a capability is unsupported

7 years agoMerge branch 'rs/object-id'
Junio C Hamano [Thu, 24 Aug 2017 17:20:02 +0000 (10:20 -0700)]
Merge branch 'rs/object-id'

Conversion from uchar[20] to struct object_id continues.

* rs/object-id:
  tree-walk: convert fill_tree_descriptor() to object_id

7 years agoMerge branch 'lg/merge-signoff'
Junio C Hamano [Thu, 24 Aug 2017 17:20:01 +0000 (10:20 -0700)]
Merge branch 'lg/merge-signoff'

"git merge" learned a "--signoff" option to add the Signed-off-by:
trailer with the committer's name.

* lg/merge-signoff:
  merge: add a --signoff flag

7 years agoSync with maint
Junio C Hamano [Wed, 23 Aug 2017 21:36:38 +0000 (14:36 -0700)]
Sync with maint

* maint:
  Prepare for 2.14.2

7 years agoPrepare for 2.14.2
Junio C Hamano [Wed, 23 Aug 2017 21:36:03 +0000 (14:36 -0700)]
Prepare for 2.14.2

Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge branch 'jt/t1450-fsck-corrupt-packfile' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:52 +0000 (14:33 -0700)]
Merge branch 'jt/t1450-fsck-corrupt-packfile' into maint

A test update.

* jt/t1450-fsck-corrupt-packfile:
  tests: ensure fsck fails on corrupt packfiles

7 years agoMerge branch 'jb/t8008-cleanup' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:52 +0000 (14:33 -0700)]
Merge branch 'jb/t8008-cleanup' into maint

Code clean-up.

* jb/t8008-cleanup:
  t8008: rely on rev-parse'd HEAD instead of sha1 value

7 years agoMerge branch 'jt/subprocess-handshake' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:52 +0000 (14:33 -0700)]
Merge branch 'jt/subprocess-handshake' into maint

Code cleanup.

* jt/subprocess-handshake:
  sub-process: refactor handshake to common function
  Documentation: migrate sub-process docs to header
  convert: add "status=delayed" to filter process protocol
  convert: refactor capabilities negotiation
  convert: move multiple file filter error handling to separate function
  convert: put the flags field before the flag itself for consistent style
  t0021: write "OUT <size>" only on success
  t0021: make debug log file name configurable
  t0021: keep filter log files on comparison

7 years agoMerge branch 'dc/fmt-merge-msg-microcleanup' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:52 +0000 (14:33 -0700)]
Merge branch 'dc/fmt-merge-msg-microcleanup' into maint

Code cleanup.

* dc/fmt-merge-msg-microcleanup:
  fmt-merge-msg: fix coding style

7 years agoMerge branch 'ah/doc-wserrorhighlight' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:51 +0000 (14:33 -0700)]
Merge branch 'ah/doc-wserrorhighlight' into maint

Doc update.

* ah/doc-wserrorhighlight:
  doc: add missing values "none" and "default" for diff.wsErrorHighlight

7 years agoMerge branch 'cc/ref-is-hidden-microcleanup' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:50 +0000 (14:33 -0700)]
Merge branch 'cc/ref-is-hidden-microcleanup' into maint

Code cleanup.

* cc/ref-is-hidden-microcleanup:
  refs: use skip_prefix() in ref_is_hidden()

7 years agoMerge branch 'js/run-process-parallel-api-fix' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:49 +0000 (14:33 -0700)]
Merge branch 'js/run-process-parallel-api-fix' into maint

API fix.

* js/run-process-parallel-api-fix:
  run_processes_parallel: change confusing task_cb convention

7 years agoMerge branch 'rs/pack-objects-pbase-cleanup' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:48 +0000 (14:33 -0700)]
Merge branch 'rs/pack-objects-pbase-cleanup' into maint

Code clean-up.

* rs/pack-objects-pbase-cleanup:
  pack-objects: remove unnecessary NULL check

7 years agoMerge branch 'jt/fsck-code-cleanup' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:48 +0000 (14:33 -0700)]
Merge branch 'jt/fsck-code-cleanup' into maint

Code clean-up.

* jt/fsck-code-cleanup:
  fsck: cleanup unused variable
  object: remove "used" field from struct object
  fsck: remove redundant parse_tree() invocation

7 years agoMerge branch 'rs/stat-data-unaligned-reads-fix' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:47 +0000 (14:33 -0700)]
Merge branch 'rs/stat-data-unaligned-reads-fix' into maint

Code clean-up.

* rs/stat-data-unaligned-reads-fix:
  dir: support platforms that require aligned reads

7 years agoMerge branch 'rs/move-array' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:46 +0000 (14:33 -0700)]
Merge branch 'rs/move-array' into maint

Code clean-up.

* rs/move-array:
  ls-files: don't try to prune an empty index
  apply: use COPY_ARRAY and MOVE_ARRAY in update_image()
  use MOVE_ARRAY
  add MOVE_ARRAY

7 years agoMerge branch 'rs/bswap-ubsan-fix' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:46 +0000 (14:33 -0700)]
Merge branch 'rs/bswap-ubsan-fix' into maint

Code clean-up.

* rs/bswap-ubsan-fix:
  bswap: convert get_be16, get_be32 and put_be32 to inline functions
  bswap: convert to unsigned before shifting in get_be32

7 years agoMerge branch 'dl/credential-cache-socket-in-xdg-cache' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:45 +0000 (14:33 -0700)]
Merge branch 'dl/credential-cache-socket-in-xdg-cache' into maint

A recently added test for the "credential-cache" helper revealed
that EOF detection done around the time the connection to the cache
daemon is torn down were flaky.  This was fixed by reacting to
ECONNRESET and behaving as if we got an EOF.

* dl/credential-cache-socket-in-xdg-cache:
  credential-cache: interpret an ECONNRESET as an EOF

7 years agoMerge branch 'hb/gitweb-project-list' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:44 +0000 (14:33 -0700)]
Merge branch 'hb/gitweb-project-list' into maint

When a directory is not readable, "gitweb" fails to build the
project list.  Work this around by skipping such a directory.

It might end up hiding a problem under the rug and a better
solution might be to loudly complain to the administrator pointing
out the problematic directory, but this will at least make it
"work".

* hb/gitweb-project-list:
  gitweb: skip unreadable subdirectories

7 years agoMerge branch 'ks/commit-abort-on-empty-message-fix' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:44 +0000 (14:33 -0700)]
Merge branch 'ks/commit-abort-on-empty-message-fix' into maint

"git commit" when seeing an totally empty message said "you did not
edit the message", which is clearly wrong.  The message has been
corrected.

* ks/commit-abort-on-empty-message-fix:
  commit: check for empty message before the check for untouched template

7 years agoMerge branch 'jk/reflog-walk' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:43 +0000 (14:33 -0700)]
Merge branch 'jk/reflog-walk' into maint

Numerous bugs in walking of reflogs via "log -g" and friends have
been fixed.

* jk/reflog-walk:
  reflog-walk: apply --since/--until to reflog dates
  reflog-walk: stop using fake parents
  rev-list: check reflog_info before showing usage
  get_revision_1(): replace do-while with an early return
  log: do not free parents when walking reflog
  log: clarify comment about reflog cycles
  revision: disallow reflog walking with revs->limited
  t1414: document some reflog-walk oddities

7 years agoMerge branch 'jc/http-sslkey-and-ssl-cert-are-paths' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:43 +0000 (14:33 -0700)]
Merge branch 'jc/http-sslkey-and-ssl-cert-are-paths' into maint

The http.{sslkey,sslCert} configuration variables are to be
interpreted as a pathname that honors "~[username]/" prefix, but
weren't, which has been fixed.

* jc/http-sslkey-and-ssl-cert-are-paths:
  http.c: http.sslcert and http.sslkey are both pathnames

7 years agoMerge branch 'jk/ref-filter-colors' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:42 +0000 (14:33 -0700)]
Merge branch 'jk/ref-filter-colors' into maint

"%C(color name)" in the pretty print format always produced ANSI
color escape codes, which was an early design mistake.  They now
honor the configuration (e.g. "color.ui = never") and also tty-ness
of the output medium.

* jk/ref-filter-colors:
  ref-filter: consult want_color() before emitting colors
  pretty: respect color settings for %C placeholders
  rev-list: pass diffopt->use_colors through to pretty-print
  for-each-ref: load config earlier
  color: check color.ui in git_default_config()
  ref-filter: pass ref_format struct to atom parsers
  ref-filter: factor out the parsing of sorting atoms
  ref-filter: make parse_ref_filter_atom a private function
  ref-filter: provide a function for parsing sort options
  ref-filter: move need_color_reset_at_eol into ref_format
  ref-filter: abstract ref format into its own struct
  ref-filter: simplify automatic color reset
  t: use test_decode_color rather than literal ANSI codes
  docs/for-each-ref: update pointer to color syntax
  check return value of verify_ref_format()

7 years agoMerge branch 'js/git-gui-msgfmt-on-windows' into maint
Junio C Hamano [Wed, 23 Aug 2017 21:33:42 +0000 (14:33 -0700)]
Merge branch 'js/git-gui-msgfmt-on-windows' into maint

Because recent Git for Windows do come with a real msgfmt, the
build procedure for git-gui has been updated to use it instead of a
hand-rolled substitute.

* js/git-gui-msgfmt-on-windows:
  git-gui (MinGW): make use of MSys2's msgfmt
  git gui: allow for a long recentrepo list
  git gui: de-dup selected repo from recentrepo history
  git gui: cope with duplicates in _get_recentrepo
  git-gui: remove duplicate entries from .gitconfig's gui.recentrepo

7 years agoThe third batch post 2.14
Junio C Hamano [Wed, 23 Aug 2017 21:16:00 +0000 (14:16 -0700)]
The third batch post 2.14

Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge branch 'mg/format-ref-doc-fix'
Junio C Hamano [Wed, 23 Aug 2017 21:13:14 +0000 (14:13 -0700)]
Merge branch 'mg/format-ref-doc-fix'

Doc fix.

* mg/format-ref-doc-fix:
  Documentation/git-for-each-ref: clarify peeling of tags for --format
  Documentation: use proper wording for ref format strings

7 years agoMerge branch 'sb/submodule-parallel-update'
Junio C Hamano [Wed, 23 Aug 2017 21:13:14 +0000 (14:13 -0700)]
Merge branch 'sb/submodule-parallel-update'

Code clean-up.

* sb/submodule-parallel-update:
  submodule.sh: remove unused variable

7 years agoMerge branch 'jc/diff-sane-truncate-no-more'
Junio C Hamano [Wed, 23 Aug 2017 21:13:13 +0000 (14:13 -0700)]
Merge branch 'jc/diff-sane-truncate-no-more'

Code clean-up.

* jc/diff-sane-truncate-no-more:
  diff: retire sane_truncate_fn

7 years agoMerge branch 'hv/t5526-andand-chain-fix'
Junio C Hamano [Wed, 23 Aug 2017 21:13:13 +0000 (14:13 -0700)]
Merge branch 'hv/t5526-andand-chain-fix'

Test fix.

* hv/t5526-andand-chain-fix:
  t5526: fix some broken && chains

7 years agoMerge branch 'as/grep-quiet-no-match-exit-code-fix'
Junio C Hamano [Wed, 23 Aug 2017 21:13:12 +0000 (14:13 -0700)]
Merge branch 'as/grep-quiet-no-match-exit-code-fix'

"git grep -L" and "git grep --quiet -L" reported different exit
codes; this has been corrected.

* as/grep-quiet-no-match-exit-code-fix:
  git-grep: correct exit code with --quiet and -L

7 years agoMerge branch 'kw/commit-keep-index-when-pre-commit-is-not-run'
Junio C Hamano [Wed, 23 Aug 2017 21:13:11 +0000 (14:13 -0700)]
Merge branch 'kw/commit-keep-index-when-pre-commit-is-not-run'

"git commit" used to discard the index and re-read from the filesystem
just in case the pre-commit hook has updated it in the middle; this
has been optimized out when we know we do not run the pre-commit hook.

* kw/commit-keep-index-when-pre-commit-is-not-run:
  commit: skip discarding the index if there is no pre-commit hook

7 years agoMerge branch 'sb/sha1-file-cleanup'
Junio C Hamano [Wed, 23 Aug 2017 21:13:10 +0000 (14:13 -0700)]
Merge branch 'sb/sha1-file-cleanup'

Code clean-up.

* sb/sha1-file-cleanup:
  sha1_file: make read_info_alternates static

7 years agoMerge branch 'rs/t1002-do-not-use-sum'
Junio C Hamano [Wed, 23 Aug 2017 21:13:09 +0000 (14:13 -0700)]
Merge branch 'rs/t1002-do-not-use-sum'

Test simplification.

* rs/t1002-do-not-use-sum:
  t1002: stop using sum(1)

7 years agoMerge branch 'kd/stash-with-bash-4.4'
Junio C Hamano [Wed, 23 Aug 2017 21:13:08 +0000 (14:13 -0700)]
Merge branch 'kd/stash-with-bash-4.4'

bash 4.4 or newer gave a warning on NUL byte in command
substitution done in "git stash"; this has been squelched.

* kd/stash-with-bash-4.4:
  stash: prevent warning about null bytes in input

7 years agoMerge branch 'ah/doc-empty-string-is-false'
Junio C Hamano [Wed, 23 Aug 2017 21:13:08 +0000 (14:13 -0700)]
Merge branch 'ah/doc-empty-string-is-false'

Doc update.

* ah/doc-empty-string-is-false:
  doc: clarify "config --bool" behaviour with empty string

7 years agoMerge branch 'kw/rebase-progress'
Junio C Hamano [Wed, 23 Aug 2017 21:13:07 +0000 (14:13 -0700)]
Merge branch 'kw/rebase-progress'

"git rebase", especially when it is run by mistake and ends up
trying to replay many changes, spent long time in silence.  The
command has been taught to show progress report when it spends
long time preparing these many changes to replay (which would give
the user a chance to abort with ^C).

* kw/rebase-progress:
  rebase: turn on progress option by default for format-patch
  format-patch: have progress option while generating patches

7 years agoMerge branch 'ks/prepare-commit-msg-sample-fix'
Junio C Hamano [Wed, 23 Aug 2017 21:13:07 +0000 (14:13 -0700)]
Merge branch 'ks/prepare-commit-msg-sample-fix'

An "oops" fix to a topic that is already in 'master'.

* ks/prepare-commit-msg-sample-fix:
  hook: use correct logical variable

7 years agoMerge branch 'nm/stash-untracked'
Junio C Hamano [Wed, 23 Aug 2017 21:13:07 +0000 (14:13 -0700)]
Merge branch 'nm/stash-untracked'

"git stash -u" used the contents of the committed version of the
".gitignore" file to decide which paths are ignored, even when the
file has local changes.  The command has been taught to instead use
the locally modified contents.

* nm/stash-untracked:
  stash: clean untracked files before reset

7 years agoMerge branch 'jt/sha1-file-cleanup'
Junio C Hamano [Wed, 23 Aug 2017 21:13:07 +0000 (14:13 -0700)]
Merge branch 'jt/sha1-file-cleanup'

Preparatory code clean-up.

* jt/sha1-file-cleanup:
  sha1_file: remove read_packed_sha1()
  sha1_file: set whence in storage-specific info fn

7 years agovcs-svn: move remaining repo_tree functions to fast_export.h
Jonathan Nieder [Wed, 23 Aug 2017 00:04:47 +0000 (17:04 -0700)]
vcs-svn: move remaining repo_tree functions to fast_export.h

These used to be for manipulating the in-memory repo_tree structure,
but nowadays they are convenience wrappers to handle a few git-vs-svn
mismatches:

 1. Git does not track empty directories but Subversion does.  When
    looking up a path in git that Subversion thinks exists and finding
    nothing, we can safely assume that the path represents a
    directory.  This is needed when a later Subversion revision
    modifies that directory.

 2. Subversion allows deleting a file by copying.  In Git fast-import
    we have to handle that more explicitly as a deletion.

These are details of the tool's interaction with git fast-import.
Move them to fast_export.c, where other such details are handled.

This way the function names do not start with a repo_ prefix that
would clash with the repository object introduced in
v2.14.0-rc0~38^2~16 (repository: introduce the repository object,
2017-06-22) or an svn_ prefix that would clash with libsvn (in case
someone wants to link this code with libsvn some day).

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agovcs-svn: remove repo_delete wrapper function
Jonathan Nieder [Wed, 23 Aug 2017 00:02:15 +0000 (17:02 -0700)]
vcs-svn: remove repo_delete wrapper function

Since v1.7.10-rc0~118^2~4^2~4^2~3 (vcs-svn: pass paths through to
fast-import, 2010-12-13) this is an alias for fast_export_delete.
Remove the unnecessary layer of indirection.

No functional change intended.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agovcs-svn: remove custom mode constants
Jonathan Nieder [Wed, 23 Aug 2017 00:01:34 +0000 (17:01 -0700)]
vcs-svn: remove custom mode constants

In the rest of Git, these modes are spelled as S_IFDIR,
S_IFREG | 0644, S_IFREG | 0755, and S_IFLNK.  Use the same constants
in svn-fe for simplicity and consistency.

No functional change intended.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agovcs-svn: remove more unused prototypes and declarations
Jonathan Nieder [Wed, 23 Aug 2017 00:00:57 +0000 (17:00 -0700)]
vcs-svn: remove more unused prototypes and declarations

I forgot to remove these in v1.7.10-rc0~118^2~4^2~5^2~4 (vcs-svn:
eliminate repo_tree structure, 2010-12-10).

This finishes what was started in commit 36f63b50 (vcs-svn: remove
unused prototypes, 2017-08-21).

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agogitweb: add 'raw' blob_plain link in history overview
Job Snijders [Tue, 22 Aug 2017 20:07:29 +0000 (22:07 +0200)]
gitweb: add 'raw' blob_plain link in history overview

For people that work with very large plain text files it may be easier
if one can bypass viewing the htmlized blob and instead click directly
to the raw file (rather then click through 'blob' and then to 'raw').

Signed-off-by: Job Snijders <job@instituut.net>
Reviewed-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoThe second batch post 2.14
Junio C Hamano [Tue, 22 Aug 2017 17:33:58 +0000 (10:33 -0700)]
The second batch post 2.14

Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoMerge branch 'mh/packed-ref-store'
Junio C Hamano [Tue, 22 Aug 2017 17:29:16 +0000 (10:29 -0700)]
Merge branch 'mh/packed-ref-store'

The "ref-store" code reorganization continues.

* mh/packed-ref-store: (32 commits)
  files-backend: cheapen refname_available check when locking refs
  packed_ref_store: handle a packed-refs file that is a symlink
  read_packed_refs(): die if `packed-refs` contains bogus data
  t3210: add some tests of bogus packed-refs file contents
  repack_without_refs(): don't lock or unlock the packed refs
  commit_packed_refs(): remove call to `packed_refs_unlock()`
  clear_packed_ref_cache(): don't protest if the lock is held
  packed_refs_unlock(), packed_refs_is_locked(): new functions
  packed_refs_lock(): report errors via a `struct strbuf *err`
  packed_refs_lock(): function renamed from lock_packed_refs()
  commit_packed_refs(): use a staging file separate from the lockfile
  commit_packed_refs(): report errors rather than dying
  packed_ref_store: make class into a subclass of `ref_store`
  packed-backend: new module for handling packed references
  packed_read_raw_ref(): new function, replacing `resolve_packed_ref()`
  packed_ref_store: support iteration
  packed_peel_ref(): new function, extracted from `files_peel_ref()`
  repack_without_refs(): take a `packed_ref_store *` parameter
  get_packed_ref(): take a `packed_ref_store *` parameter
  rollback_packed_refs(): take a `packed_ref_store *` parameter
  ...

7 years agoMerge branch 'sb/retire-t1200'
Junio C Hamano [Tue, 22 Aug 2017 17:29:16 +0000 (10:29 -0700)]
Merge branch 'sb/retire-t1200'

A test script that outlived its usefulness has been removed.

* sb/retire-t1200:
  t1200: remove t1200-tutorial.sh

7 years agoMerge branch 'rs/win32-syslog-leakfix'
Junio C Hamano [Tue, 22 Aug 2017 17:29:16 +0000 (10:29 -0700)]
Merge branch 'rs/win32-syslog-leakfix'

Memory leak in an error codepath has been plugged.

* rs/win32-syslog-leakfix:
  win32: plug memory leak on realloc() failure in syslog()

7 years agoMerge branch 'rs/unpack-entry-leakfix'
Junio C Hamano [Tue, 22 Aug 2017 17:29:15 +0000 (10:29 -0700)]
Merge branch 'rs/unpack-entry-leakfix'

Memory leak in an error codepath has been plugged.

* rs/unpack-entry-leakfix:
  sha1_file: release delta_stack on error in unpack_entry()

7 years agoMerge branch 'rs/strbuf-getwholeline-fix'
Junio C Hamano [Tue, 22 Aug 2017 17:29:15 +0000 (10:29 -0700)]
Merge branch 'rs/strbuf-getwholeline-fix'

A helper function to read a single whole line into strbuf
mistakenly triggered OOM error at EOF under certain conditions,
which has been fixed.

* rs/strbuf-getwholeline-fix:
  strbuf: clear errno before calling getdelim(3)

7 years agoMerge branch 'rs/merge-microcleanup'
Junio C Hamano [Tue, 22 Aug 2017 17:29:14 +0000 (10:29 -0700)]
Merge branch 'rs/merge-microcleanup'

Code clean-up.

* rs/merge-microcleanup:
  merge: use skip_prefix()

7 years agoMerge branch 'rs/fsck-obj-leakfix'
Junio C Hamano [Tue, 22 Aug 2017 17:29:13 +0000 (10:29 -0700)]
Merge branch 'rs/fsck-obj-leakfix'

Memory leak in an error codepath has been plugged.

* rs/fsck-obj-leakfix:
  fsck: free buffers on error in fsck_obj()

7 years agoMerge branch 'rs/t4062-obsd'
Junio C Hamano [Tue, 22 Aug 2017 17:29:13 +0000 (10:29 -0700)]
Merge branch 'rs/t4062-obsd'

Test portability fix.

* rs/t4062-obsd:
  t4062: use less than 256 repetitions in regex

7 years agoMerge branch 'rs/find-pack-entry-bisection'
Junio C Hamano [Tue, 22 Aug 2017 17:29:11 +0000 (10:29 -0700)]
Merge branch 'rs/find-pack-entry-bisection'

Code clean-up.

* rs/find-pack-entry-bisection:
  sha1_file: avoid comparison if no packed hash matches the first byte

7 years agoMerge branch 'rs/apply-lose-prefix-length'
Junio C Hamano [Tue, 22 Aug 2017 17:29:10 +0000 (10:29 -0700)]
Merge branch 'rs/apply-lose-prefix-length'

Code clean-up.

* rs/apply-lose-prefix-length:
  apply: remove prefix_length member from apply_state

7 years agoMerge branch 'rj/add-chmod-error-message'
Junio C Hamano [Tue, 22 Aug 2017 17:29:10 +0000 (10:29 -0700)]
Merge branch 'rj/add-chmod-error-message'

Message fix.

* rj/add-chmod-error-message:
  builtin/add: add detail to a 'cannot chmod' error message

7 years agoMerge branch 'jk/hashcmp-memcmp'
Junio C Hamano [Tue, 22 Aug 2017 17:29:09 +0000 (10:29 -0700)]
Merge branch 'jk/hashcmp-memcmp'

Code clean-up.

* jk/hashcmp-memcmp:
  hashcmp: use memcmp instead of open-coded loop

7 years agoMerge branch 'jk/drop-sha1-entry-pos'
Junio C Hamano [Tue, 22 Aug 2017 17:29:08 +0000 (10:29 -0700)]
Merge branch 'jk/drop-sha1-entry-pos'

Code clean-up.

* jk/drop-sha1-entry-pos:
  sha1_file: drop experimental GIT_USE_LOOKUP search

7 years agoMerge branch 'ur/svn-local-zone'
Junio C Hamano [Tue, 22 Aug 2017 17:29:07 +0000 (10:29 -0700)]
Merge branch 'ur/svn-local-zone'

"git svn" used with "--localtime" option did not compute the tz
offset for the timestamp in question and instead always used the
current time, which has been corrected.

* ur/svn-local-zone:
  git svn fetch: Create correct commit timestamp when using --localtime

7 years agoMerge branch 'pw/am-signoff'
Junio C Hamano [Tue, 22 Aug 2017 17:29:07 +0000 (10:29 -0700)]
Merge branch 'pw/am-signoff'

"git am -s" has been taught that some input may end with a trailer
block that is not Signed-off-by: and it should refrain from adding
an extra blank line before adding a new sign-off in such a case.

* pw/am-signoff:
  am: fix signoff when other trailers are present

7 years agoMerge branch 'rs/t3700-clean-leftover'
Junio C Hamano [Tue, 22 Aug 2017 17:29:07 +0000 (10:29 -0700)]
Merge branch 'rs/t3700-clean-leftover'

A test fix.

* rs/t3700-clean-leftover:
  t3700: fix broken test under !POSIXPERM

7 years agoMerge branch 'jc/perl-git-comment-typofix'
Junio C Hamano [Tue, 22 Aug 2017 17:29:06 +0000 (10:29 -0700)]
Merge branch 'jc/perl-git-comment-typofix'

A comment fix.

* jc/perl-git-comment-typofix:
  perl/Git.pm: typofix in a comment

7 years agoMerge branch 'rs/in-obsd-basename-dirname-take-const'
Junio C Hamano [Tue, 22 Aug 2017 17:29:05 +0000 (10:29 -0700)]
Merge branch 'rs/in-obsd-basename-dirname-take-const'

Portability fix.

* rs/in-obsd-basename-dirname-take-const:
  test-path-utils: handle const parameter of basename and dirname

7 years agoMerge branch 'rs/obsd-getcwd-workaround'
Junio C Hamano [Tue, 22 Aug 2017 17:29:04 +0000 (10:29 -0700)]
Merge branch 'rs/obsd-getcwd-workaround'

Test portability fix for BSDs.

* rs/obsd-getcwd-workaround:
  t0001: skip test with restrictive permissions if getpwd(3) respects them

7 years agoMerge branch 'mf/no-dashed-subcommands'
Junio C Hamano [Tue, 22 Aug 2017 17:29:03 +0000 (10:29 -0700)]
Merge branch 'mf/no-dashed-subcommands'

Code clean-up.

* mf/no-dashed-subcommands:
  scripts: use "git foo" not "git-foo"

7 years agoMerge branch 'ma/parse-maybe-bool'
Junio C Hamano [Tue, 22 Aug 2017 17:29:03 +0000 (10:29 -0700)]
Merge branch 'ma/parse-maybe-bool'

Code clean-up.

* ma/parse-maybe-bool:
  parse_decoration_style: drop unused argument `var`
  treewide: deprecate git_config_maybe_bool, use git_parse_maybe_bool
  config: make git_{config,parse}_maybe_bool equivalent
  config: introduce git_parse_maybe_bool_text
  t5334: document that git push --signed=1 does not work
  Doc/git-{push,send-pack}: correct --sign= to --signed=

7 years agoMerge branch 'ab/ref-filter-no-contains'
Junio C Hamano [Tue, 22 Aug 2017 17:29:02 +0000 (10:29 -0700)]
Merge branch 'ab/ref-filter-no-contains'

A test fix.

* ab/ref-filter-no-contains:
  tests: don't give unportable ">" to "test" built-in, use -gt

7 years agoMerge branch 'bw/clone-recursive-quiet'
Junio C Hamano [Tue, 22 Aug 2017 17:29:01 +0000 (10:29 -0700)]
Merge branch 'bw/clone-recursive-quiet'

"git clone --recurse-submodules --quiet" did not pass the quiet
option down to submodules.

* bw/clone-recursive-quiet:
  clone: teach recursive clones to respect -q

7 years agoMerge branch 'bw/grep-recurse-submodules'
Junio C Hamano [Tue, 22 Aug 2017 17:29:01 +0000 (10:29 -0700)]
Merge branch 'bw/grep-recurse-submodules'

"git grep --recurse-submodules" has been reworked to give a more
consistent output across submodule boundary (and do its thing
without having to fork a separate process).

* bw/grep-recurse-submodules:
  grep: recurse in-process using 'struct repository'
  submodule: merge repo_read_gitmodules and gitmodules_config
  submodule: check for unmerged .gitmodules outside of config parsing
  submodule: check for unstaged .gitmodules outside of config parsing
  submodule: remove fetch.recursesubmodules from submodule-config parsing
  submodule: remove submodule.fetchjobs from submodule-config parsing
  config: add config_from_gitmodules
  cache.h: add GITMODULES_FILE macro
  repository: have the_repository use the_index
  repo_read_index: don't discard the index

7 years agoMerge branch 'pw/sequence-rerere-autoupdate'
Junio C Hamano [Tue, 22 Aug 2017 17:29:00 +0000 (10:29 -0700)]
Merge branch 'pw/sequence-rerere-autoupdate'

Commands like "git rebase" accepted the --rerere-autoupdate option
from the command line, but did not always use it.  This has been
fixed.

* pw/sequence-rerere-autoupdate:
  cherry-pick/revert: reject --rerere-autoupdate when continuing
  cherry-pick/revert: remember --rerere-autoupdate
  t3504: use test_commit
  rebase -i: honor --rerere-autoupdate
  rebase: honor --rerere-autoupdate
  am: remember --rerere-autoupdate setting

7 years agoMerge branch 'bw/push-options-recursively-to-submodules'
Junio C Hamano [Tue, 22 Aug 2017 17:29:00 +0000 (10:29 -0700)]
Merge branch 'bw/push-options-recursively-to-submodules'

"git push --recurse-submodules $there HEAD:$target" was not
propagated down to the submodules, but now it is.

* bw/push-options-recursively-to-submodules:
  submodule--helper: teach push-check to handle HEAD

7 years agosha1_file: convert index_stream to struct object_id
Patryk Obara [Sun, 20 Aug 2017 20:09:31 +0000 (22:09 +0200)]
sha1_file: convert index_stream to struct object_id

Signed-off-by: Patryk Obara <patryk.obara@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agosha1_file: convert hash_sha1_file_literally to struct object_id
Patryk Obara [Sun, 20 Aug 2017 20:09:30 +0000 (22:09 +0200)]
sha1_file: convert hash_sha1_file_literally to struct object_id

Convert all remaining callers as well.

Signed-off-by: Patryk Obara <patryk.obara@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agosha1_file: convert index_fd to struct object_id
Patryk Obara [Sun, 20 Aug 2017 20:09:29 +0000 (22:09 +0200)]
sha1_file: convert index_fd to struct object_id

Convert all remaining callers as well.

Signed-off-by: Patryk Obara <patryk.obara@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agosha1_file: convert index_path to struct object_id
Patryk Obara [Sun, 20 Aug 2017 20:09:28 +0000 (22:09 +0200)]
sha1_file: convert index_path to struct object_id

Convert all remaining callers as well.

Signed-off-by: Patryk Obara <patryk.obara@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agoread-cache: convert to struct object_id
Patryk Obara [Sun, 20 Aug 2017 20:09:27 +0000 (22:09 +0200)]
read-cache: convert to struct object_id

Replace hashcmp with oidcmp.

Signed-off-by: Patryk Obara <patryk.obara@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agobuiltin/hash-object: convert to struct object_id
Patryk Obara [Sun, 20 Aug 2017 20:09:26 +0000 (22:09 +0200)]
builtin/hash-object: convert to struct object_id

Signed-off-by: Patryk Obara <patryk.obara@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agovcs-svn: rename repo functions to "svn_repo"
brian m. carlson [Mon, 21 Aug 2017 00:00:18 +0000 (00:00 +0000)]
vcs-svn: rename repo functions to "svn_repo"

There were several functions in the Subversion code that started with
"repo_".  This namespace is also used by the Git struct repository code.
Rename these functions to start with "svn_repo" to avoid any future
conflicts.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agovcs-svn: remove unused prototypes
brian m. carlson [Mon, 21 Aug 2017 00:00:17 +0000 (00:00 +0000)]
vcs-svn: remove unused prototypes

The Subversion code had prototypes for several functions which were not
ever defined or used.  These functions all had names starting with
"repo_", some of which conflict with those in repository.h.  To avoid
the conflict, remove those unused prototypes.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agodoc: fix typo in sendemail.identity
Jeff King [Sun, 20 Aug 2017 09:46:57 +0000 (05:46 -0400)]
doc: fix typo in sendemail.identity

Saying "the this" is an obvious typo. But while we're here,
let's polish the English on the second half of the sentence,
too.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agodoc/interpret-trailers: fix "the this" typo
Martin Ågren [Sun, 20 Aug 2017 09:40:09 +0000 (05:40 -0400)]
doc/interpret-trailers: fix "the this" typo

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agostash: add a test for stashing in a detached state
Joel Teichroeb [Sat, 19 Aug 2017 20:13:26 +0000 (13:13 -0700)]
stash: add a test for stashing in a detached state

All that we are really testing here is that the message is
correct when we are not on any branch. All other functionality is
already tested elsewhere.

Signed-off-by: Joel Teichroeb <joel@teichroeb.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agostash: add a test for when apply fails during stash branch
Joel Teichroeb [Sat, 19 Aug 2017 20:13:25 +0000 (13:13 -0700)]
stash: add a test for when apply fails during stash branch

If the return value of merge recursive is not checked, the stash could end
up being dropped even though it was not applied properly

Signed-off-by: Joel Teichroeb <joel@teichroeb.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
7 years agostash: add a test for stash create with no files
Joel Teichroeb [Sat, 19 Aug 2017 20:13:24 +0000 (13:13 -0700)]
stash: add a test for stash create with no files

Ensure the command suceeds and outputs nothing

Signed-off-by: Joel Teichroeb <joel@teichroeb.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>