Commit graph

41157 commits

Author SHA1 Message Date
Junio C Hamano 78891795df Merge branch 'jk/war-on-sprintf'
Many allocations that is manually counted (correctly) that are
followed by strcpy/sprintf have been replaced with a less error
prone constructs such as xstrfmt.

Macintosh-specific breakage was noticed and corrected in this
reroll.

* jk/war-on-sprintf: (70 commits)
  name-rev: use strip_suffix to avoid magic numbers
  use strbuf_complete to conditionally append slash
  fsck: use for_each_loose_file_in_objdir
  Makefile: drop D_INO_IN_DIRENT build knob
  fsck: drop inode-sorting code
  convert strncpy to memcpy
  notes: document length of fanout path with a constant
  color: add color_set helper for copying raw colors
  prefer memcpy to strcpy
  help: clean up kfmclient munging
  receive-pack: simplify keep_arg computation
  avoid sprintf and strcpy with flex arrays
  use alloc_ref rather than hand-allocating "struct ref"
  color: add overflow checks for parsing colors
  drop strcpy in favor of raw sha1_to_hex
  use sha1_to_hex_r() instead of strcpy
  daemon: use cld->env_array when re-spawning
  stat_tracking_info: convert to argv_array
  http-push: use an argv_array for setup_revisions
  fetch-pack: use argv_array for index-pack / unpack-objects
  ...
2015-10-20 15:24:01 -07:00
Junio C Hamano 614a2aced1 Sync with maint for Russian translation
* maint:
  l10n: ru.po: update Russian translation
2015-10-18 23:39:20 -07:00
Junio C Hamano 1b5ffa36cb Merge branch 'maint' of git://github.com/git-l10n/git-po into maint
* 'maint' of git://github.com/git-l10n/git-po:
  l10n: ru.po: update Russian translation
2015-10-18 23:37:35 -07:00
Junio C Hamano 0c4dd78434 Git 2.6.2
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJWIW7HAAoJELC16IaWr+bLrDAP/iyXz6A2ooVM/9/c3XzzZqSk
 njU1C5frBoHHe9Xa/RMTnhVTK8zQLfcjpo2YGuQ+t9rmwKZ045c8EE5o1cx0fc4y
 WFt36rOYirp3m52l95p5EwfRXvHupk9Pk8xsh1j8nuFNKMpDCuhXfY0gLyBlD3Fs
 c8tKzAPgN9wTkZO0RlpKmmVIeI60UTik99fp6Wbc4jovomSH3IK+roEKPXfoqI1m
 l7zrIynDV3POUqLUzTulx9pIjbZpCh+djWOMVPbnoTPR59vZaUScdhyml+iNaLtR
 QGsu8+amzuTz6n/voECKy+v5cyZGWTgsvOcgqP+U+R8wmOjXSy5LANDQ7nq+V0UO
 JZauiUy+KFjeFd7tYq9fRN2XKMkpbDR6ocPLWQ+yJrHXv71ImxG5LpRV9iHbfBdL
 q1jCipsnuvIX0BuOT6EIs7F/dJbvKJlSFXajkokuFmYuIp/nr5zA3dArI9tnkhJ2
 ye8Ck33mR/XeXMXBCLErECFSLRr8QD2TjFipiGa7XT7cIITgVimwRcCJ/86SU9VA
 G9yQ4cdj5exK4/iAG8HpGxN+NwaQvdSD3425Wq4+I0KaGsV6itEXm1WyU1tvqFzj
 HU2hOwiyzCsGG0BX+nmsFa13ALUyqB5saZNrAJjEEJFGmq4MzzEoTXCpOFrTFj/M
 JC9YKCI4Smx4+QtTuzaK
 =ObN4
 -----END PGP SIGNATURE-----

Sync with 2.6.2
2015-10-16 14:45:49 -07:00
Junio C Hamano 906c32b9c3 Fifth batch for 2.7
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2015-10-16 14:44:00 -07:00
Junio C Hamano d5d1e35ace Merge branch 'jc/doc-gc-prune-now'
"git gc" is safe to run anytime only because it has the built-in
grace period to protect young objects.  In order to run with no
grace period, the user must make sure that the repository is
quiescent.

* jc/doc-gc-prune-now:
  Documentation/gc: warn against --prune=<now>
2015-10-16 14:42:50 -07:00
Junio C Hamano 8b70042569 Merge branch 'sb/submodule-config-parse'
Code simplification.

* sb/submodule-config-parse:
  submodule-config: "goto" removal in parse_config()
2015-10-16 14:42:49 -07:00
Junio C Hamano 1551511bdb Merge branch 'jk/filter-branch-use-of-sed-on-incomplete-line'
A recent "filter-branch --msg-filter" broke skipping of the commit
object header, which is fixed.

* jk/filter-branch-use-of-sed-on-incomplete-line:
  filter-branch: remove multi-line headers in msg filter
2015-10-16 14:42:47 -07:00
Junio C Hamano c6185c0b17 Merge branch 'rd/test-path-utils'
The normalize_ceiling_entry() function does not muck with the end
of the path it accepts, and the real world callers do rely on that,
but a test insisted that the function drops a trailing slash.

* rd/test-path-utils:
  test-path-utils.c: remove incorrect assumption
2015-10-16 14:42:46 -07:00
Junio C Hamano 3c3d3f629a Git 2.6.2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2015-10-16 14:40:05 -07:00
Junio C Hamano 119ffa3351 Merge branch 'cc/quote-comments' into maint
A no-op code-health maintenance.

* cc/quote-comments:
  quote: move comment before sq_quote_buf()
  quote: fix broken sq_quote_buf() related comment
2015-10-16 14:32:58 -07:00
Junio C Hamano 71ae53526d Merge branch 'es/worktree-add-cleanup' into maint
A no-op code-health maintenance.

* es/worktree-add-cleanup:
  t2026: rename worktree prune test
2015-10-16 14:32:57 -07:00
Junio C Hamano 0dd9e571e8 Merge branch 'tk/doc-interpret-trailers-grammo' into maint
* tk/doc-interpret-trailers-grammo:
  Documentation/interpret-trailers: Grammar fix
2015-10-16 14:32:56 -07:00
Junio C Hamano 9ab74762cd Merge branch 'tk/typofix-connect-unknown-proto-error' into maint
* tk/typofix-connect-unknown-proto-error:
  connect: fix typo in result string of prot_name()
2015-10-16 14:32:55 -07:00
Junio C Hamano aa8f64dead Merge branch 'jk/asciidoctor-section-heading-markup-fix' into maint
* jk/asciidoctor-section-heading-markup-fix:
  Documentation: fix section header mark-up
2015-10-16 14:32:53 -07:00
Junio C Hamano 22f4b15e88 Merge branch 'nd/ls-remote-does-not-have-u-option' into maint
* nd/ls-remote-does-not-have-u-option:
  ls-remote.txt: delete unsupported option
2015-10-16 14:32:52 -07:00
Junio C Hamano 1c7dc12c43 Merge branch 'jc/fsck-dropped-errors' into maint
There were some classes of errors that "git fsck" diagnosed to its
standard error that did not cause it to exit with non-zero status.

* jc/fsck-dropped-errors:
  fsck: exit with non-zero when problems are found
2015-10-16 14:32:50 -07:00
Junio C Hamano 8f6f1771da Merge branch 'sb/http-flaky-test-fix' into maint
A test script for the HTTP service had a timing dependent bug,
which was fixed.

* sb/http-flaky-test-fix:
  t5561: get rid of racy appending to logfile
2015-10-16 14:32:49 -07:00
Junio C Hamano 2c3cb52c6c Merge branch 'sb/perf-without-installed-git' into maint
Performance-measurement tests did not work without an installed Git.

* sb/perf-without-installed-git:
  t/perf: make runner work even if Git is not installed
2015-10-16 14:32:47 -07:00
Junio C Hamano 15cef7ccd9 Merge branch 'js/icase-wt-detection' into maint
On a case insensitive filesystems, setting GIT_WORK_TREE variable
using a random cases that does not agree with what the filesystem
thinks confused Git that it wasn't inside the working tree.

* js/icase-wt-detection:
  setup: fix "inside work tree" detection on case-insensitive filesystems
2015-10-16 14:32:46 -07:00
Junio C Hamano 14f1467493 Merge branch 'pt/am-builtin' into maint
When "git am" was rewritten as a built-in, it stopped paying
attention to user.signingkey, which was fixed.

* pt/am-builtin:
  am: configure gpg at startup
2015-10-16 14:32:45 -07:00
Junio C Hamano df64186f63 Merge branch 'mm/detach-at-HEAD-reflog' into maint
After "git checkout --detach", "git status" reported a fairly
useless "HEAD detached at HEAD", instead of saying at which exact
commit.

* mm/detach-at-HEAD-reflog:
  status: don't say 'HEAD detached at HEAD'
  t3203: test 'detached at' after checkout --detach
2015-10-16 14:32:44 -07:00
Junio C Hamano 19d11d43fd Merge branch 'gr/rebase-i-drop-warn' into maint
"git rebase -i" had a minor regression recently, which stopped
considering a line that begins with an indented '#' in its insn
sheet not a comment, which is now fixed.

* gr/rebase-i-drop-warn:
  rebase-i: loosen over-eager check_bad_cmd check
  rebase-i: explicitly accept tab as separator in commands
2015-10-16 14:32:43 -07:00
Junio C Hamano d5fea2418e Merge branch 'dt/log-follow-config' into maint
Description of the "log.follow" configuration variable in "git log"
documentation is now also copied to "git config" documentation.

* dt/log-follow-config:
  log: Update log.follow doc and add to config.txt
2015-10-16 14:32:42 -07:00
Junio C Hamano 267ebf6c84 Merge branch 'ti/glibc-stdio-mutex-from-signal-handler' into maint
Allocation related functions and stdio are unsafe things to call
inside a signal handler, and indeed killing the pager can cause
glibc to deadlock waiting on allocation mutex as our signal handler
tries to free() some data structures in wait_for_pager().  Reduce
these unsafe calls.

* ti/glibc-stdio-mutex-from-signal-handler:
  pager: don't use unsafe functions in signal handlers
2015-10-16 14:32:41 -07:00
Junio C Hamano f4892a3c28 Merge branch 'jk/notes-dwim-doc' into maint
The way how --ref/--notes to specify the notes tree reference are
DWIMmed was not clearly documented.

* jk/notes-dwim-doc:
  notes: correct documentation of DWIMery for notes references
2015-10-16 14:32:40 -07:00
Junio C Hamano 47c566a4d6 Merge branch 'jk/make-findstring-makeflags-fix' into maint
Customization to change the behaviour with "make -w" and "make -s"
in our Makefile was broken when they were used together.

* jk/make-findstring-makeflags-fix:
  Makefile: fix MAKEFLAGS tests with multiple flags
2015-10-16 14:32:38 -07:00
Junio C Hamano 4d2a3011ee Merge branch 'jw/make-arflags-customizable' into maint
The Makefile always runs the library archiver with hardcoded "crs"
options, which was inconvenient for exotic platforms on which
people want to use programs with totally different set of command
line options.

* jw/make-arflags-customizable:
  Makefile: allow $(ARFLAGS) specified from the command line
2015-10-16 14:32:36 -07:00
Junio C Hamano a3bbfe5d00 Merge branch 'jk/connect-clear-env' into maint
The ssh transport, just like any other transport over the network,
did not clear GIT_* environment variables, but it is possible to
use SendEnv and AcceptEnv to leak them to the remote invocation of
Git, which is not a good idea at all.  Explicitly clear them just
like we do for the local transport.

* jk/connect-clear-env:
  git_connect: clarify conn->use_shell flag
  git_connect: clear GIT_* environment for ssh
2015-10-16 14:32:35 -07:00
Junio C Hamano 14d5a3e47e Merge branch 'jk/blame-first-parent' into maint
"git blame --first-parent v1.0..v2.0" was not rejected but did not
limit the blame to commits on the first parent chain.

* jk/blame-first-parent:
  blame: handle --first-parent
2015-10-16 14:32:34 -07:00
Junio C Hamano be4d6f4c7f Merge branch 'mm/keyid-docs' into maint
Very small number of options take a parameter that is optional
(which is not a great UI element as they can only appear at the end
of the command line).  Add notice to documentation of each and
every one of them.

* mm/keyid-docs:
  Documentation: explain optional arguments better
  Documentation/grep: fix documentation of -O
  Documentation: use 'keyid' consistently, not 'key-id'
2015-10-16 14:32:33 -07:00
Junio C Hamano c7997e54a5 Merge branch 'pt/pull-builtin' into maint
* pt/pull-builtin:
  pull: enclose <options> in brackets in the usage string
  merge: grammofix in please-commit-before-merge message
2015-10-16 14:32:32 -07:00
Alex Henrie e7a7401f8b pull: enclose <options> in brackets in the usage string
All the other placeholders are already shown that way.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2015-10-16 09:38:32 -07:00
Junio C Hamano a838ae9d49 Fourth batch for 2.7
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2015-10-15 15:48:56 -07:00
Junio C Hamano 6ff518f593 Merge branch 'ls/p4-lfs'
Teach "git p4" to send large blobs outside the repository by
talking to Git LFS.

* ls/p4-lfs:
  git-p4: add Git LFS backend for large file system
  git-p4: add support for large file systems
  git-p4: check free space during streaming
  git-p4: add file streaming progress in verbose mode
  git-p4: return an empty list if a list config has no values
  git-p4: add gitConfigInt reader
  git-p4: add optional type specifier to gitConfig reader
2015-10-15 15:43:53 -07:00
Junio C Hamano 1018f3eea4 Merge branch 'js/gc-with-stale-symref'
"git gc" used to barf when a symbolic ref has gone dangling
(e.g. the branch that used to be your upstream's default when you
cloned from it is now gone, and you did "fetch --prune").

* js/gc-with-stale-symref:
  pack-objects: do not get distracted by broken symrefs
  gc: demonstrate failure with stale remote HEAD
2015-10-15 15:43:51 -07:00
Junio C Hamano db5adf24bf Merge branch 'js/clone-dissociate'
"git clone --dissociate" runs a big "git repack" process at the
end, and it helps to close file descriptors that are open on the
packs and their idx files before doing so on filesystems that
cannot remove a file that is still open.

* js/clone-dissociate:
  clone --dissociate: avoid locking pack files
  sha1_file.c: add a function to release all packs
  sha1_file: consolidate code to close a pack's file descriptor
  t5700: demonstrate a Windows file locking issue with `git clone --dissociate`
2015-10-15 15:43:49 -07:00
Junio C Hamano b80dd559c9 Merge branch 'tk/doc-interpret-trailers-grammo'
* tk/doc-interpret-trailers-grammo:
  Documentation/interpret-trailers: Grammar fix
2015-10-15 15:43:48 -07:00
Junio C Hamano 91ece0fc1d Merge branch 'es/worktree-add-cleanup'
A no-op code-health maintenance.

* es/worktree-add-cleanup:
  t2026: rename worktree prune test
2015-10-15 15:43:47 -07:00
Junio C Hamano 50337d0f71 Merge branch 'dt/log-follow-config'
Description of the "log.follow" configuration variable in "git log"
documentation is now also copied to "git config" documentation.

* dt/log-follow-config:
  log: Update log.follow doc and add to config.txt
2015-10-15 15:43:46 -07:00
Junio C Hamano 1811f93522 Merge branch 'cc/quote-comments'
A no-op code-health maintenance.

* cc/quote-comments:
  quote: move comment before sq_quote_buf()
  quote: fix broken sq_quote_buf() related comment
2015-10-15 15:43:45 -07:00
Junio C Hamano 633a8bdddf Merge branch 'gr/rebase-i-drop-warn'
"git rebase -i" had a minor regression recently, which stopped
considering a line that begins with an indented '#' in its insn
sheet not a comment, which is now fixed.

* gr/rebase-i-drop-warn:
  rebase-i: loosen over-eager check_bad_cmd check
  rebase-i: explicitly accept tab as separator in commands
2015-10-15 15:43:44 -07:00
Junio C Hamano a394b39726 Merge branch 'mm/detach-at-HEAD-reflog'
After "git checkout --detach", "git status" reported a fairly
useless "HEAD detached at HEAD", instead of saying at which exact
commit.

* mm/detach-at-HEAD-reflog:
  status: don't say 'HEAD detached at HEAD'
  t3203: test 'detached at' after checkout --detach
2015-10-15 15:43:42 -07:00
Junio C Hamano 50a5e697b4 Merge branch 'sa/send-email-smtp-batch-data-limit'
When "git send-email" wanted to talk over Net::SMTP::SSL,
Net::Cmd::datasend() did not like to be fed too many bytes at the
same time and failed to send messages.  Send the payload one line
at a time to work around the problem.

* sa/send-email-smtp-batch-data-limit:
  git-send-email.perl: Fixed sending of many/huge changes/patches
2015-10-15 15:43:41 -07:00
Junio C Hamano 51a0908a6f Merge branch 'pt/am-builtin'
When "git am" was rewritten as a built-in, it stopped paying
attention to user.signingkey, which was fixed.

* pt/am-builtin:
  am: configure gpg at startup
2015-10-15 15:43:40 -07:00
Junio C Hamano b9d23c2110 Merge branch 'nd/clone-linked-checkout'
It was not possible to use a repository-lookalike created by "git
worktree add" as a local source of "git clone".

* nd/clone-linked-checkout:
  clone: better error when --reference is a linked checkout
  clone: allow --local from a linked checkout
  enter_repo: allow .git files in strict mode
  enter_repo: avoid duplicating logic, use is_git_directory() instead
  t0002: add test for enter_repo(), non-strict mode
  path.c: delete an extra space
2015-10-15 15:43:40 -07:00
Junio C Hamano 6652939ce8 Merge branch 'js/icase-wt-detection'
On a case insensitive filesystems, setting GIT_WORK_TREE variable
using a random cases that does not agree with what the filesystem
thinks confused Git that it wasn't inside the working tree.

* js/icase-wt-detection:
  setup: fix "inside work tree" detection on case-insensitive filesystems
2015-10-15 15:43:39 -07:00
Junio C Hamano 7f11b48521 Merge branch 'kn/for-each-branch'
Update "git branch" that list existing branches, using the
ref-filter API that is shared with "git tag" and "git
for-each-ref".

* kn/for-each-branch:
  branch: add '--points-at' option
  branch.c: use 'ref-filter' APIs
  branch.c: use 'ref-filter' data structures
  branch: drop non-commit error reporting
  branch: move 'current' check down to the presentation layer
  branch: roll show_detached HEAD into regular ref_list
  branch: bump get_head_description() to the top
  branch: refactor width computation
2015-10-15 15:43:38 -07:00
Junio C Hamano d5ef5f522a Merge branch 'sb/perf-without-installed-git'
Performance-measurement tests did not work without an installed Git.

* sb/perf-without-installed-git:
  t/perf: make runner work even if Git is not installed
2015-10-15 15:43:37 -07:00
Junio C Hamano c92df72bf4 Merge branch 'sb/http-flaky-test-fix'
A test script for the HTTP service had a timing dependent bug,
which was fixed.

* sb/http-flaky-test-fix:
  t5561: get rid of racy appending to logfile
2015-10-15 15:43:36 -07:00