Version v2.43.0; changes since v2.43.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5579t) Arkadii Yakovets (1): l10n: update uk localization for v2.43 Bagas Sanjaya (1): l10n: po-id for 2.43 (round 1) Emir SARI (1): l10n: tr: v2.43.0 Jean-Noël Avila (1): l10n: fr: v2.43.0 rnd 2 Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (1): Git 2.43 Peter Krefting (1): l10n: sv.po: Update Swedish translation (5579t) Ralf Thielow (1): l10n: Update German translation Teng Long (1): l10n: zh_CN: for git 2.43.0-rc1 Todd Zullinger (1): send-email: remove stray characters from usage Victoria Dye (1): glossary: add definitions for dereference & peel Yi-Jyun Pan (1): l10n: zh-TW: Git 2.43.0-rc1 Version v2.43.0-rc2; changes since v2.43.0-rc1: ----------------------------------------------- Elijah Newren (1): RelNotes: minor wording fixes in 2.43.0 release notes Junio C Hamano (1): Git 2.43-rc2 Version v2.43.0-rc1; changes since v2.43.0-rc0: ----------------------------------------------- Aditya Neelamraju (1): clang-format: fix typo in comment Andrei Rybak (1): SubmittingPatches: call gitk's command "Copy commit reference" Emily Shaffer (2): t0091-bugreport: stop using i18ngrep bugreport: reject positional arguments Jacob Stopak (1): Include gettext.h in MyFirstContribution tutorial Jeff King (1): t: avoid perl's pack/unpack "Q" specifier Johannes Schindelin (2): max_tree_depth: lower it for MSVC to avoid stack overflows ci: upgrade to using macos-13 Junio C Hamano (6): grep: -f <path> is relative to $cwd test framework: further deprecate test_i18ngrep tests: teach callers of test_i18ngrep to use test_grep A bit more before -rc1 Prepare for -rc1 Git 2.43-rc1 Karthik Nayak (3): revision: rename bit to `do_not_die_on_missing_objects` rev-list: move `show_commit()` to the bottom rev-list: add commit object support in `--missing` option Linus Arver (1): strvec: drop unnecessary include of hex.h Martin Ågren (1): git-merge-file doc: drop "-file" from argument placeholders Michael Strawbridge (1): send-email: move validation code below process_address_list Patrick Steinhardt (18): commit-graph: introduce envvar to disable commit existence checks commit: detect commits that exist in commit-graph but not in the ODB builtin/show-ref: convert pattern to a local variable builtin/show-ref: split up different subcommands builtin/show-ref: fix leaking string buffer builtin/show-ref: fix dead code when passing patterns builtin/show-ref: refactor `--exclude-existing` options builtin/show-ref: stop using global variable to count matches builtin/show-ref: stop using global vars for `show_one()` builtin/show-ref: refactor options for patterns subcommand builtin/show-ref: ensure mutual exclusiveness of subcommands builtin/show-ref: explicitly spell out different modes in synopsis builtin/show-ref: add new mode to check for reference existence t: use git-show-ref(1) to check for ref existence test-bloom: stop setting up Git directory twice shallow: fix memory leak when registering shallow roots setup: refactor `upgrade_repository_format()` to have common exit setup: fix leaking repository format René Scharfe (4): parse-options: make CMDMODE errors more precise am: simplify --show-current-patch handling am, rebase: fix arghelp syntax of --empty reflog: fix expire --single-worktree Robert Coup (1): upload-pack: add tracing for fetches Taylor Blau (4): Documentation/gitformat-pack.txt: fix typo Documentation/gitformat-pack.txt: fix incorrect MIDX documentation list-objects: drop --unpacked non-commit objects from results pack-bitmap: drop --unpacked non-commit objects from results Todd Zullinger (2): RelNotes: minor typo fixes in 2.43.0 draft RelNotes: improve wording of credential helper notes brian m. carlson (1): merge-file: add an option to process object IDs Version v2.43.0-rc0; changes since v2.42.1: ------------------------------------------- Alyssa Ross (1): diff: fix --merge-base with annotated tags Andy Koppe (8): pretty-formats: enclose options in angle brackets decorate: refactor format_decorations() decorate: avoid some unnecessary color overhead decorate: color each token separately pretty: add %(decorate[:<options>]) format pretty: add pointer and tag options to %(decorate) decorate: use commit color for HEAD arrow pretty: fix ref filtering for %(decorate) formats Beat Bolli (1): unicode: update the width tables to Unicode 15.1 Calvin Wan (4): hex-ll: separate out non-hash-algo functions wrapper: reduce scope of remove_or_warn() config: correct bad boolean env value error message parse: separate out parsing functions from config.h Christian Couder (9): pack-objects: allow `--filter` without `--stdout` t/helper: add 'find-pack' test-tool repack: refactor finishing pack-objects command repack: refactor finding pack prefix pack-bitmap-write: rebuild using new bitmap when remapping repack: add `--filter=<filter-spec>` option gc: add `gc.repackFilter` config option repack: implement `--filter-to` for storing filtered out objects gc: add `gc.repackFilterTo` config option Derrick Stolee (9): maintenance: add get_random_minute() maintenance: use random minute in launchctl scheduler maintenance: use random minute in Windows scheduler maintenance: use random minute in cron scheduler maintenance: swap method locations maintenance: use random minute in systemd scheduler maintenance: fix systemd schedule overlaps maintenance: update schedule before config mailmap: change primary address for Derrick Stolee Dorcas AnonoLitunya (1): t7601: use "test_path_is_file" etc. instead of "test -f" Dragan Simic (2): diff --stat: add config option to limit filename width diff --stat: set the width defaults in a helper function Drew DeVault (1): format-patch: --rfc honors what --subject-prefix sets Elijah Newren (25): documentation: wording improvements documentation: fix small error documentation: fix typos documentation: fix apostrophe usage documentation: add missing words documentation: remove extraneous words documentation: fix subject/verb agreement documentation: employ consistent verb tense for a list documentation: fix verb tense documentation: fix adjective vs. noun documentation: fix verb vs. noun documentation: fix singular vs. plural documentation: whitespace is already generally plural documentation: fix choice of article documentation: add missing article documentation: remove unnecessary hyphens documentation: add missing hyphens documentation: use clearer prepositions documentation: fix punctuation documentation: fix capitalization documentation: fix whitespace issues documentation: add some commas where they are helpful documentation: add missing fullstops documentation: add missing quotes documentation: add missing parenthesis Eric W. Biederman (1): bulk-checkin: only support blobs in index_bulk_checkin Eric Wong (1): treewide: fix various bugs w/ OpenSSL 3+ EVP API Isoken June Ibizugbe (1): builtin/branch.c: adjust error messages to coding guidelines Jan Alexander Steffens (heftig) (6): submodule--helper: use submodule_from_path in set-{url,branch} submodule--helper: return error from set-url when modifying failed t7419: actually test the branch switching t7419, t7420: use test_cmp_config instead of grepping .gitmodules t7419: test that we correctly handle renamed submodules t7420: test that we correctly handle renamed submodules Jason Hatton (1): Prevent git from rehashing 4GiB files Javier Mora (2): git-status.txt: fix minor asciidoc format issue doc/git-bisect: clarify `git bisect run` syntax Jeff King (96): sequencer: use repository parameter in short_commit_name() sequencer: mark repository argument as unused ref-filter: mark unused parameters in parser callbacks pack-bitmap: mark unused parameters in show_object callback worktree: mark unused parameters in each_ref_fn callback commit-graph: mark unused data parameters in generation callbacks ls-tree: mark unused parameter in callback stash: mark unused parameter in diff callback trace2: mark unused us_elapsed_absolute parameters trace2: mark unused config callback parameter test-trace2: mark unused argv/argc parameters grep: mark unused parameter in output function add-interactive: mark unused callback parameters negotiator/noop: mark unused callback parameters worktree: mark unused parameters in noop repair callback imap-send: mark unused parameters with NO_OPENSSL grep: mark unused parmaeters in pcre fallbacks credential: mark unused parameter in urlmatch callback fetch: mark unused parameter in ref_transaction callback bundle-uri: mark unused parameters in callbacks gc: mark unused descriptors in scheduler callbacks update-ref: mark unused parameter in parser callbacks merge: make xopts a strvec merge: simplify parsing of "-n" option format-patch: use OPT_STRING_LIST for to/cc options tree-walk: reduce stack size for recursive functions tree-walk: drop MAX_TRAVERSE_TREES macro tree-walk: rename "error" variable fsck: detect very large tree pathnames add core.maxTreeDepth config traverse_trees(): respect max_allowed_tree_depth read_tree(): respect max_allowed_tree_depth list-objects: respect max_allowed_tree_depth tree-diff: respect max_allowed_tree_depth lower core.maxTreeDepth default to 2048 checkout-index: delay automatic setting of to_tempfile parse-options: prefer opt->value to globals in callbacks parse-options: mark unused "opt" parameter in callbacks merge: do not pass unused opt->value parameter parse-options: add more BUG_ON() annotations interpret-trailers: mark unused "unset" parameters in option callbacks parse-options: mark unused parameters in noop callback merge-ort: drop custom err() function merge-ort: stop passing "opt" to read_oid_strbuf() merge-ort: drop unused parameters from detect_and_process_renames() merge-ort: drop unused "opt" parameter from merge_check_renames_reusable() merge-ort: lowercase a few error messages fsmonitor: prefer repo_git_path() to git_pathdup() fsmonitor/win32: drop unused parameters fsmonitor: mark some maybe-unused parameters fsmonitor/win32: mark unused parameter in fsm_os__incompatible() fsmonitor: mark unused parameters in stub functions fsmonitor/darwin: mark unused parameters in system callback fsmonitor: mark unused hashmap callback parameters run-command: mark unused parameters in start_bg_wait callbacks commit-graph: factor out chain opening function commit-graph: check mixed generation validation when loading chain file t5324: harmonize sha1/sha256 graph chain corruption commit-graph: detect read errors when verifying graph chain commit-graph: tighten chain size check commit-graph: report incomplete chains during verification t6700: mark test as leak-free commit-reach: free temporary list in get_octopus_merge_bases() merge: free result of repo_get_merge_bases() commit-graph: move slab-clearing to close_commit_graph() commit-graph: free all elements of graph chain commit-graph: delay base_graph assignment in add_graph_to_chain() commit-graph: free graph struct that was not added to chain commit-graph: free write-context entries before overwriting commit-graph: free write-context base_graph_name during cleanup commit-graph: clear oidset after finishing write repack: free existing_cruft array after use chunk-format: note that pair_chunk() is unsafe t: add library for munging chunk-format files midx: stop ignoring malformed oid fanout chunk commit-graph: check size of oid fanout chunk midx: check size of oid lookup chunk commit-graph: check consistency of fanout table midx: check size of pack names chunk midx: enforce chunk alignment on reading midx: check size of object offset chunk midx: bounds-check large offset chunk midx: check size of revindex chunk commit-graph: check size of commit data chunk commit-graph: detect out-of-bounds extra-edges pointers commit-graph: bounds-check base graphs chunk commit-graph: check size of generations chunk commit-graph: bounds-check generation overflow chunk commit-graph: check bounds when accessing BDAT chunk commit-graph: check bounds when accessing BIDX chunk commit-graph: detect out-of-order BIDX offsets chunk-format: drop pair_chunk_unsafe() t5319: make corrupted large-offset test more robust doc/send-email: mention handling of "reply-to" with --compose Revert "send-email: extract email-parsing code into a subroutine" send-email: handle to/cc/bcc from --compose message Johannes Schindelin (5): windows: ignore empty `PATH` elements is_Cygwin: avoid `exec`ing anything Move is_<platform> functions to the beginning Move the `_which` function (almost) to the top Work around Tcl's default `PATH` lookup John Cai (3): merge-ort: initialize repo in index state attr: read attributes from HEAD when bare repo attr: add attr.tree for setting the treeish to read attributes from Josh Soref (1): Documentation/git-status: add missing line breaks Junio C Hamano (37): update-index: do not read HEAD and MERGE_HEAD unconditionally resolve-undo: allow resurrecting conflicted state that resolved to deletion update-index: use unmerge_index_entry() to support removal update-index: remove stale fallback code for "--unresolve" checkout/restore: refuse unmerging paths unless checking out of the index checkout/restore: add basic tests for --merge checkout: allow "checkout -m path" to unmerge removed paths pretty-formats: define "literal formatting code" Start the 2.43 cycle The second batch for 2.43 The extra batch to update credenthal helpers The third batch The fourth batch The fifth batch The sixth batch The seventh batch update-index doc: v4 is OK with JGit and libgit2 update-index: add --show-index-version test-tool: retire "index-version" The eighth batch The ninth batch The tenth batch The eleventh batch completion: loosen and document the requirement around completing alias The twelfth batch The thirteenth batch The fourteenth batch The fifteenth batch The sixteenth batch merge: introduce {copy|clear}_merge_options() stash: be careful what we store The seventeenth batch The eighteenth batch The nineteenth batch The twentieth batch The twenty-first batch The twenty-second batch Kousik Sanagavarapu (3): t/t6300: cleanup test_atom t/t6300: introduce test_bad_atom ref-filter: add mailmap support Kristoffer Haugsbakk (2): range-diff: treat notes like `log` grep: die gracefully when outside repository Linus Arver (16): trailer tests: make test cases self-contained trailer test description: this tests --where=after, not --where=before trailer: add tests to check defaulting behavior with --no-* flags trailer doc: narrow down scope of --where and related flags trailer: trailer location is a place, not an action trailer --no-divider help: describe usual "---" meaning trailer --parse help: expose aliased options trailer --only-input: prefer "configuration variables" over "rules" trailer --parse docs: add explanation for its usefulness trailer --unfold help: prefer "reformat" over "join" trailer doc: emphasize the effect of configuration variables trailer doc: separator within key suppresses default separator trailer doc: <token> is a <key> or <keyAlias>, not both trailer: separate public from internal portion of trailer_iterator trailer: split process_input_file into separate pieces trailer: split process_command_line_args into separate functions M Hickford (3): credential/libsecret: store new attributes credential/libsecret: erase matching creds only credential/wincred: erase matching creds only Mark Levedahl (6): git gui Makefile - remove Cygwin modifications git-gui - remove obsolete Cygwin specific code git-gui - use cygstart to browse on Cygwin git-gui - use mkshortcut on Cygwin git-gui - re-enable use of hook scripts git-gui - use git-hook, honor core.hooksPath Matthew McClain (1): git-p4 shouldn't attempt to store symlinks in LFS Oswald Buddenhagen (10): t/lib-rebase: set_fake_editor(): fix recognition of reset's short command t/lib-rebase: set_fake_editor(): handle FAKE_LINES more consistently sequencer: simplify allocation of result array in todo_list_rearrange_squash() t/lib-rebase: improve documentation of set_fake_editor() format-patch: add --description-file option sequencer: beautify subject of reverts of reverts git-revert.txt: add discussion rebase: simplify code related to imply_merge() rebase: handle --strategy via imply_merge() as well rebase: move parse_opt_keep_empty() down Patrick Steinhardt (1): revision: make pseudo-opt flags read via stdin behave consistently Philippe Blain (2): completion: commit: complete configured trailer tokens completion: commit: complete trailers tokens more robustly René Scharfe (9): subtree: disallow --no-{help,quiet,debug,branch,message} t1502, docs: disallow --no-help t1502: move optionspec help output to a file t1502: test option negation parse-options: show negatability of options in short help parse-options: factor out usage_indent() and usage_padding() parse-options: no --[no-]no-... parse-options: simplify usage_padding() parse-options: allow omitting option help text Rubén Justo (2): branch: error message deleting a branch in use branch: error message checking out a branch in use Sergey Organov (3): diff-merges: improve --diff-merges documentation diff-merges: introduce '--dd' option completion: complete '--dd' Shuqi Liang (3): t1092: add tests for 'git check-attr' attr.c: read attributes in a sparse directory check-attr: integrate with sparse-index Tang Yuyi (1): merge-tree: add -X strategy option Taylor Blau (17): repack: move `pack_geometry` struct to the stack builtin/pack-objects.c: remove unnecessary strbuf_reset() builtin/pack-objects.c: support `--max-pack-size` with `--cruft` Documentation/gitformat-pack.txt: remove multi-cruft packs alternative Documentation/gitformat-pack.txt: drop mixed version section builtin/repack.c: extract structure to store existing packs builtin/repack.c: extract marking packs for deletion builtin/repack.c: extract redundant pack cleanup for --geometric builtin/repack.c: extract redundant pack cleanup for existing packs builtin/repack.c: extract `has_existing_non_kept_packs()` builtin/repack.c: store existing cruft packs separately builtin/repack.c: avoid directly inspecting "util" builtin/repack.c: extract common cruft pack loop t7700: split cruft-related tests to t7704 builtin/repack.c: parse `--max-pack-size` with OPT_MAGNITUDE builtin/repack.c: implement support for `--max-cruft-size` builtin/repack.c: avoid making cruft packs preferred Victoria Dye (4): ref-cache.c: fix prefix matching in ref iteration dir.[ch]: expose 'get_dtype' dir.[ch]: add 'follow_symlink' arg to 'get_dtype' files-backend.c: avoid stat in 'loose_fill_ref_dir' Vipul Kumar (1): git-gui: Fix a typo in README brian m. carlson (1): t: add a test helper to truncate files Ævar Arnfjörð Bjarmason (1): Makefiles: change search through $(MAKEFLAGS) for GNU make 4.4 Štěpán Němec (5): doc: fix some typos, grammar and wording issues doc/diff-options: improve wording of the log.diffMerges mention git-jump: admit to passing merge mode args to ls-files doc/gitk: s/sticked/stuck/ t/README: fix multi-prerequisite example 谢致邦 (XIE Zhibang) (2): doc: correct the 50 characters soft limit doc: correct the 50 characters soft limit (+) Version v2.42.1; changes since v2.42.0: --------------------------------------- Caleb Hill (1): git-clean doc: fix "without do cleaning" typo Christian Hesse (2): t/lib-gpg: forcibly run a trustdb update t/t6300: drop magic filtering Derrick Stolee (4): upload-pack: fix race condition in error messages scalar: add --[no-]src option setup: add discover_git_directory_reason() scalar reconfigure: help users remove buggy repos Evan Gates (1): git-config: fix misworded --type=path explanation Han Young (1): show doc: redirect user to git log manual instead of git diff-tree Jacob Abel (1): builtin/worktree.c: fix typo in "forgot fetch" msg Jeff King (17): hashmap: use expected signatures for comparison functions diff-files: avoid negative exit value diff: show usage for unknown builtin_diff_files() options diff: die when failing to read index in git-diff builtin diff: drop useless return from run_diff_{files,index} functions diff: drop useless return values in git-diff helpers diff: drop useless "status" parameter from diff_result_code() commit-graph: verify swapped zero/non-zero generation cases test-lib: ignore uninteresting LSan output ci: allow branch selection through "vars" ci: deprecate ci/config/allow-ref script http: factor out matching of curl http/2 trace lines http: update curl http/2 info matching for curl 8.3.0 test-lib: set UBSAN_OPTIONS to match ASan decorate: add clear_decoration() function revision: clear decoration structs during release_revisions() daemon: free listen_addr before returning Johannes Schindelin (12): rebase: allow overriding the maximal length of the generated labels ci: avoid building from the same commit in parallel ci(linux-asan-ubsan): let's save some time var: avoid a segmentation fault when `HOME` is unset completion(switch/checkout): treat --track and -t the same maintenance(systemd): support the Windows Subsystem for Linux ci: add a GitHub workflow to submit Coverity scans coverity: cache the Coverity Build Tool coverity: allow overriding the Coverity project coverity: support building on Windows coverity: allow running on macOS coverity: detect and report when the token or project is incorrect Josip Sokcevic (1): diff-lib: fix check_removed when fsmonitor is on Junio C Hamano (12): mv: fix error for moving directory to another diff: move the fallback "--exit-code" code down diff: mode-only change should be noticed by "--patch -w --exit-code" diff: teach "--stat -w --exit-code" to notice differences t4040: remove test that succeeded for a wrong reason diff: spell DIFF_INDEX_CACHED out when calling run_diff_index() diff: the -w option breaks --exit-code for --raw and other output modes transfer.unpackLimit: fetch/receive.unpackLimit takes precedence doc: update list archive reference to use lore.kernel.org commit: do not use cryptic "new_index" in end-user facing messages am: align placeholder for --whitespace option with apply Git 2.42.1 Kousik Sanagavarapu (1): ref-filter: sort numerically when ":size" is used Mark Ruvald Pedersen (1): sequencer: truncate labels to accommodate loose refs Michal Suchanek (1): git-push doc: more visibility for -q option Naomi Ibe (1): builtin/add.c: clean up die() messages Oswald Buddenhagen (6): t9001: fix indentation in test_no_confirm() sequencer: rectify empty hint in call of require_clean_work_tree() sequencer: fix error message on failure to copy SQUASH_MSG t3404-rebase-interactive.sh: fix typos in title of a rewording test sequencer: remove unreachable exit condition in pick_commits() am: fix error message in parse_opt_show_current_patch() Patrick Steinhardt (4): upload-pack: fix exit code when denying fetch of unreachable object ID doc/git-worktree: mention "refs/rewritten" as per-worktree refs doc/git-repack: fix syntax for `-g` shorthand option doc/git-repack: don't mention nonexistent "--unpacked" option Philippe Blain (1): completion: improve doc for complex aliases Phillip Wood (7): rebase -i: move unlink() calls rebase -i: remove patch file after conflict resolution sequencer: use rebase_path_message() sequencer: factor out part of pick_commits() rebase: fix rewritten list for failed pick rebase --continue: refuse to commit after failed command rebase -i: fix adding failed command to the todo list René Scharfe (5): name-rev: use OPT_HIDDEN_BOOL for --peel-tag grep: use OPT_INTEGER_F for --max-depth grep: reject --no-or diff --no-index: fix -R with stdin parse-options: drop unused parse_opt_ctx_t member Sergey Organov (1): doc/diff-options: fix link to generating patch section Taylor Blau (7): commit-graph: introduce `commit_graph_generation_from_graph()` t/t5318-commit-graph.sh: test generation zero transitions during fsck commit-graph: avoid repeated mixed generation number warnings leak tests: mark a handful of tests as leak-free leak tests: mark t3321-notes-stripspace.sh as leak-free leak tests: mark t5583-push-branches.sh as leak-free git-send-email.perl: avoid printing undef when validating addresses Wesley Schwengle (2): git-push.txt: fix grammar git-svn: drop FakeTerm hack Štěpán Němec (1): doc/cat-file: make synopsis and description less confusing 王常新 (1): merge-ort.c: fix typo 'neeed' to 'needed' Version v2.42.0; changes since v2.42.0-rc2: ------------------------------------------- Arkadii Yakovets (1): l10n: uk: update translation (2.42.0) Bagas Sanjaya (1): l10n: po-id for 2.42 (round 1) Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Emir SARI (1): l10n: tr: git 2.42.0 Jean-Noël Avila (2): l10n: fr v2.42.0 rnd 1 l10n: fr v2.42.0 rnd 2 Jeff King (1): fsck: use enum object_type for fsck_walk callback Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (1): Git 2.42 Martin Ågren (4): notes doc: split up run-on sentences notes doc: tidy up `--no-stripspace` paragraph show-ref doc: fix carets in monospace rev-list-options: fix typo in `--stdin` documentation Peter Krefting (1): l10n: sv.po: Update Swedish translation 5549t0f0u Ralf Thielow (1): l10n: Update German translation Teng Long (2): l10n: zh_CN: v2.42.0 round 1 l10n: zh_CN: 2.42.0 round 2 Yi-Jyun Pan (1): l10n: zh_TW.po: Git 2.42 Version v2.42.0-rc2; changes since v2.42.0-rc1: ----------------------------------------------- Jeff King (4): send-email: drop FakeTerm hack send-email: avoid creating more than one Term::ReadLine object repack: free geometry struct t4053: avoid writing to unopened pipe Johannes Schindelin (3): t0040: declare non-tab indentation to be okay in this script win32: add a helper to run `git.exe` without a foreground window git maintenance: avoid console window in scheduled tasks on Windows Junio C Hamano (1): Git 2.42-rc2 Oswald Buddenhagen (2): advice: handle "rebase" in error_resolve_conflict() t9001: remove excessive GIT_SEND_EMAIL_NOTTY=1 Phillip Wood (1): t4053: avoid race when killing background processes René Scharfe (1): parse-options: disallow negating OPTION_SET_INT 0 Sebastian Thiel (1): mv: handle lstat() failure correctly Version v2.42.0-rc1; changes since v2.42.0-rc0: ----------------------------------------------- Adam Majer (1): doc: sha256 is no longer experimental Eric Wong (5): sha256/gcrypt: fix build with SANITIZE=leak sha256/gcrypt: fix memory leak with SHA-256 repos sha256/gcrypt: die on gcry_md_open failures sha256: avoid functions deprecated in OpenSSL 3+ avoid SHA-1 functions deprecated in OpenSSL 3+ Glen Choo (1): mailmap: change primary address for Glen Choo Junio C Hamano (2): A few more topics before -rc1 Git 2.42-rc1 Matthias Aßhauer (3): run-command: conditionally define locate_in_PATH() compat/mingw: implement a native locate_in_PATH() docs: update when `git bisect visualize` uses `gitk` Phillip Wood (1): rebase --skip: fix commit message clean up when skipping squash René Scharfe (1): bundle: use OPT_PASSTHRU_ARGV Taylor Blau (5): t/lib-commit-graph.sh: allow `graph_read_expect()` in sub-directories t/lib-commit-graph.sh: avoid directory change in `graph_git_behavior()` t5318: avoid top-level directory changes t5328: avoid top-level directory changes t/lib-commit-graph.sh: avoid sub-shell in `graph_git_behavior()` brian m. carlson (2): ident: don't consider '.' a crud gitignore: ignore clangd .cache directory Version v2.42.0-rc0; changes since v2.41.0: ------------------------------------------- Alejandro R. Sedeño (1): statinfo.h: move DTYPE defines from dir.h Alex Henrie (4): wt-status: don't show divergence advice when committing remote: don't imply that integration is always required before pushing push: don't imply that integration is always required before pushing sequencer: finish parsing the todo list despite an invalid first line Andreas Herrmann (3): configure.ac: don't overwrite NO_EXPAT option configure.ac: don't overwrite NO_CURL option configure.ac: always save NO_ICONV to config.status Beat Bolli (2): trace2: fix a comment wrapper: use trace2 counters to collect fsync stats Calvin Wan (13): strbuf: clarify API boundary strbuf: clarify dependency abspath: move related functions to abspath credential-store: move related functions to credential-store file object-name: move related functions to object-name path: move related function to path strbuf: remove global variable git-compat-util: move strbuf.c funcs to its header git-compat-util: move wrapper.c funcs to its header sane-ctype.h: create header for sane-ctype macros kwset: move translation table from ctype treewide: remove unnecessary includes for wrapper.h git-compat-util: move alloc macros to git-compat-util.h D. Ben Knoble (2): i18n: mark more bundle.c strings for translation t4002: fix "diff can read from stdin" syntax Derrick Stolee (7): add: check color.ui for interactive add add: test use of brackets when color is disabled repository: create disable_replace_refs() replace-objects: create wrapper around setting repository: create read_replace_refs setting packfile: delete .idx files before .pack files builtin/repack.c: only repack `.pack`s that exist Elijah Newren (28): init-db: document existing bug with core.bare in template config init-db: remove unnecessary global variable init-db, clone: change unnecessary global into passed parameter setup: adopt shared init-db & clone code read-cache: move shared commit and ls-files code add: modify add_files_to_cache() to avoid globals read-cache: move shared add/checkout/commit code statinfo: move stat_{data,validity} functions from cache/read-cache run-command.h: move declarations for run-command.c from cache.h name-hash.h: move declarations for name-hash.c from cache.h sparse-index.h: move declarations for sparse-index.c from cache.h preload-index.h: move declarations for preload-index.c from elsewhere diff.h: move declaration for global in diff.c from cache.h merge.h: move declarations for merge.c from cache.h repository.h: move declaration of the_index from cache.h read-cache*.h: move declarations for read-cache.c functions from cache.h cache.h: remove this no-longer-used header log-tree: replace include of revision.h with simple forward declaration repository: remove unnecessary include of path.h diff.h: remove unnecessary include of oidset.h list-objects-filter-options.h: remove unneccessary include builtin.h: remove unneccessary includes git-compat-util.h: remove unneccessary include of wildmatch.h merge-ll: rename from ll-merge khash: name the structs that khash declares object-store-ll.h: split this header out of object-store.h hash-ll, hashmap: move oidhash() to hash-ll fsmonitor-ll.h: split this header out of fsmonitor.h Eric Sunshine (1): fsck: avoid misleading variable name Glen Choo (15): cocci: add headings to and reword README cocci: codify authoring and reviewing practices setup.c: don't setup in discover_git_directory() config: don't BUG when both kvi and source are set config: inline git_color_default_config urlmatch.h: use config_fn_t type config: add ctx arg to config_fn_t config.c: pass ctx in configsets config: pass ctx with config files config.c: pass ctx with CLI config trace2: plumb config kvi config: pass kvi to die_bad_number() config.c: remove config_reader from configsets config: add kvi.path, use it to evaluate includes config: pass source to config_parser_event_fn_t Han Young (1): blame: allow --contents to work with bare repo Jacob Abel (11): worktree add: include -B in usage docs t2400: cleanup created worktree in test t2400: refactor "worktree add" opt exclusion tests t2400: add tests to verify --quiet worktree add: add --orphan flag worktree add: introduce "try --orphan" hint worktree add: extend DWIM to infer --orphan worktree add: emit warn when there is a bad HEAD t2400: drop no-op `--sq` from rev-parse call builtin/worktree.c: convert tab in advice to space t2400: rewrite regex to avoid unintentional PCRE Jacob Keller (1): fix cherry-pick/revert status when doing multiple commits Jan Klötzke (1): ref-filter: handle nested tags in --points-at option Jeff King (36): format-patch: free rev.message_id when exiting format-patch: free elements of rev.ref_message_ids list pathspec: factor out magic-to-name function diff: factor out --follow pathspec check diff: detect pathspec magic not supported by --follow ci: use clang for ASan/UBSan checks ci: run ASan/UBSan in a single job ci: drop linux-clang job commit: pass --no-divider to interpret-trailers http: handle both "h2" and "h2h3" in curl info lines var: mark unused parameters in git_var callbacks imap-send: use server conf argument in setup_curl() imap-send: drop unused parameter from imap_cmd_cb callback imap-send: drop unused fields from imap_cmd_cb refs.c: rename `ref_filter` ref-filter.h: provide `REF_FILTER_INIT` ref-filter: clear reachable list pointers after freeing ref-filter: add `ref_filter_clear()` ref-filter.c: parameterize match functions over patterns test-ref-store: drop unimplemented reflog-expire command do_for_each_ref_helper(): mark unused repository parameter http: mark unused parameters in curl callbacks http-push: mark unused parameter in xml callback am: mark unused keep_cr parameters count-objects: mark unused parameter in alternates callback revisions: drop unused "opt" parameter in "tweak" callbacks fsck: mark unused parameters in various fsck callbacks merge-tree: mark unused parameter in traverse callback replace: mark unused parameter in ref callback replace: mark unused parameter in each_mergetag_fn callback rev-parse: mark unused parameter in for_each_abbrev callback tag: mark unused parameters in each_tag_name_fn callbacks t/helper: mark unused callback void data parameters ref-filter: avoid parsing tagged objects in match_points_at() ref-filter: avoid parsing non-tags in match_points_at() ref-filter: simplify return type of match_points_at Johan Ruokangas (1): gitignore.txt: use backticks instead of double quotes Johannes Schindelin (3): do_read_index(): always mark index as initialized unless erroring out split-index: accept that a base index can be empty commit -a -m: allow the top-level tree to become empty again John Cai (34): docs: clarify git-pack-refs --all will pack all refs pack-refs: teach --exclude option to exclude refs from being packed pack-refs: teach pack-refs --include option t0000-basic: modernize test format t0030-stripspace: modernize test format t3210-pack-refs: modernize test format t1001-read-tree-m-2way: modernize test format t1002-read-tree-m-u-2way: modernize test format t1006-cat-file: modernize test format t3500-cherry: modernize test format t3700-add: modernize test format t3903-stash: modernize test format t4002-diff-basic: modernize test format t4003-diff-rename-1: modernize test format t4004-diff-rename-symlink: modernize test format t4202-log: modernize test format t4206-log-follow-harder-copies: modernize test format t5300-pack-object: modernize test format t5301-sliding-window: modernize test format t5303-pack-corruption-resilience: modernize test format t5306-pack-nobase: modernize test format t6050-replace: modernize test format t7101-reset-empty-subdirs: modernize test format t7110-reset-merge: modernize test format t7111-reset-table: modernize test format t7201-co: modernize test format t7508-status: modernize test format t7600-merge: modernize test format t7700-repack: modernize test format t9100-git-svn-basic: modernize test format t9104-git-svn-follow-parent: modernize test format t9200-git-cvsexportcommit: modernize test format t9400-git-cvsserver-server: modernize test format docs: add git hash-object -t option's possible values Jonathan Tan (1): CodingGuidelines: use octal escapes, not hex Josip Sokcevic (1): diff-lib: honor override_submodule_config flag bit Junio C Hamano (44): diff: fix interaction between the "-s" option and other options show-branch doc: say <ref>, not <reference> Start the 2.42 cycle The second batch for 2.42 The third batch ll-merge: killing the external merge driver aborts the merge The fourth batch t6406: skip "external merge driver getting killed by a signal" test on Windows The fifth batch The sixth batch The seventh batch The eighth batch t6135: attr magic with path pattern tree-walk: lose base_offset that is never used in tree_entry_interesting tree-walk: drop unused base_offset from do_match() The ninth batch dir: match "attr" pathspec magic with correct paths The tenth batch The eleventh batch The twelfth batch gitignore.txt: mark up explanation of patterns consistently am: simplify parsing of "--[no-]keep-cr" branch: reject "--no-all" and "--no-remotes" early parse-options: introduce OPT_IPVERSION() fetch: reject --no-ipv[46] show-branch: --no-sparse should give dense output short help: allow multi-line opthelp remote: simplify "remote add --tags" help text short help: allow a gap smaller than USAGE_GAP show-branch: reject --[no-](topo|date)-order reset: reject --no-(mixed|soft|hard|merge|keep) option The thirteenth batch branch: update the message to refuse touching a branch in-use hex: retire get_sha1_hex() The fourteenth batch SubmittingPatches: choice of base for fixing an older maintenance track The fifteenth batch SubmittingPatches: explain why 'next' and above are inappropriate base SubmittingPatches: use of older maintenance tracks is an exception The sixteenth batch MyFirstContribution: refrain from self-iterating too much The seventeenth batch The eighteenth batch Git 2.42-rc0 Kousik Sanagavarapu (5): t/lib-gpg: introduce new prereq GPG2 ref-filter: add new "signature" atom t4205: correctly test %(describe:abbrev=...) ref-filter: add multiple-option parsing functions ref-filter: add new "describe" atom Kristoffer Haugsbakk (5): doc: tag: document `TAG_EDITMSG` t/t7004-tag: add regression test for successful tag creation tag: keep the message file in case ref transaction fails notes: update documentation for `use_default_notes` notes: move the documentation to the struct Linus Arver (15): docs: typofixes doc: trailer: fix grammar doc: trailer: swap verb order doc: trailer: drop "commit message part" phrasing doc: trailer: examples: avoid the word "message" by itself doc: trailer: remove redundant phrasing doc: trailer: use angle brackets for <token> and <value> doc: trailer.<token>.command: emphasize deprecation doc: trailer: mention 'key' in DESCRIPTION doc: trailer: add more examples in DESCRIPTION SubmittingPatches: reword awkward phrasing SubmittingPatches: discuss subsystems separately from git.git SubmittingPatches: de-emphasize branches as starting points SubmittingPatches: emphasize need to communicate non-default starting points SubmittingPatches: simplify guidance for choosing a starting point M Hickford (3): credential: avoid erasing distinct password credential: erase all matching credentials doc: gitcredentials: link to helper list Martin Ågren (1): t0091-bugreport.sh: actually verify some content of report Mike Hommey (2): commit-reach: fix memory leak in get_reachable_subset() mingw: use lowercase includes for some Windows headers Patrick Steinhardt (17): fetch: drop unused DISPLAY_FORMAT_UNKNOWN enum value fetch: drop unneeded NULL-check for `remote_ref` fetch: pass through `fetch_config` directly fetch: use `fetch_config` to store "fetch.prune" value fetch: use `fetch_config` to store "fetch.pruneTags" value fetch: use `fetch_config` to store "fetch.showForcedUpdates" value fetch: use `fetch_config` to store "fetch.recurseSubmodules" value fetch: use `fetch_config` to store "fetch.parallel" value fetch: use `fetch_config` to store "submodule.fetchJobs" value t1006: don't strip timestamps from expected results t1006: modernize test style to use `test_cmp` strbuf: provide CRLF-aware helper to read until a specified delimiter cat-file: simplify reading from standard input cat-file: add option '-Z' that delimits input and output with NUL revision: reorder `read_revisions_from_stdin()` revision: small readability improvement for reading from stdin revision: handle pseudo-opts in `--stdin` mode Petar Vutov (1): doc: highlight that .gitmodules does not support !command Philippe Blain (30): revisions.txt: use description list for special refs revisions.txt: document more special refs completion: complete REVERT_HEAD and BISECT_HEAD git-merge.txt: modernize word choice in "True merge" section Documentation: document AUTO_MERGE completion: complete AUTO_MERGE completion: add comments describing __git_diff_* globals completion: complete --break-rewrites completion: complete --cc completion: complete --combined-all-paths completion: complete --compact-summary completion: complete --default-prefix completion: complete --find-copies completion: complete --find-object completion: complete --find-renames completion: complete --function-context completion: complete --ignore-matching-lines completion: complete --irreversible-delete completion: complete --ita-invisible-in-index and --ita-visible-in-index completion: complete --line-prefix completion: complete --no-relative completion: complete --no-stat completion: complete --output completion: complete --output-indicator-{context,new,old} completion: complete --unified completion: complete --ws-error-highlight completion: move --pickaxe-{all,regex} to __git_diff_common_options completion: complete --diff-merges, its options and --no-diff-merges completion: complete --remerge-diff diff.c: mention completion above add_diff_options Phillip Wood (5): apply: improve error messages when reading patch diff --no-index: refuse to compare stdin to a directory diff --no-index: die on error reading stdin t4054: test diff --no-index with stdin diff --no-index: support reading from named pipes René Scharfe (18): t1800: loosen matching of error message for bad shebang run-command: report exec error even on ENOENT ls-tree: fix documentation of %x format placeholder pretty: factor out expand_separator() strbuf: factor out strbuf_expand_step() replace strbuf_expand_dict_cb() with strbuf_expand_step() replace strbuf_expand() with strbuf_expand_step() strbuf: simplify strbuf_expand_literal_cb() ls-tree: simplify prefix handling pretty: avoid double negative in format_commit_item() pkt-line: add size parameter to packet_length() pretty: use strchr(3) in userformat_find_requirements() t6300: fix setup with GPGSSH but without GPG strbuf: use skip_prefix() in strbuf_addftime() ls-tree: fix --no-full-name describe: fix --no-exact-match pack-objects: fix --no-keep-true-parents pack-objects: fix --no-quiet Rubén Justo (11): config: fix a leak in git_config_copy_or_rename_section_in_file remote: fix a leak in query_matches_negative_refspec branch: fix a leak in dwim_and_setup_tracking branch: fix a leak in inherit_tracking branch: fix a leak in check_tracking_branch branch: fix a leak in setup_tracking rev-parse: fix a leak with --abbrev-ref branch: fix a leak in setup_tracking branch: fix a leak in cmd_branch config: fix a leak in git_config_copy_or_rename_section_in_file tests: mark as passing with SANITIZE=leak Sean Allred (5): show-ref doc: update for internal consistency ls-remote doc: remove redundant --tags example ls-remote doc: show peeled tags in examples ls-remote doc: explain what each example does ls-remote doc: document the output format Shuqi Liang (2): diff-tree: integrate with sparse index worktree: integrate with sparse-index Taylor Blau (48): object: add object_array initializer helper function pack-bitmap.c: extract `fill_in_bitmap()` pack-bitmap.c: use commit boundary during bitmap traversal builtin/submodule--helper.c: handle missing submodule URLs builtin/repack.c: only collect fully-formed packs reachable.c: extract `obj_is_recent()` gc: introduce `gc.recentObjectsHook` pack-bitmap.c: gracefully degrade on failure to load MIDX'd pack t7701: make annotated tag unreachable fsck: suppress commit-graph output with `--no-progress` fsck: suppress MIDX output with `--no-progress` commit-graph.c: extract `verify_one_commit_graph()` commit-graph.c: iteratively verify commit-graph chains commit-graph.c: pass progress to `verify_one_commit_graph()` commit-graph.c: avoid duplicated progress output during `verify` builtin/for-each-ref.c: add `--exclude` option refs: plumb `exclude_patterns` argument throughout refs/packed-backend.c: refactor `find_reference_location()` refs/packed-backend.c: implement jump lists to avoid excluded pattern(s) refs/packed-backend.c: add trace2 counters for jump list revision.h: store hidden refs in a `strvec` refs.h: let `for_each_namespaced_ref()` take excluded patterns refs.h: implement `hidden_refs_to_excludes()` builtin/receive-pack.c: avoid enumerating hidden references upload-pack.c: avoid enumerating hidden refs where possible ls-refs.c: avoid enumerating hidden refs where possible builtin/repack.c: avoid dir traversal in `collect_pack_filenames()` packfile.c: prevent overflow in `nth_packed_object_id()` packfile.c: prevent overflow in `load_idx()` packfile.c: use checked arithmetic in `nth_packed_object_offset()` midx.c: use `size_t`'s for fanout nr and alloc midx.c: prevent overflow in `nth_midxed_object_oid()` midx.c: prevent overflow in `nth_midxed_offset()` midx.c: store `nr`, `alloc` variables as `size_t`'s midx.c: prevent overflow in `write_midx_internal()` midx.c: prevent overflow in `fill_included_packs_batch()` pack-bitmap.c: ensure that eindex lookups don't overflow commit-graph.c: prevent overflow in `write_commit_graph_file()` commit-graph.c: prevent overflow in add_graph_to_chain() commit-graph.c: prevent overflow in `load_oid_from_graph()` commit-graph.c: prevent overflow in `fill_commit_graph_info()` commit-graph.c: prevent overflow in `fill_commit_in_graph()` commit-graph.c: prevent overflow in `load_tree_for_commit()` commit-graph.c: prevent overflow in `split_graph_merge_strategy()` commit-graph.c: prevent overflow in `merge_commit_graph()` commit-graph.c: prevent overflow in `write_commit_graph()` commit-graph.c: prevent overflow in `verify_commit_graph()` Documentation/RelNotes/2.42.0.txt: typofix Teng Long (8): surround %s with quotes when failed to lookup commit notes.c: cleanup 'strbuf_grow' call in 'append_edit' notes.c: use designated initializers for clarity t3321: add test cases about the notes stripspace behavior notes.c: introduce '--separator=<paragraph-break>' option notes.c: append separator instead of insert by pos notes.c: introduce "--[no-]stripspace" option notes: introduce "--no-separator" option Todd Zullinger (3): trace2 tests: fix PTHREADS prereq t/lib-gpg: fix ssh-keygen -Y check-novalidate with openssh-9.0 t/lib-gpg: require GPGSSH for GPGSSH_VERIFYTIME prereq Victoria Dye (3): config: use gitdir to get worktree config config: pass 'repo' directly to 'config_with_options()' repository: move 'repository_format_worktree_config' to repo scope Vinayak Dev (1): docs: add necessary headers to Documentation/MFOW.txt ZheNing Hu (1): ls-files: align format atoms with ls-tree brian m. carlson (7): t: add a function to check executable bit var: add support for listing the shell var: format variable structure with C99 initializers var: adjust memory allocation for strings attr: expose and rename accessor functions var: add attributes files locations var: add config file locations Version v2.41.0; changes since v2.41.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5515t) Arkadii Yakovets (3): l10n: uk: add initial translation l10n: uk: remove stale lines l10n: update uk localization Bagas Sanjaya (1): l10n: po-id for 2.41 (round 1) Benjamin Jorand (1): l10n: fr: fix translation of stash save help Daniel Santos (1): l10n: TEAMS: Update pt_PT repo link Emir SARI (1): l10n: tr: Update Turkish translations for 2.41.0 Jean-Noël Avila (2): l10n: fr.po v2.41.0 rnd1 l10n: fr.po v2.41.0 rnd2 Jordi Mas (2): l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (1): Git 2.41 Peter Krefting (1): l10n: sv.po: Update Swedish translation (5515t0f0u) Ralf Thielow (1): l10n: Update German translation Teng Long (1): l10n: zh_CN: Git 2.41.0 round #1 Yi-Jyun Pan (1): l10n: zh_TW.po: Git 2.41.0 Version v2.41.0-rc2; changes since v2.41.0-rc1: ----------------------------------------------- Corentin Garcia (1): doc/git-config: add unit for http.lowSpeedLimit Johannes Schindelin (2): rebase --update-refs: fix loops rebase -r: fix the total number shown in the progress Junio C Hamano (5): tests: do not negate test_path_exists t2021: do not negate test_path_is_dir test: do not negate test_path_is_* to assert absense A few more topics after 2.41-rc1 Git 2.41-rc2 Shuqi Liang (1): t1092: update a write-tree test Version v2.41.0-rc1; changes since v2.41.0-rc0: ----------------------------------------------- Christian Hesse (1): imap-send: include strbuf.h Jeff King (1): t/lib-httpd: make CGIPassAuth support conditional John Cai (1): attr: teach "--attr-source=<tree>" global option to "git" Junio C Hamano (4): A bit more before -rc1 send-email: clear the $message_id after validation t9001: mark the script as no longer leak checker clean Git 2.41-rc1 Taylor Blau (1): run-command.c: fix missing include under `NO_PTHREADS` brian m. carlson (1): upload-pack: advertise capabilities when cloning empty repos Version v2.41.0-rc0; changes since v2.40.1: ------------------------------------------- Adam Johnson (1): ls-files: fix "--format" output of relative paths Alex Henrie (5): rebase: add documentation and test for --no-rebase-merges rebase: deprecate --rebase-merges="" rebase: add a config option for --rebase-merges format-patch: correct documentation of --thread without an argument docs: rewrite the documentation of the text and eol attributes Andreas Schwab (1): git-merge-tree.txt: replace spurious HTML entity Andrei Rybak (19): t1005: assert output of ls-files t1006: assert error output of cat-file t1010: don't create unused files t1302: don't create unused file t1400: assert output of update-ref t1404: don't create unused file t1507: assert output of rev-parse t3060: fix mention of function prune_index t2107: fix mention of the_index.cache_changed t2024: fix loose/strict local base branch DWIM test t1300: drop duplicate test t1300: check stderr for "ignores pairs" tests t1300: add tests for missing keys t0300: don't create unused file t1300: fix config file syntax error descriptions t1300: don't create unused files t1450: don't create unused files t1502: don't create unused files t2019: don't create unused files Andy Koppe (1): restore: fault --staged --worktree with merge opts Beat Bolli (1): unicode: update the width tables to Unicode 15 Clement Mabileau (1): branch: improve error log on branch not found by checking remotes refs Daniel Watson (1): SubmittingPatches: clarify MUA discussion with "the" Derrick Stolee (18): object-file: reprepare alternates when necessary for-each-ref: add --stdin option for-each-ref: explicitly test no matches commit-graph: refactor compute_topological_levels() commit-graph: simplify compute_generation_numbers() commit-graph: return generation from memory commit-reach: implement ahead_behind() logic for-each-ref: add ahead-behind format atom commit-reach: add tips_reachable_from_bases() p2000: remove stray '--sparse' flag from test fetch: download bundles once, even with --all fsck: create scaffolding for rev-index checks fsck: check rev-index checksums fsck: check rev-index position values fsck: validate .rev file header fsck: verify checksums of all .bitmap files fsck: use local repository merge-tree: load default git config Edwin Kofler (1): completion: suppress unwanted unescaping of `read` Elijah Newren (94): treewide: ensure one of the appropriate headers is sourced first treewide: remove unnecessary git-compat-util.h includes in headers treewide: remove unnecessary cache.h includes treewide: remove unnecessary cache.h includes in source files alloc.h: move ALLOC_GROW() functions from cache.h hash.h: move some oid-related declarations from cache.h hex.h: move some hex-related declarations from cache.h cache.h: remove dependence on hex.h; make other files include it explicitly pretty.h: move has_non_ascii() declaration from commit.h ident.h: move ident-related declarations out of cache.h object.h: stop depending on cache.h; make cache.h depend on object.h dir.h: refactor to no longer need to include cache.h object-store.h: move struct object_info from cache.h replace-object.h: move read_replace_refs declaration from cache.h to here treewide: replace cache.h with more direct headers, where possible Remove unnecessary includes of builtin.h diff.h: remove unnecessary include of object.h t2021: fix platform-specific leftover cruft unpack-trees: heed requests to overwrite ignored files dir: separate public from internal portion of dir_struct dir: add a usage note to exclude_per_dir dir: mark output only fields of dir_struct as such unpack-trees: clean up some flow control sparse-checkout: avoid using internal API of unpack-trees sparse-checkout: avoid using internal API of unpack-trees, take 2 unpack_trees: start splitting internal fields from public API unpack-trees: mark fields only used internally as internal unpack-trees: rewrap a few overlong lines from previous patch unpack-trees: special case read-tree debugging as internal usage unpack-trees: add usage notices around df_conflict_entry treewide: remove unnecessary cache.h inclusion from a few headers treewide: be explicit about dependence on gettext.h treewide: remove unnecessary inclusion of gettext.h treewide: remove unnecessary cache.h inclusion from several sources environment: move comment_line_char from cache.h abspath.h: move absolute path functions from cache.h cache.h: remove expand_user_path() path.h: move function declarations for path.c functions from cache.h wrapper.h: move declarations for wrapper.c functions from cache.h treewide: remove unnecessary includes of cache.h environment.h: move declarations for environment.c functions from cache.h treewide: remove cache.h inclusion due to environment.h changes setup.h: move declarations for setup.c functions from cache.h treewide: remove cache.h inclusion due to setup.h changes write-or-die.h: move declarations for write-or-die.c functions from cache.h csum-file.h: remove unnecessary inclusion of cache.h treewide: be explicit about dependence on trace.h & trace2.h treewide: be explicit about dependence on advice.h treewide: be explicit about dependence on convert.h treewide: be explicit about dependence on pack-revindex.h treewide: be explicit about dependence on oid-array.h treewide: be explicit about dependence on mem-pool.h treewide: remove unnecessary cache.h inclusion object-name.h: move declarations for object-name.c functions from cache.h treewide: remove cache.h inclusion due to object-name.h changes git-zlib: move declarations for git-zlib functions from cache.h treewide: remove cache.h inclusion due to git-zlib changes object-file.h: move declarations for object-file.c functions from cache.h treewide: remove cache.h inclusion due to object-file.h changes object.h: move some inline functions and defines from cache.h treewide: remove cache.h inclusion due to object.h changes editor: move editor-related functions and declarations into common file treewide: remove cache.h inclusion due to editor.h changes pager.h: move declarations for pager.c functions from cache.h treewide: remove cache.h inclusion due to pager.h changes cache.h: remove unnecessary includes treewide: remove double forward declaration of read_in_full treewide: reduce includes of cache.h in other headers mailmap, quote: move declarations of global vars to correct unit protocol.h: move definition of DEFAULT_GIT_PORT from cache.h treewide: be explicit about dependence on strbuf.h symlinks.h: move declarations for symlinks.c functions from cache.h packfile.h: move pack_window and pack_entry from cache.h server-info.h: move declarations for server-info.c functions from cache.h copy.h: move declarations for copy.c functions from cache.h base85.h: move declarations for base85.c functions from cache.h pkt-line.h: move declarations for pkt-line.c functions from cache.h match-trees.h: move declarations for match-trees.c functions from cache.h ws.h: move declarations for ws.c functions from cache.h versioncmp.h: move declarations for versioncmp.c functions from cache.h dir.h: move DTYPE defines from cache.h tree-diff.c: move S_DIFFTREE_IFXMIN_NEQ define from cache.h hash-ll.h: split out of hash.h to remove dependency on repository.h cache,tree: move cmp_cache_name_compare from tree.[ch] to read-cache.c cache,tree: move basic name compare functions from read-cache to tree treewide: remove cache.h inclusion due to previous changes cache.h: remove unnecessary headers fsmonitor: reduce includes of cache.h commit.h: reduce unnecessary includes object-store.h: reduce unnecessary includes diff.h: reduce unnecessary includes reftable: ensure git-compat-util.h is the first (indirect) include merge-ort: fix calling merge_finalize() with no intermediate merge t5583: fix shebang line Emily Shaffer (1): mailmap: change primary address for Emily Shaffer Eric Sunshine (1): tests: diagnose unclosed here-doc in chainlint.pl Eric Wong (3): commit-reach: avoid NULL dereference fetch: support hideRefs to speed up connectivity checks fetch: pass --no-write-fetch-head to subprocesses Fangyi Zhou (1): rebase: fix capitalisation autoSquash in i18n string Felipe Contreras (16): advice: add diverging advice for novices test: simplify counts aggregation test: don't print aggregate-results command object-name: fix quiet @{u} parsing completion: prompt: use generic colors doc: remove GNU troff workaround doc: remove manpage-base-url workaround doc: asciidoc: remove custom header macro doc: simplify man version doc: set actual revdate for manpages doc: git-checkout: trivial callout cleanup doc: git-checkout: reorganize examples doc: remove custom callouts format doc: manpage: remove maximum title length doc: doc-diff: specify date test: rev-parse-upstream: add missing cmp Glen Choo (10): config.c: plumb config_source through static fns config.c: don't assign to "cf_global" directly config.c: create config_reader and the_reader config.c: plumb the_reader through callbacks config.c: remove current_config_kvi config.c: remove current_parsing_scope config: report cached filenames in die_bad_number() config.c: rename "struct config_source cf" clone: error specifically with --local and symlinked objects setup: trace bare repository setups Han Xin (2): negotiator/default: avoid stack overflow negotiator/skipping: fix some problems in mark_common() Jacob Keller (2): blame: allow --contents to work with non-HEAD commit blame: use different author name for fake commit generated by --contents Jeff King (82): ref-filter: drop unused atom parameter from get_worktree_path() ls-refs: drop config caching serve: use repository pointer to get config serve: mark unused parameters in virtual functions object-name: mark unused parameters in disambiguate callbacks http-backend: mark argc/argv unused http-backend: mark unused parameters in virtual functions ref-filter: mark unused callback parameters mark "pointless" data pointers in callbacks run-command: mark error routine parameters as unused mark unused parameters in signal handlers list-objects: mark unused callback parameters for_each_object: mark unused callback parameters prio-queue: mark unused parameters in comparison functions notes: mark unused callback parameters fetch-pack: mark unused parameter in callback function rewrite_parents(): mark unused callback parameter for_each_commit_graft(): mark unused callback parameter userformat_want_item(): mark unused parameter run_processes_parallel: mark unused callback parameters help: mark unused parameter in git_unknown_cmd_config() fsck: factor out index fsck fsck: check index files in all worktrees fsck: mention file path for index errors fsck: check even zero-entry index files drop pure pass-through config callbacks bundle: turn on --all-progress-implied by default bundle: let "-" mean stdin for reading operations bundle: document handling of "-" as stdin parse-options: consistently allocate memory in fix_filename() parse-options: use prefix_filename_except_for_dash() helper diff: factor out src/dst prefix setup t4013: add tests for diff prefix options diff: add --default-prefix option format-patch: do not respect diff.noprefix format-patch: add format.noprefix option add-patch: handle "* Unmerged path" lines rebase: prefer --default-prefix to --{src,dst}-prefix for format-patch mailmap: drop debugging code http: drop unused parameter from start_object_request() http: mark unused parameter in fill_active_slot() callbacks transport: mark unused parameters in fetch_refs_from_bundle() git_connect(): fix corner cases in downgrading v2 to v0 fast-export: drop const when storing anonymized values fast-export: simplify initialization of anonymized hashmaps fast-export: factor out anonymized_entry creation fast-export: de-obfuscate --anonymize-map handling fast-export: drop data parameter from anonymous generators fast-export: drop unused parameter from anonymize_commit_message() pack-redundant: escalate deprecation warning to an error docs: document caveats of rev-list's object-name output fast-import: fix file access when run from subdir builtins: always pass prefix to parse_options() builtins: annotate always-empty prefix parameters builtins: mark unused prefix parameters mark "argv" as unused when we check argc t/helper: mark unused argv/argc arguments parse-options: drop parse_opt_unknown_cb() pack-redundant: document deprecation tests: run internal chain-linter under "make test" tests: replace chainlint subshell with a function tests: drop here-doc check from internal chain-linter tests: skip test_eval_ in internal chain-lint t/lib-httpd: pass PERL_PATH to CGI scripts v0 protocol: fix infinite loop when parsing multi-valued capabilities t5512: stop referring to "v1" protocol v0 protocol: fix sha1/sha256 confusion for capabilities^{} t5512: add v2 support for "ls-remote --symref" test t5512: allow any protocol version for filtered symref test t5512: test "ls-remote --heads --symref" filtering with v0 and v2 v0 protocol: use size_t for capability length/offset gpg-interface: set trust level of missing key to "undefined" notes: clean up confusing NULL checks in init_notes() fetch_bundle_uri(): drop pointless NULL check t4212: avoid putting git on left-hand side of pipe parse_commit(): parse timestamp from end of line parse_commit(): handle broken whitespace-only timestamp parse_commit(): describe more date-parsing failure modes doc-diff: drop SOURCE_DATE_EPOCH override t7001: avoid git on upstream of pipe t7001: use "ls-files --format" instead of "cut" t: drop "verbose" helper function Jiang Xin (1): object-info: init request_info before reading arg Johannes Schindelin (7): split-index & fsmonitor: demonstrate a bug split-index; stop abusing the `base_oid` to strip the "link" extension fsmonitor: avoid overriding `cache_changed` bits unpack-trees: take care to propagate the split-index flag t3701: we don't need no Perl for `add -i` anymore t5563: prevent "ambiguous redirect" gitk: prevent overly long command lines John Cai (1): name-rev: make --stdin hidden John Keeping (1): format-patch: output header for empty commits Josh Soref (1): subtree: support long global flags Jouke Witteveen (1): send-email docs: Remove mention of discontinued gmail feature Junio C Hamano (28): gpg-interface: lazily initialize and read the configuration bundle: don't blindly apply prefix_filename() to "-" Start the 2.41 cycle The second batch am: refer to format-patch in the documentation The third batch The fourth batch The fifth batch The sixth batch e-mail workflow: Message-ID is spelled with ID in both capital letters The seventh batch clone: propagate object-format when cloning from void The eighth batch The ninth batch The tenth batch The eleventh batch The twelfth batch The thirteenth batch doc: GIT_DEFAULT_HASH is and will be ignored during "clone" The fourteenth batch The fifteenth batch The sixteenth batch diff: refactor common tail part of dirstat computation diff: plug leaks in dirstat t9800: correct misuse of 'show -s --raw' in a test The seventeenth batch The eighteenth batch Git 2.41-rc0 Kristoffer Haugsbakk (5): config: tell the user that we expect an ASCII character doc: interpret-trailers: don’t use heredoc in examples doc: interpret-trailers: use input redirection doc: interpret-trailers: don’t use deprecated config doc: interpret-trailers: fix example Linus Arver (1): MyFirstContribution: render literal * M Hickford (3): credential/wincred: include wincred.h credential/wincred: store password_expiry_utc credential: new attribute oauth_refresh_token Martin Ågren (2): gittutorial: drop early mention of origin gittutorial: wrap literal examples in backticks Mathias Krause (1): grep: work around UTF-8 related JIT bug in PCRE2 <= 10.34 Matthew John Cheetham (3): t5563: add tests for basic and anoymous HTTP access http: read HTTP WWW-Authenticate response headers credential: add WWW-Authenticate header to cred requests Maxim Cournoyer (3): send-email: extract execute_cmd from recipients_cmd send-email: add --header-cmd, --no-header-cmd options send-email: detect empty blank lines in command output Michael J Gruber (1): t3070: make chain lint tester happy Michael Strawbridge (2): send-email: refactor header generation functions send-email: expose header information to git-send-email's sendemail-validate hook Mike Hommey (1): Handle some compiler versions containing a dash Nico Rieck (1): gitk: escape file paths before piping to git log Oswald Buddenhagen (5): sequencer: remove pointless rollback_lock_file() sequencer: rewrite save_head() in terms of write_message() sequencer: actually translate report in do_exec() messages: capitalization and punctuation exceptions t/t3501-revert-cherry-pick.sh: clarify scope of the file Patrick Steinhardt (27): receive-pack: fix stale packfile locks when dying fetch: move reference width calculation into `display_state` fetch: move output format into `display_state` fetch: pass the full local reference name to `format_display` fetch: centralize handling of per-reference format fetch: centralize logic to print remote URL fetch: centralize printing of reference updates commit-graph: fix truncated generation numbers midx: fix segfault with no packs and invalid preferred pack repack: fix trying to use preferred pack in alternates repack: fix generating multi-pack-index with only non-local packs pack-objects: split out `--stdin-packs` tests into separate file pack-objects: fix error when packing same pack twice pack-objects: fix error when same packfile is included and excluded pack-objects: extend test coverage of `--stdin-packs` with alternates t/helper: allow chmtime to print verbosely without modifying mtime repack: honor `-l` when calculating pack geometry repack: disable writing bitmaps when doing a local repack fetch: fix `--no-recurse-submodules` with multi-remote fetches fetch: split out tests for output format fetch: add a test to exercise invalid output formats fetch: print left-hand side when fetching HEAD:foo fetch: refactor calculation of the display table width fetch: introduce `display_format` enum fetch: lift up parsing of "fetch.output" config variable fetch: move option related variables into main function fetch: introduce machine-parseable "porcelain" output format Paul Eggert (1): git-compat-util: use gettimeofday(2) for time(2) Phillip Wood (8): wildmatch: fix exponential behavior wildmatch: avoid undefined behavior wildmatch: hide internal return values rebase: stop reading and writing unnecessary strategy state sequencer: use struct strvec to store merge strategy options rebase -m: cleanup --strategy-option handling rebase -m: fix serialization of strategy options rebase: remove a couple of redundant strategy tests Raghul Nanth A (1): describe: enable sparse index for describe René Scharfe (6): archive: improve support for running in subdirectory t5000: use check_mtime() userdiff: support regexec(3) with multi-byte support date: remove approxidate_relative() get-tar-commit-id: use TYPEFLAG_GLOBAL_HEADER instead of magic value test-ctype: check EOF Robin Jarry (1): send-email: export patch counters in validate environment Rubén Justo (10): bisect: fix "reset" when branch is checked out elsewhere worktree: introduce is_shared_symref() branch: fix die_if_checked_out() when ignore_current_worktree rebase: refuse to switch to a branch already checked out elsewhere (test) switch: reject if the branch is already checked out elsewhere (test) branch: test for failures while renaming branches branch: use get_worktrees() in copy_or_rename_branch() branch: description for orphan branch errors branch: rename orphan branches in any worktree branch: avoid unnecessary worktrees traversals SZEDER Gábor (6): treewide: include parse-options.h in source files treewide: remove unnecessary inclusions of parse-options.h from headers parse-options.h: use consistent name for the callback parameters parse-options.h: rename _OPT_CONTAINS_OR_WITH()'s parameters parse-options.h: use designated initializers in OPT_* macros cocci: remove 'unused.cocci' Shuqi Liang (3): write-tree: integrate with sparse index t1092: add tests for `git diff-files` diff-files: integrate with sparse index Siddharth Singh (1): hashmap.h: fix minor typo Sohom Datta (1): docs: clarify git rm --cached function in gitignore note Stanislav Malishevskiy (1): http: add support for different sslcert and sslkey types. Tao Klerks (1): mergetool: new config guiDefault supports auto-toggling gui by DISPLAY Taylor Blau (31): commit-graph: introduce `ensure_generations_valid()` pack-write.c: plug a leak in stage_tmp_packfiles() t5325: mark as leak-free pack-revindex: make `load_pack_revindex` take a repository pack-revindex: introduce GIT_TEST_REV_INDEX_DIE_ON_DISK pack-revindex: introduce `pack.readReverseIndex` config: enable `pack.writeReverseIndex` by default t: invert `GIT_TEST_WRITE_REV_INDEX` pack-write.c: plug a leak in stage_tmp_packfiles() builtin/repack.c: fix incorrect reference to '-C' builtin/gc.c: ignore cruft packs with `--keep-largest-pack` t/t5304-prune.sh: prepare for `gc --cruft` by default t/t6501-freshen-objects.sh: prepare for `gc --cruft` by default t/t6500-gc.sh: refactor cruft pack tests t/t6500-gc.sh: add additional test cases t/t9300-fast-import.sh: prepare for `gc --cruft` by default builtin/gc.c: make `gc.cruftPacks` enabled by default repository.h: drop unused `gc_cruft_packs` string-list: multi-delimiter `string_list_split_in_place()` string-list: introduce `string_list_setlen()` t/helper/test-hashmap.c: avoid using `strtok()` t/helper/test-oidmap.c: avoid using `strtok()` t/helper/test-json-writer.c: avoid using `strtok()` banned.h: mark `strtok()` and `strtok_r()` as banned credential.c: store "wwwauth[]" values in `credential_read()` t/lib-credential.sh: ensure credential helpers handle long headers contrib/credential: avoid fixed-size buffer in osxkeychain contrib/credential: remove 'gnome-keyring' credential helper contrib/credential: .gitignore libsecret build artifacts contrib/credential: avoid fixed-size buffer in libsecret contrib/credential: embiggen fixed-size buffer in wincred Teng Long (1): push: introduce '--branches' option William Sprent (2): builtin/sparse-checkout: remove NEED_WORK_TREE flag builtin/sparse-checkout: add check-rules command ZheNing Hu (2): receive-pack: fix funny ref error messsage push: allow delete single-level ref Ævar Arnfjörð Bjarmason (33): auto-crlf tests: don't lose exit code in loops and outside tests t/lib-patch-mode.sh: fix ignored exit codes tests: don't lose exit status with "(cd ...; test <op> $(git ...))" tests: don't lose "git" exit codes in "! ( git ... | grep )" tests: don't lose exit status with "test <op> $(git ...)" tests: don't lose misc "git" exit codes sequencer.c: fix overflow & segfault in parse_strategy_opts() cocci: remove dead rule from "the_repository.pending.cocci" cocci: fix incorrect & verbose "the_repository" rules cocci: sort "the_repository" rules by header cocci: add missing "the_repository" macros to "pending" cocci: apply the "cache.h" part of "the_repository.pending" cocci: apply the "commit-reach.h" part of "the_repository.pending" cocci: apply the "commit.h" part of "the_repository.pending" cocci: apply the "diff.h" part of "the_repository.pending" cocci: apply the "object-store.h" part of "the_repository.pending" cocci: apply the "pretty.h" part of "the_repository.pending" cocci: apply the "packfile.h" part of "the_repository.pending" cocci: apply the "promisor-remote.h" part of "the_repository.pending" cocci: apply the "refs.h" part of "the_repository.pending" cocci: apply the "rerere.h" part of "the_repository.pending" cocci: apply the "revision.h" part of "the_repository.pending" post-cocci: adjust comments for recent repo_* migration libs: use "struct repository *" argument, not "the_repository" config tests: cover blind spots in git_die_config() tests config tests: add "NULL" tests for *_get_value_multi() config API: add and use a "git_config_get()" family of functions versioncmp.c: refactor config reading next commit config API: have *_multi() return an "int" and take a "dest" for-each-repo: error on bad --config config API users: test for *_get_value_multi() segfaults config API: add "string" version of *_value_multi(), fix segfaults for-each-repo: with bad config, don't conflate <path> and <cmd> Øystein Walle (2): ref-filter: remove unused ref_format member branch, for-each-ref, tag: add option to omit empty lines Version v2.40.1; changes since v2.40.0: --------------------------------------- Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Jeff King (7): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Makefile: force -O0 when compiling with SANITIZE=leak Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (22): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present tests: avoid using `test_i18ncmp` Git 2.31.8 Git 2.32.7 Git 2.33.8 Git 2.34.8 Git 2.35.8 Git 2.36.6 Git 2.37.7 Git 2.38.5 Git 2.39.3 Git 2.40.1 Junio C Hamano (1): http.c: clear the 'finished' member once we are done with it Taylor Blau (5): t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 Version v2.40.0; changes since v2.40.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5490t) Bagas Sanjaya (1): l10n: po-id for 2.40 (round 1) Emir SARI (1): l10n: tr: Update Turkish translations for v.2.40.0 Fangyi Zhou (1): l10n: zh_CN v2.40.0 round 1 Jean-Noël Avila (3): l10n: fr: fix some typos l10n: fr: v2.40.0 rnd 1 l10n: fr: v2.40.0 rnd 2 Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (1): Git 2.40 Peter Krefting (1): l10n: sv.po: Update Swedish translation (5490t0f0u) Ralf Thielow (1): l10n: update German translation Version v2.40.0-rc2; changes since v2.40.0-rc1: ----------------------------------------------- Gwyneth Morgan (1): signature-format.txt: note SSH and X.509 signature delimiters Junio C Hamano (1): Git 2.40-rc2 René Scharfe (1): range-diff: avoid compiler warning when char is unsigned Version v2.40.0-rc1; changes since v2.40.0-rc0: ----------------------------------------------- Andrei Rybak (1): test-lib: drop comment about test_description Ashutosh Pandey (1): t2015-checkout-unborn.sh: changes the style for cd Jeff King (21): shorten_unambiguous_ref(): avoid integer truncation shorten_unambiguous_ref(): use NUM_REV_PARSE_RULES constant shorten_unambiguous_ref(): avoid sscanf() add basic http proxy tests t0066: drop setup of "dir5" t5541: run "used receive-pack service" test earlier t5541: stop marking "used receive-pack service" test as v0 only t5541: simplify and move "no empty path components" test t5551: drop redundant grep for Accept-Language t5551: lower-case headers in expected curl trace t5551: handle HTTP/2 when checking curl trace t5551: stop forcing clone to run with v0 protocol t5551: handle v2 protocol when checking curl trace t5551: handle v2 protocol in upload-pack service test t5551: simplify expected cookie file t5551: handle v2 protocol in cookie test t5551: drop curl trace lines without headers t/lib-httpd: respect $HTTPD_PROTO in expect_askpass() t/lib-httpd: enable HTTP/2 "h2" protocol, not just h2c t5559: fix test failures with LIB_HTTPD_SSL t5559: make SSL/TLS the default John Cai (2): diff: consolidate diff algorithm option parsing diff: teach diff to read algorithm from diff driver Junio C Hamano (5): format.attach: allow empty value to disable multi-part messages A few more topics post 2.40-rc0 A bit more before 2.40-rc1 A bit more before 2.40-rc1 Git 2.40-rc1 M Hickford (1): credential: new attribute password_expiry_utc Matthias Aßhauer (1): fetch: choose a sensible default with --jobs=0 again Patrick Steinhardt (1): delta-islands: fix segfault when freeing island marks Phillip Wood (3): rebase -i: check labels and refs when parsing todo list rebase -i: match whole word in is_command() rebase -i: fix parsing of "fixup -C<commit>" René Scharfe (1): archive: add --mtime Taylor Blau (1): dir-iterator: drop unused `DIR_ITERATOR_FOLLOW_SYMLINKS` Teng Long (1): range-diff: let '--abbrev' option takes effect Zhang Yi (1): t9700: modernize test scripts idriss fekir (1): trace.c, git.c: remove unnecessary parameter to trace_repo_setup() Version v2.40.0-rc0; changes since v2.39.3: ------------------------------------------- Adam Szkoda (1): ssh signing: better error message when key not in agent Alison Winters (2): completion: add optional ignore-case when matching refs completion: add case-insensitive match of pseudorefs Andrei Rybak (11): gitattributes.txt: fix typo in "comma separated" *: fix typos which duplicate a word git-bisect-lk2009: update java code conventions link git-bisect-lk2009: update nist report link t6003: uncomment test '--max-age=c3, --topo-order' t6422: drop commented out code t7527: use test_when_finished in 'case insensitive+preserving' Documentation: render dash correctly userdiff: support Java type parameters userdiff: support Java record types userdiff: support Java sealed classes Calvin Wan (2): fetch: fix duplicate remote parallel fetch bug Documentation: clarify multiple pushurls vs urls Carlo Marcelo Arenas Belón (1): grep: correctly identify utf-8 characters with \{b,w} in -P Daniël Haazen (1): mingw: fix typo in an error message from ownership check Derrick Stolee (25): transport: rename got_remote_heads bundle-uri: serve bundle.* keys from config strbuf: introduce strbuf_strip_file_from_path() bundle-uri: allow relative URLs in bundle lists bundle-uri: download bundles from an advertised list clone: unbundle the advertised bundles hashfile: allow skipping the hash function read-cache: add index.skipHash config option test-lib-functions: add helper for trailing hash features: feature.manyFiles implies fast index writes t1600: fix racy index.skipHash test t: allow 'scalar' in test_must_fail t921*: test scalar behavior starting maintenance scalar: only warn when background maintenance fails bundle: test unbundling with incomplete history bundle: verify using check_connected() t5558: add tests for creationToken heuristic bundle-uri: parse bundle.heuristic=creationToken bundle-uri: parse bundle.<id>.creationToken values bundle-uri: download in creationToken order clone: set fetch.bundleURI if appropriate bundle-uri: drop bundle.flag from design doc fetch: fetch from an external bundle URI bundle-uri: store fetch.bundleCreationToken bundle-uri: test missing bundles with heuristic Elijah Newren (16): ls-files: add missing documentation for --resolve-undo option ls-files: clarify descriptions of file selection options ls-files: clarify descriptions of status tags for -t ls-files: guide folks to --exclude-standard over other --exclude* options t6426: fix TODO about making test more comprehensive rebase: mark --update-refs as requiring the merge backend rebase: flag --apply and --merge as incompatible rebase: remove --allow-empty-message from incompatible opts rebase: fix docs about incompatibilities with --root rebase: fix incompatiblity checks for --[no-]reapply-cherry-picks rebase: add coverage of other incompatible options rebase: clarify the OPT_CMDMODE incompatibilities rebase: fix formatting of rebase --reapply-cherry-picks option in docs rebase: put rebase_options initialization in single place rebase: provide better error message for apply options vs. merge config name-rev: fix names by dropping taggerdate workaround Emily Shaffer (4): run-command: allow stdin for run_processes_parallel hook API: support passing stdin to hooks, convert am's 'post-rewrite' sequencer: use the new hook API for the simpler "post-rewrite" call hook: support a --to-stdin=<path> option Eric Sunshine (3): t1509: fix failing "root work tree" test due to owner-check t1509: make "setup" test more robust t1509: facilitate repeated script invocations Eric Wong (2): format-patch: support format.mboxrd with --stdout delta-islands: free island_marks and bitmaps Glen Choo (2): read-tree + fetch tests: test failing "--super-prefix" interaction docs: document zero bits in index "mode" Gwyneth Morgan (1): request-pull: filter out SSH/X.509 tag signatures Harshil-Jani (2): mingw: remove duplicate `USE_NED_ALLOCATOR` directive mingw: remove msysGit/MSYS1 support Jeff Hostetler (2): fsmonitor: fix race seen in t7527 fsmonitor: eliminate call to deprecated FSEventStream function Jeff King (32): git-jump: move valid-mode check earlier pack-bitmap.c: break out of the bitmap loop early if not tracing pack-bitmap.c: trace bitmap ignore logs when midx-bitmap is found ref-filter: reject arguments to %(HEAD) ref-filter: factor out "%(foo) does not take arguments" errors ref-filter: factor out "unrecognized %(foo) arg" errors ref-filter: truncate atom names in error messages ref-filter: convert email atom parser to use err_bad_arg() test-bundle-uri: drop unused variables convert trivial uses of strncmp() to starts_with() convert trivial uses of strncmp() to skip_prefix() object-file: inline calls to read_object() streaming: inline call to read_object_file_extended() read_object_file_extended(): drop lookup_replace option repo_read_object_file(): stop wrapping read_object_file_extended() packfile: inline custom read_object() object-file: fix indent-with-space t/interop: report which vanilla git command failed t1007: modernize malformed object tests t1006: stop using 0-padded timestamps t7030: stop using invalid tag name t: use hash-object --literally when created malformed objects fsck: provide a function to fsck buffer without object struct hash-object: use fsck for object checks hash-object: fix descriptor leak with --literally fsck: do not assume NUL-termination of buffers t/lib-httpd: bump required apache version to 2.2 t/lib-httpd: bump required apache version to 2.4 t/lib-httpd: drop SSLMutex config t/lib-httpd: increase ssl key size to 2048 bits doc/ls-remote: cosmetic cleanups for examples doc/ls-remote: clarify pattern format Jiang Xin (3): t1301: fix wrong template dir for git-init t1301: use test_when_finished for cleanup t1301: do not change $CWD in "shared=all" test case Johannes Schindelin (11): bisect--helper: handle states directly Turn `git bisect` into a full built-in t0021: use Windows-friendly `pwd` tests(mingw): avoid very slow `mingw_test_cmp` bisect--helper: simplify exit code computation bisect: verify that a bogus option won't try to start a bisection bisect run: fix the error message bisect: remove Cogito-related code bisect: no longer try to clean up left-over `.git/head-name` files t7510: add a test case that does not need gpg gpg: do show gpg's error message upon failure John Cai (2): docs: link generating patch sections attr: fix instructions on how to check attrs Jonathan Tan (5): http-fetch: invoke trace2_cmd_name() object-file: remove OBJECT_INFO_IGNORE_LOOSE object-file: refactor map_loose_object_1() object-file: emit corruption errors when detected commit: don't lazy-fetch commits Junio C Hamano (22): Start the 2.40 cycle The first batch for 2.40 The second batch The third batch The fourth batch The fifth batch The sixth batch format-patch: unleak "-v <num>" The seventh batch The eighth batch The ninth batch The tenth batch The eleventh batch The twelfth batch The thirteenth batch The fourteenth batch The fifteenth batch The sixteenth batch rev-list: clarify git-log default date format test-genzeros: avoid raw write(2) The seventeenth batch Git 2.40-rc0 Karthik Nayak (2): t0003: move setup for `--all` into new block attr: add flag `--source` to work with tree-ish Kostya Farber (1): t5000: modernise archive and :(glob) test Kyle Meyer (2): send-email: relay '-v N' to format-patch doc/git-branch: fix --force description typo Kyle Zhao (3): merge-tree.c: add --merge-base=<commit> option merge-tree.c: allow specifying the merge-base when --stdin is passed docs: fix description of the `--merge-base` option M Hickford (1): Documentation: clarify that cache forgets credentials if the system restarts Martin Ågren (1): git-cat-file.txt: fix list continuations rendering literally Mathias Krause (1): grep: fall back to interpreter if JIT memory allocation fails Peter Grayson (1): diff: fix regression with --stat and unmerged file Philip Oakley (6): doc: pretty-formats: separate parameters from placeholders doc: pretty-formats: delineate `%<|(` parameter values doc: pretty-formats document negative column alignments doc: pretty-formats describe use of ellipsis in truncation doc: pretty-formats note wide char limitations, and add tests .gitattributes: include `text` attribute for eol attributes Philippe Blain (1): branch: improve advice when --recurse-submodules fails Phillip Wood (2): ci(github): restore "print test failures" step name rebase: cleanup "--exec" option handling René Scharfe (19): t5317: stop losing return codes of git ls-files t5317: demonstrate failure to handle multiple --filter options pack-objects: fix handling of multiple --filter options pack-objects: simplify --filter handling list-objects-filter: remove OPT_PARSE_LIST_OBJECTS_FILTER_INIT() diff: factor out add_diff_options() diff: use add_diff_options() in diff_opt_parse() diff: remove parseopts member from struct diff_options mingw: make argv2 in try_shell_exec() non-const factor out BARF_UNLESS_COPYABLE do full type check in BARF_UNLESS_COPYABLE add DUP_ARRAY use DUP_ARRAY read-cache: use size_t for {base,df}_name_compare() pack-objects: use strcspn(3) in name_cmp_len() cache-tree: fix strbuf growth in prime_cache_tree_rec() test-ctype: test isascii test-ctype: test islower and isupper test-ctype: test iscntrl, ispunct, isxdigit and isprint Rudy Rigot (1): status: modernize git-status "slow untracked files" advice SZEDER Gábor (1): tests: make 'test_oid' print trailing newline Sean Allred (3): var: do not print usage() with a correct invocation var: allow GIT_EDITOR to return null var: add GIT_SEQUENCE_EDITOR variable Seija (1): maintenance: compare output of pthread functions for inequality with 0 Seija Kijin (5): win32: use _endthreadex to terminate threads, not ExitThread win32: prepare pthread.c for change by formatting win32: close handles of threads that have been joined merge: break out of all_strategy loop when strategy is found compat/winansi: check for errors of CreateThread() correctly Siddharth Asthana (2): cat-file: add mailmap support to -s option cat-file: add mailmap support to --batch-check option Simon Gerber (1): help.c: fix autocorrect in work tree for bare repository Sven Strickroth (1): submodule: accept -v for the update command Teng Long (4): pack-bitmap.c: remove unnecessary "open_pack_index()" calls pack-bitmap.c: avoid exposing absolute paths ls-tree: cleanup the redundant SPACE t3104: remove shift code in 'test_ls_tree_format' Thierry Reding (1): am: allow passing --no-verify flag Torsten Bögershausen (1): t0003: call dd with portable blocksize Wes Lord (1): new-command.txt: update reference to builtin docs Yoichi Nakayama (2): git-jump: add an optional argument '--stdout' git-jump: invoke emacs/emacsclient Yukai Chou (1): doc: fix non-existent config name Yutaro Ohno (1): doc: add "git switch -c" as another option on detached HEAD ZheNing Hu (1): scalar: show progress if stderr refers to a terminal Ævar Arnfjörð Bjarmason (84): bisect tests: test for v2.30.0 "bisect run" regressions bisect: refactor bisect_run() to match CodingGuidelines bisect test: test exit codes on bad usage bisect--helper: emit usage for "git bisect" bisect; remove unused "git-bisect.sh" and ".gitignore" entry tests: mark tests as passing with SANITIZE=leak {reset,merge}: call discard_index() before returning commit: discard partial cache before (re-)reading it read-cache.c: clear and free "sparse_checkout_patterns" dir.c: free "ident" and "exclude_per_dir" in "struct untracked_cache" built-ins & libs & helpers: add/move destructors, fix leaks unpack-file: fix ancient leak in create_temp_file() revision API: call graph_clear() in release_revisions() ls-files: fix a --with-tree memory leak sequencer.c: fix "opts->strategy" leak in read_strategy_opts() connected.c: free the "struct packed_git" rebase: don't leak on "--abort" cherry-pick: free "struct replay_opts" members revert: fix parse_options_concat() leak built-ins: use free() not UNLEAK() if trivial, rm dead code Makefile: use sha1collisiondetection by default on OSX and Darwin protocol v2: add server-side "bundle-uri" skeleton t: create test harness for 'bundle-uri' command clone: request the 'bundle-uri' command when available bundle-uri client: add boolean transfer.bundleURI setting bundle-uri client: add helper for testing server submodule absorbgitdirs tests: add missing "Migrating git..." tests submodule.c & submodule--helper: pass along "super_prefix" param submodule--helper: don't use global --super-prefix in "absorbgitdirs" submodule--helper: convert "foreach" to its own "--super-prefix" submodule--helper: convert "sync" to its own "--super-prefix" submodule--helper: convert "status" to its own "--super-prefix" submodule--helper: convert "{update,clone}" to their own "--super-prefix" read-tree: add "--super-prefix" option, eliminate global builtin/difftool.c: { 0 }-initialize rather than using memset() sparse-index.c: expand_to_path() can assume non-NULL "istate" sparse-index API: BUG() out on NULL ensure_full_index() read-cache.c: refactor set_new_index_sparsity() for subsequent commit bisect--helper: make the order consistently `argc, argv` ls-tree: don't use "show_tree_data" for "fast" callbacks ls-tree: use a "struct options" ls-tree: fold "show_tree_data" into "cb" struct ls-tree: make "line_termination" less generic env-helper: move this built-in to "test-tool env-helper" cache API: add a "INDEX_STATE_INIT" macro/function, add release_index() treewide: always have a valid "index_state.repo" member add: remove "add.interactive.useBuiltin" & Perl "git add--interactive" add API: remove run_add_interactive() wrapper function docs & comments: replace mentions of "git-add--interactive.perl" tests: mark tests as passing with SANITIZE=leak bundle.c: don't leak the "args" in the "struct child_process" commit-graph: use free_commit_graph() instead of UNLEAK() clone: use free() instead of UNLEAK() various: add missing clear_pathspec(), fix leaks name-rev: don't xstrdup() an already dup'd string repack: fix leaks on error with "goto cleanup" worktree: fix a trivial leak in prune_worktrees() http-backend.c: fix "dir" and "cmd_arg" leaks in cmd_main() http-backend.c: fix cmd_main() memory leak, refactor reg{exec,free}() commit-graph: fix a parse_options_concat() leak show-branch: free() allocated "head" before return builtin/merge.c: use fixed strings, not "strbuf", fix leak builtin/merge.c: free "&buf" on "Your local changes..." error grep.c: refactor free_grep_patterns() grep API: plug memory leaks by freeing "header_list" receive-pack: release the linked "struct command *" list push: refactor refspec_append_mapped() for subsequent leak-fix push: free_refs() the "local_refs" in set_refspecs() rebase: use "cleanup" pattern in do_interactive_rebase() sequencer.c: split up sequencer_remove_state() sequencer API users: fix get_replay_opts() leaks builtin/revert.c: move free-ing of "revs" to replay_opts_release() builtin/rebase.c: fix "options.onto_name" leak sequencer.c: always free() the "msgbuf" in do_pick_commit() builtin/rebase.c: free() "options.strategy_opts" commit.c: free() revs.commit in get_fork_point() config.h: remove unused git_configset_add_parameters() run-command.c: remove dead assignment in while-loop builtin/rm.c: use narrower "USE_THE_INDEX_VARIABLE" cocci & cache.h: fully apply "active_nr" part of index-compatibility cocci & cache.h: apply pending "index_cache_pos" rule cocci & cache-tree.h: migrate "write_cache_as_tree" to "*_index_*" cache-tree API: remove redundant update_main_cache_tree() cocci & cache.h: remove "USE_THE_INDEX_COMPATIBILITY_MACROS" Đoàn Trần Công Danh (6): bisect: fix output regressions in v2.30.0 bisect run: keep some of the post-v2.30.0 output bisect-run: verify_good: account for non-negative exit status bisect--helper: identify as bisect when report error bisect--helper: log: allow arbitrary number of arguments date.c: allow ISO 8601 reduced precision times Version v2.39.3; changes since v2.39.2: --------------------------------------- Chris. Webster (3): ci (check-whitespace): suggest fixes for errors ci (check-whitespace): add links to job output ci (check-whitespace): move to actions/checkout@v3 Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Eric Sunshine (1): githooks: discuss Git operations in foreign repositories Jeff King (25): git-compat-util: avoid redefining system function names git-compat-util: undefine system names before redeclaring them server_supports_v2(): use a separate function for die_on_error ls-refs: use repository parameter to iterate refs blob: drop unused parts of parse_blob_buffer() list-objects: drop process_gitlink() function ws: drop unused parameter from ws_blank_line() xdiff: drop unused parameter in def_ff() xdiff: mark unused parameter in xdl_call_hunk_func() diff: mark unused parameters in callbacks list-objects-filter: mark unused parameters in virtual functions userdiff: mark unused parameter in internal callback diff: use filespec path to set up tempfiles for ext-diff diff: clean up external-diff argv setup diff: drop "name" parameter from prepare_temp_file() http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION http: support CURLOPT_PROTOCOLS_STR http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Makefile: force -O0 when compiling with SANITIZE=leak Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (22): ci: only run win+VS build & tests in Git for Windows' fork compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present tests: avoid using `test_i18ncmp` Git 2.31.8 Git 2.32.7 Git 2.33.8 Git 2.34.8 Git 2.35.8 Git 2.36.6 Git 2.37.7 Git 2.38.5 Git 2.39.3 Johannes Sixt (1): t3920: don't ignore errors of more than one command with `|| true` Junio C Hamano (4): branch: document `-f` and linked worktree behaviour checkout: document -b/-B to highlight the differences from "git branch" Prepare for 2.39.3 just in case http.c: clear the 'finished' member once we are done with it Lars Kellogg-Stedman (1): line-range: fix infinite loop bug with '$' regex Patrick Steinhardt (1): refs: fix corruption by not correctly syncing packed-refs to disk Philippe Blain (5): git-cherry-pick.txt: do not use 'ORIG_HEAD' in example git-reset.txt: mention 'ORIG_HEAD' in the Description git-merge.txt: mention 'ORIG_HEAD' in the Description revisions.txt: be explicit about commands writing 'ORIG_HEAD' git-rebase.txt: add a note about 'ORIG_HEAD' being overwritten René Scharfe (10): t4205: don't exit test script on failure list-objects-filter: plug pattern_list leak t3920: support CR-eating grep reflog: clear leftovers in reflog_expiry_cleanup() commit: skip already cleared parents in clear_commit_marks_1() am: don't pass strvec to apply_parse_options() object-file: inline write_buffer() use enhanced basic regular expressions on macOS ls-tree: fix expansion of repeated %(path) ls-tree: remove dead store and strbuf for quote_c_style() Rubén Justo (1): branch: force-copy a branch to itself via @{-1} is a no-op Seija Kijin (1): git: remove duplicate includes Taylor Blau (6): ci: avoid unnecessary builds t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 William Sprent (1): dir: check for single file cone patterns Ævar Arnfjörð Bjarmason (6): t5314: check exit code of "git" t7600: don't ignore "rev-parse" exit code in helper t4023: fix ignored exit codes of git bundle: don't segfault on "git bundle <subcmd>" builtin/bundle.c: remove superfluous "newargc" variable bundle <cmd>: have usage_msg_opt() note the missing "<file>" Version v2.39.2; changes since v2.39.1: --------------------------------------- Jeff King (3): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION http: support CURLOPT_PROTOCOLS_STR Johannes Schindelin (12): fsck: document the new `gitattributes` message IDs attr: adjust a mismatched data type attr: adjust a mismatched data type Git 2.31.7 Git 2.32.6 Git 2.33.7 Git 2.34.7 Git 2.35.7 Git 2.36.5 Git 2.37.6 Git 2.38.4 Git 2.39.2 Junio C Hamano (1): Git 2.30.8 Patrick Steinhardt (1): apply: fix writing behind newly created symbolic links Taylor Blau (3): t5619: demonstrate clone_local() with ambiguous transport clone: delay picking a transport until after get_repo_path() dir-iterator: prevent top-level symlinks without FOLLOW_SYMLINKS Version v2.39.1; changes since v2.39.0: --------------------------------------- Carlo Marcelo Arenas Belón (1): test-lib: add prerequisite for 64-bit platforms Junio C Hamano (10): Git 2.30.7 Git 2.31.6 Git 2.32.5 Git 2.33.6 Git 2.34.6 Git 2.35.6 Git 2.36.4 Git 2.37.5 Git 2.38.3 Git 2.39.1 Patrick Steinhardt (25): attr: fix overflow when upserting attribute with overly long name attr: fix out-of-bounds read with huge attribute names attr: fix integer overflow when parsing huge attribute names attr: fix out-of-bounds write when parsing huge number of attributes attr: fix out-of-bounds read with unreasonable amount of patterns attr: fix integer overflow with more than INT_MAX macros attr: harden allocation against integer overflows attr: fix silently splitting up lines longer than 2048 bytes attr: ignore attribute lines exceeding 2048 bytes attr: ignore overly large gitattributes files pretty: fix out-of-bounds write caused by integer overflow pretty: fix out-of-bounds read when left-flushing with stealing pretty: fix out-of-bounds read when parsing invalid padding format pretty: fix adding linefeed when placeholder is not expanded pretty: fix integer overflow in wrapping format utf8: fix truncated string lengths in `utf8_strnwidth()` utf8: fix returning negative string width utf8: fix overflow when returning string width utf8: fix checking for glyph width in `strbuf_utf8_replace()` utf8: refactor `strbuf_utf8_replace` to not rely on preallocated buffer pretty: restrict input lengths for padding and wrapping formats fsck: refactor `fsck_blob()` to allow for more checks fsck: pull out function to check a set of blobs fsck: move checks for gitattributes fsck: implement checks for gitattributes Version v2.39.0; changes since v2.39.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5501t) Bagas Sanjaya (1): l10n: po-id for 2.39 (round 1) Emir SARI (1): l10n: tr: v2.39.0 updates Fangyi Zhou (1): l10n: zh_CN v2.39.0 round 1 Jean-Noël Avila (1): l10n: fr: v2.39 rnd 1 Johannes Schindelin (3): ci: avoid using deprecated {up,down}load-artifacts Action RelNotes: a couple of typofixes ci: use a newer `github-script` version Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (2): Git 2.38.2 Git 2.39 Matheus Tavares (1): mailmap: update email address of Matheus Tavares Oscar Dominguez (1): ci(main): upgrade actions/checkout to v3 Peter Krefting (1): l10n: sv.po: Update Swedish translation (5501t0f0) Ralf Thielow (1): l10n: de.po: update German translation Victoria Dye (1): rebase --update-refs: avoid unintended ref deletion Yi-Jyun Pan (1): l10n: zh_TW.po: Git 2.39-rc2 Ævar Arnfjörð Bjarmason (3): CI: upgrade to macos-12, and pin OSX version CI: don't explicitly pick "bash" shell outside of Windows, fix regression CI: migrate away from deprecated "set-output" syntax Version v2.39.0-rc2; changes since v2.39.0-rc1: ----------------------------------------------- Junio C Hamano (1): Git 2.39-rc2 Ævar Arnfjörð Bjarmason (2): Makefiles: change search through $(MAKEFLAGS) for GNU make 4.4 cocci: avoid "should ... be a metavariable" warnings Version v2.39.0-rc1; changes since v2.39.0-rc0: ----------------------------------------------- Andreas Hasenack (1): chainlint.pl: fix /proc/cpuinfo regexp Eric Sunshine (1): lib-httpd: extend module location auto-detection Eric Wong (1): prune: quiet ENOENT on missing directories Glen Choo (1): object-file: use real paths when adding alternates Jean-Noël Avila (1): i18n: fix command template placeholder format Jeff King (2): parse_object(): drop extra "has" check before checking object type parse_object(): check on-disk type of suspected blob Jiang Xin (5): t5516: fail to run in verbose mode github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Junio C Hamano (3): Another batch before -rc1 A bit more before -rc1 Git 2.39-rc1 Kyle Meyer (1): merge-recursive: fix variable typo in error message Paul Smith (1): Makefile: avoid multiple patterns when recipes generate one file Phillip Wood (3): git_parse_unsigned: reject negative values config: require at least one digit when parsing numbers git_parse_signed(): avoid integer overflow René Scharfe (1): list-objects-filter: plug combine_filter_data leak SZEDER Gábor (3): line-log: free diff queue when processing non-merge commits line-log: free the diff queues' arrays when processing merge commits diff.c: use diff_free_queue() Ævar Arnfjörð Bjarmason (13): cache.h: remove unused "the_index" compat macros builtin/{grep,log}.: don't define "USE_THE_INDEX_COMPATIBILITY_MACROS" cocci & cache.h: remove rarely used "the_index" compat macros read-cache API & users: make discard_index() return void cocci: add a index-compatibility.pending.cocci cocci & cache.h: apply a selection of "pending" index-compatibility cocci & cache.h: apply variable section of "pending" index-compatibility cocci: apply "pending" index-compatibility to "t/helper/*.c" {builtin/*,repository}.c: add & use "USE_THE_INDEX_VARIABLE" cache.h & test-tool.h: add & use "USE_THE_INDEX_VARIABLE" cocci: apply "pending" index-compatibility to some "builtin/*.c" parse_object(): simplify blob conditional trace2 tests: guard pthread test with "PTHREAD" Version v2.39.0-rc0; changes since v2.38.5: ------------------------------------------- Alex Henrie (1): push: improve grammar of branch.autoSetupMerge advice Anh Le (2): index: add trace2 region for clear skip worktree index: raise a bug if the index is materialised more than once Arthur Chan (1): fuzz: reorganise the path for existing oss-fuzz fuzzers Daniel Sonbolian (1): git.c: improve code readability in cmd_main() Debra Obondo (1): t7001-mv.sh: modernizing test script using functions Derrick Stolee (14): maintenance: add 'unregister --force' scalar: make 'unregister' idempotent gc: replace config subprocesses with API calls string-list: document iterator behavior on NULL input bundle-uri: use plain string in find_temp_filename() bundle-uri: create bundle_list struct and helpers bundle-uri: create base key-value pair parsing bundle-uri: parse bundle list in config format bundle-uri: limit recursion depth for bundle lists bundle: properly clear all revision flags bundle-uri: fetch a list of bundles bundle: add flags to verify_bundle() bundle-uri: quiet failed unbundlings bundle-uri: suppress stderr from remote-https Diomidis Spinellis (1): grep: fix multibyte regex handling under macOS Elijah Newren (4): merge-ort: fix bug with dir rename vs change dir to symlink merge-tree: update documentation for differences in -z output merge-tree: support multiple batched merges with --stdin sparse-checkout.txt: new document with sparse-checkout directions Emily Shaffer (2): gc: add tests for --cruft and friends config: let feature.experimental imply gc.cruftPacks=true Eric DeCosta (6): fsmonitor: refactor filesystem checks to common interface fsmonitor: relocate socket file if .git directory is remote fsmonitor: avoid socket location check if using hook fsmonitor: deal with synthetic firmlinks on macOS fsmonitor: check for compatability before communicating with fsmonitor fsmonitor: add documentation for allowRemote and socketDir options Eric Sunshine (8): check-non-portable-shell: detect obsolescent egrep/fgrep chainlint: add explanatory comments chainlint: tighten accuracy when consuming input stream chainlint: latch start/end position of each token chainlint: annotate original test definition rather than token stream chainlint: sidestep impoverished macOS "terminfo" chainlint: latch line numbers at which each token starts and ends chainlint: prefix annotated test definition with line numbers Eric Wong (1): delta-islands: free island-related data after use Glen Choo (2): config: respect includes in protected config http: redact curl h2h3 headers in info Han-Wen Nienhuys (1): refs: unify parse_worktree_ref() and ref_type() Jeff Hostetler (8): trace2: use size_t alloc,nr_open_regions in tr2tls_thread_ctx tr2tls: clarify TLS terminology api-trace2.txt: elminate section describing the public trace2 API trace2: rename the thread_name argument to trace2_thread_start trace2: improve thread-name documentation in the thread-context trace2: convert ctx.thread_name from strbuf to pointer trace2: add stopwatch timers trace2: add global counter mechanism Jeff King (27): fsmonitor: fix leak of warning message diffstat_consume(): assert non-zero length submodule--helper: drop unused argc from module_list_compute() update-index: drop unused argc from do_reupdate() mark unused parameters in trivial compat functions object-file: mark unused parameters in hash_unknown functions string-list: mark unused callback parameters date: mark unused parameters in handler functions apply: mark unused parameters in handlers apply: mark unused parameters in noop error/warning routine convert: mark unused parameter in null stream filter diffcore-pickaxe: mark unused parameters in pickaxe functions ll-merge: mark unused parameters in callbacks Makefile: force -O0 when compiling with SANITIZE=leak repack: convert "names" util bitfield to array repack: populate extension bits incrementally repack: expand error message for missing pack files repack: use tempfiles for signal cleanup repack: drop remove_temporary_files() Git.pm: trust rev-parse to find bare repositories t7700: annotate cruft-pack failure with ok=sigpipe shortlog: accept `--date`-related options t5516: move plaintext-password tests from t5601 and t5516 ref-filter: fix parsing of signatures without blank lines ref-filter: fix parsing of signatures with CRLF and no body branch: gracefully handle '-d' on orphan HEAD t: run t5551 tests with both HTTP and HTTP/2 Jerry Zhang (6): patch-id: fix stable patch id for binary / header-only patch-id: use stable patch-id for rebases builtin: patch-id: fix patch-id with binary diffs patch-id: fix patch-id for mode changes builtin: patch-id: add --verbatim as a command mode builtin: patch-id: remove unused diff-tree prefix Johannes Schindelin (9): cmake: make it easier to diagnose regressions in CTest runs cmake: copy the merge tools for testing add -p: avoid ambiguous signed/unsigned comparison cmake: avoid editing t/test-lib.sh cmake: increase time-out for a long-running test t5516/t5601: be less strict about the number of credential warnings scalar reconfigure -a: remove stale `scalar.repo` entries ci: use a newer `github-script` version tests(scalar): tighten the stale `scalar.repo` test some John Cai (2): fsck: remove the unused BAD_TAG_OBJECT fsck: document msg-id Jonathan Tan (4): promisor-remote: remove a return value promisor-remote: die upon failing fetch negotiator/skipping: avoid stack overflow Doc: document push.recurseSubmodules=only Julia Ramer (1): embargoed releases: also describe the git-security list and the process Junio C Hamano (17): Start 2.39 cycle symbolic-ref: teach "--[no-]recurse" option The (real) first batch for 2.39 The second batch The third batch The fourth batch ci: add address and undefined sanitizer tasks ci: use DC_SHA1=YesPlease on osx-clang job for CI The fifth batch diff: leave NEEDWORK notes in show_stats() function fsck: remove the unused MISSING_TREE_OBJECT Documentation: add lint-fsck-msgids The sixth batch The seventh batch The eighth batch adjust_shared_perm(): leave g+s alone when the group does not matter Git 2.39-rc0 Kousik Sanagavarapu (1): repository-version.txt: partialClone casing change M Hickford (4): Documentation/gitcredentials.txt: mention password alternatives Documentation: increase example cache timeout to 1 hour docs: clarify that credential discards unrecognised attributes Docs: describe how a credential-generating helper works Martin Ågren (1): test-lib-functions: drop redundant diagnostic print Matthew John Cheetham (3): wincred: ignore unknown lines (do not die) netrc: ignore unknown lines (do not die) osxkeychain: clarify that we ignore unknown lines Michael J Gruber (1): notes: avoid empty line in template Michael McClimon (1): Git.pm: add semicolon after catch statement Nsengiyumva Wilberforce (1): t1002: modernize outdated conditional Patrick Steinhardt (7): refs: fix memory leak when parsing hideRefs config refs: get rid of global list of hidden refs revision: move together exclusion-related functions revision: introduce struct to handle exclusions revision: add new parameter to exclude hidden refs rev-parse: add `--exclude-hidden=` option receive-pack: only use visible refs for connectivity check Philip Oakley (4): doc: use "commit-graph" hyphenation consistently doc: use 'object database' not ODB or abbreviation glossary: add "commit graph" description glossary: add reachability bitmap description Philippe Blain (9): test-lib-functions: mark 'test_commit' variables as 'local' subtree: use 'git rev-parse --verify [--quiet]' for better error messages subtree: add 'die_incompatible_opt' function to reduce duplication subtree: prefix die messages with 'fatal' subtree: define a variable before its first use in 'find_latest_squash' subtree: use named variables instead of "$@" in cmd_pull subtree: process 'git-subtree-split' trailer in separate function subtree: fix squash merging after annotated tag was squashed merged subtree: fix split after annotated tag was squashed merged Phillip Wood (20): t3416: tighten two tests t3416: set $EDITOR in subshell rebase: be stricter when reading state files containing oids rebase: store orig_head as a commit rebase: rename merge_base to branch_base rebase: factor out branch_base calculation rebase --keep-base: imply --reapply-cherry-picks rebase --keep-base: imply --no-fork-point rebase --apply: remove duplicated code t3406: rework rebase reflog tests rebase --merge: fix reflog when continuing rebase --merge: fix reflog message after skipping rebase --apply: respect GIT_REFLOG_ACTION rebase --apply: make reflog messages match rebase --merge rebase --abort: improve reflog message rebase: cleanup action handling sequencer: stop exporting GIT_REFLOG_ACTION rebase: stop exporting GIT_REFLOG_ACTION sequencer: unify label lookup sequencer: tighten label lookups René Scharfe (16): revision: use strtol_i() for exclude_parent revisions.txt: unspecify order of resolved parts of ^! diff: support ^! for merges submodule: use strvec_pushf() for --super-prefix run-command: fix return value comment am: simplify building "show" argument list bisect: simplify building "checkout" argument list bisect--helper: factor out do_bisect_run() sequencer: simplify building argument list in do_exec() use child_process member "args" instead of string array variable use child_process members "args" and "env" directly replace and remove run_command_v_opt_cd_env() replace and remove run_command_v_opt_tr2() replace and remove run_command_v_opt_cd_env_tr2() replace and remove run_command_v_opt() archive-tar: report filter start error only once Ronan Pigott (2): for-each-repo: interpolate repo path arguments maintenance: add option to register in a specific config Rubén Justo (3): branch: support for shortcuts like @{-1}, completed branch: error copying or renaming a detached HEAD branch: error code with --edit-description SZEDER Gábor (1): Documentation/build-docdep.perl: generate sorted output Shaoxuan Yuan (1): builtin/grep.c: integrate with sparse index Sotir Danailov (1): docs: git-send-email: difference between ssl and tls smtp-encryption Taylor Blau (26): midx.c: fix whitespace typo midx.c: consider annotated tags during bitmap selection midx.c: instrument MIDX and bitmap generation with trace2 regions pack-bitmap-write.c: instrument number of reused bitmaps builtin/repack.c: remove redundant pack-based bitmaps repack: don't remove .keep packs with `--pack-kept-objects` builtin/repack.c: pass "out" to `prepare_pack_objects` builtin/repack.c: pass "cruft_expiration" to `write_cruft_pack` builtin/repack.c: write cruft packs to arbitrary locations builtin/repack.c: implement `--expire-to` for storing pruned objects shortlog: make trailer insertion a noop when appropriate shortlog: extract `--group` fragment for translation shortlog: support arbitrary commit format `--group`s shortlog: extract `shortlog_finish_setup()` shortlog: implement `--group=author` in terms of `--group=<format>` shortlog: implement `--group=committer` in terms of `--group=<format>` apply: reject patches larger than ~1 GiB Documentation/howto/maintain-git.txt: fix Meta/redo-jch.sh invocation The ninth batch Documentation: build redo-jch.sh from master..jch Documentation: build redo-seen.sh from jch..seen The tenth batch The eleventh batch The twelfth batch builtin/gc.c: fix use-after-free in maintenance_unregister() The thirteenth batch Torsten Bögershausen (1): diff.c: use utf8_strwidth() to count display width Victoria Dye (6): rebase --update-refs: avoid unintended ref deletion cache-tree: add perf test comparing update and prime unpack-trees: add 'skip_cache_tree_update' option reset: use 'skip_cache_tree_update' option read-tree: use 'skip_cache_tree_update' option rebase: use 'skip_cache_tree_update' option Vincent Bernat (1): ls-files: fix --ignored and --killed flags in synopsis Vlad-Stefan Harbuz (1): Documentation: fix typo srz_zumix (1): fsmonitor--daemon: on macOS support symlink Ævar Arnfjörð Bjarmason (94): grep.c: remove "extended" in favor of "pattern_expression", fix segfault bundle-uri: create "key=value" line parsing bundle-uri: unit test "key=value" parsing run-command test helper: use "else if" pattern run-command API: have "run_processes_parallel{,_tr2}()" return void run-command tests: use "return", not "exit" run-command API: make "n" parameter a "size_t" run-command API: don't fall back on online_cpus() run-command.c: use designated init for pp_init(), add "const" run-command API: have run_process_parallel() take an "opts" struct run-command API: move *_tr2() users to "run_processes_parallel()" run-command.c: make "struct parallel_processes" const if possible run-command.c: don't copy *_fn to "struct parallel_processes" run-command.c: don't copy "ungroup" to "struct parallel_processes" run-command.c: don't copy "data" to "struct parallel_processes" run-command.c: use "opts->processes", not "pp->max_processes" run-command.c: pass "opts" further down, and use "opts->processes" run-command.c: remove "max_processes", add "const" to signal() handler tests: assert *.txt SYNOPSIS and -h output CodingGuidelines: update and clarify command-line conventions builtin/bundle.c: indent with tabs bundle: define subcommand -h in terms of command -h doc SYNOPSIS: don't use ' for subcommands doc SYNOPSIS: consistently use ' for commands built-ins: consistently add "\n" between "usage" and options doc txt & -h consistency: word-wrap doc txt & -h consistency: fix incorrect alternates syntax doc txt & -h consistency: add "-z" to cat-file "-h" doc txt & -h consistency: balance unbalanced "[" and "]" doc txt & -h consistency: correct padding around "[]()" stash doc SYNOPSIS & -h: correct padding around "[]()" doc txt & -h consistency: use "<options>", not "<options>..." doc SYNOPSIS & -h: use "-" to separate words in labels, not "_" doc txt & -h consistency: fix mismatching labels doc txt & -h consistency: add or fix optional "--" syntax doc txt & -h consistency: make output order consistent doc txt & -h consistency: add missing options and labels doc txt & -h consistency: make "rerere" consistent doc txt & -h consistency: make "read-tree" consistent doc txt & -h consistency: make "bundle" consistent doc txt & -h consistency: use "git foo" form, not "git-foo" doc txt & -h consistency: add missing options doc txt & -h consistency: make "stash" consistent doc txt & -h consistency: make "annotate" consistent doc txt & -h consistency: use "[<label>...]" for "zero or more" doc txt & -h consistency: make "diff-tree" consistent doc txt & -h consistency: make "commit" consistent reflog doc: list real subcommands up-front worktree: define subcommand -h in terms of command -h doc txt & -h consistency: make "worktree" consistent tests: start asserting that *.txt SYNOPSIS matches -h output tests: assert consistent whitespace in -h output fsmonitor OSX: compile with DC_SHA1=YesPlease merge: remove always-the-same "verbose" arguments hook tests: fix redirection logic error in 96e7225b310 submodule tests: reset "trace.out" between "grep" invocations run-command tests: test stdout of run_command_parallel() Makefile + shared.mak: rename and indent $(QUIET_SPATCH_T) cocci rules: remove unused "F" metavariable from pending rule Makefile: add ability to TAB-complete cocci *.patch rules Makefile: have "coccicheck" re-run if flags change Makefile: split off SPATCH_BATCH_SIZE comment from "cocci" heading cocci: split off include-less "tests" from SPATCH_FLAGS cocci: split off "--all-includes" from SPATCH_FLAGS cocci: make "coccicheck" rule incremental cocci: optimistically use COMPUTE_HEADER_DEPENDENCIES Makefile: copy contrib/coccinelle/*.cocci to build/ cocci rules: remove <id>'s from rules that don't need them cocci: run against a generated ALL.cocci spatchcache: add a ccache-alike for "spatch" Makefile: always (re)set DC_SHA1 on fallback INSTALL: remove discussion of SHA-1 backends Makefile: correct DC_SHA1 documentation Makefile: create and use sections for "define" flag listing Makefile: rephrase the discussion of *_SHA1 knobs Makefile: document default SHA-256 backend Makefile: document SHA-1 and SHA-256 default and selection order Makefile & test-tool: replace "DC_SHA1" variable with a "define" Makefile: document default SHA-1 backend on OSX Makefile: discuss SHAttered in *_SHA{1,256} discussion submodule--helper: move "config" to a test-tool submodule tests: add tests for top-level flag output submodule--helper: fix a memory leak in "status" submodule tests: test for a "foreach" blind-spot submodule.c: refactor recursive block out of absorb function submodule API & "absorbgitdirs": remove "----recursive" option submodule--helper: remove --prefix from "absorbgitdirs" submodule--helper: drop "update --prefix <pfx>" for "-C <pfx> update" submodule--helper: use OPT_SUBCOMMAND() API revisions API: extend the nascent REV_INFO_INIT macro t7610: fix flaky timeout issue, don't clone from example.com Makefile: don't create a ".build/.build/" for cocci, fix output maintenance --unregister: fix uninit'd data use & -Wdeclaration-after-statement t7610: use "file:///dev/null", not "/dev/null", fixes MinGW Đoàn Trần Công Danh (7): CodingGuidelines: allow grep -E t: remove \{m,n\} from BRE grep usage t: convert egrep usage to "grep -E" t: convert fgrep usage to "grep -F" bisect--helper: remove unused options bisect--helper: move all subcommands into their own functions bisect--helper: parse subcommand with OPT_SUBCOMMAND Version v2.38.5; changes since v2.38.4: --------------------------------------- Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Jeff King (7): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Makefile: force -O0 when compiling with SANITIZE=leak Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (20): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present tests: avoid using `test_i18ncmp` Git 2.31.8 Git 2.32.7 Git 2.33.8 Git 2.34.8 Git 2.35.8 Git 2.36.6 Git 2.37.7 Git 2.38.5 Junio C Hamano (1): http.c: clear the 'finished' member once we are done with it Taylor Blau (5): t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 Version v2.38.4; changes since v2.38.3: --------------------------------------- Jeff King (3): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION http: support CURLOPT_PROTOCOLS_STR Johannes Schindelin (9): attr: adjust a mismatched data type Git 2.31.7 Git 2.32.6 Git 2.33.7 Git 2.34.7 Git 2.35.7 Git 2.36.5 Git 2.37.6 Git 2.38.4 Junio C Hamano (1): Git 2.30.8 Patrick Steinhardt (1): apply: fix writing behind newly created symbolic links Taylor Blau (3): t5619: demonstrate clone_local() with ambiguous transport clone: delay picking a transport until after get_repo_path() dir-iterator: prevent top-level symlinks without FOLLOW_SYMLINKS Version v2.38.3; changes since v2.38.2: --------------------------------------- Carlo Marcelo Arenas Belón (1): test-lib: add prerequisite for 64-bit platforms Junio C Hamano (9): Git 2.30.7 Git 2.31.6 Git 2.32.5 Git 2.33.6 Git 2.34.6 Git 2.35.6 Git 2.36.4 Git 2.37.5 Git 2.38.3 Patrick Steinhardt (25): attr: fix overflow when upserting attribute with overly long name attr: fix out-of-bounds read with huge attribute names attr: fix integer overflow when parsing huge attribute names attr: fix out-of-bounds write when parsing huge number of attributes attr: fix out-of-bounds read with unreasonable amount of patterns attr: fix integer overflow with more than INT_MAX macros attr: harden allocation against integer overflows attr: fix silently splitting up lines longer than 2048 bytes attr: ignore attribute lines exceeding 2048 bytes attr: ignore overly large gitattributes files pretty: fix out-of-bounds write caused by integer overflow pretty: fix out-of-bounds read when left-flushing with stealing pretty: fix out-of-bounds read when parsing invalid padding format pretty: fix adding linefeed when placeholder is not expanded pretty: fix integer overflow in wrapping format utf8: fix truncated string lengths in `utf8_strnwidth()` utf8: fix returning negative string width utf8: fix overflow when returning string width utf8: fix checking for glyph width in `strbuf_utf8_replace()` utf8: refactor `strbuf_utf8_replace` to not rely on preallocated buffer pretty: restrict input lengths for padding and wrapping formats fsck: refactor `fsck_blob()` to allow for more checks fsck: pull out function to check a set of blobs fsck: move checks for gitattributes fsck: implement checks for gitattributes Version v2.38.2; changes since v2.38.1: --------------------------------------- Alejandro R. Sedeño (1): git-compat-util.h: GCC deprecated message arg only in GCC 4.5+ Alex Henrie (1): fsmonitor--daemon: don't translate literal commands Derrick Stolee (1): bundle-uri: fix technical doc issues Jeff Hostetler (1): config.mak.dev: disable suggest braces error on old clang versions Jeff King (12): fsck: free tree buffers after walking unreachable objects fsck: turn off save_commit_buffer parse_object_buffer(): respect save_commit_buffer clone: allow "--bare" with "-o" remote: handle rename of remote without fetch refspec sequencer: detect author name errors in read_author_script() test-submodule: inline resolve_relative_url() function multi-pack-index: avoid writing to global in option callback commit: avoid writing to global in option callback attr: drop DEBUG_ATTR code dir: use fspathncmp() in pl_hashmap_cmp() Makefile: force -O0 when compiling with SANITIZE=leak Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Altmanninger (1): sequencer: avoid dropping fixup commit that targets self via commit-ish Johannes Schindelin (4): merge-ort: fix segmentation fault in read-only repositories merge-ort: return early when failing to write a blob ci: avoid using deprecated {up,down}load-artifacts Action ci: use a newer `github-script` version John Cai (1): tmp-objdir: skip clean up when handling a signal Junio C Hamano (10): environ: document GIT_SSL_NO_VERIFY environ: explain Boolean environment variables environ: GIT_FLUSH should be made a usual Boolean environ: simplify description of GIT_INDEX_FILE environ: GIT_INDEX_VERSION affects not just a new repository branch: do not fail a no-op --edit-desc SubmittingPatches: use usual capitalization in the log message body Downmerge a handful of topics for 2.38.2 Downmerge a bit more for 2.38.2 Git 2.38.2 Noah Betzen (1): mergetool.txt: typofix 'overwriten' -> 'overwritten' Oscar Dominguez (1): ci(main): upgrade actions/checkout to v3 Phillip Wood (3): mailinfo -b: fix an out of bounds access ssh signing: return an error when signature cannot be read t3435: remove redundant test case René Scharfe (4): gc: simplify maintenance_task_pack_refs() t/lib-httpd: pass LANG and LC_ALL to Apache bisect--helper: plug strvec leak archive: deduplicate verbose printing Rubén Justo (2): ref-filter.c: fix a leak in get_head_description branch: description for non-existent branch errors Sergey Organov (3): diff-merges: cleanup func_by_opt() diff-merges: cleanup set_diff_merges() diff-merges: clarify log.diffMerges documentation Taylor Blau (7): Documentation/git-multi-pack-index.txt: fix typo Documentation/git-multi-pack-index.txt: clarify expire behavior midx.c: prevent `expire` from removing the cruft pack midx.c: avoid cruft packs with `repack --batch-size=0` midx.c: replace `xcalloc()` with `CALLOC_ARRAY()` midx.c: remove unnecessary loop condition midx.c: avoid cruft packs with non-zero `repack --batch-size` Victoria Dye (2): read-cache: avoid misaligned reads in index v4 rebase --update-refs: avoid unintended ref deletion Ævar Arnfjörð Bjarmason (9): test-lib: have SANITIZE=leak imply TEST_NO_MALLOC_CHECK CodingGuidelines: update for C99 CodingGuidelines: mention dynamic C99 initializer elements CodingGuidelines: allow declaring variables in for loops CodingGuidelines: mention C99 features we can't use CodingGuidelines: recommend against unportable C99 struct syntax CI: upgrade to macos-12, and pin OSX version CI: don't explicitly pick "bash" shell outside of Windows, fix regression CI: migrate away from deprecated "set-output" syntax Đoàn Trần Công Danh (1): Makefile: clarify runtime relative gitexecdir Version v2.38.1; changes since v2.38.0: --------------------------------------- Jeff King (2): shell: add basic tests shell: limit size of interactive commands Kevin Backhouse (1): alias.c: reject too-long cmdline strings in split_cmdline() Taylor Blau (31): builtin/clone.c: disallow `--local` clones with symlinks t/lib-submodule-update.sh: allow local submodules t/t1NNN: allow local submodules t/2NNNN: allow local submodules t/t3NNN: allow local submodules t/t4NNN: allow local submodules t/t5NNN: allow local submodules t/t6NNN: allow local submodules t/t7NNN: allow local submodules t/t9NNN: allow local submodules transport: make `protocol.file.allow` be "user" by default t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow t3207: prepare for changing protocol.file.allow t5516: prepare for changing protocol.file.allow t5537: prepare for changing protocol.file.allow t7814: prepare for changing protocol.file.allow t3206: prepare for changing protocol.file.allow t5537: prepare for changing protocol.file.allow Git 2.30.6 Git 2.31.5 Git 2.32.4 Git 2.33.5 Git 2.34.5 Git 2.35.5 Git 2.36.3 t7527: prepare for changing protocol.file.allow Git 2.37.4 Git 2.38.1 Version v2.38.0; changes since v2.38.0-rc2: ------------------------------------------- Alex Henrie (2): l10n: fr: don't say that merge is "the default strategy" l10n: es: update translation Alexander Shopov (3): l10n: bg.po: Updated Bulgarian translation (5482t) l10n: bg.po: Updated Bulgarian translation (5484t) l10n: bg.po: Updated Bulgarian translation (5484t) Bagas Sanjaya (3): l10n: po-id for 2.38 (round 1) l10n: po-id for 2.38 (round 2) l10n: po-id for 2.38 (round 3) Emir SARI (3): l10n: tr: Update translations for v2.38.0 round #1 l10n: tr: v2.38.0 round 2 l10n: tr: v2.38.0 3rd round Fangyi Zhou (2): l10n: zh_CN v2.38.0 rounds 1 & 2 l10n: zh_CN: 2.38.0 round 3 Hubert Bossot (1): l10n: fr: The word 'branche' is only feminine Jean-Noël Avila (3): l10n: fr: v2.38 round 1 l10n: fr: v2.38.0 round 2 l10n: fr: v2.38.0 round 3 Jordi Mas (3): l10n: Update Catalan translation l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (1): Git 2.38 Peter Krefting (2): l10n: sv.po: Update Swedish translation (5482t0f0u) l10n: sv.po: Update Swedish translation (5484t0f0u) Ralf Thielow (2): l10n: de.po: update German translation l10n: de.po: update German translation Yi-Jyun Pan (1): l10n: zh_TW.po: Git 2.38.0, round 3 Version v2.38.0-rc2; changes since v2.38.0-rc1: ----------------------------------------------- Alex Henrie (1): pack-bitmap: improve grammar of "xor chain" error message Derrick Stolee (1): pack-bitmap: remove trace2 region from hot path Jeff King (1): list-objects-filter: initialize sub-filter structs Junio C Hamano (1): Git 2.38-rc2 Martin Ågren (1): cmd-list.perl: fix identifying man sections Version v2.38.0-rc1; changes since v2.38.0-rc0: ----------------------------------------------- Adam Dinwoodie (1): t1800: correct test to handle Cygwin Alex Henrie (2): gc: don't translate literal commands builtin/diagnose.c: don't translate the two mode values Elijah Conners (1): reftable: use a pointer for pq_entry param Eric Sunshine (19): t: add skeleton chainlint.pl chainlint.pl: add POSIX shell lexical analyzer chainlint.pl: add POSIX shell parser chainlint.pl: add parser to validate tests chainlint.pl: add parser to identify test definitions chainlint.pl: validate test scripts in parallel chainlint.pl: don't require `return|exit|continue` to end with `&&` t/Makefile: apply chainlint.pl to existing self-tests chainlint.pl: don't require `&` background command to end with `&&` chainlint.pl: don't flag broken &&-chain if `$?` handled explicitly chainlint.pl: don't flag broken &&-chain if failure indicated explicitly chainlint.pl: complain about loops lacking explicit failure handling chainlint.pl: allow `|| echo` to signal failure upstream of a pipe t/chainlint: add more chainlint.pl self-tests test-lib: retire "lint harder" optimization hack test-lib: replace chainlint.sed with chainlint.pl t/Makefile: teach `make test` and `make prove` to run chainlint.pl t: retire unused chainlint.sed chainlint: colorize problem annotations and test delimiters Fangyi Zhou (1): help: fix doubled words in explanation for developer interfaces Jacob Stopak (2): Documentation: clean up a few misspelled word typos Documentation: clean up various typos in technical docs Jeff King (4): list-objects-filter: don't memset after releasing filter struct list-objects-filter: handle null default filter spec list-objects-filter: add and use initializers list-objects-filter: convert filter_spec to a strbuf Johannes Schindelin (2): git help: special-case `scalar` scalar: implement the `help` subcommand Junio C Hamano (3): A bit more of remaining topics before -rc1 Final batch before -rc1 Git 2.38-rc1 Miaoqian Lin (1): commit-graph: Fix missing closedir in expire_commit_graphs SZEDER Gábor (1): t/Makefile: remove 'test-results' on 'make clean' Shaoxuan Yuan (10): t7002: add tests for moving from in-cone to out-of-cone mv: rename check_dir_in_index() to empty_dir_has_sparse_contents() mv: free the with_slash in check_dir_in_index() mv: check if <destination> is a SKIP_WORKTREE_DIR mv: remove BOTH from enum update_mode mv: from in-cone to out-of-cone mv: cleanup empty WORKING_DIRECTORY advice.h: add advise_on_moving_dirty_path() mv: check overwrite for in-to-out move builtin/mv.c: fix possible segfault in add_slash() Todd Zullinger (2): docs: fix a few recently broken links api docs: link to html version of api-trace2 Victoria Dye (11): scalar: fix command documentation section header scalar: include in standard Git build & installation scalar: add to 'git help -a' command list scalar-clone: add test coverage t/perf: add Scalar performance tests t/perf: add 'GIT_PERF_USE_SCALAR' run option Documentation/technical: include Scalar technical doc diagnose.c: refactor to safely use 'd_type' Documentation: add ReviewingGuidelines diagnose: add to command-list.txt version: fix builtin linking & documentation ZheNing Hu (1): ls-files: fix black space in error message Version v2.38.0-rc0; changes since v2.37.7: ------------------------------------------- Abhradeep Chakraborty (6): Documentation/technical: describe bitmap lookup table extension bitmap: move `get commit positions` code to `bitmap_writer_finish` pack-bitmap-write.c: write lookup table extension pack-bitmap-write: learn pack.writeBitmapLookupTable and add tests pack-bitmap: prepare to read lookup table extension bitmap-lookup-table: add performance tests for lookup table Calvin Wan (1): submodule merge: update conflict error message Carlos López (1): grep: add --max-count command line option Christian Couder (1): Documentation: clarify whitespace rules for trailers Derrick Stolee (40): branch: add branch_checked_out() helper branch: check for bisects and rebases fetch: use new branch_checked_out() and add tests branch: use branch_checked_out() when deleting refs branch: fix branch_checked_out() leaks pack-bitmap-write: use const for hashes midx: extract bitmap write setup midx: reduce memory pressure while writing bitmaps t2407: test bisect and rebase as black-boxes t2407: test branches currently using apply backend branch: consider refs under 'update-refs' rebase-interactive: update 'merge' description sequencer: define array with enum values sequencer: add update-ref command rebase: add --update-refs option rebase: update refs from 'update-ref' commands sequencer: rewrite update-refs as user edits todo list rebase: add rebase.updateRefs config option sequencer: ignore HEAD ref under --update-refs sequencer: notify user of --update-refs activity refs: allow "HEAD" as decoration filter t4207: modernize test t4207: test coloring of grafted decorations refs: add array of ref namespaces refs: use ref_namespaces for replace refs base log-tree: use ref_namespaces instead of if/else-if log: add default decoration filter log: add --clear-decorations option log: create log.initialDecorationSet=all maintenance: stop writing log.excludeDecoration fetch: use ref_namespaces during prefetch docs: document bundle URI standard bundle-uri: add example bundle organization remote-curl: add 'get' capability bundle-uri: create basic file-copy logic clone: add --bundle-uri option bundle-uri: add support for http(s):// and file:// clone: --bundle-uri cannot be combined with --depth t6019: modernize tests with helper clone: warn on failure to repo_init() Elijah Newren (36): merge-tree: rename merge_trees() to trivial_merge_trees() merge-tree: move logic for existing merge into new function merge-tree: add option parsing and initial shell for real merge function merge-tree: implement real merges merge-ort: split out a separate display_update_messages() function merge-tree: support including merge messages in output merge-ort: provide a merge_get_conflicted_files() helper function merge-ort: remove command-line-centric submodule message from merge-ort merge-tree: provide a list of which files have conflicts merge-tree: provide easy access to `ls-files -u` style info merge-ort: store more specific conflict information merge-ort: optionally produce machine-readable output merge-tree: allow `ls-files -u` style info to be NUL terminated merge-tree: add a --allow-unrelated-histories flag git-merge-tree.txt: add a section on potentional usage mistakes merge-ort-wrappers: make printed message match the one from recursive merge-resolve: abort if index does not match HEAD merge: abort if index does not match HEAD for trivial merges merge: do not abort early if one strategy fails to handle the merge merge: fix save_state() to work when there are stat-dirty files merge: make restore_state() restore staged state too merge: ensure we can actually restore pre-merge state merge: do not exit restore_state() prematurely merge-ort: remove translator lego in new "submodule conflict suggestion" merge-ort: avoid surprise with new sub_flag variable merge-ort: provide helpful submodule update message when possible merge-ort: remove code obsoleted by other changes rev-list-options.txt: fix simple typo revision: allow --ancestry-path to take an argument merge: cleanup confusing logic for handling successful merges merge: small code readability improvement t4301: add more interesting merge-tree testcases t64xx: convert 'test_create_repo' to 'git init' diff: have submodule_format logic avoid additional diff headers diff: fix filtering of additional headers under --remerge-diff diff: fix filtering of merge commits under --remerge-diff Eric DeCosta (1): fsmonitor: option to allow fsmonitor to run against network-mounted repos Eric Sunshine (6): t2407: fix broken &&-chains in compound statement t1092: fix buggy sparse "blame" test t: detect and signal failure within loop t4301: account for behavior differences between sed implementations t4301: fix broken &&-chains and add missing loop termination t4301: emit blank line in more idiomatic fashion Glen Choo (15): submodule--helper: eliminate internal "--update" option submodule--helper tests: add missing "display path" coverage submodule--helper update: use display path helper submodule--helper: don't recreate recursive prefix submodule--helper: use correct display path helper submodule--helper update: use --super-prefix submodule--helper: remove display path helper Documentation/git-config.txt: add SCOPES section Documentation: define protected configuration config: learn `git_protected_config()` safe.directory: use git_protected_config() setup.c: create `safe.bareRepository` config.c: NULL check when reading protected config submodule--helper: add "const" to copy of "update_data" submodule--helper: refactor "errmsg_str" to be a "struct strbuf" Han Xin (4): unpack-objects: low memory footprint for get_data() in dry_run mode object-file.c: refactor write_loose_object() to several steps object-file.c: add "stream_loose_object()" to handle large object unpack-objects: use stream_loose_object() to unpack large objects Jacob Keller (1): remote: handle negative refspecs in git remote show Jacob Stopak (1): Documentation: fix various repeat word typos Jaydeep Das (1): gpg-interface: add function for converting trust level to string Jeff King (43): is_promisor_object(): walk promisor packs in pack-order fetch: stop passing around unused worktrees variable branch: drop unused worktrees variable ref-filter: disable save_commit_buffer while traversing write_midx_bitmap(): drop unused refs_snapshot parameter git-compat-util: add UNUSED macro refs: mark unused each_ref_fn parameters refs: mark unused reflog callback parameters refs: mark unused virtual method parameters transport: mark bundle transport_options as unused streaming: mark unused virtual method parameters config: mark unused callback parameters hashmap: mark unused callback parameters mark unused read_tree_recursive() callback parameters run-command: mark unused async callback parameters is_path_owned_by_current_uid(): mark "report" parameter as unused xdiff: drop unused mmfile parameters from xdl_do_histogram_diff() log-tree: drop unused commit param in remerge_diff() match_pathname(): drop unused "flags" parameter verify_one_sparse(): drop unused parameters reftable: drop unused parameter from reader_seek_linear() reflog: assert PARSE_OPT_NONEG in parse-options callbacks xdiff: drop unused mmfile parameters from xdl_do_patience_diff() pass subcommand "prefix" arguments to parse_options() maintenance: add parse-options boilerplate for subcommands remote: run "remote rm" argv through parse_options() pack-bitmap-write: drop unused pack_idx_entry parameters tempfile: drop active flag tempfile: update comment describing state transitions test-crontab: minor memory and error handling fixes lookup_commit_in_graph(): use prepare_commit_graph() to check for graph rev-list: disable commit graph with --verify-objects parse_object(): allow skipping hash check upload-pack: skip parse-object re-hashing of "want" objects parse_object(): check commit-graph when skip_hash set t1060: check partial clone of misnamed blob list_objects_filter_copy(): deep-copy sparse_oid_name field transport: deep-copy object-filter struct for fetch-pack transport: free filter options in disconnect_git() list_objects_filter_options: plug leak of filter_spec strings prepare_repo_settings(): plug leak of config values fetch: stop checking for NULL transport->remote in do_fetch() fetch: add branch.*.merge to default ref-prefix extension Johannes Schindelin (14): merge-ort: store messages in a list, not in a single strbuf merge-ort: make `path_messages` a strmap to a string_list t5351: avoid relying on `core.fsyncMethod = batch` to be supported t5351: avoid using `test_cmp` for binary data scalar unregister: stop FSMonitor daemon range-diff: reorder argument handling range-diff: consistently validate the arguments range-diff: optionally accept pathspecs add -p: avoid ambiguous signed/unsigned comparison t3701: test the built-in `add -i` regardless of NO_PERL t6132(NO_PERL): do not run the scripted `add -p` add -p: detect more mismatches between plain vs colored diffs add -p: gracefully handle unparseable hunk headers in colored diffs add -p: ignore dirty submodules Jonathan Tan (1): fetch-pack: write effective filter to trace2 Josh Steadmon (1): fetch-pack: add tracing for negotiation rounds Julien Rouhaud (1): gitweb: remove title shortening heuristics Junio C Hamano (30): A regression fix for 2.37 builtin/mv.c: use the MOVE_ARRAY() macro instead of memmove() The first batch after Git 2.37 The second batch The third batch The fourth batch The fifth batch The sixth batch The seventh batch The eighth batch The ninth batch doc: consolidate --rerere-autoupdate description doc: clarify rerere-autoupdate The tenth batch The eleventh batch The twelfth batch The thirteenth batch The fourteenth batch t5329: notice a failure within a loop The fifteenth batch pretty: separate out the logic to decide the use of in-body from format-patch: allow forcing the use of in-body From: header format-patch: learn format.forceInBodyFrom configuration variable The sixteenth batch The seventeenth batch The eighteenth batch The nineteenth batch The twentieth batch Prepare for 2.38-rc0 Git 2.38-rc0 Justin Donnelly (1): git-prompt: show presence of unresolved conflicts at command prompt Kyle Zhao (1): send-pack.c: add config push.useBitmaps Li Linchao (2): remote-curl: send Accept-Language header to server rev-list: support human-readable output for `--disk-usage` Linus Torvalds (1): symbolic-ref: refuse to set syntactically invalid target Matheus Tavares (3): t0021: avoid grepping for a Perl-specific string at filter output t0021: implementation the rot13-filter.pl script in C tests: use the new C rot13-filter helper to avoid PERL prereq Matthew John Cheetham (1): scalar: enable built-in FSMonitor on `register` Michael J Gruber (3): sequencer: do not translate reflog messages sequencer: do not translate parameters to error_resolve_conflict() sequencer: do not translate command names Moritz Baumann (2): git-p4: fix typo in P4Submit.applyCommit() git-p4: fix error handling in P4Unshelve.renameBranch() Phillip Wood (4): xdiff: introduce XDL_ALLOC_ARRAY() xdiff: introduce xdl_calloc xdiff: introduce XDL_CALLOC_ARRAY() xdiff: introduce XDL_ALLOC_GROW() René Scharfe (24): archive: update format documentation archive: rename archiver data field to filter_command archive-tar: factor out write_block() archive-tar: add internal gzip implementation archive-tar: use OS_CODE 3 (Unix) for internal gzip archive-tar: use internal gzip by default cocci: avoid normalization rules for memcpy mergesort: unify ranks loops mergesort: tighten merge loop mergesort: add macros for typed sort of linked lists test-mergesort: use DEFINE_LIST_SORT_DEBUG test-mergesort: use DEFINE_LIST_SORT blame: use DEFINE_LIST_SORT commit: use DEFINE_LIST_SORT fetch-pack: use DEFINE_LIST_SORT packfile: use DEFINE_LIST_SORT mergesort: remove llist_mergesort() tempfile: avoid directory cleanup race test-mergesort: read sort input all at once test-mergesort: use mem_pool for sort input diff-no-index: release strbuf on queue error diff-no-index: release prefixed filenames diff-no-index: simplify argv index calculation add -p: fix worktree patch mode prompts SZEDER Gábor (27): Makefile: build 'gitweb' in the default target multi-pack-index: simplify handling of unknown --options git.c: update NO_PARSEOPT markings t3301-notes.sh: check that default operation mode doesn't take arguments t5505-remote.sh: check the behavior without a subcommand t0040-parse-options: test parse_options() with various 'parse_opt_flags' api-parse-options.txt: fix description of OPT_CMDMODE parse-options: PARSE_OPT_KEEP_UNKNOWN only applies to --options parse-options: clarify the limitations of PARSE_OPT_NODASH parse-options: drop leading space from '--git-completion-helper' output parse-options: add support for parsing subcommands builtin/bundle.c: let parse-options parse subcommands builtin/commit-graph.c: let parse-options parse subcommands builtin/gc.c: let parse-options parse 'git maintenance's subcommands builtin/hook.c: let parse-options parse subcommands builtin/multi-pack-index.c: let parse-options parse subcommands builtin/notes.c: let parse-options parse subcommands builtin/reflog.c: let parse-options parse subcommands builtin/remote.c: let parse-options parse subcommands builtin/sparse-checkout.c: let parse-options parse subcommands builtin/stash.c: let parse-options parse subcommands builtin/worktree.c: let parse-options parse subcommands t0040-parse-options: remove leftover debugging test-parse-options.c: don't use for loop initial declaration test-parse-options.c: fix style of comparison with zero notes: simplify default operation mode arguments check notes, remote: show unknown subcommands between `' Shaoxuan Yuan (12): t7002: add tests for moving out-of-cone file/directory t1092: mv directory from out-of-cone to in-cone mv: update sparsity after moving from out-of-cone to in-cone mv: decouple if/else-if checks using goto mv: check if out-of-cone file exists in index with SKIP_WORKTREE bit mv: check if <destination> exists in index to handle overwriting mv: use flags mode for update_mode mv: add check_dir_in_index() and solve general dir check issue t1092: add tests for `git-rm` pathspec.h: move pathspec_needs_expanded_index() from reset.c to here rm: expand the index only when necessary rm: integrate with sparse-index Siddharth Asthana (4): revision: improve commit_rewrite_person() ident: move commit_rewrite_person() to ident.c ident: rename commit_rewrite_person() to apply_mailmap_to_header() cat-file: add mailmap support Taylor Blau (10): commit-graph: pass repo_settings instead of repository t1006: extract --batch-command inputs to variables builtin/cat-file.c: support NUL-delimited input with `-z` t5326: demonstrate potential bitmap corruption t/lib-bitmap.sh: avoid silencing stderr midx.c: extract `struct midx_fanout` midx.c: extract `midx_fanout_add_midx_fanout()` midx.c: extract `midx_fanout_add_pack_fanout()` midx.c: include preferred pack correctly with existing MIDX midx.c: avoid adding preferred objects twice Teng Long (8): pack-bitmap.c: fix formatting of error messages pack-bitmap.c: mark more strings for translations pack-bitmap.c: rename "idx_name" to "bitmap_name" pack-bitmap.c: do not ignore error when opening a bitmap file pack-bitmap.c: using error() instead of silently returning -1 pack-bitmap.c: continue looping when first MIDX bitmap is found api-trace2.txt: print config key-value pair tr2: shows scope unconditionally in addition to key-value pair Victoria Dye (22): scalar: reword command documentation to clarify purpose scalar: convert README.md into a technical design doc scalar-diagnose: use "$GIT_UNZIP" in test scalar-diagnose: avoid 32-bit overflow of size_t scalar-diagnose: add directory to archiver more gently scalar-diagnose: move 'get_disk_info()' to 'compat/' scalar-diagnose: move functionality to common location diagnose.c: add option to configure archive contents builtin/diagnose.c: create 'git diagnose' builtin builtin/diagnose.c: add '--mode' option builtin/bugreport.c: create '--diagnose' option scalar-diagnose: use 'git diagnose --mode=all' scalar: update technical doc roadmap scalar: constrain enlistment search scalar-unregister: handle error codes greater than 0 scalar-[un]register: clearly indicate source of error scalar-delete: do not 'die()' in 'delete_enlistment()' scalar: move config setting logic into its own function scalar: update technical doc roadmap with FSMonitor support p0004: fix prereq declaration p0006: fix 'read-tree' argument ordering unpack-trees: fix sparse directory recursion check ZheNing Hu (1): ls-files: introduce "--format" option brian m. carlson (2): sha256: add support for Nettle gc: use temporary file for editing crontab Ævar Arnfjörð Bjarmason (149): t0008: don't rely on default ".git/info/exclude" tests: don't depend on template-created .git/branches tests: don't assume a .git/info for .git/info/grafts tests: don't assume a .git/info for .git/info/attributes tests: don't assume a .git/info for .git/info/refs tests: don't assume a .git/info for .git/info/exclude tests: don't assume a .git/info for .git/info/sparse-checkout object-file.c: factor out deflate part of write_loose_object() core doc: modernize core.bigFileThreshold documentation git-submodule.sh: remove unused sanitize_submodule_env() git-submodule.sh: remove unused $prefix variable git-submodule.sh: make the "$cached" variable a boolean git-submodule.sh: remove unused top-level "--branch" argument submodule--helper: have --require-init imply --init submodule update: remove "-v" option submodule--helper: rename "absorb-git-dirs" to "absorbgitdirs" submodule--helper: report "submodule" as our name in some "-h" output submodule--helper: understand --checkout, --merge and --rebase synonyms git-submodule.sh: use "$quiet", not "$GIT_QUIET" git-sh-setup.sh: remove "say" function, change last users gitweb/Makefile: define all .PHONY prerequisites inline gitweb/Makefile: add a $(GITWEB_ALL) variable gitweb/Makefile: clear up and de-duplicate the gitweb.{css,js} vars gitweb/Makefile: prepare to merge into top-level Makefile gitweb: remove "test" and "test-installed" targets gitweb/Makefile: include in top-level Makefile gitweb/Makefile: add a "NO_GITWEB" parameter submodule--helper: remove unused SUPPORT_SUPER_PREFIX flags check-ref-format: fix trivial memory leak clone: fix memory leak in wanted_peer_refs() submodule.c: free() memory from xgetcwd() revert: free "struct replay_opts" members cat-file: fix a memory leak in --batch-command mode merge-file: refactor for subsequent memory leak fix merge-file: fix memory leaks on error path checkout: avoid "struct unpack_trees_options" leak gc: fix a memory leak cat-file: fix a common "struct object_context" memory leak pull: fix a "struct oid_array" memory leak test-tool test-hash: fix a memory leak test-tool path-utils: fix a memory leak test-tool {dump,scrap}-cache-tree: fix memory leaks test-tool urlmatch-normalization: fix a memory leak test-tool regex: call regfree(), fix memory leaks test-tool json-writer: fix memory leaks test-tool bloom: fix memory leaks test-tool ref-store: fix a memory leak test-tool delta: fix a memory leak Makefile: remove mandatory "spatch" arguments from SPATCH_FLAGS Makefile & .gitignore: ignore & clean "git.res", not "*.res" cocci: add a "coccicheck-test" target and test *.cocci rules cocci: have "coccicheck{,-pending}" depend on "coccicheck-test" cocci: add and apply a rule to find "unused" strbufs cocci: generalize "unused" rule to cover more than "strbuf" trace2: only include "fsync" events if we git_fsync() test-lib: use $1, not $@ in test_known_broken_{ok,failure}_ test-lib: don't set GIT_EXIT_OK before calling test_atexit_handler test-lib: fix GIT_EXIT_OK logic errors, use BAIL_OUT test-lib: add a --invert-exit-code switch t/README: reword the "GIT_TEST_PASSING_SANITIZE_LEAK" description test-lib: add a SANITIZE=leak logging mode t/Makefile: don't remove test-results in "clean-except-prove-cache" tests: move copy/pasted PERL + Test::More checks to a lib-perl.sh test-lib: simplify by removing test_external test-lib: add a GIT_TEST_PASSING_SANITIZE_LEAK=check mode test-lib: have the "check" mode for SANITIZE=leak consider leak logs leak tests: don't skip some tests under SANITIZE=leak leak tests: mark passing SANITIZE=leak tests as leak-free upload-pack: fix a memory leak in create_pack_file() CI: use "GIT_TEST_SANITIZE_LEAK_LOG=true" in linux-leaks bisect.c: add missing "goto" for release_revisions() test-fast-rebase helper: use release_revisions() (again) log: fix a memory leak in "git show <revision>..." log: refactor "rev.pending" code in cmd_show() bisect.c: partially fix bisect_rev_setup() memory leak revisions API: don't leak memory on argv elements that need free()-ing help.c: refactor drop_prefix() to use a "switch" statement" help.c: remove common category behavior from drop_prefix() behavior git help doc: use "<doc>" instead of "<guide>" git docs: add a category for user-facing file, repo and command UX git docs: add a category for file formats, protocols and interfaces docs: move commit-graph format docs to man section 5 docs: move protocol-related docs to man section 5 docs: move index format docs to man section 5 docs: move signature docs to man section 5 docs: move pack format docs to man section 5 docs: move cruft pack docs to gitformat-pack docs: move http-protocol docs to man section 5 Makefile + hash.h: remove PPC_SHA1 implementation Makefile: use $(OBJECTS) instead of $(C_OBJ) git-compat-util.h: use "UNUSED", not "UNUSED(var)" git-compat-util.h: use "deprecated" for UNUSED variables submodule tests: test usage behavior submodule tests: test for "add <repository> <abs-path>" submodule--helper: remove unused "name" helper submodule--helper: remove unused "list" helper test-tool submodule-config: remove unused "--url" handling submodule--helper: move "is-active" to a test-tool submodule--helper: move "check-name" to a test-tool submodule--helper: move "resolve-relative-url-test" to a test-tool submodule--helper style: don't separate declared variables with \n\n submodule--helper style: add \n\n after variable declarations submodule--helper: replace memset() with { 0 }-initialization submodule--helper: use xstrfmt() in clone_submodule() submodule--helper: move "sb" in clone_submodule() to its own scope submodule--helper: add "const" to passed "module_clone_data" submodule--helper: add "const" to passed "struct update_data" submodule--helper: don't redundantly check "else if (res)" submodule--helper: rename "int res" to "int ret" submodule--helper: return "ret", not "1" from update_submodule() submodule--helper: add missing braces to "else" arm submodule--helper: don't call submodule_strategy_to_string() in BUG() submodule API: don't handle SM_..{UNSPECIFIED,COMMAND} in to_string() submodule--helper: use "code" in run_update_command() submodule--helper: don't exit() on failure, return submodule--helper: libify determine_submodule_update_strategy() submodule--helper: libify "must_die_on_failure" code paths submodule--helper update: don't override 'checkout' exit code submodule--helper: libify "must_die_on_failure" code paths (for die) submodule--helper: check repo{_submodule,}_init() return values submodule--helper: libify more "die" paths for module_update() submodule--helper: libify even more "die" paths for module_update() submodule--helper: fix bad config API usage submodule--helper: fix a leak in "clone_submodule" submodule--helper: fix trivial get_default_remote_submodule() leak submodule--helper: fix most "struct pathspec" memory leaks submodule--helper: "struct pathspec" memory leak in module_update() submodule--helper: don't leak {run,capture}_command() cp.dir argument submodule--helper: add and use *_release() functions submodule--helper: fix "errmsg_str" memory leak submodule--helper: fix "sm_path" and other "module_cb_list" leaks submodule--helper: fix a leak with repo_clear() submodule--helper: fix a memory leak in get_default_remote_submodule() submodule--helper: fix "reference" leak submodule--helper: fix obscure leak in module_add() submodule--helper: fix a leak in module_add() submodule--helper: fix a memory leak in print_status() submodule--helper: free some "displaypath" in "struct update_data" submodule--helper: free rest of "displaypath" in "struct update_data" submodule--helper: fix a configure_added_submodule() leak docs: add and use include template for config/* includes grep docs: de-duplicate configuration sections send-email docs: de-duplicate configuration sections apply docs: de-duplicate configuration sections notes docs: de-duplicate and combine configuration sections difftool docs: de-duplicate configuration sections log docs: de-duplicate configuration sections docs: add CONFIGURATION sections that map to a built-in docs: add CONFIGURATION sections that fuzzy map to built-ins Øystein Walle (1): rev-parse --parseopt: detect missing opt-spec Version v2.37.7; changes since v2.37.6: --------------------------------------- Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Jeff King (7): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Makefile: force -O0 when compiling with SANITIZE=leak Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (19): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present tests: avoid using `test_i18ncmp` Git 2.31.8 Git 2.32.7 Git 2.33.8 Git 2.34.8 Git 2.35.8 Git 2.36.6 Git 2.37.7 Junio C Hamano (1): http.c: clear the 'finished' member once we are done with it Taylor Blau (5): t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 Version v2.37.6; changes since v2.37.5: --------------------------------------- Jeff King (3): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION http: support CURLOPT_PROTOCOLS_STR Johannes Schindelin (8): attr: adjust a mismatched data type Git 2.31.7 Git 2.32.6 Git 2.33.7 Git 2.34.7 Git 2.35.7 Git 2.36.5 Git 2.37.6 Junio C Hamano (1): Git 2.30.8 Patrick Steinhardt (1): apply: fix writing behind newly created symbolic links Taylor Blau (3): t5619: demonstrate clone_local() with ambiguous transport clone: delay picking a transport until after get_repo_path() dir-iterator: prevent top-level symlinks without FOLLOW_SYMLINKS Version v2.37.5; changes since v2.37.4: --------------------------------------- Carlo Marcelo Arenas Belón (1): test-lib: add prerequisite for 64-bit platforms Junio C Hamano (8): Git 2.30.7 Git 2.31.6 Git 2.32.5 Git 2.33.6 Git 2.34.6 Git 2.35.6 Git 2.36.4 Git 2.37.5 Patrick Steinhardt (25): attr: fix overflow when upserting attribute with overly long name attr: fix out-of-bounds read with huge attribute names attr: fix integer overflow when parsing huge attribute names attr: fix out-of-bounds write when parsing huge number of attributes attr: fix out-of-bounds read with unreasonable amount of patterns attr: fix integer overflow with more than INT_MAX macros attr: harden allocation against integer overflows attr: fix silently splitting up lines longer than 2048 bytes attr: ignore attribute lines exceeding 2048 bytes attr: ignore overly large gitattributes files pretty: fix out-of-bounds write caused by integer overflow pretty: fix out-of-bounds read when left-flushing with stealing pretty: fix out-of-bounds read when parsing invalid padding format pretty: fix adding linefeed when placeholder is not expanded pretty: fix integer overflow in wrapping format utf8: fix truncated string lengths in `utf8_strnwidth()` utf8: fix returning negative string width utf8: fix overflow when returning string width utf8: fix checking for glyph width in `strbuf_utf8_replace()` utf8: refactor `strbuf_utf8_replace` to not rely on preallocated buffer pretty: restrict input lengths for padding and wrapping formats fsck: refactor `fsck_blob()` to allow for more checks fsck: pull out function to check a set of blobs fsck: move checks for gitattributes fsck: implement checks for gitattributes Version v2.37.4; changes since v2.37.3: --------------------------------------- Anthony Delannoy (1): preload-index: fix memleak Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Elijah Newren (1): merge: only apply autostash when appropriate Jeff King (8): is_promisor_object(): fix use-after-free of tree buffer compat: add function to enable nonblocking pipes git-compat-util: make MAX_IO_SIZE define globally available pipe_command(): avoid xwrite() for writing to pipe pipe_command(): handle ENOSPC when writing to a pipe pipe_command(): mark stdin descriptor as non-blocking shell: add basic tests shell: limit size of interactive commands Junio C Hamano (1): Merge a handful of topics from the 'master' front Kevin Backhouse (1): alias.c: reject too-long cmdline strings in split_cmdline() René Scharfe (1): nonblock: support Windows SZEDER Gábor (1): promisor-remote: fix xcalloc() argument order Taylor Blau (30): builtin/clone.c: disallow `--local` clones with symlinks t/lib-submodule-update.sh: allow local submodules t/t1NNN: allow local submodules t/2NNNN: allow local submodules t/t3NNN: allow local submodules t/t4NNN: allow local submodules t/t5NNN: allow local submodules t/t6NNN: allow local submodules t/t7NNN: allow local submodules t/t9NNN: allow local submodules transport: make `protocol.file.allow` be "user" by default t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow t3207: prepare for changing protocol.file.allow t5516: prepare for changing protocol.file.allow t5537: prepare for changing protocol.file.allow t7814: prepare for changing protocol.file.allow t3206: prepare for changing protocol.file.allow t5537: prepare for changing protocol.file.allow Git 2.30.6 Git 2.31.5 Git 2.32.4 Git 2.33.5 Git 2.34.5 Git 2.35.5 Git 2.36.3 t7527: prepare for changing protocol.file.allow Git 2.37.4 Version v2.37.3; changes since v2.37.2: --------------------------------------- Carlo Marcelo Arenas Belón (1): cmake: support local installations of git Felipe Contreras (7): mergetools: vimdiff: fix comment mergetools: vimdiff: make vimdiff3 actually work mergetools: vimdiff: silence annoying messages mergetools: vimdiff: fix for diffopt mergetools: vimdiff: rework tab logic mergetools: vimdiff: fix single window layouts mergetools: vimdiff: simplify tabfirst Glen Choo (1): Documentation/git-reflog: remove unneeded \ from \{ Jeff King (4): config.mak.dev: squelch -Wno-missing-braces for older gcc tree-walk: add a mechanism for getting non-canonicalized modes fsck: actually detect bad file modes in trees fsck: downgrade tree badFilemode to "info" Johannes Schindelin (11): windows: include the Python bits when building Git for Windows mingw: remove unneeded `NO_GETTEXT` directive mingw: remove unneeded `NO_CURL` directive lstat(mingw): correctly detect ENOTDIR scenarios merge-ort: clean up after failed merge merge-ort: do leave trace2 region even if checkout fails setup: fix some formatting setup: prepare for more detailed "dubious ownership" messages mingw: provide details about unsafe directories' ownership mingw: be more informative when ownership check fails on FAT32 mingw: handle a file owned by the Administrators group correctly Junio C Hamano (2): A handful more topics from the 'master' front for 2.37.3 Git 2.37.3 Philip Oakley (1): doc add: renormalize is not idempotent for CRCRLF Phillip Wood (1): tests: cache glibc version check Victoria Dye (4): checkout: fix nested sparse directory diff in sparse index oneway_diff: handle removed sparse directories cache.h: create 'index_name_pos_sparse()' unpack-trees: unpack new trees as sparse directories Ævar Arnfjörð Bjarmason (1): hook API: don't segfault on strbuf_addf() to NULL "out" Version v2.37.2; changes since v2.37.1: --------------------------------------- Abhradeep Chakraborty (3): bitmap-format.txt: feed the file to asciidoc to generate html bitmap-format.txt: fix some formatting issues bitmap-format.txt: add information for trailing checksum Celeste Liu (1): contrib/rerere-train: avoid useless gpg sign in training Cleber Rosa (1): setup: fix function name in a BUG() message Derrick Stolee (9): t5510: replace 'origin' with URL more carefully vscode: improve tab size and wrapping git-rebase.txt: use back-ticks consistently daemon: clarify directory arguments git-cvsserver: clarify directory list git.txt: remove redundant language t: avoid "whitelist" transport.c: avoid "whitelist" compat/win32: correct for incorrect compiler warning Dimitriy Ryazantcev (1): i18n: mark message helpers prefix for translation Elijah Newren (6): t6429: fix use of non-existent function t6423: add tests of dual directory rename plus add/add conflict merge-ort: small cleanups of check_for_directory_rename merge-ort: make a separate function for freeing struct collisions merge-ort: shuffle the computation and cleanup of potential collisions merge-ort: fix issue with dual rename and add/add conflict Fernando Ramos (1): vimdiff: make layout engine more robust against user vim settings Goss Geppert (2): dir: traverse into repository dir: minor refactoring / clean-up Han Xin (2): commit-graph.c: no lazy fetch in lookup_commit_in_graph() t5330: remove run_with_limited_processses() Jeff King (6): revisions.txt: escape "..." to avoid asciidoc horizontal ellipsis clone: drop extra newline from warning message clone: propagate empty remote HEAD even with other branches clone: use remote branch if it matches default HEAD clone: move unborn head creation to update_head() diff-files: move misplaced cleanup label Johannes Schindelin (3): tests: fix incorrect --write-junit-xml code mergetool(vimdiff): allow paths to contain spaces again shortlog: use a stable sort Junio C Hamano (6): revision: mark blobs needed for resolve-undo as reachable fsck: do not dereference NULL while checking resolve-undo data builtin/remote.c: use the right kind of STRING_LIST_INIT Downmerge a handful of fixes for 2.37.x maintenance track Downmerge a bit more for 2.37.x Git 2.37.2 Kilian Kilger (2): git-p4: fix bug with encoding of p4 client name git-p4: refactoring of p4CmdList() Lessley Dennington (1): osx-keychain: fix compiler warning Li Linchao (1): ls-files: update test style Manuel Boni (1): config.txt: document include, includeIf Martin Ågren (3): config/core.txt: fix minor issues for `core.sparseCheckoutCone` t4200: drop irrelevant code read-cache: make `do_read_index()` always set up `istate->repo` Matheus Tavares (4): checkout: document bug where delayed checkout counts entries twice checkout: show bug about failed entries being included in final report checkout: fix two bugs on the final count of updated entries pkt-line.h: move comment closer to the associated code Moritz Baumann (1): git-p4: fix CR LF handling for utf16 files Philippe Blain (3): diff-format.txt: dst can be 0* SHA-1 when path is deleted, too diff-format.txt: correct misleading wording diff-index.txt: update raw output format in examples René Scharfe (3): combine-diff: abort if --ignore-matching-lines is given combine-diff: abort if --output is given mingw: avoid mktemp() in mkstemp() implementation Richard Oliver (1): mktree: do not check type of remote objects SZEDER Gábor (1): index-format.txt: remove outdated list of supported extensions Tao Klerks (1): rev-parse: documentation adjustment - mention remote tracking with @{u} Taylor Blau (4): pack-objects.h: remove outdated pahole results t5318: demonstrate commit-graph generation v2 corruption commit-graph: introduce `repo_find_commit_pos_in_graph()` commit-graph: fix corrupt upgrade from generation v1 to v2 Ævar Arnfjörð Bjarmason (3): tests: add missing double quotes to included library paths test-lib.sh: fix prepend_var() quoting issue config tests: fix harmless but broken "rm -r" cleanup Version v2.37.1; changes since v2.37.0: --------------------------------------- Carlo Marcelo Arenas Belón (1): setup: tighten ownership checks post CVE-2022-24765 Johannes Schindelin (8): Git 2.30.5 Git 2.31.4 Git 2.32.3 Git 2.33.4 Git 2.34.4 Git 2.35.4 Git 2.36.2 add --interactive: allow `update` to stage deleted files Junio C Hamano (1): Git 2.37.1 Version v2.37.0; changes since v2.37.0-rc2: ------------------------------------------- Alex Henrie (1): l10n: es: update translation Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5367t) Arthur Milchior (1): l10n: README: fix typo Bagas Sanjaya (1): l10n: po-id for 2.37 (first batch) Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Emir SARI (1): l10n: tr: v2.37.0 round #1 Fangyi Zhou (1): l10n: zh_CN: v2.37.0 round 1 Jean-Noël Avila (1): l10n: fr v2.37 round 1 Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (1): Git 2.37 Matthias Rüster (2): l10n: de.po: Update German translation l10n: TEAMS: Change German translation team leader Peter Krefting (1): l10n: sv.po: Update Swedish translation (5367t0f0u) René Scharfe (1): revert: config documentation fixes Taylor Blau (1): Documentation/config/transfer.txt: fix typo Trần Ngọc Quân (1): l10n: vi(5367t): Updated translation Yi-Jyun Pan (1): l10n: zh_TW: v2.37.0 round 1 Version v2.37.0-rc2; changes since v2.37.0-rc1: ----------------------------------------------- Alexander Shopov (1): name-rev: prefix annotate-stdin with '--' in message Joakim Petersen (2): git-prompt: make colourization consistent git-prompt: fix expansion of branch colour codes Junio C Hamano (1): Git 2.37-rc2 René Scharfe (1): gc: simplify --cruft description Version v2.37.0-rc1; changes since v2.37.0-rc0: ----------------------------------------------- Carlo Marcelo Arenas Belón (1): git-compat-util: allow root to access both SUDO_UID and root owned Derrick Stolee (4): t2107: test 'git update-index --verbose' t5329: test 'git gc --cruft' without '--prune=now' pack-write: drop always-NULL parameter cache-tree: remove cache_tree_find_path() Fabian Stelzer (1): gpg docs: explain better use of ssh.defaultKeyCommand Fangyi Zhou (2): push: fix capitalisation of the option name autoSetupMerge builtin/rebase: remove a redundant space in l10n string Jeff King (2): perf-lib: fix missing test titles in output bug_fl(): correctly initialize trace2 va_list Jiang Xin (1): i18n: fix mismatched camelCase config variables Johannes Schindelin (9): ci(github): bring back the 'print test failures' step ci(github): use grouping also in the `win-build` job ci(github): also mark up compile errors fsmonitor: avoid memory leak in `fsm_settings__get_incompatible_msg()` submodule-config: avoid memory leak submodule--helper: avoid memory leak when fetching submodules read_index_from(): avoid memory leak pack-mtimes: avoid closing a bogus file descriptor relative_url(): fix incorrect condition Junio C Hamano (6): revert: optionally refer to commit in the "reference" format revert: --reference should apply only to 'revert', not 'cherry-pick' cocci: retire is_null_sha1() rule Fixes and updates post -rc0 Another batch of fixes before -rc1 Git 2.37-rc1 Philip Oakley (4): rebase.c: state preserve-merges has been removed rebase: help users when dying with `preserve-merges` rebase: note `preserve` merges may be a pull config option rebase: translate a die(preserve-merges) message Ævar Arnfjörð Bjarmason (4): add -i tests: mark "TODO" depending on GIT_TEST_ADD_I_USE_BUILTIN fetch doc: note "pushurl" caveat about "credentialsInUrl", elaborate transfer doc: move fetch.credentialsInUrl to "transfer" config namespace tests: add LIBCURL prerequisite to tests needing libcurl Version v2.37.0-rc0; changes since v2.36.6: ------------------------------------------- Abhradeep Chakraborty (1): builtin/remote.c: teach `-v` to list filters for promisor remotes Alex Henrie (1): convert: clarify line ending conversion warning COGONI Guillaume (2): contrib/vscode/: debugging with VS Code and gdb Documentation/ToolsForGit.txt: Tools for developing Git Carlo Marcelo Arenas Belón (1): reftable: avoid undefined behaviour breaking t0032 Chris Down (2): bisect: output state before we are ready to compute bisection bisect: output bisect setup status in bisect log Christian Couder (1): http: add custom hostname to IP address resolutions Derrick Stolee (21): clone: die() instead of BUG() on bad refs t1092: add compatibility tests for 'git show' show: integrate with the sparse index object-name: reject trees found in the index object-name: diagnose trees in index properly rev-parse: integrate with sparse index http: make http_get_file() external remote: move relative_url() remote: allow relative_url() to return an absolute url object-file: convert 'switch' back to 'if' t1092: refactor 'sparse-index contents' test t1092: stress test 'git sparse-checkout set' sparse-index: create expand_index() sparse-index: introduce partially-sparse indexes cache-tree: implement cache_tree_find_path() sparse-checkout: --no-sparse-index needs a full index sparse-index: partially expand directories sparse-index: complete partial expansion p2000: add test for 'git sparse-checkout [add|set]' sparse-checkout: integrate with sparse index remote: create fetch.credentialsInUrl config Edmundo Carmona Antoranz (2): blame: report correct number of lines in progress when using ranges rebase: simplify an assignment of options.type in cmd_rebase Elia Pinto (2): Makefile: add a prerequisite to the coverage-report target contrib/coccinnelle: add equals-null.cocci Elijah Newren (9): tests: stop assuming --no-cone is the default mode for sparse-checkout sparse-checkout: make --cone the default git-sparse-checkout.txt: wording updates for the cone mode default git-sparse-checkout.txt: update docs for deprecation of 'init' git-sparse-checkout.txt: shuffle some sections and mark as internal git-sparse-checkout.txt: add a new EXAMPLES section git-sparse-checkout.txt: flesh out pattern set sections a bit git-sparse-checkout.txt: mark non-cone mode as deprecated Documentation: some sparsity wording clarifications Fernando Ramos (4): vimdiff: new implementation with layout support vimdiff: integrate layout tests in the unit tests framework ('t' folder) vimdiff: add tool documentation mergetools: add description to all diff/merge tools Frantisek Hrbata (3): transport: remove unnecessary indenting in transport_push() transport: unify return values and exit point from transport_push() transport: free local and remote refs in transport_push() Garrit Franke (3): cli: add -v and -h shorthands serve.c: remove unnecessary include apply.c: remove unnecessary include Glen Choo (4): pull: do not let submodule.recurse override fetch.recurseSubmodules remote.c: don't BUG() on 0-length branch names remote.c: reject 0-length branch names config: document and test the 'worktree' scope Jason Yundt (1): gitweb: switch to an XHTML5 DOCTYPE Jeff Hostetler (30): fsm-listen-win32: handle shortnames t7527: test FSMonitor on repos with Unicode root paths t/helper/fsmonitor-client: create stress test fsmonitor-settings: bare repos are incompatible with FSMonitor fsmonitor-settings: stub in Win32-specific incompatibility checking fsmonitor-settings: VFS for Git virtual repos are incompatible fsmonitor-settings: stub in macOS-specific incompatibility checking fsmonitor-settings: remote repos on macOS are incompatible fsmonitor-settings: remote repos on Windows are incompatible fsmonitor-settings: NTFS and FAT32 on MacOS are incompatible unpack-trees: initialize fsmonitor_has_run_once in o->result fsm-listen-darwin: ignore FSEvents caused by xattr changes on macOS fsmonitor--daemon: cd out of worktree root fsmonitor--daemon: prepare for adding health thread fsmonitor--daemon: rename listener thread related variables fsmonitor--daemon: stub in health thread fsm-health-win32: add polling framework to monitor daemon health fsm-health-win32: force shutdown daemon if worktree root moves fsm-listen-darwin: shutdown daemon if worktree root is moved/renamed fsmonitor: optimize processing of directory events t7527: FSMonitor tests for directory moves t/perf/p7527: add perf test for builtin FSMonitor fsmonitor: never set CE_FSMONITOR_VALID on submodules t7527: test FSMonitor on case insensitive+preserving file system fsmonitor: on macOS also emit NFC spelling for NFD pathname t/helper/hexdump: add helper to print hexdump of stdin t/lib-unicode-nfc-nfd: helper prereqs for testing unicode nfc/nfd t7527: test Unicode NFC/NFD handling on MacOS fsmonitor--daemon: allow --super-prefix argument t7527: improve implicit shutdown testing in fsmonitor--daemon Jiang Xin (5): Makefile: sort source files before feeding to xgettext Makefile: generate "po/git.pot" from stable LOCALIZED_C Makefile: remove duplicate and unwanted files in FOUND_SOURCE_FILES po/git.pot: this is now a generated file Makefile: add "po-update" rule to update po/XX.po Joel Holdsworth (22): git-p4: add blank lines between functions and class definitions git-p4: remove unneeded semicolons from statements git-p4: indent with 4-spaces git-p4: improve consistency of docstring formatting git-p4: convert descriptive class and function comments into docstrings git-p4: remove commented code git-p4: sort and de-duplcate pylint disable list git-p4: remove padding from lists, tuples and function arguments git-p4: remove spaces around default arguments git-p4: removed brackets when assigning multiple return values git-p4: place a single space after every comma git-p4: remove extraneous spaces before function arguments git-p4: remove redundant backslash-continuations inside brackets git-p4: remove spaces between dictionary keys and colons git-p4: ensure every comment has a single # git-p4: ensure there is a single space around all operators git-p4: normalize indentation of lines in conditionals git-p4: compare to singletons with "is" and "is not" git-p4: only seperate code blocks by a single empty line git-p4: move inline comments to line above git-p4: seperate multiple statements onto seperate lines git-p4: sort imports Johannes Schindelin (24): t2016: require the PERL prereq only when necessary add -i: default to the built-in implementation trace2 docs: a couple of grammar fixes trace2 docs: "printf" is not an English word trace2 docs: surround more terms in backticks trace2 docs: fix a JSON formatted example trace2 docs: clarify what `varargs` is all about trace2 docs: add missing full stop ci: fix code style tests: refactor --write-junit-xml code test(junit): avoid line feeds in XML attributes ci/run-build-and-tests: take a more high-level view ci: make it easier to find failed tests' logs in the GitHub workflow ci/run-build-and-tests: add some structure to the GitHub workflow output ci: optionally mark up output in the GitHub workflow ci(github): skip the logs of the successful test cases ci: use `--github-workflow-markup` in the GitHub workflow ci(github): mention where the full logs can be found ci: call `finalize_test_case_output` a little later archive: optionally add "virtual" files archive --add-virtual-file: allow paths containing colons scalar: validate the optional enlistment argument scalar: implement `scalar diagnose` scalar diagnose: include disk space information Jonathan Tan (2): fetch-pack: make unexpected peek result non-fatal commit,shallow: unparse commits if grafts changed Josh Steadmon (1): run-command: don't spam trace2_child_exit() Junio C Hamano (22): Some regression fixes for 2.36 tree-wide: apply equals-null.cocci tree-wide: apply equals-null.cocci tree-wide: apply equals-null.cocci A bit more regression fixes for 2.36 0th batch for topics from the previous cycle second 0th batch of topics from the previous cycle commit: fix "author_ident" leak fetch: do not run a redundant fetch from submodule t6424: make sure a failed merge preserves local changes First batch for 2.37 Second batch Third batch Fourth batch pathspec: correct an empty string used as a pathspec element Fifth batch Sixth batch Revert -Wno-error=dangling-pointer Seventh batch Eighth batch Ninth batch Git 2.37-rc0 Kevin Locke (1): setup: don't die if realpath(3) fails on getcwd(3) Khalid Masum (1): t3501: remove test -f and stop ignoring git <cmd> exit code Kirill Frolov (1): git-p4: fix issue with multiple perforce remotes Kleber Tarcísio (1): commit-graph: close file before returning NULL Matthew John Cheetham (2): scalar: teach `diagnose` to gather packfile info scalar: teach `diagnose` to gather loose objects information Miklos Vajna (1): log: "--since-as-filter" option is a non-terminating "--since" variant Neeraj Singh (12): bulk-checkin: rename 'state' variable and separate 'plugged' boolean bulk-checkin: rebrand plug/unplug APIs as 'odb transactions' core.fsyncmethod: batched disk flushes for loose-objects cache-tree: use ODB transaction around writing a tree builtin/add: add ODB transaction around add_files_to_cache update-index: use the bulk-checkin infrastructure unpack-objects: use the bulk-checkin infrastructure core.fsync: use batch mode and sync loose objects by default on Windows test-lib-functions: add parsing helpers for ls-files and ls-tree core.fsyncmethod: tests for batch mode t/perf: add iteration setup mechanism to perf-lib core.fsyncmethod: performance tests for batch mode Orgad Shaneh (1): fetch: limit shared symref check only for local branches Philippe Blain (8): submodule.h: use a named enum for RECURSE_SUBMODULES_* MyFirstContribution: add "Anatomy of a Patch Series" section MyFirstContribution: add standalone section on cover letter MyFirstContribution: reference "The cover letter" in "Preparing Email" MyFirstContribution: reference "The cover letter" in GitGitGadget section MyFirstContribution: drop PR description for GGG single-patch contributions ci: update Cirrus-CI image to FreeBSD 12.3 range-diff: show submodule changes irrespective of diff.submodule René Scharfe (4): t7812: test PCRE2 whitespace bug tempfile: add mks_tempfile_dt() diff: use mks_tempfile_dt() archive: improve documentation of --prefix SZEDER Gábor (3): t0033-safe-directory: check the error message without matching the trash dir t0033-safe-directory: check when 'safe.directory' is ignored safe.directory: document and check that it's ignored in the environment Siddharth Asthana (1): t1011: replace test -f with test_path_is_file Son Luong Ngoc (1): fsmonitor: query watchman with right valid json Tao Klerks (8): untracked-cache: test untracked-cache-bypassing behavior with -uall untracked-cache: support '--untracked-files=all' if configured git-p4: support explicit sync of arbitrary existing git-p4 refs git-p4: preserve utf8 BOM when importing from p4 to git branch: new autosetupmerge option 'simple' for matching branches push: default to single remote even when not named origin push: new config option "push.autoSetupRemote" supports "simple" push git-p4: improve encoding handling to support inconsistent encodings Taylor Blau (25): builtin/receive-pack.c: remove redundant 'if' t7703: demonstrate object corruption with pack.packSizeLimit builtin/repack.c: ensure that `names` is sorted Documentation/technical: add cruft-packs.txt pack-bitmap.c: check preferred pack validity when opening MIDX bitmap builtin/pack-objects.c: avoid redundant NULL check builtin/pack-objects.c: ensure included `--stdin-packs` exist builtin/pack-objects.c: ensure pack validity from MIDX bitmap objects pack-mtimes: support reading .mtimes files pack-write: pass 'struct packing_data' to 'stage_tmp_packfiles' chunk-format.h: extract oid_version() pack-mtimes: support writing pack .mtimes files t/helper: add 'pack-mtimes' test-tool builtin/pack-objects.c: return from create_object_entry() builtin/pack-objects.c: --cruft without expiration reachable: add options to add_unseen_recent_objects_to_traversal reachable: report precise timestamps from objects in cruft packs builtin/pack-objects.c: --cruft with expiration builtin/repack.c: support generating a cruft pack builtin/repack.c: allow configuring cruft pack generation builtin/repack.c: use named flags for existing_packs builtin/repack.c: add cruft packs to MIDX during geometric repack builtin/gc.c: conditionally avoid pruning objects via loose sha1-file.c: don't freshen cruft packs builtin/show-ref.c: avoid over-iterating with --heads, --tags Victoria Dye (8): stash: expand sparse-checkout compatibility testing stash: integrate with sparse index sparse-index: expose 'is_sparse_index_allowed()' read-cache: set sparsity when index is new stash: apply stash using 'merge_ort_nonrecursive()' unpack-trees: preserve index sparsity repack: respect --keep-pack with geometric repack ci(github): avoid printing test case preamble twice Yuyi Wang (3): cmake: fix CMakeLists.txt on Linux cmake: add pcre2 support cmake: remove (_)UNICODE def on Windows in CMakeLists.txt ZheNing Hu (1): read-cache.c: reduce unnecessary cache entry name copying halilsen (2): gitk: trivial indentation fix gitk: include y coord in recorded sash position Ævar Arnfjörð Bjarmason (56): run-command.h: remove always unused "clean_on_exit_handler_cbdata" configure.ac: remove USE_PIC comment xdiff/xmacros.h: remove unused XDL_PTRFREE pack-bitmap-write: remove unused bitmap_reset() function object-store.h: remove unused has_sha1_file*() alloc.[ch]: remove alloc_report() function t/helper/test-fast-rebase.c: don't leak "struct strbuf" blame: use "goto cleanup" for cleanup_scoreboard() string_list API users: use string_list_init_{no,}dup format-patch: don't leak "extra_headers" or "ref_message_ids" cocci: add and apply free_commit_list() rules revision.[ch]: provide and start using a release_revisions() revisions API users: add straightforward release_revisions() revision.[ch]: document and move code declared around "init" revisions API users: use release_revisions() needing REV_INFO_INIT stash: always have the owner of "stash_info" free it revisions API users: add "goto cleanup" for release_revisions() revisions API users: use release_revisions() in http-push.c revisions API users: use release_revisions() in builtin/log.c revisions API users: use release_revisions() with UNLEAK() revisions API users: use release_revisions() for "prune_data" users revisions API: have release_revisions() release "commits" revisions API: have release_revisions() release "mailmap" revisions API: have release_revisions() release "cmdline" revisions API: have release_revisions() release "filter" revisions API: have release_revisions() release "grep_filter" revisions API: have release_revisions() release "prune_data" revisions API: clear "boundary_commits" in release_revisions() revisions API: release "reflog_info" in release revisions() revisions API: call diff_free(&revs->pruning) in revisions_release() revisions API: have release_revisions() release "date_mode" revisions API: have release_revisions() release "topo_walk_info" revisions API: add a TODO for diff_free(&revs->diffopt) connect.c: refactor sending of agent & object-format dir API: add a generalized path_match_flags() function fetch-pack: add a deref_without_lazy_fetch_extended() fetch-pack: move --keep=* option filling to a function bundle.h: make "fd" version of read_bundle_header() public Makefile: have "make pot" not "reset --hard" i18n CI: stop allowing non-ASCII source messages in po/git.pot po/git.pot: don't check in result of "make pot" Makefile: add "po-init" rule to initialize po/XX.po l10n: Document the new l10n workflow common-main.c: move non-trace2 exit() behavior out of trace2.c usage.c: add a non-fatal bug() function to go with BUG() parse-options.c: use new bug() API for optbug() parse-options.c: use optbug() instead of BUG() "opts" check receive-pack: use bug() and BUG_if_bug() cache-tree.c: use bug() and BUG_if_bug() run-command API: rename "env_array" to "env" run-command API users: use "env" not "env_array" in comments & names ls-tree: test for the regression in 9c4d58ff2c3 run-command: add an "ungroup" option to run_process_parallel() remote.c: remove braces from one-statement "for"-loops remote.c: don't dereference NULL in freeing loop hook API: fix v2.36.0 regression: hooks should be connected to a TTY Version v2.36.6; changes since v2.36.5: --------------------------------------- Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Jeff King (7): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Makefile: force -O0 when compiling with SANITIZE=leak Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (18): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present tests: avoid using `test_i18ncmp` Git 2.31.8 Git 2.32.7 Git 2.33.8 Git 2.34.8 Git 2.35.8 Git 2.36.6 Junio C Hamano (1): http.c: clear the 'finished' member once we are done with it Taylor Blau (5): t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 Version v2.36.5; changes since v2.36.4: --------------------------------------- Jeff King (3): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION http: support CURLOPT_PROTOCOLS_STR Johannes Schindelin (7): attr: adjust a mismatched data type Git 2.31.7 Git 2.32.6 Git 2.33.7 Git 2.34.7 Git 2.35.7 Git 2.36.5 Junio C Hamano (1): Git 2.30.8 Patrick Steinhardt (1): apply: fix writing behind newly created symbolic links Taylor Blau (3): t5619: demonstrate clone_local() with ambiguous transport clone: delay picking a transport until after get_repo_path() dir-iterator: prevent top-level symlinks without FOLLOW_SYMLINKS Version v2.36.4; changes since v2.36.3: --------------------------------------- Carlo Marcelo Arenas Belón (1): test-lib: add prerequisite for 64-bit platforms Junio C Hamano (7): Git 2.30.7 Git 2.31.6 Git 2.32.5 Git 2.33.6 Git 2.34.6 Git 2.35.6 Git 2.36.4 Patrick Steinhardt (25): attr: fix overflow when upserting attribute with overly long name attr: fix out-of-bounds read with huge attribute names attr: fix integer overflow when parsing huge attribute names attr: fix out-of-bounds write when parsing huge number of attributes attr: fix out-of-bounds read with unreasonable amount of patterns attr: fix integer overflow with more than INT_MAX macros attr: harden allocation against integer overflows attr: fix silently splitting up lines longer than 2048 bytes attr: ignore attribute lines exceeding 2048 bytes attr: ignore overly large gitattributes files pretty: fix out-of-bounds write caused by integer overflow pretty: fix out-of-bounds read when left-flushing with stealing pretty: fix out-of-bounds read when parsing invalid padding format pretty: fix adding linefeed when placeholder is not expanded pretty: fix integer overflow in wrapping format utf8: fix truncated string lengths in `utf8_strnwidth()` utf8: fix returning negative string width utf8: fix overflow when returning string width utf8: fix checking for glyph width in `strbuf_utf8_replace()` utf8: refactor `strbuf_utf8_replace` to not rely on preallocated buffer pretty: restrict input lengths for padding and wrapping formats fsck: refactor `fsck_blob()` to allow for more checks fsck: pull out function to check a set of blobs fsck: move checks for gitattributes fsck: implement checks for gitattributes Version v2.36.3; changes since v2.36.2: --------------------------------------- Jeff King (2): shell: add basic tests shell: limit size of interactive commands Kevin Backhouse (1): alias.c: reject too-long cmdline strings in split_cmdline() Taylor Blau (26): builtin/clone.c: disallow `--local` clones with symlinks t/lib-submodule-update.sh: allow local submodules t/t1NNN: allow local submodules t/2NNNN: allow local submodules t/t3NNN: allow local submodules t/t4NNN: allow local submodules t/t5NNN: allow local submodules t/t6NNN: allow local submodules t/t7NNN: allow local submodules t/t9NNN: allow local submodules transport: make `protocol.file.allow` be "user" by default t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow t3207: prepare for changing protocol.file.allow t5516: prepare for changing protocol.file.allow t5537: prepare for changing protocol.file.allow t7814: prepare for changing protocol.file.allow Git 2.30.6 Git 2.31.5 Git 2.32.4 Git 2.33.5 Git 2.34.5 Git 2.35.5 Git 2.36.3 Version v2.36.2; changes since v2.36.1: --------------------------------------- Alex Henrie (1): rebase: use correct base for --keep-base when a branch is given Carlo Marcelo Arenas Belón (8): ci: make failure to find perforce more user friendly ci: avoid brew for installing perforce ci: reintroduce prevention from perforce being quarantined in macOS t: regression git needs safe.directory when using sudo git-compat-util: avoid failing dir ownership checks if running privileged t0034: add negative tests and allow git init to mostly work under sudo git-compat-util: allow root to access both SUDO_UID and root owned setup: tighten ownership checks post CVE-2022-24765 Derrick Stolee (3): midx: use real paths in lookup_multi_pack_index() multi-pack-index: use --object-dir real path cache: use const char * for get_object_directory() Johannes Schindelin (10): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error dir.c: avoid "exceeds maximum object size" error with GCC v12.x Git 2.30.5 Git 2.31.4 Git 2.32.3 Git 2.33.4 Git 2.34.4 Git 2.35.4 Git 2.36.2 Junio C Hamano (6): show-branch: -g and --current are incompatible clone: plug a miniscule leak SubmittingPatches: use more stable git.ozlabs.org URL archive: do not let on-disk mode leak to zip archives http.c: clear the 'finished' member once we are done with it Prepare for 2.36.2 Michael J Gruber (1): detect-compiler: make detection independent of locale Phillip Wood (1): tests: make SANITIZE=address imply TEST_NO_MALLOC_CHECK René Scharfe (1): commit, sequencer: turn off break_opt for commit summary Ævar Arnfjörð Bjarmason (5): tests: using custom GIT_EXEC_PATH breaks --valgrind tests log test: skip a failing mkstemp() test under valgrind object-file: fix a unpack_loose_header() regression in 3b6a8db3b03 commit-graph.c: don't assume that stat() succeeds ci: use https, not http to download binaries from perforce.com Version v2.36.1; changes since v2.36.0: --------------------------------------- Junio C Hamano (4): 2.36 gitk/diff-tree --stdin regression fix 2.36 show regression fix cocci: drop bogus xstrdup_or_null() rule Git 2.36.1 Orgad Shaneh (1): submodule--helper: fix initialization of warn_if_uninitialized René Scharfe (3): Revert "name-rev: release unused name strings" 2.36 format-patch regression fix 2.36 fast-export regression fix Ævar Arnfjörð Bjarmason (1): CI: select CC based on CC_PACKAGE (again) Version v2.36.0; changes since v2.36.0-rc2: ------------------------------------------- Bagas Sanjaya (2): l10n: po-id for 2.36 (round 1) l10n: po-id for 2.36 (round 2) Carlo Marcelo Arenas Belón (2): config.mak.dev: workaround gcc 12 bug affecting "pedantic" CI job config.mak.dev: alternative workaround to gcc 12 warning in http.c Daniel Santos (3): l10n: pt_PT: update Portuguese translation l10n: pt_PT: update TEAMS file l10n: pt_PT: update Portuguese translation Derrick Stolee (2): t0033: add tests for safe.directory setup: opt-out of check with safe.directory=* Emir SARI (2): l10n: tr: v2.36.0 round 1 l10n: tr: v2.36.0 round 2 Fangyi Zhou (3): l10n: Update zh_CN repo link l10n: zh_CN v2.36.0 round 1 l10n: zh_CN v2.36.0 round 2 Jean-Noël Avila (2): l10n: fr: v2.36 round 1 l10n: fr: v2.36 round 2 Jiang Xin (2): l10n: git.pot: v2.36.0 round 1 (192 new, 106 removed) l10n: git.pot: v2.36.0 round 2 (4 new, 3 removed) Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (7): Git 2.30.4 Revert "Merge branch 'ps/avoid-unnecessary-hook-invocation-with-packed-refs'" Revert "fetch: increase test coverage of fetches" RelNotes: clarify "bisect run unexecutable" tweak RelNotes: mention safe.directory RelNotes: revert the description on the reverted topics Git 2.36 Matheus Valadares (1): setup: fix safe.directory key not being checked Matthias Rüster (1): l10n: de.po: Update German translation Peter Krefting (1): l10n: sv.po: Update Swedish translation (5282t0f0u) Trần Ngọc Quân (1): l10n: vi(5285t): v2.36.0 round 2 Yi-Jyun Pan (1): l10n: zh_TW: v2.36.0 round 2 Version v2.36.0-rc2; changes since v2.36.0-rc1: ----------------------------------------------- Carlo Marcelo Arenas Belón (1): mingw: avoid fallback for {local,gm}time_r() Jean-Noël Avila (1): i18n: fix some badly formatted i18n strings Johannes Schindelin (10): GIT-VERSION-GEN: bump to v2.33.1 Add a function to determine whether a path is owned by the current user setup_git_directory(): add an owner check for the top-level directory Fix `GIT_CEILING_DIRECTORIES` with `C:\` and the likes Git 2.30.3 Git 2.31.2 Git 2.32.1 Git 2.33.2 Git 2.34.2 Git 2.35.2 Junio C Hamano (1): Git 2.36-rc2 Version v2.36.0-rc1; changes since v2.36.0-rc0: ----------------------------------------------- Adam Dinwoodie (2): configure.ac: fix HAVE_SYNC_FILE_RANGE definition t9902: split test to run on appropriate systems Carlo Marcelo Arenas Belón (1): git-compat-util: really support openssl as a source of entropy Fangyi Zhou (1): submodule-helper: fix usage string Josh Steadmon (1): ls-tree: `-l` should not imply recursive listing Junio C Hamano (1): Git 2.36-rc1 Martin Ågren (1): git-ls-tree.txt: fix the name of "%(objectsize:padded)" Todd Zullinger (1): doc: replace "--" with {litdd} in credential-cache/fsmonitor Victoria Dye (1): contrib/scalar: fix 'all' target in Makefile Ævar Arnfjörð Bjarmason (3): Documentation/Makefile: fix "make info" regression in dad9cd7d518 Documentation: add --batch-command to cat-file synopsis ls-tree doc: document interaction with submodules Version v2.36.0-rc0; changes since v2.35.8: ------------------------------------------- Abhradeep Chakraborty (2): amend remaining usage strings according to style guide partial-clone: add a partial-clone test case Alex Henrie (3): log: fix memory leak if --graph is passed multiple times log: add a --no-graph option switch: mention the --detach option when dying due to lack of a branch Atharva Raykar (5): submodule--helper: get remote names from any repository submodule--helper: refactor get_submodule_displaypath() submodule--helper: allow setting superprefix for init_submodule() submodule--helper: run update using child process struct submodule: move core cmd_update() logic to C Bagas Sanjaya (1): fetch-pack: parameterize message containing 'ready' keyword COGONI Guillaume (3): t/t3903-stash.sh: replace test [-d|-f] with test_path_is_* tests: allow testing if a path is truly a file or a directory tests: make the code more readable Chen Bojun (1): receive-pack: purge temporary data if no command is ready to run David Cantrell (1): completion: tab completion of filenames for 'git restore' Derrick Stolee (45): Documentation: add extensions.worktreeConfig details worktree: create init_worktree_config() config: add repo_config_set_worktree_gently() sparse-checkout: set worktree-config correctly worktree: copy sparse-checkout patterns and config on add config: make git_configset_get_string_tmp() private mailmap: change primary address for Derrick Stolee dir: force untracked cache with core.untrackedCache worktree: combine two translatable messages worktree: extract copy_filtered_worktree_config() worktree: extract copy_sparse_checkout() worktree: extract checkout_worktree() worktree: use 'worktree' over 'working tree' worktree: use 'worktree' over 'working tree' worktree: use 'worktree' over 'working tree' worktree: use 'worktree' over 'working tree' worktree: use 'worktree' over 'working tree' worktree: use 'worktree' over 'working tree' worktree: use 'worktree' over 'working tree' test-read-graph: include extra post-parse info t5318: extract helpers to lib-commit-graph.sh commit-graph: fix ordering bug in generation numbers commit-graph: start parsing generation v2 (again) commit-graph: fix generation number v2 overflow values commit-graph: declare bankruptcy on GDAT chunks index-pack: document and test the --promisor option list-objects-filter-options: create copy helper revision: put object filter into struct rev_info pack-objects: use rev.filter when possible pack-bitmap: drop filter in prepare_bitmap_walk() list-objects: consolidate traverse_commit_list[_filtered] MyFirstObjectWalk: update recommended usage bundle: parse filter capability rev-list: move --filter parsing into revision.c bundle: create filtered bundles bundle: unbundle promisor packs clone: fail gracefully when cloning filtered bundle maintenance: fix synopsis in documentation list-objects-filter: remove CL_ARG__FILTER pack-objects: move revs out of get_object_list() pack-objects: parse --filter directly into revs.filter bundle: move capabilities to end of 'verify' bundle: output hash information in 'verify' t7700: check post-condition in kept-pack test test-lib-functions: remove test_subcommand_inexact Des Preston (1): worktree: include repair cmd in usage Elia Pinto (8): test-lib.sh: Use GLIBC_TUNABLES instead of MALLOC_CHECK_ on glibc >= 2.34 t6423-merge-rename-directories.sh: use the $(...) construct attr.c: delete duplicate include builtin/gc.c: delete duplicate include builtin/sparse-checkout.c: delete duplicate include builtin/stash.c: delete duplicate include t/helper/test-run-command.c: delete duplicate include attr.h: remove duplicate struct definition Elijah Newren (32): t1011: add testcase demonstrating accidental loss of user modifications unpack-trees: fix accidental loss of user changes repo_read_index: clear SKIP_WORKTREE bit from files present in worktree Update documentation related to sparsity and the skip-worktree bit Accelerate clear_skip_worktree_from_present_files() by caching merge-ort: avoid assuming all renames detected merge-ort: fix memory leak in merge_ort_internal() merge: fix memory leaks in cmd_merge() sparse-checkout: fix a couple minor memory leaks repo-settings: fix checking for fetch.negotiationAlgorithm=default repo-settings: fix error handling for unknown values repo-settings: rename the traditional default fetch.negotiationAlgorithm show, log: provide a --remerge-diff capability log: clean unneeded objects during `log --remerge-diff` ll-merge: make callers responsible for showing warnings merge-ort: capture and print ll-merge warnings in our preferred fashion merge-ort: mark a few more conflict messages as omittable merge-ort: format messages slightly different for use in headers diff: add ability to insert additional headers for paths show, log: include conflict/warning messages in --remerge-diff headers merge-ort: mark conflict/warning messages from inner merges as omittable diff-merges: avoid history simplifications when diffing merges merge-ort: make informational messages from recursive merges clearer sparse-checkout: correct reapply's handling of options sparse-checkout: correctly set non-cone mode when expected sparse-checkout: pay attention to prefix for {set, add} sparse-checkout: error or warn when given individual files sparse-checkout: reject arguments in cone-mode that look like patterns merge-ort: fix small memory leak in detect_and_process_renames() merge-ort: fix small memory leak in unique_path() merge-ort: exclude messages from inner merges by default repo_read_index: add config to expect files outside sparse patterns Emily Shaffer (14): hook: add 'run' subcommand gc: use hook library for pre-auto-gc hook am: convert {pre,post}-applypatch to use hook.h rebase: convert pre-rebase to use hook.h am: convert applypatch-msg to use hook.h merge: convert post-merge to use hook.h hooks: convert non-worktree 'post-checkout' hook to hook library hooks: convert worktree 'post-checkout' hook to hook library send-email: use 'git hook run' for 'sendemail-validate' git-p4: use 'git hook' to run hooks commit: convert {pre-commit,prepare-commit-msg} hook to hook.h read-cache: convert post-index-change to use hook.h receive-pack: convert push-to-checkout hook to hook.h run-command: remove old run_hook_{le,ve}() hook API Fabian Stelzer (2): gpg-interface: trim CR from ssh-keygen gpg-interface/gpgsm: fix for v2.3 Glen Choo (39): fetch: use goto cleanup in cmd_fetch() fetch: skip tasks related to fetching objects fetch --negotiate-only: do not update submodules branch: move --set-upstream-to behavior to dwim_and_setup_tracking() branch: make create_branch() always create a branch branch: add a dry_run parameter to create_branch() builtin/branch: consolidate action-picking logic in cmd_branch() branch: add --recurse-submodules option for branch creation branch.c: use 'goto cleanup' in setup_tracking() to fix memory leaks stash: strip "refs/heads/" with skip_prefix checkout, clone: die if tree cannot be parsed submodule--helper: remove update-module-mode submodule--helper: reorganize code for sh to C conversion submodule--helper run-update-procedure: remove --suboid submodule--helper run-update-procedure: learn --remote submodule--helper update-clone: learn --init submodule--helper: remove ensure-core-worktree submodule update: add tests for --filter submodule--helper update-clone: check for --filter and --init t5526: introduce test helper to assert on fetches t5526: stop asserting on stderr literally t5526: create superproject commits with test helper submodule: make static functions read submodules from commits submodule: inline submodule_commits() into caller submodule: store new submodule commits oid_array in a struct submodule: extract get_fetch_task() submodule: move logic into fetch_task_create() submodule update: use die_message() submodule--helper: teach update_data more options submodule--helper: reduce logic in run_update_procedure() submodule--helper: remove forward declaration fetch: fetch unpopulated, changed submodules submodule: fix latent check_has_commit() bug branch: support more tracking modes when recursing branch: give submodule updating advice before exit branch --set-upstream-to: be consistent when advising branch: remove negative exit code branch: rework comments for future developers branch.c: simplify advice-and-die sequence Greg Hurrell (2): Documentation/config/pgp.txt: replace stray <TAB> character with <SPC> Documentation/config/pgp.txt: add missing apostrophe Han-Wen Nienhuys (27): reftable: fix OOB stack write in print functions reftable: fix resource leak in block.c error path reftable: fix resource leak blocksource.c reftable: check reftable_stack_auto_compact() return value reftable: ignore remove() return value in stack_test.c reftable: fix resource warning reftable: all xxx_free() functions accept NULL arguments reftable: order unittests by complexity reftable: drop stray printf in readwrite_test reftable: handle null refnames in reftable_ref_record_equal reftable: make reftable-record.h function signatures const correct reftable: implement record equality generically reftable: remove outdated file reftable.c reftable: make reftable_record a tagged union reftable: add print functions to the record types t1405: explictly delete reflogs for reftable t1405: mark test that checks existence as REFFILES t5312: prepare for reftable t1410: use test-tool ref-store to inspect reflogs t1410: mark bufsize boundary test as REFFILES Documentation: object_id_len goes up to 31 reftable: reject 0 object_id_len reftable: add a test that verifies that writing empty keys fails reftable: avoid writing empty keys at the block layer reftable: ensure that obj_id_len is >= 2 on writing reftable: add test for length of disambiguating prefix reftable: rename writer_stats to reftable_writer_stats Jacob Keller (1): name-rev: use generation numbers if available Jason Yundt (2): comment: fix typo gitweb: remove invalid http-equiv="content-type" Jayati Shrivastava (1): sequencer: use reverse_commit_list() helper Jaydeep Das (1): t/t0015-hash.sh: remove unnecessary '\' at line end Jaydeep P Das (1): userdiff: add builtin diff driver for kotlin language. Jean-Noël Avila (4): i18n: factorize more 'incompatible options' messages i18n: factorize "invalid value" messages i18n: remove from i18n strings that do not hold translatable parts i18n: fix some misformated placeholders in command synopsis Jeff Hostetler (30): fsmonitor: enhance existing comments, clarify trivial response handling fsmonitor-ipc: create client routines for git-fsmonitor--daemon fsmonitor: config settings are repository-specific fsmonitor: use IPC to query the builtin FSMonitor daemon fsmonitor: document builtin fsmonitor fsmonitor--daemon: add a built-in fsmonitor daemon fsmonitor--daemon: implement 'stop' and 'status' commands compat/fsmonitor/fsm-listen-win32: stub in backend for Windows compat/fsmonitor/fsm-listen-darwin: stub in backend for Darwin fsmonitor--daemon: implement 'run' command fsmonitor--daemon: implement 'start' command fsmonitor--daemon: add pathname classification fsmonitor--daemon: define token-ids fsmonitor--daemon: create token-based changed path cache compat/fsmonitor/fsm-listen-win32: implement FSMonitor backend on Windows compat/fsmonitor/fsm-listen-darwin: add MacOS header files for FSEvent compat/fsmonitor/fsm-listen-darwin: implement FSEvent listener on MacOS fsmonitor--daemon: implement handle_client callback help: include fsmonitor--daemon feature flag in version info t/helper/fsmonitor-client: create IPC client to talk to FSMonitor Daemon t7527: create test for fsmonitor--daemon t/perf: avoid copying builtin fsmonitor files into test repo t/helper/test-chmtime: skip directories on Windows t/perf/p7519: fix coding style t/perf/p7519: speed up test on Windows t/perf/p7519: add fsmonitor--daemon test cases fsmonitor--daemon: periodically truncate list of modified files fsmonitor--daemon: use a cookie file to sync with file system fsmonitor: force update index after large responses t7527: test status with untracked-cache and fsmonitor--daemon Jerry Zhang (3): git-rev-list: add --exclude-first-parent-only flag patch-id: fix antipatterns in tests patch-id: fix scan_hunk_header on diffs with 1 line of before/after Jessica Clarke (1): mem-pool: don't assume uintmax_t is aligned enough for all types Joel Holdsworth (4): git-p4: don't select shell mode using the type of the command argument git-p4: pass command arguments as lists instead of using shell git-p4: don't print shell commands as python lists git-p4: fix instantiation of CalledProcessError Johannes Schindelin (14): sparse-index: sparse index is disallowed when split index is active t1091: disable split index split-index: it really is incompatible with the sparse index git-sh-setup: remove remnant bits referring to `git-legacy-stash` add: remove support for `git-legacy-stash` stash: remove documentation for `stash.useBuiltin` stash: stop warning about the obsolete `stash.useBuiltin` config setting docs(diff): lose incorrect claim about `diff-files --diff-filter=A` diff.c: move the diff filter bits definitions up a bit diff-filter: be more careful when looking for negative bits scalar: accept -C and -c options before the subcommand checkout/fetch/pull/pack-objects: allow `-h` outside a repository t0012: verify that built-ins handle `-h` even without gitdir cocci: allow padding with `strbuf_addf()` John Cai (15): receive-pack.c: consolidate find header logic name-rev: deprecate --stdin in favor of --annotate-stdin name-rev.c: use strbuf_getline instead of limited size buffer builtin/reflog.c: use parse-options api for expire, delete subcommands name-rev: replace --stdin with --annotate-stdin in synopsis cat-file: rename cmdmode to transform_mode cat-file: introduce batch_mode enum to replace print_contents cat-file: add remove_timestamp helper cat-file: add --batch-command mode stash: add tests to ensure reflog --rewrite --updatref behavior reflog: libify delete reflog function and helpers stash: call reflog_delete() in reflog.c cat-file: skip expanding default format rebase: use test_commit helper in setup rebase: set REF_HEAD_DETACH in checkout_up_to_date() Jonathan Tan (6): config: make git_config_include() static config: include file if remote URL matches a glob sparse-checkout: create leading directory clone: support unusual remote ref configurations ls-files: support --recurse-submodules --stage shallow: reset commit grafts when shallow is reset Josh Steadmon (2): test-lib: unset trace2 parent envvars clone, submodule: pass partial clone filters to submodules Junio C Hamano (30): compat/qsort_s.c: avoid using potentially unaligned access fetch: help translators by reusing the same message template Start post 2.35 cycle SubmittingPatches: write problem statement in the log in the present tense CodingGuidelines: hint why we value clearly written log messages SubmittingPatches: explain why we care about log messages Name the next one 2.36 to prepare for 2.35.1 The first batch The second batch for 2.36 glossary: describe "worktree" The third batch The fourth batch The fifth batch The sixth batch The seventh batch The eighth batch rerere-train: two fixes to the use of "git show -s" am/apply: warn if we end up reading patches from terminal The ninth batch The tenth batch The eleventh batch The twelfth batch The thirteenth batch The 14th batch reset: show --no-refresh in the short-help The 15th batch The 16th batch The 17th batch CodingGuidelines: give deadline for "for (int i = 0; ..." Git 2.36-rc0 Justin Donnelly (4): git-prompt: rename `upstream` to `upstream_type` git-prompt: make upstream state indicator location consistent git-prompt: make long upstream state indicator consistent git-prompt: put upstream comments together Lessley Dennington (3): completion: address sparse-checkout issues completion: improve sparse-checkout cone mode directory completion completion: handle unusual characters for sparse-checkout Liginity Lee (1): fix typo in git-mktree.txt Marc Strapetz (4): test-lib: introduce API for verifying file mtime t7508: fix bogus mtime verification t7508: add tests capturing racy timestamp handling update-index: refresh should rewrite index in case of racy timestamps Matheus Felipe (1): config: correct "--type" option in "git config -h" output Matt Cooper (1): index-pack: clarify the breached limit Michael J Gruber (2): test-lib: declare local variables as local tests: demonstrate "show --word-diff --color-moved" regression Neeraj Singh (10): wrapper: make inclusion of Windows csprng header tightly scoped core.fsyncmethod: add writeout-only mode core.fsync: introduce granular fsync control infrastructure core.fsync: add configuration parsing core.fsync: new option to harden the index core.fsync: documentation and user-friendly aggregate options core.fsync: fix incorrect expression for default configuration trace2: add stats for fsync operations core.fsyncmethod: correctly camel-case warning message object-file: pass filename to fsync_or_die Nihal Jere (1): Documentation: git-read-tree: separate links using commas Patrick Steinhardt (24): refs: extract packed_refs_delete_refs() to allow control of transaction refs: allow passing flags when beginning transactions refs: allow skipping the reference-transaction hook refs: demonstrate excessive execution of the reference-transaction hook refs: do not execute reference-transaction hook on packing refs refs: skip hooks when deleting uncovered packed refs fetch-pack: use commit-graph when computing cutoff fetch: skip computing output width when not printing anything fetch: increase test coverage of fetches fetch: backfill tags before setting upstream fetch: control lifecycle of FETCH_HEAD in a single place fetch: report errors when backfilling tags fails refs: add interface to iterate over queued transactional updates fetch: make `--atomic` flag cover backfilling of tags fetch: make `--atomic` flag cover pruning of refs upload-pack: look up "want" lines via commit-graph fetch: avoid lookup of commits when not appending to FETCH_HEAD refs: add ability for backends to special-case reading of symbolic refs remote: read symbolic refs via `refs_read_symbolic_ref()` refs/files-backend: optimize reading of symbolic refs t5503: simplify setup of test which exercises failure of backfill repack: refactor to avoid double-negation of update-server-info repack: add config to skip updating server info core.fsync: new option to harden references Philip Oakley (2): README.md: add CodingGuidelines and a link for Translators doc: check-ignore: code-quote an exclamation mark Philippe Blain (1): pull --rebase: honor rebase.autostash when fast-forwarding Phillip Wood (29): t3701: clean up hunk splitting tests builtin add -p: fix hunk splitting rebase: factor out checkout for up to date branch t5403: refactor rebase post-checkout hook tests rebase: pass correct arguments to post-checkout hook rebase: do not remove untracked files on checkout rebase --apply: don't run post-checkout hook if there is an error reset_head(): remove action parameter reset_head(): factor out ref updates reset_head(): make default_reflog_action optional create_autostash(): remove unneeded parameter rebase: cleanup reset_head() calls reset_head(): take struct rebase_head_opts rebase --apply: fix reflog rebase --apply: set ORIG_HEAD correctly rebase -m: don't fork git checkout xdiff: fix a memory leak xdiff: handle allocation failure in patience diff xdiff: refactor a function xdiff: handle allocation failure when merging terminal: always reset terminal when reading without echo terminal: pop signal handler when terminal is restored terminal: set VMIN and VTIME in non-canonical mode add -p: disable stdin buffering when interactive.singlekey is set terminal: use flags for save_term() terminal: don't assume stdin is /dev/tty terminal: work around macos poll() bug terminal: restore settings on SIGTSTP worktree: add -z option for list subcommand René Scharfe (10): grep: use grep_or_expr() in compile_pattern_or() grep: use grep_not_expr() in compile_pattern_not() apply: use strsets to track symlinks stable-qsort: avoid using potentially unaligned access bisect--helper: report actual bisect_state() argument on error bisect--helper: release strbuf and strvec on run error bisect: document run behavior with exit codes 126 and 127 bisect--helper: double-check run command on exit code 126 and 127 parse-options: document bracketing of argh grep: fix triggering PCRE2_NO_START_OPTIMIZE workaround Robert Coup (8): fetch: fix negotiate-only error message fetch-negotiator: add specific noop initializer fetch-pack: add refetch builtin/fetch-pack: add --refetch option fetch: add --refetch option t5615-partial-clone: add test for fetch --refetch fetch: after refetch, encourage auto gc repacking docs: mention --refetch fetch option SZEDER Gábor (1): reflog: fix 'show' subcommand's argv Shaoxuan Yuan (4): builtin/diff.c: fix "git-diff" usage string typo t/lib-read-tree-m-3way: modernize style t/lib-read-tree-m-3way: indent with tabs t0001: replace "test [-d|-f]" with test_path_is_* functions Shubham Mishra (3): t0003: avoid pipes with Git on LHS t0001-t0028: avoid pipes with Git on LHS t0030-t0050: avoid pipes with Git on LHS Tao Klerks (6): t7519: avoid file to index mtime race for untracked cache t7519: populate untracked cache before test untracked-cache: write index when populating empty untracked cache t/helper/test-chmtime: update mingw to support chmtime on directories t7063: mtime-mangling instead of delays in untracked cache testing tracking branches: add advice to ambiguous refspec error Taylor Blau (15): grep: extract grep_binexp() from grep_or_expr() grep: use grep_and_expr() in compile_pattern_and() t5326: demonstrate bitmap corruption after permutation midx.c: make changing the preferred pack safe pack-revindex.c: instrument loading on-disk reverse index t5326: drop unnecessary setup t5326: extract `test_rev_exists` t5326: move tests to t/lib-bitmap.sh t/lib-bitmap.sh: parameterize tests over reverse index source midx: read `RIDX` chunk when present pack-bitmap.c: gracefully fallback after opening pack/MIDX midx: prevent writing a .bitmap without any objects CODE_OF_CONDUCT.md: update PLC members list builtin/remote.c: parse options in 'rename' builtin/remote.c: show progress when renaming remote references Teng Long (6): git-cli.txt: clarify "options first and then args" ls-tree: rename "retval" to "recurse" in "show_tree()" ls-tree: simplify nesting if/else logic in "show_tree()" ls-tree: fix "--name-only" and "--long" combined use bug ls-tree: slightly refactor `show_tree()` ls-tree: support --object-only option for "git-ls-tree" Thomas Gummerer (1): fetch --prune: exit with error if pruning fails Thomas Koutcher (1): subtree: force merge commit Todd Zullinger (2): t/lib-gpg: reload gpg components after updating trustlist t/lib-gpg: kill all gpg components, not just gpg-agent Victoria Dye (29): reset: fix validation in sparse index test reset: reorder wildcard pathspec conditions clean: integrate with sparse index checkout-index: expand sparse checkout compatibility tests checkout-index: add --ignore-skip-worktree-bits option checkout-index: integrate with sparse index update-index: add tests for sparse-checkout compatibility update-index: integrate with sparse index update-index: reduce scope of index expansion in do_reupdate sparse-index: prevent repo root from becoming sparse status: fix nested sparse directory diff in sparse index read-tree: explicitly disallow prefixes with a leading '/' read-tree: expand sparse checkout test coverage read-tree: integrate with sparse index read-tree: narrow scope of index expansion for '--prefix' read-tree: make two-way merge sparse-aware read-tree: make three-way merge sparse-aware reset: revise index refresh advice reset: introduce --[no-]refresh option to --mixed reset: replace '--quiet' with '--no-refresh' in performance advice reset: suppress '--no-refresh' advice if logging is silenced stash: make internal resets quiet and refresh index t1092: add sparse directory before cone in test repo unpack-trees: increment cache_bottom for sparse directories Revert "unpack-trees: improve performance of next_cache_entry" reset: do not make '--quiet' disable index refresh reset: remove 'reset.quiet' config option reset: remove 'reset.refresh' config option mv: refresh stat info for moved entry brian m. carlson (6): t0027: add tests for eol without text in .gitattributes docs: correct documentation about eol attribute wrapper: add a helper to generate numbers from a CSPRNG wrapper: use a CSPRNG to generate random file names doc: clarify interaction between 'eol' and text=auto block-sha1: remove use of obsolete x86 assembly Ævar Arnfjörð Bjarmason (183): cat-file tests: test bad usage cat-file tests: test messaging on bad objects/paths parse-options API: add a usage_msg_optf() cat-file docs: fix SYNOPSIS and "-h" output cat-file: move "usage" variable to cmd_cat_file() cat-file: make --batch-all-objects a CMDMODE cat-file: fix remaining usage bugs cat-file: correct and improve usage information object-name.c: don't have GET_OID_ONLY_TO_DIE imply *_QUIETLY cat-file: use GET_OID_ONLY_TO_DIE in --(textconv|filters) hook API: add a run_hooks() wrapper hook API: add a run_hooks_l() wrapper git hook run: add an --ignore-missing flag cat-file: don't whitespace-pad "(...)" in SYNOPSIS and usage output cat-file: s/_/-/ in typo'd usage_msg_optf() message compat: auto-detect if zlib has uncompress2() sequencer: don't use die_errno() on refs_resolve_ref_unsafe() failure refs API: remove "failure_errno" from refs_resolve_ref_unsafe() object-name tests: add tests for ambiguous object blind spots object-name: explicitly handle OBJ_BAD in show_ambiguous_object() object-name: explicitly handle bad tags in show_ambiguous_object() object-name: make ambiguous object output translatable object-name: show date for ambiguous tag objects object-name: iterate ambiguous objects before showing header object-name: re-use "struct strbuf" in show_ambiguous_object() perl Git.pm: don't ignore signalled failure in _cmd_close() completion tests: re-source git-completion.bash in a subshell completion: add a GIT_COMPLETION_SHOW_ALL_COMMANDS leak tests: fix a memory leak in "test-progress" helper progress.c test helper: add missing braces progress.c tests: make start/stop commands on stdin progress.c tests: test some invalid usage progress.h: format and be consistent with progress.c naming progress.c: use dereferenced "progress" variable, not "(*p_progress)" progress.c: refactor stop_progress{,_msg}() to use helpers progress API: unify stop_progress{,_msg}(), fix trace2 bug pack-bitmap-write.c: don't return without stop_progress() t0051: use "skip_all" under !MINGW in single-test file hash-object: fix a trivial leak in --path ls-remote & transport API: release "struct transport_ls_refs_options" grep.h: remove unused "regex_t regexp" from grep_opt log tests: check if grep_config() is called by "log"-like cmds grep tests: create a helper function for "BRE" or "ERE" grep tests: add missing "grep.patternType" config tests built-ins: trust the "prefix" from run_builtin() grep.c: don't pass along NULL callback value grep API: call grep_config() after grep_init() grep.h: make "grep_opt.pattern_type_option" use its enum grep.c: do "if (bool && memchr())" not "if (memchr() && bool)" grep: simplify config parsing and option parsing cache.h: remove always unused show_date_human() declaration date API: create a date.h, split from cache.h date API: provide and use a DATE_MODE_INIT date API: add basic API docs date API: add and use a date_mode_release() diff.[ch]: have diff_free() call clear_pathspec(opts.pathspec) diff.[ch]: have diff_free() free options->parseopts hook tests: test for exact "pre-push" hook input hook tests: use a modern style for "pre-push" tests git-compat-util.h: clarify GCC v.s. C99-specific in comment C99: remove hardcoded-out !HAVE_VARIADIC_MACROS code help doc: add missing "]" to "[-a|--all]" help.c: use puts() instead of printf{,_ln}() for consistency help tests: test "git" and "git help [-a|-g] spacing help.c: split up list_all_cmds_help() function help: note the option name on option incompatibility help: correct usage & behavior of "git help --all" help: error if [-a|-g|-c] and [-i|-m|-w] are combined help: add --no-[external-commands|aliases] for use with --all help: don't print "\n" before single-section output imap-send.c: use designated initializers for "struct imap_server_conf" trace2: use designated initializers for "struct tr2_tgt" trace2: use designated initializers for "struct tr2_dst" object-file: use designated initializers for "struct git_hash_algo" archive-*.c: use designated initializers for "struct archiver" userdiff.c: use designated initializers for "struct userdiff_driver" convert.c: use designated initializers for "struct stream_filter*" refspec.c: use designated initializers for "struct refspec_item" fast-import.c: use designated initializers for "partial" struct assignments object-file.c: split up declaration of unrelated variables object-file API: return "void", not "int" from hash_object_file() object-file API: add a format_object_header() function object-file API: have write_object_file() take "enum object_type" object API: correct "buf" v.s. "map" mismatch in *.c and *.h object API docs: move check_object_signature() docs to cache.h object API users + docs: check <0, not !0 with check_object_signature() object-file API: split up and simplify check_object_signature() object API: rename hash_object_file_literally() to write_*() object-file API: have hash_object_file() take "enum object_type" object-file.c: add a literal version of write_object_file_prepare() object-file API: pass an enum to read_object_with_reference() test-lib: add GIT_SAN_OPTIONS, inherit [AL]SAN_OPTIONS test-lib: correct and assert TEST_DIRECTORY overriding test-lib: make $GIT_BUILD_DIR an absolute path test-lib: add "fast_unwind_on_malloc=0" to LSAN_OPTIONS scalar Makefile: use "The default target of..." pattern Makefiles: add "shared.mak", move ".DELETE_ON_ERROR" to it Makefile: disable GNU make built-in wildcard rules Makefile: define $(LIB_H) in terms of $(FIND_SOURCE_FILES) Makefile: move ".SUFFIXES" rule to shared.mak Makefile: move $(comma), $(empty) and $(space) to shared.mak Makefile: add "$(QUIET)" boilerplate to shared.mak Makefiles: add and use wildcard "mkdir -p" template log tests: fix "abort tests early" regression in ff37a60c369 index-pack: fix memory leaks merge-base: free() allocated "struct commit **" list diff.c: free "buf" in diff_words_flush() urlmatch.c: add and use a *_release() function remote-curl.c: free memory in cmd_main() bundle: call strvec_clear() on allocated strvec transport: stop needlessly copying bundle header references submodule--helper: fix trivial leak in module_add() commit-graph: fix memory leak in misused string_list API commit-graph: stop fill_oids_from_packs() progress on error and free() lockfile API users: simplify and don't leak "path" range-diff: plug memory leak in common invocation range-diff: plug memory leak in read_patches() repository.c: free the "path cache" in repo_clear() submodule tests: test for init and update failure output submodule--helper: don't use bitfield indirection for parse_options() gettext API users: don't explicitly cast ngettext()'s "n" string-list API: change "nr" and "alloc" to "size_t" merge: don't run post-hook logic on --no-verify hooks: fix an obscure TOCTOU "did we just run a hook?" race tests: change some 'test $(git) = "x"' to test_cmp tests: use "test_stdout_line_count", not "test $(git [...] | wc -l)" read-tree tests: check "diff-files" exit code on failure diff tests: don't ignore "git diff" exit code diff tests: don't ignore "git diff" exit code in "read" loop apply tests: use "test_must_fail" instead of ad-hoc pattern merge tests: use "test_must_fail" instead of ad-hoc pattern rev-parse tests: don't ignore "git reflog" exit code notes tests: don't ignore "git" exit code diff tests: don't ignore "git rev-list" exit code rev-list tests: don't hide abort() in "test_expect_failure" gettext tests: don't ignore "test-tool regex" exit code apply tests: don't ignore "git ls-files" exit code, drop sub-shell checkout tests: don't ignore "git <cmd>" exit code rev-list simplify tests: don't ignore "git" exit code list-objects: handle NULL function pointers reflog: don't be noisy on empty reflogs builtin/submodule--helper.c: rename option struct to "opt" test-lib-functions: add and use a "test_hook" wrapper hook tests: turn exit code assertions into a loop http tests: don't rely on "hook/post-update.sample" tests: assume the hooks are disabled by default bugreport tests: tighten up "git bugreport -s hooks" test fetch+push tests: use "test_hook" and "test_when_finished" pattern gc + p4 tests: use "test_hook", remove sub-shells tests: change "cat && chmod +x" to use "test_hook" tests: change "mkdir -p && write_script" to use "test_hook" tests: use "test_hook" for misc "mkdir -p" and "chmod" cases diff.c: fix a double-free regression in a18d66cefb refs: use designated initializers for "struct ref_storage_be" refs: use designated initializers for "struct ref_iterator_vtable" misc *.c: use designated initializers for struct assignments packed-backend: remove stub BUG(...) functions refs debug: add a wrapper for "read_symbolic_ref" tests: extend "test_hook" for "rm" and "chmod -x", convert "$HOOK" proc-receive hook tests: use "test_hook" instead of "write_script" http tests: use "test_hook" for "smart" and "dumb" http tests reflog.c: indent argument lists reflog: refactor cmd_reflog() to "if" branches reflog tests: add missing "git reflog exists" tests reflog: move "usage" variables and use macros git reflog [expire|delete]: make -h output consistent with SYNOPSIS reflog exists: use parse_options() API Makefile: use ' ', not non-existing $(wspfx_SQ) ls-tree tests: add tests for --name-status ls-tree: remove commented-out code ls-tree: add missing braces to "else" arms ls-tree: use "enum object_type", not {blob,tree,commit}_type ls-tree: use "size_t", not "int" for "struct strbuf"'s "len" ls-tree: introduce struct "show_tree_data" ls-tree: introduce "--format" option ls-tree: detect and error on --name-only --name-status ls-tree: split up "fast path" callbacks hooks: fix "invoked hook" regression in a8cc5943338 reflog: convert to parse_options() API reflog [show]: display sensible -h output test-lib: have --immediate emit valid TAP on failure pack-objects: lazily set up "struct rev_info", don't leak reftable: make assignments portable to AIX xlc v12.01 Version v2.35.8; changes since v2.35.7: --------------------------------------- Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Jeff King (7): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Makefile: force -O0 when compiling with SANITIZE=leak Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (17): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present tests: avoid using `test_i18ncmp` Git 2.31.8 Git 2.32.7 Git 2.33.8 Git 2.34.8 Git 2.35.8 Junio C Hamano (1): http.c: clear the 'finished' member once we are done with it Taylor Blau (5): t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 Version v2.35.7; changes since v2.35.6: --------------------------------------- Jeff King (3): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION http: support CURLOPT_PROTOCOLS_STR Johannes Schindelin (6): attr: adjust a mismatched data type Git 2.31.7 Git 2.32.6 Git 2.33.7 Git 2.34.7 Git 2.35.7 Junio C Hamano (1): Git 2.30.8 Patrick Steinhardt (1): apply: fix writing behind newly created symbolic links Taylor Blau (3): t5619: demonstrate clone_local() with ambiguous transport clone: delay picking a transport until after get_repo_path() dir-iterator: prevent top-level symlinks without FOLLOW_SYMLINKS Version v2.35.6; changes since v2.35.5: --------------------------------------- Carlo Marcelo Arenas Belón (1): test-lib: add prerequisite for 64-bit platforms Junio C Hamano (6): Git 2.30.7 Git 2.31.6 Git 2.32.5 Git 2.33.6 Git 2.34.6 Git 2.35.6 Patrick Steinhardt (25): attr: fix overflow when upserting attribute with overly long name attr: fix out-of-bounds read with huge attribute names attr: fix integer overflow when parsing huge attribute names attr: fix out-of-bounds write when parsing huge number of attributes attr: fix out-of-bounds read with unreasonable amount of patterns attr: fix integer overflow with more than INT_MAX macros attr: harden allocation against integer overflows attr: fix silently splitting up lines longer than 2048 bytes attr: ignore attribute lines exceeding 2048 bytes attr: ignore overly large gitattributes files pretty: fix out-of-bounds write caused by integer overflow pretty: fix out-of-bounds read when left-flushing with stealing pretty: fix out-of-bounds read when parsing invalid padding format pretty: fix adding linefeed when placeholder is not expanded pretty: fix integer overflow in wrapping format utf8: fix truncated string lengths in `utf8_strnwidth()` utf8: fix returning negative string width utf8: fix overflow when returning string width utf8: fix checking for glyph width in `strbuf_utf8_replace()` utf8: refactor `strbuf_utf8_replace` to not rely on preallocated buffer pretty: restrict input lengths for padding and wrapping formats fsck: refactor `fsck_blob()` to allow for more checks fsck: pull out function to check a set of blobs fsck: move checks for gitattributes fsck: implement checks for gitattributes Version v2.35.5; changes since v2.35.4: --------------------------------------- Jeff King (2): shell: add basic tests shell: limit size of interactive commands Kevin Backhouse (1): alias.c: reject too-long cmdline strings in split_cmdline() Taylor Blau (21): builtin/clone.c: disallow `--local` clones with symlinks t/lib-submodule-update.sh: allow local submodules t/t1NNN: allow local submodules t/2NNNN: allow local submodules t/t3NNN: allow local submodules t/t4NNN: allow local submodules t/t5NNN: allow local submodules t/t6NNN: allow local submodules t/t7NNN: allow local submodules t/t9NNN: allow local submodules transport: make `protocol.file.allow` be "user" by default t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow Git 2.30.6 Git 2.31.5 Git 2.32.4 Git 2.33.5 Git 2.34.5 Git 2.35.5 Version v2.35.4; changes since v2.35.3: --------------------------------------- Carlo Marcelo Arenas Belón (5): t: regression git needs safe.directory when using sudo git-compat-util: avoid failing dir ownership checks if running privileged t0034: add negative tests and allow git init to mostly work under sudo git-compat-util: allow root to access both SUDO_UID and root owned setup: tighten ownership checks post CVE-2022-24765 Johannes Schindelin (6): Git 2.30.5 Git 2.31.4 Git 2.32.3 Git 2.33.4 Git 2.34.4 Git 2.35.4 Version v2.35.3; changes since v2.35.2: --------------------------------------- Derrick Stolee (2): t0033: add tests for safe.directory setup: opt-out of check with safe.directory=* Junio C Hamano (1): Git 2.30.4 Matheus Valadares (1): setup: fix safe.directory key not being checked Version v2.35.2; changes since v2.35.1: --------------------------------------- Carlo Marcelo Arenas Belón (1): mingw: avoid fallback for {local,gm}time_r() Johannes Schindelin (10): GIT-VERSION-GEN: bump to v2.33.1 Add a function to determine whether a path is owned by the current user setup_git_directory(): add an owner check for the top-level directory Fix `GIT_CEILING_DIRECTORIES` with `C:\` and the likes Git 2.30.3 Git 2.31.2 Git 2.32.1 Git 2.33.2 Git 2.34.2 Git 2.35.2 Version v2.35.1; changes since v2.35.0: --------------------------------------- Elijah Newren (1): sequencer, stash: fix running from worktree subdir Junio C Hamano (1): Git 2.35.1 Version v2.35.0; changes since v2.35.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5195t) Bagas Sanjaya (2): l10n: po-id for 2.35 (round 1) l10n: po-id for 2.35 (round 2) Emir SARI (1): l10n: tr: v2.35.0 round 1 Fangyi Zhou (1): l10n: zh_CN: v2.35.0 round 1 Jean-Noël Avila (1): l10n: fr: v2.35.0 round 1 Jiang Xin (3): l10n: git.pot: v2.35.0 round 1 (126 new, 142 removed) l10n: git.pot: v2.35.0 round 2 (1 new, 1 removed) l10n: batch update to fix typo in branch.c Jordi Mas (3): l10n: Update Catalan translation l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (2): checkout: avoid BUG() when hitting a broken repository Git 2.35 Jürgen Krämer (1): l10n: de.po: Fix translation for "'%s' is aliased to '%s'" Matthias Rüster (1): l10n: de.po: Update German translation Peter Krefting (2): l10n: sv.po: Fix typo l10n: sv.po: Update Swedish translation (5196t0f0u) René Scharfe (1): branch,checkout: fix --track documentation Trần Ngọc Quân (1): l10n: vi(5195t): Update for v2.35.0 round 2 Yi-Jyun Pan (2): l10n: zh_TW: v2.35.0 round 1 (1 fuzzy) l10n: zh_TW: v2.35.0 round 2 (0 untranslated) Version v2.35.0-rc2; changes since v2.35.0-rc1: ----------------------------------------------- David Aguilar (1): build: centos/RHEL 7 ships with an older gcc and zlib Johannes Schindelin (1): getcwd(mingw): handle the case when there is no cwd Josh Steadmon (1): branch,checkout: fix --track usage strings Junio C Hamano (2): Makefile: FreeBSD cannot do C99-or-below build Git 2.35-rc2 Version v2.35.0-rc1; changes since v2.35.0-rc0: ----------------------------------------------- Bagas Sanjaya (1): branch: missing space fix at line 313 Fabian Stelzer (1): t/gpg: simplify test for unknown key Han-Wen Nienhuys (1): reftable: avoid initializing structs from structs Johannes Sixt (1): t1450-fsck: exec-bit is not needed to make loose object writable Junio C Hamano (3): packfile: fix off-by-one error in decoding logic Last minute fixes before -rc1 Git 2.35-rc1 Martin Ågren (1): cache.h: drop duplicate `ensure_full_index()` declaration Matthias Aßhauer (1): lazyload: use correct calling conventions Patrick Steinhardt (1): fetch: fix deadlock when cleaning up lockfiles in async signals Randall S. Becker (1): build: NonStop ships with an older zlib Taylor Blau (1): fmt-merge-msg: prevent use-after-free with signed tags Ævar Arnfjörð Bjarmason (2): refs API: use "failure_errno", not "errno" reftable tests: avoid "int" overflow, use "uint64_t" Version v2.35.0-rc0; changes since v2.34.8: ------------------------------------------- Alex Henrie (1): pull: don't say that merge is "the default strategy" Anders Kaseorg (8): fetch: lowercase error messages receive-pack: lowercase error messages branch: lowercase error messages worktree: simplify find_shared_symref() memory ownership model fetch: protect branches checked out in all worktrees receive-pack: clean dead code from update_worktree() receive-pack: protect current branch for bare repository worktree branch: protect branches checked out in all worktrees Calvin Wan (1): protocol-v2.txt: align delim-pkt spec with usage Carlo Marcelo Arenas Belón (4): test-genzeros: allow more than 2G zeros in Windows test-lib: add prerequisite for 64-bit platforms mingw: avoid fallback for {local,gm}time_r() add -p: avoid use of undefined $key when ReadKey -> EOF Derrick Stolee (18): test-lib.sh: set GIT_TRACE2_EVENT_NESTING t/t*: remove custom GIT_TRACE2_EVENT_NESTING scalar: 'register' sets recommended config and starts maintenance scalar: 'unregister' stops background maintenance scalar: implement 'scalar list' scalar: implement the `run` command t1092: add deeper changes during a checkout unpack-trees: use traverse_path instead of name repack: respect kept objects with '--write-midx -b' repack: make '--quiet' disable progress fetch/pull: use the sparse index ls-files: add --sparse option t1092: replace 'read-cache --table' with 'ls-files --sparse' t1091/t3705: remove 'test-tool read-cache --table' test-read-cache: remove --table, --expand options sparse-checkout: fix segfault on malformed patterns sparse-checkout: fix OOM error with mixed patterns sparse-checkout: refuse to add to bad patterns Eli Schwartz (3): pretty.c: rework describe options parsing for better extensibility pretty: add tag option to %(describe) pretty: add abbrev option to %(describe) Elijah Newren (28): sequencer: avoid adding exec commands for non-commit creating commands update documentation for new zdiff3 conflictStyle name-rev: prefer shorter names over following merges sequencer: do not export GIT_DIR and GIT_WORK_TREE for 'exec' t2501: add various tests for removing the current working directory setup: introduce startup_info->original_cwd unpack-trees: refuse to remove startup_info->original_cwd unpack-trees: add special cwd handling symlinks: do not include startup_info->original_cwd in dir removal clean: do not attempt to remove startup_info->original_cwd rebase: do not attempt to remove startup_info->original_cwd stash: do not attempt to remove startup_info->original_cwd dir: avoid incidentally removing the original_cwd in remove_path() dir: new flag to remove_dir_recurse() to spare the original_cwd t2501: simplify the tests since we can now assume desired behavior sparse-checkout: pass use_stdin as a parameter instead of as a global sparse-checkout: break apart functions for sparse_checkout_(set|add) sparse-checkout: add sanity-checks on initial sparsity state sparse-checkout: disallow --no-stdin as an argument to set sparse-checkout: split out code for tweaking settings config sparse-checkout: enable `set` to initialize sparse-checkout mode sparse-checkout: enable reapply to take --[no-]{cone,sparse-index} git-sparse-checkout.txt: update to document init/set/reapply changes Documentation: clarify/correct a few sparsity related statements clone: avoid using deprecated `sparse-checkout init` sparse-checkout: remove stray trailing space merge-ort: fix bug with renormalization and rename/delete conflicts stash: do not return before restoring untracked files Enzo Matsumiya (1): pager: fix crash when pager program doesn't exist Eric Sunshine (38): worktree: stop being overly intimate with run_command() internals CodingGuidelines: document which output goes to stdout vs. stderr worktree: send "chatty" messages to stderr git-worktree.txt: add missing `-v` to synopsis for `worktree list` t/lib-pager: use sane_unset() to avoid breaking &&-chain t1010: fix unnoticed failure on Windows t1020: avoid aborting entire test script when one test fails t4202: clarify intent by creating expected content less cleverly t5516: drop unnecessary subshell and command invocation t6300: make `%(raw:size) --shell` test more robust t9107: use shell parameter expansion to avoid breaking &&-chain tests: simplify construction of large blocks of text tests: use test_write_lines() to generate line-oriented output tests: fix broken &&-chains in compound statements tests: fix broken &&-chains in `$(...)` command substitutions tests: fix broken &&-chains in `{...}` groups tests: apply modern idiom for signaling test failure tests: apply modern idiom for exiting loop upon failure tests: simplify by dropping unnecessary `for` loops t0000-t3999: detect and signal failure within loop t4000-t4999: detect and signal failure within loop t5000-t5999: detect and signal failure within loop t6000-t9999: detect and signal failure within loop t/chainlint/*.test: don't use invalid shell syntax t/chainlint/*.test: fix invalid test cases due to mixing quote types t/chainlint/*.test: generalize self-test commentary t/chainlint/one-liner: avoid overly intimate chainlint.sed knowledge t/Makefile: optimize chainlint self-test chainlint.sed: improve ?!AMP?! placement accuracy chainlint.sed: improve ?!SEMI?! placement accuracy chainlint.sed: tolerate harmless ";" at end of last line in block chainlint.sed: drop unnecessary distinction between ?!AMP?! and ?!SEMI?! chainlint.sed: drop subshell-closing ">" annotation chainlint.sed: make here-doc "<<-" operator recognition more POSIX-like chainlint.sed: don't mistake `<< word` in string as here-doc operator chainlint.sed: stop throwing away here-doc tags chainlint.sed: swallow comments consistently chainlint.sed: stop splitting "(..." into separate lines "(" and "..." Eric Wong (2): tests: disable fsync everywhere cbtree: remove broken and unused cb_unlink Fabian Stelzer (14): ssh signing: support non ssh-* keytypes ssh signing: make sign/amend test more resilient test-lib: show missing prereq summary test-lib: introduce required prereq for test runs test-lib: make BAIL_OUT() work in tests and prereq t/fmt-merge-msg: do not redirect stderr t/fmt-merge-msg: make gpgssh tests more specific ssh signing: use sigc struct to pass payload ssh signing: add key lifetime test prereqs ssh signing: make verify-commit consider key lifetime ssh signing: make git log verify key lifetime ssh signing: make verify-tag consider key lifetime ssh signing: make fmt-merge-msg consider key lifetime ssh signing: verify ssh-keygen in test prereq Glen Choo (5): t5516: add test case for pushing remote refspecs remote: move static variables into per-repository struct remote: use remote_state parameter internally remote: remove the_repository->remote_state from static methods remote: die if branch is not found in repository Greg Hurrell (1): docs: add missing colon to Documentation/config/gpg.txt Han-Wen Nienhuys (48): hash.h: provide constants for the hash IDs reftable: add LICENSE reftable: add error related functionality reftable: utility functions reftable: add blocksource, an abstraction for random access reads reftable: (de)serialization for the polymorphic record type. Provide zlib's uncompress2 from compat/zlib-compat.c reftable: reading/writing blocks reftable: a generic binary tree implementation reftable: write reftable files reftable: generic interface to tables reftable: read reftable files reftable: reftable file level tests reftable: add a heap-based priority queue for reftable records reftable: add merged table view reftable: implement refname validation reftable: implement stack, a mutable database of reftable files. reftable: add dump utility Add "test-tool dump-reftable" command. branch tests: test for errno propagating on failing read refs API: make refs_read_raw_ref() not set errno refs API: make parse_loose_ref_contents() not set errno refs: drop force_create argument of create_reflog API t1404: mark directory/file conflict tests with REFFILES show-branch: show reflog message test-ref-store: don't add newline to reflog message t1405: check for_each_reflog_ent_reverse() more thoroughly test-ref-store: tweaks to for-each-reflog-ent format refs/debug: trim trailing LF from reflog message test-ref-store: remove force-create argument for create-reflog test-ref-store: parse symbolic flag constants test-ref-store: plug memory leak in cmd_delete_refs refs: update comment. refs: introduce REF_SKIP_OID_VERIFICATION flag refs: introduce REF_SKIP_REFNAME_VERIFICATION flag t1430: remove refs using test-tool t1430: create valid symrefs using test-helper test-ref-store: print hash algorithm t5540: require REFFILES t5550: require REFFILES t7004: create separate tags for different tests t7004: use "test-tool ref-store" for reflog inspection refs: pass gitdir to packed_ref_store_create refs: print error message in debug output refs: centralize initialization of the base ref_store. reftable: fix typo in header reftable: signal overflow reftable: support preset file mode for writing Hans Krentel (hakre) (1): ci(check-whitespace): update stale file top comments Ivan Frade (2): fetch-pack: redact packfile urls in traces http-fetch: redact url on die() message Jacob Vosmaer (1): upload-pack.c: increase output buffer size James Limbouris (1): subtree: fix argument handling in check_parents Jean-Noël Avila (20): doc: fix git credential synopsis doc: split placeholders as individual tokens doc: express grammar placeholders between angle brackets doc: use only hyphens as word separators in placeholders doc: git-ls-files: express options as optional alternatives doc: use three dots for indicating repetition instead of star doc: uniformize <URL> placeholders' case doc: git-http-push: describe the refs as pattern pairs doc: git-init: clarify file modes in octal. i18n: refactor "foo and bar are mutually exclusive" i18n: refactor "%s, %s and %s are mutually exclusive" i18n: turn "options are incompatible" into "cannot be used together" i18n: standardize "cannot open" and "cannot read" i18n: tag.c factorize i18n strings i18n: factorize "--foo requires --bar" and the like i18n: factorize "no directory given for --foo" i18n: refactor "unrecognized %(foo) argument" strings i18n: factorize "--foo outside a repository" i18n: ref-filter: factorize "%(foo) atom used without %(bar) atom" i18n: turn even more messages into "cannot be used together" ones Jeff King (18): urlmatch: add underscore to URL_HOST_CHARS strbuf_addftime(): handle "%s" manually test_bitmap_hashes(): handle repository without bitmaps generate-cmdlist.sh: do not shell out to "sed" git-jump: pass "merge" arguments to ls-files t5319: corrupt more bytes of the midx checksum refs: work around gcc-11 warning with REF_HAVE_NEW fetch-pack: ignore SIGPIPE when writing to index-pack run-command: unify signal and regular logic for wait_or_whine() t7006: clean up SIGPIPE handling in trace2 tests t7006: simplify exit-code checks for sigpipe tests log: handle --decorate-refs with userformat "%d" log: load decorations with --simplify-by-decoration xdiff: drop CMP_ENV macro from xhistogram xdiff: drop xpparam_t parameter from histogram cmp_recs() xdiff: drop unused flags parameter from recs_match config.mak.dev: specify -std=gnu99 for gcc/clang doc/config: mark ssh allowedSigners example as literal Jerry Zhang (3): git-apply: add --quiet flag git-apply: add --allow-empty flag git-apply: skip threeway in add / rename cases Joel Holdsworth (9): git-p4: use with statements to close files after use in patchRCSKeywords git-p4: pre-compile RCS keyword regexes git-p4: add raw option to read_pipelines git-p4: open temporary patch file for write only git-p4: resolve RCS keywords in bytes not utf-8 git-p4: print size values in appropriate units git-p4: show progress as an integer git-p4: remove "debug" verb git-p4: remove "rollback" verb Johannes Altmanninger (1): t/perf: do not run tests in user's $SHELL Johannes Schindelin (14): test-tool genzeros: generate large amounts of data more efficiently git-compat-util: introduce more size_t helpers ci: disallow directional formatting scalar: add a README with a roadmap scalar: create a rudimentary executable scalar: start documenting the command scalar: create test infrastructure scalar: let 'unregister' handle a deleted enlistment directory gracefully scalar: implement the `clone` subcommand scalar: teach 'clone' to support the --single-branch option scalar: allow reconfiguring an existing enlistment scalar: teach 'reconfigure' to optionally handle all registered enlistments scalar: implement the `version` command tests: set GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME only when needed Johannes Sixt (2): generate-cmdlist.sh: spawn fewer processes generate-cmdlist.sh: replace for loop by printf's auto-repeat feature John Cai (2): docs: fix places that break compilation in MyFirstObjectWalk docs: add headers in MyFirstObjectWalk Jonathan Tan (2): packfile: avoid overflowing shift during decode Doc: no midx and partial clone relation Josh Steadmon (5): trace2: disable tr2_dst before warning on write errors branch: accept multiple upstream branches for tracking branch: add flags and config to inherit tracking config: require lowercase for branch.*.autosetupmerge l10n: README: call more attention to plural strings Junio C Hamano (22): for-each-ref: delay parsing of --sort=<atom> options MyFirstContribution: teach to use "format-patch --base=auto" unsetenv(3) returns int, not void init doc: --shared=0xxx does not give umask but perm bits 0th batch for early fixes A bit more regression fixes refs: document callback for reflog-ent iterators The first batch to start the current cycle revision: use C99 declaration of variable in for() loop grep: clarify what `grep.patternType=default` means flex-array: simplify compiler-specific workaround The second batch The third batch t4204 is not sanitizer clean at all format-patch: mark rev_info with UNLEAK merge: allow to pretend a merge is made into a different branch The fourth batch The fifth batch SubmittingPatchs: clarify choice of base and testing The sixth batch The seventh batch Git 2.35-rc0 Kashav Madan (1): help: make auto-correction prompt more consistent Lessley Dennington (7): git: ensure correct git directory setup with -h commit-graph: return if there is no git directory test-read-cache: set up repo after git directory repo-settings: prepare_repo_settings only in git repos diff: replace --staged with --cached in t1092 tests diff: enable and test the sparse index blame: enable and test the sparse index Lénaïc Huard (1): grep: align default colors with GNU grep ones Marc Strapetz (1): t/README: fix typo Matt Cooper (4): t1051: introduce a smudge filter test for extremely large files odb: teach read_blob_entry to use size_t odb: guard against data loss checking out a huge file clean/smudge: allow clean filters to process extremely large files Matthew John Cheetham (1): scalar: implement the `delete` command Mugdha Pattnaik (1): submodule: absorb git dir instead of dying on deinit Neeraj Singh (2): tmp-objdir: new API for creating temporary writable databases tmp-objdir: disable ref updates when replacing the primary odb Philip Oakley (3): repack.c: LLP64 compatibility, upcast unity for left shift diffcore-delta.c: LLP64 compatibility, upcast unity for left shift object-file.c: LLP64 compatibility, upcast unity for left shift Phillip Wood (19): diff histogram: intern strings xdiff: avoid unnecessary memory allocations xdiff: simplify comparison xdiff: implement a zealous diff3, or "zdiff3" diff --color-moved: add perf tests diff --color-moved: clear all flags on blocks that are too short diff --color-moved: factor out function diff --color-moved: rewind when discarding pmb diff --color-moved=zebra: fix alternate coloring diff --color-moved: avoid false short line matches and bad zebra coloring diff: simplify allow-indentation-change delta calculation diff --color-moved-ws=allow-indentation-change: simplify and optimize diff --color-moved: call comparison function directly diff --color-moved: unify moved block growth functions diff --color-moved: shrink potential moved blocks as we go diff --color-moved: stop clearing potential moved blocks diff --color-moved-ws=allow-indentation-change: improve hash lookups diff: use designated initializers for emitted_diff_symbol diff --color-moved: intern strings René Scharfe (6): mergesort: avoid left shift overflow log: let --invert-grep only invert --grep t4202: fix patternType setting in --invert-grep test daemon: plug memory leak on overlong path grep/pcre2: use PCRE2_UTF even with ASCII patterns grep/pcre2: factor out literal variable Robert Estelle (3): color: add missing GIT_COLOR_* white/black constants color: support "default" to restore fg/bg color color: allow colors to be prefixed with "reset" Robin Jarry (1): receive-pack: ignore SIGPIPE while reporting status to client Sergey Organov (2): stash: implement '--staged' option for 'push' and 'save' stash: get rid of unused argument in stash_staged() Taylor Blau (10): midx.c: clean up chunkfile after reading the MIDX midx.c: don't leak MIDX from verify_midx_file t/helper/test-read-midx.c: free MIDX within read_midx_file() builtin/pack-objects.c: don't leak memory via arguments builtin/repack.c: avoid leaking child arguments builtin/multi-pack-index.c: don't leak concatenated options midx.c: write MIDX filenames to strbuf pack-bitmap.c: don't leak type-level bitmaps pack-bitmap.c: more aggressively free in free_bitmap_index() packfile: make `close_pack_revindex()` static Teng Long (1): midx: fix a formatting issue in "multi-pack-index.txt" Thiago Perrotta (2): send-email: programmatically generate bash completions send-email docs: add format-patch options Thomas Weißschuh (1): var: add GIT_DEFAULT_BRANCH variable Victoria Dye (12): reset: rename is_missing to !is_in_reset_tree reset: preserve skip-worktree bit in mixed reset sparse-index: update command for expand/collapse test test-read-cache.c: prepare_repo_settings after config init sparse-index: avoid unnecessary cache tree clearing sparse-index: add ensure_correct_sparsity function sparse-index: update do_read_index to ensure correct sparsity reset: expand test coverage for sparse checkouts reset: integrate with sparse index reset: make sparse-aware (except --mixed) reset: make --mixed sparse-aware unpack-trees: improve performance of next_cache_entry William Sprent (1): fast-export: fix surprising behavior with --first-parent Yoichi Nakayama (1): completion: add human and auto: date format brian m. carlson (1): git-compat-util: add a test balloon for C99 support Ævar Arnfjörð Bjarmason (86): refs API: add a version of refs_resolve_ref_unsafe() with "errno" refs API: make refs_rename_ref_available() static reflog tests: add --updateref tests refs/files: remove "name exist?" check in lock_ref_oid_basic() refs API: remove refs_read_ref_full() wrapper refs API: make resolve_gitlink_ref() not set errno refs API: make loose_fill_ref_dir() not set errno refs API: make files_copy_or_rename_ref() et al not set errno refs API: ignore errno in worktree.c's add_head_info() refs API: ignore errno in worktree.c's find_shared_symref() refs tests: ignore ignore errno in test-ref-store helper refs API: make refs_resolve_refdup() not set errno refs API: make refs_ref_exists() not set errno refs API: make resolve_ref_unsafe() not set errno refs API: make expand_ref() & repo_dwim_log() not set errno refs API: don't expose "errno" in run_transaction_hook() refs API: post-migration API renaming [1/2] refs API: post-migration API renaming [2/2] Makefile: move git-SCRIPT-DEFINES adjacent to $(SCRIPT_DEFINES) Makefile: remove $(GIT_VERSION) from $(SCRIPT_DEFINES) Makefile: remove $(NO_CURL) from $(SCRIPT_DEFINES) git-instaweb: unconditionally assume that gitweb is mod_perl capable git-sh-setup: remove unused sane_egrep() function git-sh-setup: remove "sane_grep", it's not needed anymore leak tests: mark a read-tree test as passing SANITIZE=leak leak tests: mark "sort" test as passing SANITIZE=leak leak tests: mark most gettext tests as passing with SANITIZE=leak leak tests: mark some misc tests as passing with SANITIZE=leak leak tests: mark some rev-list tests as passing with SANITIZE=leak leak tests: mark some rev-parse tests as passing with SANITIZE=leak leak tests: mark some update-index tests as passing with SANITIZE=leak leak tests: mark some notes tests as passing with SANITIZE=leak leak tests: mark some apply tests as passing with SANITIZE=leak leak tests: mark some diff tests as passing with SANITIZE=leak leak tests: mark some add tests as passing with SANITIZE=leak leak tests: mark some clone tests as passing with SANITIZE=leak leak tests: mark some status tests as passing with SANITIZE=leak leak tests: mark some config tests as passing with SANITIZE=leak leak tests: mark some fast-import tests as passing with SANITIZE=leak command-list.txt: sort with "LC_ALL=C sort" generate-cmdlist.sh: trivial whitespace change generate-cmdlist.sh: don't call get_categories() from category_list() generate-cmdlist.sh: run "grep | sort", not "sort | grep" generate-cmdlist.sh: stop sorting category lines generate-cmdlist.sh: replace "grep' invocation with a shell version generate-cmdlist.sh: don't parse command-list.txt thrice parse-options.c: use "enum parse_opt_result" for parse_nodash_opt() checkout: fix "branch info" memory leaks CI: remove Travis CI support CI: use shorter names that fit in UX tooltips CI: rename the "Linux32" job to lower-case "linux32" CI: use "$runs_on_pool", not "$jobname" to select packages & config CI: don't run "make test" twice in one job upload-archive: use regular "struct child_process" pattern run-command API users: use strvec_pushv(), not argv assignment run-command tests: use strvec_pushv(), not argv assignment run-command API users: use strvec_pushl(), not argv construction run-command API users: use strvec_push(), not argv construction run-command API: remove "argv" member, always use "args" difftool: use "env_array" to simplify memory management run-command API: remove "env" member, always use "env_array" common-main.c: call exit(), don't return pack-objects: use BUG(...) not die("BUG: ...") strbuf.h: use BUG(...) not die("BUG: ...") pathspec: use BUG(...) not die("BUG:%s:%d....", <file>, <line>) object.c: use BUG(...) no die("BUG: ...") in lookup_object_by_type() usage.c: add a die_message() routine usage.c API users: use die_message() for "fatal :" + exit 128 usage.c API users: use die_message() for error() + exit 128 gc: return from cmd_gc(), don't call exit() usage.c + gc: add and use a die_message_errno() config API: use get_error_routine(), not vreportf() pull, fetch: fix segfault in --set-upstream option stash: don't show "git stash push" usage on bad "git stash" usage reflog delete: narrow scope of "cmd" passed to count_reflog_ent() reflog expire: narrow scope of "cb" in cmd_reflog_expire() reflog: change one->many worktree->refnames to use a string_list reflog expire: use "switch" over enum values reflog expire: refactor & use "tip_commit" only for UE_NORMAL reflog expire: don't use lookup_commit_reference_gently() reflog: reduce scope of "struct rev_info" refs files-backend: assume cb->newlog if !EXPIRE_REFLOGS_DRY_RUN reflog + refs-backend: move "verbose" out of the backend Makefile: correct the dependency graph of hook-list.h Makefile: move -DPAGER_ENV from BASIC_CFLAGS to EXTRA_CPPFLAGS Makefile: don't invoke msgfmt with --statistics Øystein Walle (2): status: count stash entries in separate function status: print stash info with --porcelain=v2 --show-stash 徐沛文 (Aleen) (3): doc: git-format-patch: describe the option --always am: support --empty=<option> to handle empty patches am: support --allow-empty to record specific empty patches Version v2.34.8; changes since v2.34.7: --------------------------------------- Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Jeff King (6): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (16): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present tests: avoid using `test_i18ncmp` Git 2.31.8 Git 2.32.7 Git 2.33.8 Git 2.34.8 Junio C Hamano (1): http.c: clear the 'finished' member once we are done with it Taylor Blau (5): t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 Version v2.34.7; changes since v2.34.6: --------------------------------------- Jeff King (3): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION http: support CURLOPT_PROTOCOLS_STR Johannes Schindelin (5): attr: adjust a mismatched data type Git 2.31.7 Git 2.32.6 Git 2.33.7 Git 2.34.7 Junio C Hamano (1): Git 2.30.8 Patrick Steinhardt (1): apply: fix writing behind newly created symbolic links Taylor Blau (3): t5619: demonstrate clone_local() with ambiguous transport clone: delay picking a transport until after get_repo_path() dir-iterator: prevent top-level symlinks without FOLLOW_SYMLINKS Version v2.34.6; changes since v2.34.5: --------------------------------------- Carlo Marcelo Arenas Belón (1): test-lib: add prerequisite for 64-bit platforms Junio C Hamano (5): Git 2.30.7 Git 2.31.6 Git 2.32.5 Git 2.33.6 Git 2.34.6 Patrick Steinhardt (25): attr: fix overflow when upserting attribute with overly long name attr: fix out-of-bounds read with huge attribute names attr: fix integer overflow when parsing huge attribute names attr: fix out-of-bounds write when parsing huge number of attributes attr: fix out-of-bounds read with unreasonable amount of patterns attr: fix integer overflow with more than INT_MAX macros attr: harden allocation against integer overflows attr: fix silently splitting up lines longer than 2048 bytes attr: ignore attribute lines exceeding 2048 bytes attr: ignore overly large gitattributes files pretty: fix out-of-bounds write caused by integer overflow pretty: fix out-of-bounds read when left-flushing with stealing pretty: fix out-of-bounds read when parsing invalid padding format pretty: fix adding linefeed when placeholder is not expanded pretty: fix integer overflow in wrapping format utf8: fix truncated string lengths in `utf8_strnwidth()` utf8: fix returning negative string width utf8: fix overflow when returning string width utf8: fix checking for glyph width in `strbuf_utf8_replace()` utf8: refactor `strbuf_utf8_replace` to not rely on preallocated buffer pretty: restrict input lengths for padding and wrapping formats fsck: refactor `fsck_blob()` to allow for more checks fsck: pull out function to check a set of blobs fsck: move checks for gitattributes fsck: implement checks for gitattributes Version v2.34.5; changes since v2.34.4: --------------------------------------- Jeff King (2): shell: add basic tests shell: limit size of interactive commands Kevin Backhouse (1): alias.c: reject too-long cmdline strings in split_cmdline() Taylor Blau (18): builtin/clone.c: disallow `--local` clones with symlinks t/lib-submodule-update.sh: allow local submodules t/t1NNN: allow local submodules t/2NNNN: allow local submodules t/t3NNN: allow local submodules t/t4NNN: allow local submodules t/t5NNN: allow local submodules t/t6NNN: allow local submodules t/t7NNN: allow local submodules t/t9NNN: allow local submodules transport: make `protocol.file.allow` be "user" by default t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow Git 2.30.6 Git 2.31.5 Git 2.32.4 Git 2.33.5 Git 2.34.5 Version v2.34.4; changes since v2.34.3: --------------------------------------- Carlo Marcelo Arenas Belón (5): t: regression git needs safe.directory when using sudo git-compat-util: avoid failing dir ownership checks if running privileged t0034: add negative tests and allow git init to mostly work under sudo git-compat-util: allow root to access both SUDO_UID and root owned setup: tighten ownership checks post CVE-2022-24765 Johannes Schindelin (5): Git 2.30.5 Git 2.31.4 Git 2.32.3 Git 2.33.4 Git 2.34.4 Version v2.34.3; changes since v2.34.2: --------------------------------------- Derrick Stolee (2): t0033: add tests for safe.directory setup: opt-out of check with safe.directory=* Junio C Hamano (1): Git 2.30.4 Matheus Valadares (1): setup: fix safe.directory key not being checked Version v2.34.2; changes since v2.34.1: --------------------------------------- Carlo Marcelo Arenas Belón (1): mingw: avoid fallback for {local,gm}time_r() Johannes Schindelin (9): GIT-VERSION-GEN: bump to v2.33.1 Add a function to determine whether a path is owned by the current user setup_git_directory(): add an owner check for the top-level directory Fix `GIT_CEILING_DIRECTORIES` with `C:\` and the likes Git 2.30.3 Git 2.31.2 Git 2.32.1 Git 2.33.2 Git 2.34.2 Version v2.34.1; changes since v2.34.0: --------------------------------------- Derrick Stolee (1): dir: revert "dir: select directories correctly" Erwin Villejo (1): pull: should be noop when already-up-to-date Junio C Hamano (3): Revert "grep/pcre2: fix an edge case concerning ascii patterns and UTF-8 data" Revert "editor: save and reset terminal after calling EDITOR" Git 2.34.1 Philippe Blain (1): SubmittingPatches: fix Asciidoc syntax in "GitHub CI" section Version v2.34.0; changes since v2.34.0-rc2: ------------------------------------------- Alexander Shopov (3): l10n: bg.po: Updated Bulgarian translation (5230t) l10n: bg.po: Updated Bulgarian translation (5210t) l10n: bg.po: Updated Bulgarian translation (5211t) Arusekk (3): l10n: pl: Update translation l10n: pl: 2.34.0 round 2 l10n: pl: 2.34.0 round 3 Bagas Sanjaya (3): l10n: po-id for 2.34 (round 1) l10n: po-id for 2.34 (round 2) l10n: po-id for 2.34 (round 3) Christopher Diaz Riveros (1): l10n: es: 2.34.0 round 2 Daniel Santos (3): l10n: pt_PT: update translation table l10n: pt_PT: change email l10n: pt_PT: cleaning duplicate translations (#2) Derrick Stolee (1): maintenance: disable cron on macOS Emir Sarı (3): l10n: tr: v2.34.0 round 1 l10n: tr: v2.34.0 round 2 l10n: tr: v2.34.0 round 3 Fangyi Zhou (3): l10n: zh-CN: v2.34.0 round 1 l10n: zh_CN: 2.34.0 Round 2 l10n: zh_CN: v2.34.0 round 3 Jean-Noël Avila (3): l10n: fr v2.34.0 rnd1 l10n: fr: v2.34.0 round 2 l10n: fr: v2.34.0 rnd 3 Jeff King (1): t/lib-gpg: avoid broken versions of ssh-keygen Jiang Xin (5): l10n: git.pot: v2.34.0 round 1 (134 new, 154 removed) l10n: git.pot: v2.34.0 round 2 (3 new, 3 removed) l10n: git.pot: v2.34.0 round 3 (1 new) l10n: ko: fix typos found by git-po-helper l10n: it: fix typos found by git-po-helper Johannes Schindelin (1): simple-ipc: work around issues with Cygwin's Unix socket emulation Jordi Mas (3): l10n: Update Catalan translation l10n: Update Catalan translation l10n: Update Catalan translation Josh Steadmon (1): trace2: increment event format version Junio C Hamano (4): pull: --ff-only should make it a noop when already-up-to-date A few hotfixes Revert "connected: do not sort input revisions" Git 2.34 Matthias Rüster (1): l10n: de.po: Update German translation for Git v2.34.0 Peter Krefting (3): l10n: sv.po: Fix git-po-helper breakage l10n: sv.po: Update Swedish translation (5210t0f0u) l10n: sv.po: Update Swedish translation (5211t0f0) Trần Ngọc Quân (2): l10n: vi(5210t): Translation for v2.34.0 rd2 l10n: vi(5211t): Translation for v2.34.0 rd3 Yi-Jyun Pan (2): l10n: zh_TW.po: v2.34.0 round 2 (0 untranslated) l10n: zh_TW.po: v2.34.0 round 3 (0 untranslated) Ævar Arnfjörð Bjarmason (2): object-file: fix SEGV on free() regression in v2.34.0-rc2 object-file: free(*contents) only in read_loose_object() caller Version v2.34.0-rc2; changes since v2.34.0-rc1: ----------------------------------------------- Adam Dinwoodie (1): t/lib-git.sh: fix ACL-related permissions failure Alex Riesen (2): pull: honor --no-verify and do not call the commit-msg hook Document positive variant of commit and merge option "--no-verify" Junio C Hamano (2): A few fixes before -rc2 Git 2.34-rc2 Robin Dupret (1): http-backend: remove a duplicated code branch Victoria Dye (1): async_die_is_recursing: work around GCC v11.x issue on Fedora Ævar Arnfjörð Bjarmason (1): parse-options.[ch]: revert use of "enum" for parse_options() Version v2.34.0-rc1; changes since v2.34.0-rc0: ----------------------------------------------- Derrick Stolee (1): dir: fix directory-matching bug Glen Choo (3): fsck: verify commit graph when implicitly enabled fsck: verify multi-pack-index when implictly enabled gc: perform incremental repack when implictly enabled Hamza Mahfooz (3): grep: refactor next_match() and match_one_pattern() for external use pretty: colorize pattern matches in commit messages grep/pcre2: fix an edge case concerning ascii patterns and UTF-8 data Jeff King (1): t5310: drop lib-bundle.sh include Jiang Xin (1): i18n: fix typos found during l10n for git 2.34.0 Junio C Hamano (3): format-patch (doc): clarify --base=auto A few more topics before -rc1 Git 2.34-rc1 Phillip Wood (1): rebase -i: fix rewording with --committer-date-is-author-date René Scharfe (2): gpg-interface: handle missing " with " gracefully in parse_ssh_output() gpg-interface: avoid buffer overrun in parse_ssh_output() Ævar Arnfjörð Bjarmason (3): commit-graph tests: fix error-hiding graph_git_two_modes() helper commit-graph tests: fix another graph_git_two_modes() helper commit-graph: don't consider "replace" objects with "verify" Version v2.34.0-rc0; changes since v2.33.8: ------------------------------------------- Atharva Raykar (11): submodule--helper: introduce add-config subcommand submodule--helper: add options for compute_submodule_clone_url() submodule--helper: refactor resolve_relative_url() helper submodule--helper: remove repeated code in sync_submodule() dir: libify and export helper functions from clone.c submodule--helper: convert the bulk of cmd_add() to C submodule--helper: remove add-clone subcommand submodule--helper: remove add-config subcommand submodule--helper: remove resolve-relative-url subcommand submodule--helper: rename compute_submodule_clone_url() submodule--helper: run update procedures from C Azeem Bande-Ali (1): help.c: help.autocorrect=prompt waits for user action Bagas Sanjaya (7): make: add INSTALL_STRIP option variable ls-files: use imperative mood for -X and -z option description difftool: fix word spacing in the usage strings blame: describe default output format bisect--helper: add space between colon and following sentence blame: document --color-* options archive: describe compression level option Ben Boeckel (2): advice: add enum variants for missing advice variables advice: remove read uses of most global `advice_` variables Carlo Marcelo Arenas Belón (11): win32: allow building with pedantic mode enabled developer: enable pedantic by default t0301: fixes for windows compatibility credential-cache: check for windows specific errors git-compat-util: include declaration for unix sockets in windows simple-ipc: move definition of ipc_active_state outside of ifdef lazyload.h: use an even more generic function pointer than FARPROC Makefile: restrict -Wpedantic and -Wno-pedantic-ms-format better terminal: teach git how to save/restore its terminal settings editor: save and reset terminal after calling EDITOR wrapper: remove xunsetenv() David Aguilar (5): difftool: create a tmpdir path without repeated slashes difftool: refactor dir-diff to write files using helper functions difftool: remove an unnecessary call to strbuf_release() difftool: add a missing space to the run_dir_diff() comments mergetools/xxdiff: prevent segfaults from stopping difftool David Turner (3): t4060: remove unused variable diff --submodule=diff: do not fail on ever-initialied deleted submodules diff --submodule=diff: don't print failure message twice Derrick Stolee (34): t1092: test merge conflicts outside cone add: allow operating on a sparse-only index pathspec: stop calling ensure_full_index add: ignore outside the sparse-checkout in refresh() add: remove ensure_full_index() with --renormalize t7519: rewrite sparse index test sparse-index: silently return when not using cone-mode patterns unpack-trees: fix nested sparse-dir search sparse-index: silently return when cache tree fails sparse-index: use WRITE_TREE_MISSING_OK sparse-checkout: create helper methods attr: be careful about sparse directories sparse-index: add SPARSE_INDEX_MEMORY_ONLY flag sparse-checkout: clear tracked sparse dirs diff: ignore sparse paths in diffstat merge: make sparse-aware with ORT merge-ort: expand only for out-of-cone conflicts t1092: add cherry-pick, rebase tests sequencer: ensure full index if not ORT strategy sparse-index: integrate with cherry-pick and rebase t/perf/run: fix bin-wrappers computation t3705: test that 'sparse_entry' is unstaged t1092: behavior for adding sparse files dir: select directories correctly dir: fix pattern matching on dirs add: fail when adding an untracked sparse file add: skip tracked paths outside sparse-checkout cone add: implement the --sparse option add: update --chmod to skip sparse paths add: update --renormalize to skip sparse paths rm: add --sparse option rm: skip sparse paths with missing SKIP_WORKTREE mv: refuse to move sparse paths advice: update message to suggest '--sparse' Elijah Newren (23): merge-ort: rename str{map,intmap,set}_func() diffcore-rename: use a mem_pool for exact rename detection's hashmap merge-ort: add pool_alloc, pool_calloc, and pool_strndup wrappers merge-ort: set up a memory pool merge-ort: switch our strmaps over to using memory pools diffcore-rename, merge-ort: add wrapper functions for filepair alloc/dealloc merge-ort: store filepairs and filespecs in our mem_pool merge-ort: reuse path strings in pool_alloc_filespec merge-ort: remove compile-time ability to turn off usage of memory pools Change default merge backend from recursive to ort Update docs for change of default merge backend tests: remove leftover untracked files t2500: add various tests for nuking untracked files checkout, read-tree: fix leak of unpack_trees_options.dir read-tree, merge-recursive: overwrite ignored files by default unpack-trees: introduce preserve_ignored to unpack_trees_options unpack-trees: make dir an internal-only struct Remove ignored files by default when they are in the way Change unpack_trees' 'reset' flag into an enum unpack-trees: avoid nuking untracked dir in way of unmerged file unpack-trees: avoid nuking untracked dir in way of locally deleted file Comment important codepaths regarding nuking untracked files/dirs Documentation: call out commands that nuke untracked files/directories Emily Shaffer (3): tr2: make process info collection platform-generic tr2: log parent process name hook.c: add a hook_exists() wrapper and use it in bugreport.c Eric Wong (1): doc/technical: update note about core.multiPackIndex Fabian Stelzer (11): ssh signing: preliminary refactoring and clean-up ssh signing: add test prereqs ssh signing: add ssh key format and signing code ssh signing: retrieve a default key from ssh-agent ssh signing: provide a textual signing_key_id ssh signing: verify signatures using ssh-keygen ssh signing: duplicate t7510 tests for commits ssh signing: tests for logs, tags & push certs ssh signing: test that gpg fails for unknown keys ssh signing: fmt-merge-msg tests & config parse ssh signing: clarify trustlevel usage in docs Glen Choo (1): MyFirstContribution: Document --range-diff option when writing v2 Greg Hurrell (1): gitweb: use HEAD as secondary sort key in git_get_heads_list() Han-Wen Nienhuys (14): t6050: use git-update-ref rather than filesystem access t1503: mark symlink test as REFFILES t6120: use git-update-ref rather than filesystem access t3320: use git-symbolic-ref rather than filesystem access t2402: use ref-store test helper to create broken symlink t1405: use 'git reflog exists' to check reflog existence t1405: mark test for 'git pack-refs' as REFFILES t1410: mark test as REFFILES t7064: use update-ref -d to remove upstream branch t6500: use "ls -1" to snapshot ref database state t6001: avoid direct file system access refs: remove EINVAL errno output from specification of read_raw_ref_fn refs/files-backend: stop setting errno from lock_ref_oid_basic refs: make errno output explicit for read_raw_ref_fn Jacob Vosmaer (2): pkt-line: add stdio packet write functions upload-pack: use stdio in send_ref callbacks Jeff Hostetler (7): trace2: add trace2_child_ready() to report on background children simple-ipc: preparations for supporting binary messages. simple-ipc/ipc-win32: add trace2 debugging simple-ipc/ipc-win32: add Windows ACL to named pipe run-command: create start_bg_command t/helper/simple-ipc: convert test-simple-ipc to use start_bg_command t/perf/perf-lib.sh: remove test_times.* at the end test_perf_() Jeff King (58): http: drop support for curl < 7.11.1 http: drop support for curl < 7.16.0 http: drop support for curl < 7.19.4 refs: drop unused "flags" parameter to lock_ref_oid_basic() t0410: disable GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP t5310: disable GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP pack-bitmap: drop repository argument from prepare_midx_bitmap_git() pack-bitmap: drop bitmap_index argument from try_partial_reuse() t5551: test v2-to-v0 http protocol fallback http-backend: handle HTTP_GIT_PROTOCOL CGI variable docs/http-backend: mention v2 protocol docs/git: discuss server-side config for GIT_PROTOCOL docs/protocol-v2: point readers transport config discussion difftool: prepare "diff" cmdline in cmd_difftool() serve: rename is_command() to parse_command() serve: return capability "value" from get_capability() serve: add "receive" method for v2 capabilities table serve: provide "receive" function for object-format capability serve: provide "receive" function for session-id capability serve: drop "keys" strvec ls-refs: ignore very long ref-prefix counts docs/protocol-v2: clarify some ls-refs ref-prefix details serve: reject bogus v2 "command=ls-refs=foo" serve: reject commands used as capabilities ls-refs: reject unknown arguments grep: stop modifying buffer in strip_timestamp grep: stop modifying buffer in show_line() grep: stop modifying buffer in grep_source_1() grep: mark "haystack" buffers as const grep: store grep_source buffer as const t7900: clean up some more broken refs t5516: don't use HEAD ref for invalid ref-deletion tests t5600: provide detached HEAD for corruption failures t5312: drop "verbose" helper t5312: create bogus ref as necessary t5312: test non-destructive repack t5312: be more assertive about command failure refs-internal.h: move DO_FOR_EACH_* flags next to each other refs-internal.h: reorganize DO_FOR_EACH_* flag documentation refs: add DO_FOR_EACH_OMIT_DANGLING_SYMREFS flag refs: omit dangling symrefs when using GIT_REF_PARANOIA refs: turn on GIT_REF_PARANOIA by default repack, prune: drop GIT_REF_PARANOIA settings ref-filter: stop setting FILTER_REFS_INCLUDE_BROKEN ref-filter: drop broken-ref code entirely refs: drop "broken" flag from for_each_fullref_in() test-read-midx: fix leak of bitmap_index struct t1006: clean up broken objects cat-file: mention --unordered along with --batch-all-objects cat-file: disable refs/replace with --batch-all-objects cat-file: split ordered/unordered batch-all-objects callbacks cat-file: use packed_object_info() for --batch-all-objects gpg-interface: fix leak of "line" in parse_ssh_output() gpg-interface: fix leak of strbufs in get_ssh_key_fingerprint() send-pack: complain about "expecting report" with --helper-status transport-helper: recognize "expecting report" error from send-pack submodule: drop unused sm_name parameter from append_fetch_remotes() Documentation/Makefile: fix lint-docs mkdir dependency Jiang Xin (1): ci: new github-action for git-l10n code review Johannes Altmanninger (4): Documentation/git-status: remove impossible porcelain status DR and DC Documentation/diff-format: state in which cases porcelain status is T Documentation/git-status: document porcelain status T (typechange) Documentation/git-status: mention how to detect copies Johannes Schindelin (23): tests: exercise the RUNTIME_PREFIX feature expand_user_path(): remove stale part of the comment expand_user_path(): clarify the role of the `real_home` parameter Use a better name for the function interpolating paths interpolate_path(): allow specifying paths relative to the runtime prefix t5520: do not use `pull.rebase=preserve` remote: warn about unhandled branch.<name>.rebase values tests: stop testing `git rebase --preserve-merges` pull: remove support for `--rebase=preserve` rebase: drop support for `--preserve-merges` git-svn: drop support for `--preserve-merges` rebase: drop the internal `rebase--interactive` command rebase: remove obsolete code comment rebase: stop mentioning the -p option in comments rebase: remove a no-longer-used function sequencer: restrict scope of a formerly public function commit-graph: when closing the graph, also release the slab pull: release packs before fetching run-command: prettify the `RUN_COMMAND_*` flags run-command: offer to close the object store before running run_auto_maintenance(): implicitly close the object store Close object store closer to spawning child processes ci(windows): ensure that we do not pick up random executables Johannes Sixt (8): lazyload.h: fix warnings about mismatching function pointer types t4034/cpp: actually test that operator tokens are not split t4034: add tests showing problematic cpp tokenizations userdiff-cpp: tighten word regex userdiff-cpp: prepare test cases with yet unsupported features userdiff-cpp: permit the digit-separating single-quote in numbers userdiff-cpp: learn the C++ spaceship operator userdiff-cpp: back out the digit-separators in numbers Jonathan Tan (19): submodule: lazily add submodule ODBs as alternates grep: use submodule-ODB-as-alternate lazy-addition grep: typesafe versions of grep_source_init grep: read submodule entry with explicit repo grep: allocate subrepos on heap grep: add repository to OID grep sources submodule-config: pass repo upon blob config read t7814: show lack of alternate ODB-adding submodule: remove unnecessary unabsorbed fallback repository: support unabsorbed in repo_submodule_init revision: remove "submodule" from opt struct submodule: extract path to submodule gitdir func refs: plumb repo into ref stores refs: teach arbitrary repo support to iterators refs: peeling non-the_repository iterators is BUG merge-{ort,recursive}: remove add_submodule_odb() object-file: only register submodule ODB if needed submodule: pass repo to check_has_commit() submodule: trace adding submodule ODB as alternate Josh Steadmon (1): sequencer: advise if skipping cherry-picked commit Junio C Hamano (22): expand_user_path: allow in-flight topics to keep using the old name bisect: do not run show-branch just to show the current commit bisect: simplify return code from bisect_checkout() userdiff: comment on the builtin patterns The first batch post 2.33 The second batch The third batch The fourth batch The fifth batch The sixth batch The seventh batch The eighth batch The ninth batch The tenth batch The eleventh batch Twelfth batch signature-format.txt: explain and illustrate multi-line headers Thirteenth batch The fourteenth batch branch (doc): -m/-c copies config and reflog The fifteenth batch Git 2.34-rc0 Kaartic Sivaraam (1): submodule--helper: fix incorrect newlines in an error message Lénaïc Huard (4): cache.h: Introduce a generic "xdg_config_home_for(…)" function maintenance: `git maintenance run` learned `--scheduler=<scheduler>` maintenance: add support for systemd timers on Linux maintenance: fix test t7900-maintenance.sh Mahi Kolla (1): clone: set submodule.recurse=true if submodule.stickyRecursiveClone enabled Martin Ågren (5): config.txt: fix typo git-multi-pack-index.txt: change "folder" to "directory" gitignore.txt: change "folder" to "directory" gitweb.txt: change "folder" to "directory" git-bundle.txt: add missing words and punctuation Matheus Tavares (2): grep: demonstrate bug with textconv attributes and submodules add, rm, mv: fix bug that prevents the update of non-sparse dirs Matthias Aßhauer (1): help: make sure local html page exists before calling external processes Miriam Rubio (3): t6030-bisect-porcelain: add tests to control bisect run exit cases t6030-bisect-porcelain: add test for bisect visualize bisect--helper: retire `--bisect-next-check` subcommand Orgad Shaneh (1): doc: fix capitalization in "git status --porcelain=v2" description Patrick Steinhardt (15): fetch-pack: speed up loading of refs via commit graph revision: separate walk and unsorted flags connected: do not sort input revisions revision: stop retrieving reference twice commit-graph: split out function to search commit position revision: avoid hitting packfiles when commits are in commit-graph ls-refs: reuse buffer when sending refs fetch: skip formatting updated refs with `--quiet` fetch: speed up lookup of want refs via commit-graph fetch: avoid unpacking headers in object existence check connected: refactor iterator to return next object ID directly fetch-pack: optimize loading of refs via commit graph fetch: refactor fetch refs to be more extendable fetch: merge fetching and consuming refs fetch: avoid second connectivity check if we already have all objects Philippe Blain (3): test-lib-functions: use 'TEST_SHELL_PATH' in 'test_pause' test-lib-functions: optionally keep HOME, TERM and SHELL in 'test_pause' test-lib-functions: keep user's debugger config files and TERM in 'debug' Phillip Wood (14): t3407: run tests in $TEST_DIRECTORY t3407: use test_commit t3407: use test_cmp_rev t3407: rename a variable t3407: use test_path_is_missing t3407: strengthen rebase --abort tests t3407: rework rebase --quit tests rebase: use our standard error return value rebase: use lookup_commit_reference_by_name() rebase: dereference tags sequencer.c: factor out a function rebase: fix todo-list rereading sparse index: fix use-after-free bug in cache_tree_verify() t1092: run "rebase --apply" without "-q" in testing Pranit Bauva (2): run-command: make `exists_in_PATH()` non-static bisect--helper: reimplement `bisect_visualize()` shell function in C René Scharfe (24): merge-recursive: use fspathcmp() in path_hashmap_cmp() index-pack: use xopen in init_thread oidset: make oidset_size() an inline function midx: inline nth_midxed_pack_entry() packfile: convert mark_bad_packed_object() to object_id packfile: convert has_packed_and_bad() to object_id packfile: use oidset for bad objects packfile: release bad_objects in close_pack() test-mergesort: use strbuf_getline() test-mergesort: add sort subcommand test-mergesort: add test subcommand test-mergesort: add generate subcommand test-mergesort: add unriffle mode test-mergesort: add unriffle_skewed mode p0071: measure sorting of already sorted and reversed files p0071: test performance of llist_mergesort() mergesort: use ranks stack p3400: stop using tac(1) t3905: show failure to ignore sub-repo read-cache: add verify_path_internal() read-cache: let verify_path() reject trailing dir separators again test-mergesort: use repeatable random numbers perf: disable automatic housekeeping add: don't write objects with --dry-run Robert Estelle (1): completion: fix incorrect bash/zsh string equality check SZEDER Gábor (9): t1600-index: remove unnecessary redirection t1600-index: don't run git commands upstream of a pipe t1600-index: disable GIT_TEST_SPLIT_INDEX read-cache: look for shared index files next to the index, too tests: disable GIT_TEST_SPLIT_INDEX for sparse index tests read-cache: fix GIT_TEST_SPLIT_INDEX commit-graph: fix bogus counter in "Scanning merged commits" progress line entry: show finer-grained counter in "Filtering content" progress line command-list.txt: remove 'sparse-index' from main help Tanushree Tumane (1): bisect--helper: reimplement `bisect_run` shell function in C Tassilo Horn (1): userdiff: improve java hunk header regex Taylor Blau (51): pack-bitmap.c: harden 'test_bitmap_walk()' to check type bitmaps pack-bitmap-write.c: gracefully fail to write non-closed bitmaps pack-bitmap-write.c: free existing bitmaps Documentation: describe MIDX-based bitmaps object-store.h: teach for_each_packed_object to ignore kept packs builtin/pack-objects.c: simplify add_objects_in_unpacked_packs() builtin/pack-objects.c: remove duplicate hash lookup midx: disallow running outside of a repository midx: fix `*.rev` cleanups with `--object-dir` midx: clear auxiliary .rev after replacing the MIDX midx: reject empty `--preferred-pack`'s midx: infer preferred pack when not given one midx: close linked MIDXs, avoid leaking memory midx: avoid opening multiple MIDXs when writing pack-bitmap.c: introduce 'bitmap_num_objects()' pack-bitmap.c: introduce 'nth_bitmap_object_oid()' pack-bitmap.c: introduce 'bitmap_is_preferred_refname()' pack-bitmap.c: avoid redundant calls to try_partial_reuse pack-bitmap: read multi-pack bitmaps pack-bitmap: write multi-pack bitmaps t5310: move some tests to lib-bitmap.sh t/helper/test-read-midx.c: add --checksum mode t5326: test multi-pack bitmap behavior t5319: don't write MIDX bitmaps in t5319 t7700: update to work with MIDX bitmap test knob midx: respect 'GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP' p5310: extract full and partial bitmap tests p5326: perf tests for MIDX bitmaps t/helper/test-bitmap.c: add 'dump-hashes' mode pack-bitmap.c: propagate namehash values from existing bitmaps midx.c: respect 'pack.writeBitmapHashcache' when writing bitmaps p5326: create missing 'perf-tag' tag p5326: don't set core.multiPackIndex unnecessarily p5326: generate pack bitmaps before writing the MIDX bitmap t5326: test propagating hashcache values builtin/commit-graph.c: don't accept common --[no-]progress builtin/multi-pack-index.c: disable top-level --[no-]progress midx: expose `write_midx_file_only()` publicly builtin/multi-pack-index.c: support `--stdin-packs` mode midx: preliminary support for `--refs-snapshot` builtin/repack.c: keep track of existing packs unconditionally builtin/repack.c: rename variables that deal with non-kept packs builtin/repack.c: extract showing progress to a variable builtin/repack.c: support writing a MIDX while repacking builtin/repack.c: make largest pack preferred builtin/repack.c: pass `--refs-snapshot` when writing bitmaps t/perf/aggregate.perl: tolerate leading spaces midx.c: extract MIDX lookup by object_dir midx.c: lookup MIDX by object directory during expire midx.c: lookup MIDX by object directory during repack midx.c: guard against commit_lock_file() failures Teng Long (1): list-objects.c: rename "traverse_trees_and_blobs" to "traverse_non_commits" Todd Zullinger (1): doc: add bundle-format to TECH_DOCS USAMI Kenta (1): userdiff: support enum keyword in PHP hunk header Wesley Schwengle (1): Document `rebase.forkpoint` in rebase man page ZheNing Hu (6): ref-filter: add obj-type check in grab contents ref-filter: add %(raw) atom ref-filter: --format=%(raw) support --perl ref-filter: use non-const ref_format in *_atom_parser() ref-filter: add %(rest) atom cherry-pick: use better advice message brian m. carlson (1): t5607: avoid using prerequisites to select algorithm Ævar Arnfjörð Bjarmason (201): Makefile: move ".PHONY: cscope" near its target Makefile: add QUIET_GEN to "cscope" target test-lib tests: move "run_sub_test" to a new lib-subtest.sh Makefile: don't use "FORCE" for tags targets http: drop support for curl < 7.19.3 and < 7.17.0 (again) http: rename CURLOPT_FILE to CURLOPT_WRITEDATA serve: mark has_capability() as static transport: rename "fetch" in transport_vtable to "fetch_refs" transport: use designated initializers serve: use designated initializers serve.[ch]: don't pass "struct strvec *keys" to commands serve: move transfer.advertiseSID check into session_id_advertise() serve.c: move version line to advertise_capabilities() {upload,receive}-pack tests: add --advertise-refs tests serve.[ch]: remove "serve_options", split up --advertise-refs code upload-pack: document and rename --advertise-refs Makefile: remove "cscope.out", not "cscope*" in cscope.out target Makefile: normalize clobbering & xargs for tags targets refs/packet: add missing BUG() invocations to reflog callbacks refs/files: remove unused REF_DELETING in lock_ref_oid_basic() advice: remove use of global advice_add_embedded_repo advice: move advice.graftFileDeprecated squashing to commit.[ch] refs/files: remove unused "extras/skip" in lock_ref_oid_basic() refs/files: remove unused "skip" in lock_raw_ref() too refs/debug: re-indent argument list for "prepare" refs: make repo_dwim_log() accept a NULL oid refs/files: add a comment about refs_reflog_exists() call reflog expire: don't lock reflogs using previously seen OID refs API: remove OID argument to reflog_expire() refs/files: remove unused "oid" in lock_ref_oid_basic() refs/files: remove unused "errno == EISDIR" code refs/files: remove unused "errno != ENOTDIR" condition refs file backend: move raceproof_create_file() here bundle API: start writing API documentation commit-graph: define common usage with a macro commit-graph: remove redundant handling of -h commit-graph: use parse_options_concat() multi-pack-index: refactor "goto usage" pattern commit-graph: early exit to "usage" on !argc commit-graph: show usage on "commit-graph [write|verify] garbage" commit-graph: show "unexpected subcommand" error gettext: remove optional non-standard parens in N_() definition bundle API: change "flags" to be "extra_index_pack_args" index-pack: add --progress-title option bundle: show progress on "unbundle" tr2: remove NEEDSWORK comment for "non-procfs" implementations tr2: clarify TRACE2_PROCESS_INFO_EXIT comment under Linux tr2: stop leaking "thread_name" memory tr2: leave the parent list empty upon failure & don't leak memory tr2: do compiler enum check in trace2_collect_process_info() tr2: log N parent process names on Linux help: correct the usage string in -h and documentation INSTALL: don't mention the "curl" executable at all INSTALL: reword and copy-edit the "libcurl" section git-submodule: remove unused is_zero_oid() function git-sh-setup: remove unused "pull with rebase" message git-bisect: remove unused SHA-1 $x40 shell variable test-lib: remove unused $_x40 and $_z40 variables test-tool run-command: fix flip-flop init pattern gc: remove unused launchctl_get_uid() call parse-options API users: align usage output in C-strings send-pack: properly use parse_options() API for usage string git rev-parse --parseopt tests: add more usagestr tests difftool: prepare "struct child_process" in cmd_difftool() difftool: use run_command() API in run_file_diff() parse-options API: remove OPTION_ARGUMENT feature INSTALL: mention that we need libcurl 7.19.4 or newer to build Makefile: drop support for curl < 7.9.8 (again) http: drop support for curl < 7.18.0 (again) http: correct version check for CURL_HTTP_VERSION_2 http: correct curl version check for CURLOPT_PINNEDPUBLICKEY http: centralize the accounting of libcurl dependencies http: don't hardcode the value of CURL_SOCKOPT_OK wrapper.c: add x{un,}setenv(), and use xsetenv() in environment.c environment.c: remove test-specific "ignore_untracked..." variable read-cache & fetch-negotiator: check "enum" values in switch() repo-settings.c: simplify the setup repository.h: don't use a mix of int and bitfields parse-options: properly align continued usage output test-lib tests: split up "write and run" into two functions test-lib tests: don't provide a description for the sub-tests test-lib tests: avoid subshell for "test_cmp" for readability test-lib tests: refactor common part of check_sub_test_lib_test*() test-lib tests: assert 1 exit code, not non-zero test-lib tests: get rid of copy/pasted mock test code Makefile: make the "sparse" target non-.PHONY Makefile: make COMPUTE_HEADER_DEPENDENCIES=auto work with DEVOPTS=pedantic help: correct usage & behavior of "git help --guides" help tests: add test for --config output help: correct logic error in combining --all and --config help: correct logic error in combining --all and --guides help: simplify by moving to OPT_CMDMODE() help tests: test --config-for-completion option & output help / completion: make "git help" do the hard work help: move column config discovery to help.c library Makefile: add SANITIZE=leak flag to GIT-BUILD-OPTIONS tests: add a test mode for SANITIZE=leak, run it in CI bundle: remove ignored & undocumented "--verbose" flag Makefile: mark "check" target as .PHONY Makefile: stop hardcoding {command,config}-list.h Makefile: don't perform "mv $@+ $@" dance for $(GENERATED_H) Makefile: remove an out-of-date comment hook.[ch]: move find_hook() from run-command.c to hook.c hook.c users: use "hook_exists()" instead of "find_hook()" hook-list.h: add a generated list of hooks, like config-list.h http: check CURLE_SSL_PINNEDPUBKEYNOTMATCH when emitting errors Makefile: pass -Wno-pendantic under GENERATE_COMPILATION_DATABASE=yes submodule-config.h: remove unused SUBMODULE_INIT macro *.[ch] *_INIT macros: use { 0 } for a "zero out" idiom *.h _INIT macros: don't specify fields equal to 0 *.h: move some *_INIT to designated initializers cbtree.h: define cb_init() in terms of CBTREE_INIT daemon.c: refactor hostinfo_init() to HOSTINFO_INIT macro builtin/blame.c: refactor commit_info_init() to COMMIT_INFO_INIT macro string-list.[ch]: remove string_list_init() compatibility function config.c: remove unused git_config_key_is_valid() refs.[ch]: remove unused ref_storage_backend_exists() refs/ref-cache.[ch]: remove unused remove_entry_from_dir() refs/ref-cache.[ch]: remove unused add_ref_entry() refs/ref-cache.c: remove "mkdir" parameter from find_containing_dir() refs/ref-cache.[ch]: remove "incomplete" from create_dir_entry() parse-options.h: move PARSE_OPT_SHELL_EVAL between enums urlmatch.[ch]: add and use URLMATCH_CONFIG_INIT builtin/remote.c: add and use a REF_STATES_INIT builtin/remote.c: add and use SHOW_INFO_INIT builtin.h: remove cmd_tar_tree() declaration grep.h: remove unused grep_threads_ok() declaration log-tree.h: remove unused function declarations config.h: remove unused git_config_get_untracked_cache() declaration fsck tests: add test for fsck-ing an unknown type fsck tests: refactor one test to use a sub-repo fsck tests: test current hash/type mismatch behavior fsck tests: test for garbage appended to a loose object cat-file tests: move bogus_* variable declarations earlier cat-file tests: test for missing/bogus object with -t, -s and -p cat-file tests: add corrupt loose object test cat-file tests: test for current --allow-unknown-type behavior object-file.c: don't set "typep" when returning non-zero object-file.c: return -1, not "status" from unpack_loose_header() object-file.c: make parse_loose_header_extended() public object-file.c: simplify unpack_loose_short_header() object-file.c: use "enum" return type for unpack_loose_header() object-file.c: return ULHR_TOO_LONG on "header too long" object-file.c: stop dying in parse_loose_header() fsck: don't hard die on invalid object types fsck: report invalid object type-path combinations unpack-trees: don't leak memory in verify_clean_subdirectory() tests: fix a memory leak in test-prio-queue.c tests: fix a memory leak in test-parse-options.c tests: fix a memory leak in test-oidtree.c tests: fix test-oid-array leak, test in SANITIZE=leak ls-files: fix a trivial dir_clear() leak ls-files: add missing string_list_clear() merge: add missing strbuf_release() parse-options.[ch]: consistently use "enum parse_opt_flags" parse-options.[ch]: consistently use "enum parse_opt_result" parse-options.c: use exhaustive "case" arms for "enum parse_opt_result" parse-options.h: make the "flags" in "struct option" an enum parse-options.c: move optname() earlier in the file commit-graph: stop using optname() parse-options.[ch]: make opt{bug,name}() "static" parse-options tests: test optname() output parse-options: change OPT_{SHORT,UNSET} to an enum unwritable tests: assert exact error output commit: fix duplication regression in permission error output leak tests: run various built-in tests in t00*.sh SANITIZE=leak leak tests: run various "test-tool" tests in t00*.sh SANITIZE=leak leak tests: mark all ls-tree tests as passing with SANITIZE=leak leak tests: mark all trace2 tests as passing with SANITIZE=leak leak tests: mark all checkout-index tests as passing with SANITIZE=leak leak tests: mark some ls-files tests as passing with SANITIZE=leak leak tests: mark some read-tree tests as passing with SANITIZE=leak leak tests: mark various "generic" tests as passing with SANITIZE=leak leak tests: mark some misc tests as passing with SANITIZE=leak sequencer: add a "goto cleanup" to do_reset() sequencer: fix a memory leak in do_reset() test-lib.sh: de-duplicate error() teardown code test-lib.sh: use "Bail out!" syntax on bad SANITIZE=leak use test-lib.sh: try to re-chmod & retry on failed trash removal "lib-diff" tests: make "README" and "COPYING" test data smaller tests: stop using top-level "README" and "COPYING" files doc lint: fix error-hiding regression doc lint: emit errors on STDERR doc build: speed up "make lint-docs" doc lint: make "lint-docs" non-.PHONY pkt-line.[ch]: remove unused packet_buf_write_len() pkt-line.[ch]: remove unused packet_read_line_buf() git config doc: fix recent ASCIIDOC formatting regression tag: use a "goto cleanup" pattern, leak less memory ref-filter API user: add and use a ref_sorting_release() branch: use ref_sorting_release() git-sh-i18n: remove unused eval_ngettext() git-sh-setup: remove messaging supporting --preserve-merges Makefile: remove redundant GIT-CFLAGS dependency from "sparse" config.c: don't leak memory in handle_path_include() grep: prefer "struct grep_opt" over its "void *" equivalent grep: use object_array_clear() in cmd_grep() grep: fix a "path_list" memory leak clone: fix a memory leak of the "git_dir" variable submodule--helper: fix small memory leaks reflog: free() ref given to us by dwim_log() Version v2.33.8; changes since v2.33.7: --------------------------------------- Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Jeff King (6): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (15): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present tests: avoid using `test_i18ncmp` Git 2.31.8 Git 2.32.7 Git 2.33.8 Junio C Hamano (1): http.c: clear the 'finished' member once we are done with it Taylor Blau (5): t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 Version v2.33.7; changes since v2.33.6: --------------------------------------- Johannes Schindelin (4): attr: adjust a mismatched data type Git 2.31.7 Git 2.32.6 Git 2.33.7 Junio C Hamano (1): Git 2.30.8 Patrick Steinhardt (1): apply: fix writing behind newly created symbolic links Taylor Blau (3): t5619: demonstrate clone_local() with ambiguous transport clone: delay picking a transport until after get_repo_path() dir-iterator: prevent top-level symlinks without FOLLOW_SYMLINKS Version v2.33.6; changes since v2.33.5: --------------------------------------- Carlo Marcelo Arenas Belón (1): test-lib: add prerequisite for 64-bit platforms Junio C Hamano (4): Git 2.30.7 Git 2.31.6 Git 2.32.5 Git 2.33.6 Patrick Steinhardt (25): attr: fix overflow when upserting attribute with overly long name attr: fix out-of-bounds read with huge attribute names attr: fix integer overflow when parsing huge attribute names attr: fix out-of-bounds write when parsing huge number of attributes attr: fix out-of-bounds read with unreasonable amount of patterns attr: fix integer overflow with more than INT_MAX macros attr: harden allocation against integer overflows attr: fix silently splitting up lines longer than 2048 bytes attr: ignore attribute lines exceeding 2048 bytes attr: ignore overly large gitattributes files pretty: fix out-of-bounds write caused by integer overflow pretty: fix out-of-bounds read when left-flushing with stealing pretty: fix out-of-bounds read when parsing invalid padding format pretty: fix adding linefeed when placeholder is not expanded pretty: fix integer overflow in wrapping format utf8: fix truncated string lengths in `utf8_strnwidth()` utf8: fix returning negative string width utf8: fix overflow when returning string width utf8: fix checking for glyph width in `strbuf_utf8_replace()` utf8: refactor `strbuf_utf8_replace` to not rely on preallocated buffer pretty: restrict input lengths for padding and wrapping formats fsck: refactor `fsck_blob()` to allow for more checks fsck: pull out function to check a set of blobs fsck: move checks for gitattributes fsck: implement checks for gitattributes Version v2.33.5; changes since v2.33.4: --------------------------------------- Jeff King (2): shell: add basic tests shell: limit size of interactive commands Kevin Backhouse (1): alias.c: reject too-long cmdline strings in split_cmdline() Taylor Blau (17): builtin/clone.c: disallow `--local` clones with symlinks t/lib-submodule-update.sh: allow local submodules t/t1NNN: allow local submodules t/2NNNN: allow local submodules t/t3NNN: allow local submodules t/t4NNN: allow local submodules t/t5NNN: allow local submodules t/t6NNN: allow local submodules t/t7NNN: allow local submodules t/t9NNN: allow local submodules transport: make `protocol.file.allow` be "user" by default t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow Git 2.30.6 Git 2.31.5 Git 2.32.4 Git 2.33.5 Version v2.33.4; changes since v2.33.3: --------------------------------------- Carlo Marcelo Arenas Belón (5): t: regression git needs safe.directory when using sudo git-compat-util: avoid failing dir ownership checks if running privileged t0034: add negative tests and allow git init to mostly work under sudo git-compat-util: allow root to access both SUDO_UID and root owned setup: tighten ownership checks post CVE-2022-24765 Johannes Schindelin (4): Git 2.30.5 Git 2.31.4 Git 2.32.3 Git 2.33.4 Version v2.33.3; changes since v2.33.2: --------------------------------------- Derrick Stolee (2): t0033: add tests for safe.directory setup: opt-out of check with safe.directory=* Junio C Hamano (1): Git 2.30.4 Matheus Valadares (1): setup: fix safe.directory key not being checked Version v2.33.2; changes since v2.33.1: --------------------------------------- Carlo Marcelo Arenas Belón (1): mingw: avoid fallback for {local,gm}time_r() Jeff King (1): log: document --encoding behavior on iconv() failure Johannes Schindelin (8): GIT-VERSION-GEN: bump to v2.33.1 Add a function to determine whether a path is owned by the current user setup_git_directory(): add an owner check for the top-level directory Fix `GIT_CEILING_DIRECTORIES` with `C:\` and the likes Git 2.30.3 Git 2.31.2 Git 2.32.1 Git 2.33.2 Junio C Hamano (1): Revert "logmsg_reencode(): warn when iconv() fails" Martin Ågren (1): git.txt: fix typo Phillip Wood (1): rebase -i: fix rewording with --committer-date-is-author-date Victoria Dye (1): async_die_is_recursing: work around GCC v11.x issue on Fedora Version v2.33.1; changes since v2.33.0: --------------------------------------- Alex Henrie (1): pull: abort if --ff-only is given and fast-forwarding is impossible Andrzej Hunt (1): connect: also update offset for features without values Bagas Sanjaya (1): Documentation: fix default directory of git bugreport -o Carlo Marcelo Arenas Belón (12): build: update detect-compiler for newer Xcode version builtin/merge: avoid -Wformat-extra-args from ancient Xcode ci: run a pedantic build as part of the GitHub workflow ci: update freebsd 12 cirrus job ci: use upload-artifacts v1 for dockerized jobs remote: avoid -Wunused-but-set-variable in gcc with -DNDEBUG tree-diff: fix leak when not HAVE_ALLOCA_H t0000: avoid masking git exit value through pipes git-cvsserver: use crypt correctly to compare password hashes git-cvsserver: protect against NULL in crypt(3) Documentation: cleanup git-cvsserver unicode: update the width tables to Unicode 14 David Aguilar (1): difftool: fix symlink-file writing in dir-diff mode Derrick Stolee (1): maintenance: skip bootout/bootstrap when plist is registered Elijah Newren (25): t7601: test interaction of merge/rebase/fast-forward flags and options t7601: add tests of interactions with multiple merge heads and config pull: since --ff-only overrides, handle it first pull: make --rebase and --no-rebase override pull.ff=only pull: abort by default when fast-forwarding is not possible pull: update docs & code for option compatibility with rebasing pull: fix handling of multiple heads git-rebase.txt: correct antiquated claims about --rebase-merges directory-rename-detection.txt: small updates due to merge-ort optimizations Documentation: edit awkward references to `git merge-recursive` merge-strategies.txt: update wording for the resolve strategy merge-strategies.txt: do not imply using copy detection is desired merge-strategies.txt: avoid giving special preference to patience algorithm merge-strategies.txt: fix simple capitalization error git-rebase.txt: correct out-of-date and misleading text about renames merge-strategies.txt: add coverage of the `ort` merge strategy Update error message and code comment t3903: document a pair of directory/file bugs stash: avoid feeding directories to update-index stash: restore untracked files AFTER restoring tracked files git-am.txt: clarify --abort behavior t4151: add a few am --abort tests am: fix incorrect exit status on am fail to abort trace2.h: fix trivial comment typo merge-ort: fix completely wrong comment Felipe Contreras (4): completion: bash: fix prefix detection in branch.* completion: bash: fix for suboptions with value completion: bash: fix for multiple dash commands completion: bash: add correct suffix in variables Jeff Hostetler (1): sparse-index: copy dir_hash in ensure_full_index() Jeff King (13): build: clang version may not be followed by extra words range-diff: drop useless "offset" variable from read_patches() range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() apply: keep buffer/size pair in sync when parsing binary hunks t5323: drop mentions of "master" logmsg_reencode(): warn when iconv() fails docs: use "character encoding" to refer to commit-object encoding t5562: use alarm() to interrupt timed child-wait strvec: use size_t to store nr and alloc t1400: avoid SIGPIPE race condition on fifo clone: handle unborn branch in bare repos http: match headers case-insensitively when redacting Joel Klinghed (1): commit: restore --edit when combined with --fixup Johannes Schindelin (1): maintenance: create `launchctl` configuration using a lock file Johannes Sixt (1): t9001: PATH must not use Windows-style paths Jonathan Tan (3): send-pack: fix push.negotiate with remote helper send-pack: fix push nego. when remote has refs fetch: die on invalid --negotiation-tip hash Josh Steadmon (1): connect, protocol: log negotiated protocol version Junio C Hamano (4): build: catch clang that identifies itself as "$VENDOR clang" apply: resolve trivial merge without hitting ll-merge with "--3way" hash-object: prefix_filename() returns allocated memory these days Git 2.33.1 Kim Altintop (3): t5730: introduce fetch command helper upload-pack.c: treat want-ref relative to namespace docs: clarify the interaction of transfer.hideRefs and namespaces Kyle Zhao (1): pack-revindex.h: correct the time complexity descriptions Marvin Häuser (1): send-email: avoid incorrect header propagation Matheus Tavares (1): checkout: make delayed checkout respect --quiet and --no-progress Matthias Aßhauer (1): documentation: add documentation for 'git version' Mickey Endito (1): t5582: remove spurious 'cd "$D"' line Mike Hommey (1): credential: fix leak in credential_apply_config() Patrick Steinhardt (1): update-ref: fix streaming of status updates Philip Oakley (1): doc: config, tell readers of `git help --config` Phillip Wood (7): t3403: fix commit authorship rebase --apply: restore some tests rebase --continue: remove .git/MERGE_MSG rebase -r: make 'merge -c' behave like reword rebase -i: add another reword test rebase -r: don't write .git/MERGE_MSG when fast-forwarding rebase -r: fix merge -c with a merge strategy René Scharfe (10): compat: let git_mmap use malloc(3) directly xopen: explicitly report creation failures use xopen() to handle fatal open(2) failures show-branch: simplify rev_is_head() archive: convert queue_directory to struct object_id branch: allow deleting dangling branches with --force range-diff: avoid segfault with -I setup: use xopen and xdup in sanitize_stdfds refs/files-backend: remove unused open mode parameter compression: drop write-only core_compression_* variables SZEDER Gábor (3): Makefile: remove archives before manipulating them with 'ar' column: fix parsing of the '--nl' option test-lib: set GIT_CEILING_DIRECTORIES to protect the surrounding repository Sergey Organov (1): diff-index: restore -c/--cc options handling Takashi Iwai (1): completion: tcsh: Fix regression by drop of wrapper functions Tal Kelrich (1): fast-export: fix anonymized tag using original length Taylor Blau (4): bulk-checkin.c: store checksum directly pack-write.c: rename `.idx` files after `*.rev` builtin/repack.c: move `.idx` files into place last builtin/index-pack.c: move `.idx` files into place last Zoker (1): doc: fix syntax error and the format of printf Ævar Arnfjörð Bjarmason (20): pack-objects tests: cover blindspots in stdin handling pack-objects: fix segfault in --stdin-packs option bundle doc: rewrite the "DESCRIPTION" section bundle doc: elaborate on object prerequisites bundle doc: elaborate on rev<->ref restriction bundle doc: replace "basis" with "prerequsite(s)" ls-remote: set packet_trace_identity(<name>) rebase: emit one "fatal" in "fatal: fatal: <error>" protocol-caps.c: fix memory leak in send_info() mailmap.c: fix a memory leak in free_mailap_{info,entry}() gc: remove trailing dot from "gc.log" line send-email: fix a "first config key wins" regression in v2.33.0 Makefile: remove the check_bindir script pack-write: skip *.rev work when not writing *.rev pack.h: line-wrap the definition of finish_tmp_packfile() pack-write: refactor renaming in finish_tmp_packfile() index-pack: refactor renaming in final() pack-write: split up finish_tmp_packfile() function pack-objects: rename .idx files into place after .bitmap files Makefile: clean .depend dirs under COMPUTE_HEADER_DEPENDENCIES != yes Đoàn Trần Công Danh (3): t6300: don't run cat-file on non-existent object t6300: check for cat-file exit status code diff-lib: ignore paths that are outside $cwd if --relative asked Version v2.33.0; changes since v2.33.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5227t) Bagas Sanjaya (4): l10n: id.po: fix mismatched variable names l10n: id: po-id for 2.33.0 (round 1) l10n: id: mismatch variable name fixes l10n: id: po-id for 2.33.0 round 2 Christopher Diaz Riveros (1): l10n: es: 2.33.0 round 2 Daniel Santos (12): l10n: pt_PT: add Portuguese translations part 4 l10n: pt_PT: add Portuguese translations part 5 l10n: pt_PT: translation tables l10n: pt_PT: remove trailing comments l10n: pt_PT: update git-po-helper l10n: pt_PT: translated git v2.33.0 l10n: pt_PT: update translation tables l10n: pt_PT: cleaning duplicate translations l10n: pt_PT: cleaning flags mismatch l10n: pt_PT: update translation table l10n: pt_PT: git-po-helper update l10n: pt_PT: v2.33.0 round 2 Emir Sarı (2): l10n: tr: v2.33.0 round 1 l10n: tr: v2.33 (round 2) Fangyi Zhou (1): l10n: zh_CN: Revision for git v2.32.0 l10n round 1 Jean-Noël Avila (4): l10n: fr: fix typo l10n: fr.po v2.33 rnd 1 l10n: fr.po fix typos in commands and variables l10n: fr.po v2.33 rnd 2 Jiang Xin (6): l10n: fixed tripple-letter typos l10n: git.pot: v2.33.0 round 1 (38 new, 15 removed) l10n: git.pot: v2.33.0 round 2 (11 new, 8 removed) l10n: README: refactor to use GFM syntax l10n: zh_CN: for git v2.33.0 l10n round 2 l10n: TEAMS: change Simplified Chinese team leader Jordi Mas (3): l10n: Update Catalan translation l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (1): Git 2.33 Peter Krefting (3): l10n: fixed typos of mismatched constant strings l10n: sv.po: Update Swedish translation (5227t0f0u) l10n: sv.po: Update Swedish translation (5230t0f0u) Ralf Thielow (3): l10n: update German translation for Git v2.33.0 l10n: de.po: fix typos l10n: update German translation for Git v2.33.0 (rnd2) René Scharfe (1): oidtree: avoid unaligned access to crit-bit tree Trần Ngọc Quân (3): l10n: vi.po(5227t): Updated Vietnamese translation for v2.32.0 l10n: vi.po(5227t): Fixed typo after run git-po-helper l10n: vi.po(5230t): Updated translation for v2.32.0 round 2 Yi-Jyun Pan (2): l10n: zh_TW.po: update for v2.33.0 rnd 2 l10n: zh_TW.po: remove the obsolete glossary 依云 (1): l10n: zh_CN: review for git v2.32.0 l10n round 1 Version v2.33.0-rc2; changes since v2.33.0-rc1: ----------------------------------------------- Carlo Marcelo Arenas Belón (2): oidtree: avoid nested struct oidtree_node object-store: avoid extra ';' from KHASH_INIT Jonathan Nieder (1): Revert 'diff-merges: let "-m" imply "-p"' Junio C Hamano (1): Git 2.33-rc2 René Scharfe (1): object-file: use unsigned arithmetic with bit mask Version v2.33.0-rc1; changes since v2.33.0-rc0: ----------------------------------------------- Andrei Rybak (1): Documentation: render special characters correctly Andrzej Hunt (12): fmt-merge-msg: free newly allocated temporary strings when done environment: move strbuf into block to plug leak builtin/submodule--helper: release unused strbuf to avoid leak builtin/for-each-repo: remove unnecessary argv copy to plug leak diffcore-rename: move old_dir/new_dir definition to plug leak ref-filter: also free head for ATOM_HEAD to avoid leak read-cache: call diff_setup_done to avoid leak convert: release strbuf to avoid leak builtin/mv: free or UNLEAK multiple pointers at end of cmd_mv builtin/merge: free found_ref when done builtin/rebase: fix options.strategy memory lifecycle reset: clear_unpack_trees_porcelain to plug leak Atharva Raykar (4): t7400: test failure to add submodule in tracked path submodule: prefix die messages with 'fatal' submodule--helper: refactor module_clone() submodule--helper: introduce add-clone subcommand Bagas Sanjaya (1): diff: --pickaxe-all typofix Carlo Marcelo Arenas Belón (1): t7508: avoid non POSIX BRE Derrick Stolee (7): p2000: add 'git checkout -' test and decrease depth p2000: compress repo names commit: integrate with sparse-index sparse-index: recompute cache-tree checkout: stop expanding sparse indexes t1092: document bad 'git checkout' behavior unpack-trees: resolve sparse-directory/file conflicts Elijah Newren (7): merge-ort: resolve paths early when we have sufficient information merge-ort: add some more explanations in collect_merge_info_callback() merge-ort: add data structures for allowable trivial directory resolves merge-ort: add a handle_deferred_entries() helper function merge-ort: defer recursing into directories when merge base is matched merge-ort: avoid recursing into directories when we don't need to merge-ort: restart merge with cached renames to reduce process entry cost Felipe Contreras (1): test: fix for COLUMNS and bash 5 Jeff King (1): submodule: drop unused sm_name parameter from show_fetch_remotes() Junio C Hamano (2): The eighth batch Git 2.33-rc1 Philippe Blain (4): merge: add missing word "strategy" to a message Documentation: define 'MERGE_AUTOSTASH' merge: apply autostash if fast-forward fails merge: apply autostash if merge strategy fails René Scharfe (1): use fspathhash() everywhere Thomas Bétous (1): mingw: align symlinks-related rmdir() behavior with Linux Ævar Arnfjörð Bjarmason (3): SubmittingPatches: move discussion of Signed-off-by above "send" SubmittingPatches: replace discussion of Travis with GitHub Actions t0001: fix broken not-quite getcwd(3) test in bed67874e2 Version v2.33.0-rc0; changes since v2.32.7: ------------------------------------------- Alex Henrie (6): merge: don't translate literal commands stash: don't translate literal commands submodule: use the imperative mood to describe the --files option fetch: improve grammar of "shallow roots" message setup: split "extensions found" messages into singular and plural graph: improve grammar of "invalid color" error message Anders Höckersten (1): describe-doc: clarify default length of abbreviation Andrei Rybak (7): t: fix whitespace around && mailinfo: use starts_with() when checking scissors *: fix typos which duplicate a word blame: correct name of config option in docs t: fix typos in test messages git-worktree.txt: fix typo in example path help: convert git_cmd to page in one place Andrew Berry (1): docs: .gitignore parsing is to the top of the repo Andrzej Hunt (3): bulk-checkin: make buffer reuse more obvious and safer split-index: use oideq instead of memcmp to compare object_id's builtin/checkout--worker: zero-initialise struct to avoid MSAN complaints Atharva Raykar (2): MyFirstContribution: link #git-devel to Libera Chat submodule--helper: remove redundant include Beshr Kayali (1): Documentation: fix typo in the --patch option of the commit command Carlo Marcelo Arenas Belón (1): config.mak.uname: PCRE1 cleanup Dennis Ameling (2): cmake(windows): set correct path to the system Git config ci (vs-build): build with NO_GETTEXT Denton Liu (2): pkt-line: replace "stateless separator" with "response end" git-diff: fix missing --merge-base docs Derrick Stolee (21): hashfile: use write_in_full() csum-file.h: increase hashfile buffer size read-cache: use hashfile instead of git_hash_ctx read-cache: delete unused hashing methods *: fix typos sparse-index: skip indexes with unmerged entries sparse-index: include EXTENDED flag when expanding t1092: replace incorrect 'echo' with 'cat' t1092: expand repository data shape t1092: add tests for status/add and sparse files unpack-trees: preserve cache_bottom unpack-trees: compare sparse directories correctly unpack-trees: rename unpack_nondirectories() unpack-trees: unpack sparse directory entries dir.c: accept a directory as part of cone-mode patterns diff-lib: handle index diffs with sparse dirs status: skip sparse-checkout percentage with sparse-index status: use sparse-index throughout wt-status: expand added sparse directory entries fsmonitor: integrate with sparse index t1092: document bad sparse-checkout behavior Elijah Newren (29): t6423: rename file within directory that other side renamed Documentation/technical: describe remembering renames optimization fast-rebase: change assert() to BUG() fast-rebase: write conflict state to working tree, index, and HEAD t6429: testcases for remembering renames merge-ort: add data structures for in-memory caching of rename detection merge-ort: populate caches of rename detection results merge-ort: add code to check for whether cached renames can be reused merge-ort: avoid accidental API mis-use merge-ort: preserve cached renames for the appropriate side merge-ort: add helper functions for using cached renames merge-ort: handle interactions of caching and rename/rename(1to1) cases merge-ort, diffcore-rename: employ cached renames when possible merge-ort: replace string_list_df_name_compare with faster alternative diffcore-rename: avoid unnecessary strdup'ing in break_idx Fix various issues found in comments merge-ort: miscellaneous touch-ups promisor-remote: output trace2 statistics for number of objects fetched t6421: add tests checking for excessive object downloads during merge diffcore-rename: allow different missing_object_cb functions diffcore-rename: use a different prefetch for basename comparisons merge-ort: add prefetching for content merges t6423: test directory renames causing rename-to-self merge-ort: ensure we consult df_conflict and path_conflicts merge-recursive: handle rename-to-self case diff: correct warning message when renameLimit exceeded doc: clarify documentation for rename/copy limits diffcore-rename: treat a rename_limit of 0 as unlimited rename: bump limit defaults yet again Eric Wong (6): xmmap: inform Linux users of tuning knobs on ENOMEM speed up alt_odb_usable() with many alternates avoid strlen via strbuf_addstr in link_alt_odb_entry make object_directory.loose_objects_subdir_seen a bitmap oidcpy_with_padding: constify `src' arg oidtree: a crit-bit tree for odb_loose_cache Fabian Wermelinger (1): completion: bash: fix late declaration of __git_cmd_idx Felipe Contreras (32): doc: refactor common asciidoc dependencies doc: improve asciidoc dependencies doc: remove unnecessary rm instances doc: simplify Makefile using .DELETE_ON_ERROR doc: avoid using rm directly push: rename !triangular to same_remote push: hedge code of default=simple push: copy code to setup_push_simple() push: reorganize setup_push_simple() push: simplify setup_push_simple() push: remove unused code in setup_push_upstream() doc: push: explain default=simple correctly push: create new get_upstream_ref() helper push: return immediately in trivial switch case push: split switch cases push: factor out null branch check push: only get the branch when needed push: make setup_push_* return the dst push: trivial simplifications push: get rid of all the setup_push_* functions push: factor out the typical case push: remove redundant check push: remove trivial function push: only check same_remote when needed push: don't get a full remote object doc: merge: mention default of defaulttoupstream doc: avoid using the gender of other people comments: avoid using the gender of our users pull: cleanup autostash check pull: trivial cleanup pull: trivial whitespace style fix doc: pull: fix rebase=false documentation Gregory Anders (1): git-send-email: add option to specify sendmail command Han-Wen Nienhuys (26): refs: make explicit that ref_iterator_peel returns boolean t4202: split testcase for invalid HEAD symref and HEAD hash t/helper/ref-store: initialize oid in resolve-ref t9300: check ref existence using test-helper rather than a file system check t5601: read HEAD using rev-parse t1401: use tar to snapshot and restore repo state t1401-symbolic-ref: avoid direct filesystem access t1413: use tar to save and restore entire .git directory t1301: fix typo in error message t5000: reformat indentation to the latest fashion t5000: inspect HEAD using git-rev-parse t7003: use rev-parse rather than FS inspection t5304: restyle: trim empty lines, drop ':' before > t5304: use "reflog expire --all" to clear the reflog test-lib: provide test prereq REFFILES t1407: require REFFILES for for_each_reflog test t1414: mark corruption test with REFFILES t2017: mark --orphan/logAllRefUpdates=false test as REFFILES t1404: mark tests that muck with .git directly as REFFILES. t7900: stop checking for loose refs t7003: check reflog existence only for REFFILES t4202: mark bogus head hash test with REFFILES t1415: set REFFILES for test specific to storage format t1415: avoid direct filesystem access for writing refs t7509: avoid direct file access for writing CHERRY_PICK_HEAD refs/debug: quote prefix Hu Jialun (2): commit: reorganise commit hint strings commit: remove irrelavent prompt on `--allow-empty-message` Jean-Noël Avila (1): help: fix small typo in error message Jeff King (26): clone: clean up directory after transport_fetch_refs() failure fetch-pack: signal v2 server that we are done making requests doc: explain the use of color.pager doc: warn people against --max-pack-size ll_binary_merge(): handle XDL_MERGE_FAVOR_UNION ll_union_merge(): pass name labels to ll_xdl_merge() ll_union_merge(): rename path_unused parameter add_pending_object_with_path(): work around "gcc -O3" complaint bitmaps: don't recurse into trees already in the bitmap t: use portable wrapper for readlink(1) pretty.h: update and expand docstring for userformat_find_requirements() log: avoid loading decorations for userformats that don't need it object.h: expand docstring for lookup_unknown_object() object.h: add lookup_object_by_type() function load_ref_decorations(): avoid parsing non-tag objects add_ref_decoration(): rename s/type/deco_type/ test-lib: avoid accidental globbing in match_pattern_list() doc/rev-list-options: fix duplicate word typo load_ref_decorations(): fix decoration with tags t0000: clear GIT_SKIP_TESTS before running sub-tests doc/git-config: explain --file instead of referring to GIT_CONFIG doc/git-config: clarify GIT_CONFIG environment variable doc/git-config: simplify "override" advice for FILES section pack-bitmap: check pack validity when opening bitmap ci: run "apt-get update" before "apt-get install" ci/install-dependencies: handle "sparse" job package installs Jiang Xin (5): t6020: fix incompatible parameter expansion sideband: don't lose clear-to-eol at packet boundary test: compare raw output, not mangle tabs and spaces test: refactor to use "test_commit" to create commits test: refactor to use "get_abbrev_oid" to get abbrev oid Johannes Schindelin (15): multimail: stop shipping a copy subtree: fix the GIT_EXEC_PATH sanity check to work on Windows subtree: fix assumption about the directory separator pager: avoid setting COLUMNS when we're guessing its value mingw: move Git for Windows' system config where users expect it config: normalize the path of the system gitconfig ci: use the new GitHub Action to download git-sdk-64-minimal ci (vs-build): use `cmd` to copy the DLLs, not `powershell` ci: upgrade to using actions/{up,down}load-artifacts v2 ci (windows): transfer also the Git-tracked files to the test jobs artifacts-tar: respect NO_GETTEXT ci: accelerate the checkout ci: run `make sparse` as part of the GitHub workflow ci(check-whitespace): stop requiring a read/write token ci(check-whitespace): restrict to the intended commits Jonathan Nieder (1): xsize_t: avoid implementation defined behavior when len < 0 Jonathan Tan (7): repository: move global r_f_p_c to repo struct promisor-remote: support per-repository config submodule: refrain from filtering GIT_CONFIG_COUNT run-command: refactor subprocess env preparation promisor-remote: teach lazy-fetch in any repo unpack-trees: refactor prefetching code cache-tree: prefetch in partial clone read-tree Josh Steadmon (1): docs: fix api-trace2 doc for "too_many_files" event Julian Verdurmen (1): userdiff: add support for C# record types Junio C Hamano (10): revisions(7): clarify that most commands take a single revision range The first batch post Git 2.32 The second batch The third batch The fourth batch CodingGuidelines: recommend gender-neutral description The fifth batch The sixth batch The seventh batch Git 2.33-rc0 Kaartic Sivaraam (1): submodule: remove unnecessary `prefix` based option logic Matheus Tavares (1): parallel-checkout: send the new object_id algo field to the workers Matthew Rogers (3): cmake: add knob to disable vcpkg cmake: create compile_commands.json by default cmake: add warning for ignored MSGFMT_EXE Michael Schindler (1): mergetools/kdiff3: make kdiff3 work on Windows too Patrick Steinhardt (2): perf: fix when running with TEST_OUTPUT_DIRECTORY t0000: fix test if run with TEST_OUTPUT_DIRECTORY Philippe Blain (2): parse-options: don't complete option aliases by default doc: clarify description of 'submodule.recurse' René Scharfe (2): grep: report missing left operand of --and khash: clarify that allocations never fail Reuven Y (1): docs: improve fast-forward in glossary content Sergey Organov (10): t4013: test that "-m" alone has no effect in "git log" t4013: test "git log -m --raw" t4013: test "git log -m --stat" t4013: test "git diff-tree -m" t4013: test "git diff-index -m" diff-merges: move specific diff-index "-m" handling to diff-index git-svn: stop passing "-m" to "git rev-list" stash list: stop passing "-m" to "git log" diff-merges: rename "combined_imply_patch" to "merges_imply_patch" diff-merges: let "-m" imply "-p" Stephen Manz (3): t2400: clean up '"add" worktree with lock' test worktree: mark lock strings with `_()` for translation worktree: teach `add` to accept --reason <string> with --lock Tao Klerks (1): Remove warning that repack only works on non-promisor packfiles Taylor Blau (6): csum-file: introduce checksum_valid() commit-graph: rewrite to use checksum_valid() midx: don't reuse corrupt MIDXs when writing midx: report checksum mismatches during 'verify' multi-pack-index: fix potential segfault without sub-command pack-bitmap: clarify comment in filter_bitmap_exclude_type() Teng Long (1): packfile-uri.txt: fix blobPackfileUri description Thomas Braun (1): completion: add --anchored to diff's options Wolfgang Müller (1): rev-parse: mark die() messages for translation ZheNing Hu (4): ref-filter: add objectsize to used_atom ref-filter: introduce enum atom_type cat-file: handle trivial --batch format with --batch-all-objects cat-file: merge two block into one brian m. carlson (1): rev-list: add option for --pretty=format without header dorgon.chang (1): git-p4: fix failed submit by skip non-text data files edef (1): mailinfo: don't discard names under 3 characters Ævar Arnfjörð Bjarmason (90): test-lib: bring $remove_trash out of retirement test-lib tests: remove dead GIT_TEST_FRAMEWORK_SELFTEST variable test-lib-functions: reword "test_commit --append" docs test-lib-functions: document test_commit --no-tag test-lib functions: add an --annotated option to "test_commit" describe tests: convert setup to use test_commit test-lib functions: add --printf option to test_commit submodule tests: use symbolic-ref --short to discover branch name test-lib: reformat argument list in test_create_repo() test-lib: do not show advice about init.defaultBranch under --verbose test-lib: split up and deprecate test_create_repo() grep/pcre2 tests: reword comments referring to kwset pickaxe tests: refactor to use test_commit --append --printf pickaxe tests: add test for diffgrep_consume() internals pickaxe tests: add test for "log -S" not being a regex pickaxe tests: test for -G, -S and --find-object incompatibility pickaxe tests: add missing test for --no-pickaxe-regex being an error pickaxe: die when -G and --pickaxe-regex are combined pickaxe: die when --find-object and --pickaxe-all are combined diff.h: move pickaxe fields together again pickaxe/style: consolidate declarations and assignments perf: add performance test for pickaxe pickaxe: refactor function selection in diffcore-pickaxe() pickaxe: assert that we must have a needle under -G or -S pickaxe -S: support content with NULs under --pickaxe-regex pickaxe: rename variables in has_changes() for brevity pickaxe -S: slightly optimize contains() xdiff-interface: prepare for allowing early return xdiff-interface: allow early return from xdiff_emit_line_fn pickaxe -G: terminate early on matching lines pickaxe -G: don't special-case create/delete xdiff users: use designated initializers for out_line xdiff-interface: replace discard_hunk_line() with a flag describe tests: improve test for --work-tree & --dirty describe tests: refactor away from glob matching describe tests: don't rely on err.actual from "check_describe" describe tests: fix nested "test_expect_success" call describe tests: support -C in "check_describe" trace2: refactor to avoid gcc warning under -O3 send-email tests: support GIT_TEST_PERL_FATAL_WARNINGS=true send-email tests: test for boolean variables without a value send-email: remove non-working support for "sendemail.smtpssl" send-email: refactor sendemail.smtpencryption config parsing send-email: copy "config_regxp" into git-send-email.perl send-email: lazily load config for a big speedup send-email: lazily shell out to "git var" send-email: use function syntax instead of barewords send-email: get rid of indirect object syntax send-email: lazily load modules for a big speedup perl: lazily load some common Git.pm setup code send-email: move trivial config handling to Perl perl: nano-optimize by replacing Cwd::cwd() with Cwd::getcwd() protocol-caps.h: add newline at end of file read-cache.c: don't guard calls to progress.c API xdiff: use BUG(...), not xdl_bug(...) builtins + test helpers: use return instead of exit() in cmd_* mktag tests: parse out options in helper mktag tests: invert --no-strict test show-branch tests: rename the one "show-branch" test file show-branch tests: modernize test code pre-commit hook tests: don't leave "actual" nonexisting on failure gc tests: add a test for the "pre-auto-gc" hook mktag tests: test hash-object --literally and unreachable fsck mktag tests: test update-ref and reachable fsck mktag tests: test for-each-ref mktag tests: test fast-export show-branch: don't <COLOR></RESET> for space characters show-branch tests: add missing tests Makefile: add and use the ".DELETE_ON_ERROR" flag test-lib.sh: set COLUMNS=80 for --verbose repeatability send-pack.c: move "no refs in common" abort earlier fetch: document the --negotiate-only option *.h: move some *_INIT to designated initializers *.c *_init(): define in terms of corresponding *_INIT macro dir.[ch]: replace dir_init() with DIR_INIT string-list.[ch]: add a string_list_init_{nodup,dup}() string-list.h users: change to use *_{nodup,dup}() bundle cmd: stop leaking memory from parse_options_cmd_bundle() bundle.c: use a temporary variable for OIDs and names bundle: remove "ref_list" in favor of string-list.c API imap-send.c: use less verbose strbuf_fread() idiom fetch: fix segfault in --negotiate-only without --negotiation-tip=* *.c static functions: don't forward-declare __attribute__ sequencer.c: move static function to avoid forward decl *.c static functions: add missing __attribute__((format)) *.h: add a few missing __attribute__((format)) advice.h: add missing __attribute__((format)) & fix usage test-lib-functions: use test-tool for [de]packetize() bundle tests: use ">file" not ": >file" bundle tests: use test_cmp instead of grep Đoàn Trần Công Danh (6): t: use configured TAR instead of tar doc/log: correct default for --decorate t: use user-specified utf-8 locale for testing svn test-lib-functions: introduce test_stdout_line_count t6400: preserve git ls-files exit status code t6402: preserve git exit status code Version v2.32.7; changes since v2.32.6: --------------------------------------- Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Jeff King (6): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (14): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present tests: avoid using `test_i18ncmp` Git 2.31.8 Git 2.32.7 Junio C Hamano (1): http.c: clear the 'finished' member once we are done with it Taylor Blau (5): t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 Version v2.32.6; changes since v2.32.5: --------------------------------------- Johannes Schindelin (3): attr: adjust a mismatched data type Git 2.31.7 Git 2.32.6 Junio C Hamano (1): Git 2.30.8 Patrick Steinhardt (1): apply: fix writing behind newly created symbolic links Taylor Blau (3): t5619: demonstrate clone_local() with ambiguous transport clone: delay picking a transport until after get_repo_path() dir-iterator: prevent top-level symlinks without FOLLOW_SYMLINKS Version v2.32.5; changes since v2.32.4: --------------------------------------- Carlo Marcelo Arenas Belón (1): test-lib: add prerequisite for 64-bit platforms Junio C Hamano (3): Git 2.30.7 Git 2.31.6 Git 2.32.5 Patrick Steinhardt (25): attr: fix overflow when upserting attribute with overly long name attr: fix out-of-bounds read with huge attribute names attr: fix integer overflow when parsing huge attribute names attr: fix out-of-bounds write when parsing huge number of attributes attr: fix out-of-bounds read with unreasonable amount of patterns attr: fix integer overflow with more than INT_MAX macros attr: harden allocation against integer overflows attr: fix silently splitting up lines longer than 2048 bytes attr: ignore attribute lines exceeding 2048 bytes attr: ignore overly large gitattributes files pretty: fix out-of-bounds write caused by integer overflow pretty: fix out-of-bounds read when left-flushing with stealing pretty: fix out-of-bounds read when parsing invalid padding format pretty: fix adding linefeed when placeholder is not expanded pretty: fix integer overflow in wrapping format utf8: fix truncated string lengths in `utf8_strnwidth()` utf8: fix returning negative string width utf8: fix overflow when returning string width utf8: fix checking for glyph width in `strbuf_utf8_replace()` utf8: refactor `strbuf_utf8_replace` to not rely on preallocated buffer pretty: restrict input lengths for padding and wrapping formats fsck: refactor `fsck_blob()` to allow for more checks fsck: pull out function to check a set of blobs fsck: move checks for gitattributes fsck: implement checks for gitattributes Version v2.32.4; changes since v2.32.3: --------------------------------------- Jeff King (2): shell: add basic tests shell: limit size of interactive commands Kevin Backhouse (1): alias.c: reject too-long cmdline strings in split_cmdline() Taylor Blau (16): builtin/clone.c: disallow `--local` clones with symlinks t/lib-submodule-update.sh: allow local submodules t/t1NNN: allow local submodules t/2NNNN: allow local submodules t/t3NNN: allow local submodules t/t4NNN: allow local submodules t/t5NNN: allow local submodules t/t6NNN: allow local submodules t/t7NNN: allow local submodules t/t9NNN: allow local submodules transport: make `protocol.file.allow` be "user" by default t1092: prepare for changing protocol.file.allow t2080: prepare for changing protocol.file.allow Git 2.30.6 Git 2.31.5 Git 2.32.4 Version v2.32.3; changes since v2.32.2: --------------------------------------- Carlo Marcelo Arenas Belón (5): t: regression git needs safe.directory when using sudo git-compat-util: avoid failing dir ownership checks if running privileged t0034: add negative tests and allow git init to mostly work under sudo git-compat-util: allow root to access both SUDO_UID and root owned setup: tighten ownership checks post CVE-2022-24765 Johannes Schindelin (3): Git 2.30.5 Git 2.31.4 Git 2.32.3 Version v2.32.2; changes since v2.32.1: --------------------------------------- Derrick Stolee (2): t0033: add tests for safe.directory setup: opt-out of check with safe.directory=* Junio C Hamano (1): Git 2.30.4 Matheus Valadares (1): setup: fix safe.directory key not being checked Version v2.32.1; changes since v2.32.0: --------------------------------------- Carlo Marcelo Arenas Belón (1): mingw: avoid fallback for {local,gm}time_r() Johannes Schindelin (6): Add a function to determine whether a path is owned by the current user setup_git_directory(): add an owner check for the top-level directory Fix `GIT_CEILING_DIRECTORIES` with `C:\` and the likes Git 2.30.3 Git 2.31.2 Git 2.32.1 Version v2.32.0; changes since v2.32.0-rc3: ------------------------------------------- Alex Henrie (1): l10n: Update Catalan translation Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5204t) Alexey Roslyakov (1): l10n: ru.po: fix typo in Russian translation Bagas Sanjaya (5): l10n: id: po-id for 2.32.0 (round 1) l10n: README: document git-po-helper l10n: README: document "core translation" l10n: README: document l10n conventions l10n: README: note on fuzzy translations Christopher Diaz Riveros (1): l10n: es: 2.32.0 round 1 Daniel Santos (2): l10n: pt_PT: add Portuguese translations part 2 l10n: pt_PT: add Portuguese translations part 3 Emir Sarı (1): l10n: tr: v2.32.0-r1 Jean-Noël Avila (1): l10n: fr: v2.32.0 round 1 Jiang Xin (4): l10n: git.pot: v2.32.0 round 1 (126 new, 26 removed) l10n: fix typos in po/TEAMS l10n: README: add file extention ".md" l10n: zh_CN: for git v2.32.0 l10n round 1 Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (2): fsync(): be prepared to see EINTR Git 2.32 Matthias Rüster (1): l10n: de.po: Update German translation for Git v2.32.0 Peter Krefting (1): l10n: sv.po: Update Swedish translation (5204t0f0u) René Scharfe (1): parallel-checkout: avoid dash local bug in tests Trần Ngọc Quân (1): l10n: vi.po(5204t): Updated Vietnamese translation for v2.32.0 Vincent Tam (1): l10n: fr.po fixed inconsistencies Yi-Jyun Pan (2): l10n: zh_TW.po: v2.32.0 round 1 (11 untranslated) l10n: zh_TW.po: localized rlespinasse (1): l10n: fr: fixed inconsistencies Version v2.32.0-rc3; changes since v2.32.0-rc2: ----------------------------------------------- David Aguilar (1): contrib/completion: fix zsh completion regression from 59d85a2a05 Junio C Hamano (1): Git 2.32-rc3 Ævar Arnfjörð Bjarmason (1): builtin/fsck.c: don't conflate "int" and "enum" in callback Version v2.32.0-rc2; changes since v2.32.0-rc1: ----------------------------------------------- Derrick Stolee (2): t1092: use GIT_PROGRESS_DELAY for consistent results dir: update stale description of treat_directory() Elijah Newren (1): dir: introduce readdir_skip_dot_and_dotdot() helper Johannes Sixt (1): t9001-send-email.sh: fix expected absolute paths on Windows Junio C Hamano (4): t1092: revert the "-1" hack for emulating "no progress meter" Revert "dir: introduce readdir_skip_dot_and_dotdot() helper" Revert "dir: update stale description of treat_directory()" Git 2.32-rc2 Matheus Tavares (2): init: fix bug regarding ~/ expansion in init.templateDir t2080: fix cp invocation to copy symlinks instead of following them Ævar Arnfjörð Bjarmason (4): send-email: fix missing error message regression send-email: don't needlessly abs_path() the core.hooksPath send-email: move "hooks_path" invocation to git-send-email.perl pack-objects: move static inline from a header to the sole consumer Version v2.32.0-rc1; changes since v2.32.0-rc0: ----------------------------------------------- Denton Liu (1): stash show: use stash.showIncludeUntracked even when diff options given Derrick Stolee (2): dir: update stale description of treat_directory() sparse-index: fix uninitialized jump Elijah Newren (9): dir: convert trace calls to trace2 equivalents dir: report number of visited directories and paths with trace2 ls-files: error out on -i unless -o or -c are specified t7300: add testcase showing unnecessary traversal into ignored directory t3001, t7300: add testcase showcasing missed directory traversal dir: avoid unnecessary traversal into ignored directory dir: traverse into untracked directories if they may have ignored subfiles dir: introduce readdir_skip_dot_and_dotdot() helper git-prompt: work under set -u Eric Wong (1): remote-curl: fix clone on sha256 repos Jeff Hostetler (1): simple-ipc: correct ifdefs when NO_PTHREADS is defined Jeff King (3): t: avoid sed-based chain-linting in some expensive cases t5551: test http interaction with credential helpers Revert "remote-curl: fall back to basic auth if Negotiate fails" Junio C Hamano (2): A handful more topics before -rc1 Git 2.32-rc1 Todd Zullinger (1): t7500: remove non-existant C_LOCALE_OUTPUT prereq Wolfgang Müller (1): rev-parse: fix segfault with missing --path-format argument ZheNing Hu (1): ref-filter: fix read invalid union member bug Ævar Arnfjörð Bjarmason (5): Makefile: don't re-define PERL_DEFINES Makefile: regenerate perl/build/* if GIT-PERL-DEFINES changes Makefile: regenerate *.pm on NO_PERL_CPAN_FALLBACKS change perl: use mock i18n functions under NO_GETTEXT=Y Makefile: make PERL_DEFINES recursively expanded Version v2.32.0-rc0; changes since v2.31.8: ------------------------------------------- Adam Dinwoodie (1): cygwin: disallow backslashes in file names Alex Henrie (1): merge-ort: split "distinct types" message into two translatable messages Andrey Bienkowski (1): doc: clarify the filename encoding in git diff Andrzej Hunt (22): symbolic-ref: don't leak shortened refname in check_symref() reset: free instead of leaking unneeded ref clone: free or UNLEAK further pointers when finished worktree: fix leak in dwim_branch() init: remove git_init_db_config() while fixing leaks init-db: silence template_dir leak when converting to absolute path parse-options: convert bitfield values to use binary shift parse-options: don't leak alias help messages transport: also free remote_refs in transport_disconnect() merge-ort: only do pointer arithmetic for non-empty lists revision: free remainder of old commit list in limit_list wt-status: fix multiple small leaks ls-files: free max_prefix when done bloom: clear each bloom_key after use branch: FREE_AND_NULL instead of NULL'ing real_ref builtin/bugreport: don't leak prefixed filename builtin/check-ignore: clear_pathspec before returning builtin/checkout: clear pending objects after diffing mailinfo: also free strbuf lists when clearing mailinfo builtin/for-each-ref: free filter and UNLEAK sorting. builtin/rebase: release git_format_patch_opt too builtin/rm: avoid leaking pathspec and seen Atharva Raykar (1): userdiff: add support for Scheme Bagas Sanjaya (1): INSTALL: note on using Asciidoctor to build doc Bruno Albuquerque (1): object-info: support for retrieving object info Charvi Mendiratta (23): sequencer: pass todo_item to do_pick_commit() sequencer: use const variable for commit message comments rebase -i: add fixup [-C | -c] command t3437: test script for fixup [-C|-c] options in interactive rebase rebase -i: teach --autosquash to work with amend! doc/git-rebase: add documentation for fixup [-C|-c] options sequencer: fixup the datatype of the 'flag' argument sequencer: rename a few functions rebase -i: clarify and fix 'fixup -c' rebase-todo help t/lib-rebase: update the documentation of FAKE_LINES t/t3437: fixup here-docs in the 'setup' test t/t3437: remove the dependency of 'expected-message' file from tests t/t3437: check the author date of fixed up commit t/t3437: simplify and document the test helpers t/t3437: use named commits in the tests t/t3437: fixup the test 'multiple fixup -c opens editor once' doc/rebase -i: fix typo in the documentation of 'fixup' command sequencer: export and rename subject_length() commit: add amend suboption to --fixup to create amend! commit commit: add a reword suboption to --fixup t7500: add tests for --fixup=[amend|reword] options t3437: use --fixup with options to create amend! commit doc/git-commit: add documentation for fixup=[amend|reword] options Chinmoy Chakraborty (1): column, range-diff: downcase option description Christian Couder (1): test-bloom: fix missing 'bloom' from usage string Christopher Schenk (1): remote-curl: fall back to basic auth if Negotiate fails Dennis Ameling (2): cmake(install): fix double .exe suffixes cmake(install): include vcpkg dlls Denton Liu (13): git-cat-file.txt: monospace args, placeholders and filenames git-cat-file.txt: remove references to "sha1" stash show: teach --include-untracked and --only-untracked stash show: learn stash.showIncludeUntracked git-completion.bash: pass $__git_subcommand_idx from __git_main() git-completion.bash: extract from else in _git_stash() git-completion.bash: use __gitcomp_builtin() in _git_stash() git-completion.bash: separate some commands onto their own line git-completion.bash: rename to $__git_cmd_idx git-completion.bash: use $__git_cmd_idx in more places git-completion.bash: consolidate cases in _git_stash() t3905: correct test title stash show: fix segfault with --{include,only}-untracked Derrick Stolee (54): commit-graph: create local repository pointer commit-graph: use config to specify generation type csum-file: make hashwrite() more readable sparse-index: design doc and format update t/perf: add performance test for sparse operations t1092: clean up script quoting sparse-index: add guard to ensure full index sparse-index: implement ensure_full_index() t1092: compare sparse-checkout to sparse-index test-read-cache: print cache entries with --table test-tool: don't force full index unpack-trees: ensure full index sparse-checkout: hold pattern list in index sparse-index: add 'sdir' index extension sparse-index: convert from full to sparse submodule: sparse-index should not collapse links unpack-trees: allow sparse directories sparse-index: check index conversion happens sparse-index: add index.sparse config option sparse-checkout: toggle sparse index from builtin sparse-checkout: disable sparse-index cache-tree: integrate with sparse directory entries sparse-index: loose integration with cache_tree_verify() p2000: add sparse-index repos maintenance: simplify prefetch logic sparse-index: API protection strategy *: remove 'const' qualifier for struct index_state read-cache: expand on query into sparse-directory entry cache: move ensure_full_index() to cache.h add: ensure full index checkout-index: ensure full index checkout: ensure full index commit: ensure full index difftool: ensure full index fsck: ensure full index grep: ensure full index ls-files: ensure full index merge-index: ensure full index rm: ensure full index stash: ensure full index update-index: ensure full index dir: ensure full index entry: ensure full index merge-recursive: ensure full index pathspec: ensure full index read-cache: ensure full index resolve-undo: ensure full index revision: ensure full index name-hash: don't add directories to name_hash sparse-index: expand_to_path() name-hash: use expand_to_path() fetch: add --prefetch option maintenance: use 'git fetch --prefetch' maintenance: respect remote.*.skipFetchAll Elijah Newren (40): diffcore-rename: use directory rename guided basename comparisons diffcore-rename: provide basic implementation of idx_possible_rename() diffcore-rename: add a mapping of destination names to their indices Move computation of dir_rename_count from merge-ort to diffcore-rename diffcore-rename: add function for clearing dir_rename_count diffcore-rename: move dir_rename_counts into dir_rename_info struct diffcore-rename: extend cleanup_dir_rename_info() diffcore-rename: compute dir_rename_counts in stages diffcore-rename: limit dir_rename_counts computation to relevant dirs diffcore-rename: compute dir_rename_guess from dir_rename_counts diffcore-rename: enable filtering possible rename sources merge-ort: precompute subset of sources for which we need rename detection merge-ort: add data structures for an alternate tree traversal merge-ort: introduce wrappers for alternate tree traversal merge-ort: precompute whether directory rename detection is needed merge-ort: use relevant_sources to filter possible rename sources merge-ort: skip rename detection entirely if possible diffcore-rename: avoid doing basename comparisons for irrelevant sources diffcore-rename: take advantage of "majority rules" to skip more renames merge-ort, diffcore-rename: tweak dirs_removed and relevant_source type merge-ort: record the reason that we want a rename for a directory diffcore-rename: only compute dir_rename_count for relevant directories diffcore-rename: check if we have enough renames for directories early on diffcore-rename: add computation of number of unknown renames merge-ort: record the reason that we want a rename for a file diffcore-rename: determine which relevant_sources are no longer relevant merge-ort: use STABLE_QSORT instead of QSORT where required merge-ort: add a special minimal index just for renormalization merge-ort: have ll_merge() use a special attr_index for renormalization merge-ort: let renormalization change modify/delete into clean delete merge-ort: support subtree shifting t6428: new test for SKIP_WORKTREE handling and conflicts merge-ort: implement CE_SKIP_WORKTREE handling with conflicted entries t: mark several submodule merging tests as fixed under merge-ort merge-ort: write $GIT_DIR/AUTO_MERGE whenever we hit a conflict merge-recursive: add a bunch of FIXME comments documenting known bugs Revert "merge-ort: ignore the directory rename split conflict for now" t6423: mark remaining expected failure under merge-ort as such Add testing with merge-ort merge strategy sequencer: fix edit handling for cherry-pick and revert messages Eric Sunshine (1): merge(s): apply consistent punctuation to "up to date" messages Firmin Martin (1): user-manual.txt: assign preface an id and a title Georgios Kontaxis (1): gitweb: add "e-mail privacy" feature to redact e-mail addresses Han Xin (1): pack-objects: fix comment of reused_chunk.difference Han-Wen Nienhuys (3): reftable: document an alternate cleanup method on Windows refs: print errno for read_raw_ref if GIT_TRACE_REFS is set refs/debug: trace into reflog expiry too Jeff Hostetler (13): pkt-line: eliminate the need for static buffer in packet_write_gently() simple-ipc: design documentation for new IPC mechanism simple-ipc: add win32 implementation unix-socket: eliminate static unix_stream_socket() helper function unix-socket: add backlog size option to unix_stream_listen() unix-socket: disallow chdir() when creating unix domain sockets unix-stream-server: create unix domain socket under lock convert: make convert_attrs() and convert structs public convert: add [async_]convert_to_working_tree_ca() variants convert: add get_stream_filter_ca() variant convert: add classification for conv_attrs struct simple-ipc: add Unix domain socket implementation t0052: add simple-ipc tests and t/helper/test-simple-ipc tool Jeff King (39): add open_nofollow() helper attr: convert "macro_ok" into a flags field exclude: add flags parameter to add_patterns() attr: do not respect symlinks for in-tree .gitattributes exclude: do not respect symlinks for in-tree .gitignore mailmap: do not respect symlinks for in-tree .mailmap p5303: add missing &&-chains p5303: measure time to repack with keep builtin/pack-objects.c: rewrite honor-pack-keep logic packfile: add kept-pack cache for find_kept_pack_entry() t/perf: handle worktrees as test repos t/perf: avoid copying worktree files from test repo t7003: test ref rewriting explicitly filter-branch: drop multiple-ancestor warning filter-branch: drop $_x40 glob t: annotate !PTHREADS tests with !FAIL_PREREQS ref-filter: fix NULL check for parse object failure midx.c: improve cache locality in midx_pack_order_cmp() pack-objects: update "nr_seen" progress based on pack-reused count is_promisor_object(): free tree buffer after parsing lookup_unknown_object(): take a repository argument revision: avoid parsing with --exclude-promisor-objects pack-bitmap: clean up include_check after use prune: save reachable-from-recent objects with bitmaps t5300: modernize basic tests t5300: check that we produced expected number of deltas pack-objects: clamp negative window size to 0 t5316: check behavior of pack-objects --depth=0 pack-objects: clamp negative depth to 0 docs/format-patch: mention handling of merges t7415: remove out-dated comment about translation fsck_tree(): fix shadowed variable fsck_tree(): wrap some long lines t7415: rename to expand scope t7450: test verify_path() handling of gitmodules t7450: test .gitmodules symlink matching against obscured names t0060: test ntfs/hfs-obscured dotfiles fsck: warn about symlinked dotfiles we'll open with O_NOFOLLOW docs: document symlink restrictions for dot-files Jerry Zhang (3): git-apply: try threeway first when "--3way" is used git-apply: allow simultaneous --cached and --3way options apply: adjust messages to account for --3way changes Joachim Kuebart (2): git-p4: ensure complex branches are cloned correctly git-p4: speed up search for branch parent Johannes Schindelin (8): pkt-line: do not issue flush packets in write_packetized_*() pkt-line: add PACKET_READ_GENTLE_ON_READ_ERROR option pkt-line: add options argument to read_packetized_to_strbuf() SECURITY: describe how to report vulnerabilities Document how we do embargoed releases cmake: support SKIP_DASHED_BUILT_INS cmake: add a preparatory work-around to accommodate `vcpkg` msvc: avoid calling `access("NUL", flags)` John Szakmeister (2): http: store credential when PKI auth is used http: drop the check for an empty proxy password before approving Jonathan Tan (7): fetch-pack: buffer object-format with other args fetch-pack: refactor process_acks() fetch-pack: refactor add_haves() fetch-pack: refactor command and capability write fetch: teach independent negotiation (no packfile) send-pack: support push negotiation t5601: mark protocol v2-only test Josh Soref (1): merge: fix swapped "up to date" message components Julien Richard (1): doc: .gitignore documentation typofix Junio C Hamano (22): builtin/repack.c: reword comment around pack-objects flags The first batch in 2.32 cycle The second batch format-patch: give an overview of what a "patch" message is The third patch The fourth batch The fifth batch The sixth batch The seventh batch The eighth batch The ninth batch doc: clarify "do not capitalize the first word" rule The tenth batch The eleventh (aka "ort") batch The twelfth batch The thirteenth batch CodingGuidelines: explicitly allow "local" for test scripts The fourteenth batch The fifteenth batch The sixteenth batch The seventeenth batch Git 2.32-rc0 Li Linchao (1): builtin/clone.c: add --reject-shallow option Louis Sautier (1): pretty: fix a typo in the documentation for %(trailers) Luke Shumaker (30): .gitignore: ignore 'git-subtree' as a build artifact subtree: t7900: update for having the default branch name be 'main' subtree: t7900: use test-lib.sh's test_count subtree: t7900: use consistent formatting subtree: t7900: comment subtree_test_create_repo subtree: t7900: use 'test' for string equality subtree: t7900: delete some dead code subtree: t7900: fix 'verify one file change per commit' subtree: t7900: rename last_commit_message to last_commit_subject subtree: t7900: add a test for the -h flag subtree: t7900: add porcelain tests for 'pull' and 'push' subtree: don't have loose code outside of a function subtree: more consistent error propagation subtree: drop support for git < 1.7 subtree: use `git merge-base --is-ancestor` subtree: use git-sh-setup's `say` subtree: use more explicit variable names for cmdline args subtree: use "$*" instead of "$@" as appropriate subtree: don't fuss with PATH subtree: use "^{commit}" instead of "^0" subtree: parse revs in individual cmd_ functions subtree: remove duplicate check subtree: add comments and sanity checks subtree: don't let debug and progress output clash subtree: have $indent actually affect indentation subtree: give the docs a once-over subtree: allow --squash to be used with --rejoin subtree: allow 'split' flags to be passed to 'push' subtree: push: allow specifying a local rev other than HEAD subtree: be stricter about validating flags Lénaïc Huard (1): maintenance: fix two memory leaks Martin Ågren (2): git-repack.txt: remove spurious ")" pretty-formats.txt: add missing space Matheus Tavares (30): convert: fail gracefully upon missing clean cmd on required filter symlinks: update comment on threaded_check_leading_path() checkout: don't follow symlinks when removing entries entry: extract a header file for entry.c functions entry: make fstat_output() and read_blob_entry() public entry: extract update_ce_after_write() from write_entry() entry: move conv_attrs lookup up to checkout_entry() entry: add checkout_entry_ca() taking preloaded conv_attrs add: include magic part of pathspec on --refresh error t3705: add tests for `git add` in sparse checkouts add: make --chmod and --renormalize honor sparse checkouts pathspec: allow to ignore SKIP_WORKTREE entries on index matching refresh_index(): add flag to ignore SKIP_WORKTREE entries add: warn when asked to update SKIP_WORKTREE entries rm: honor sparse checkout patterns pkt-line: do not report packet write errors twice unpack-trees: add basic support for parallel checkout parallel-checkout: make it truly parallel parallel-checkout: add configuration options parallel-checkout: support progress displaying parallel-checkout: add design documentation make_transient_cache_entry(): optionally alloc from mem_pool builtin/checkout.c: complete parallel checkout support checkout-index: add parallel checkout support parallel-checkout: add tests for basic operations parallel-checkout: add tests related to path collisions t0028: extract encoding helpers to lib-encoding.sh parallel-checkout: add tests related to .gitattributes ci: run test round with parallel-checkout enabled clean: remove unnecessary variable Nicholas Clark (1): submodule update: silence underlying fetch with "--quiet" Nipunn Koorapati (3): fsmonitor: skip lstat deletion check during git diff-index fsmonitor: add assertion that fsmonitor is valid to check_removed fsmonitor: add perf test for git diff HEAD Patrick Steinhardt (17): githooks.txt: replace mentions of SHA-1 specific properties githooks.txt: clarify documentation on reference-transaction hook pack-bitmap: avoid traversal of objects referenced by uninteresting tag uploadpack.txt: document implication of `uploadpackfilter.allow` revision: mark commit parents as NOT_USER_GIVEN list-objects: move tag processing into its own function list-objects: support filtering by tag and commit list-objects: implement object type filter pack-bitmap: implement object type filter pack-bitmap: implement combined filter rev-list: allow filtering of provided items config: rename `git_etc_config()` config: unify code paths to get global config paths config: allow overriding of global and system configuration t1300: fix unset of GIT_CONFIG_NOSYSTEM leaking into subsequent tests git.txt: fix synopsis of `--config-env` missing the equals sign git: support separate arg for `--config-env`'s value Peter Oliver (1): doc: point to diff attribute in patch format docs Phillip Wood (6): rebase -i: only write fixup-message when it's needed sequencer: factor out code to append squash message rebase -i: comment out squash!/fixup! subjects from squash message word diff: handle zero length matches patience diff: remove unnecessary string comparisons patience diff: remove unused variable Rafael Silva (1): repack: avoid loosening promisor objects in partial clones Ramkumar Ramachandra (1): Add entry for Ramkumar Ramachandra Ramsay Jones (1): bisect--helper: use BISECT_TERMS in 'bisect skip' command René Scharfe (6): pretty: add %(describe) pretty: add merge and exclude options to %(describe) t4205: assert %(describe) test coverage pretty: document multiple %(describe) being inconsistent archive: expand only a single %(describe) per archive daemon: sanitize all directory separators Robert Foss (1): git-send-email: Respect core.hooksPath setting SZEDER Gábor (1): Makefile: add missing dependencies of 'config-list.h' Sardorbek Imomaliev (1): work around zsh comment in __git_complete_worktree_paths Sergey Organov (5): diff-merges: introduce --diff-merges=on diff-merges: refactor set_diff_merges() diff-merges: adapt -m to enable default diff format diff-merges: introduce log.diffMerges config variable doc/diff-options: document new --diff-merges features Shubham Verma (1): t9801: replace test -f with test_path_is_file Taylor Blau (28): packfile: introduce 'find_kept_pack_entry()' revision: learn '--no-kept-objects' builtin/pack-objects.c: add '--stdin-packs' option builtin/repack.c: add '--geometric' option builtin/repack.c: do not repack single packs with --geometric t7703: test --geometric repack with loose objects builtin/repack.c: assign pack split later builtin/repack.c: be more conservative with unsigned overflows Documentation/git-push.txt: correct configuration typo builtin/pack-objects.c: ignore missing links with --stdin-packs builtin/multi-pack-index.c: inline 'flags' with options builtin/multi-pack-index.c: don't handle 'progress' separately builtin/multi-pack-index.c: define common usage with a macro builtin/multi-pack-index.c: split sub-commands builtin/multi-pack-index.c: don't enter bogus cmd_mode builtin/multi-pack-index.c: display usage on unrecognized command t/helper/test-read-midx.c: add '--show-objects' pack-bitmap: add 'test_bitmap_commits()' helper t/helper/test-bitmap.c: initial commit builtin/pack-objects.c: respect 'pack.preferBitmapTips' midx: allow marking a pack as preferred midx: don't free midx_name early midx: keep track of the checksum midx: make some functions non-static Documentation/technical: describe multi-pack reverse indexes pack-revindex: read multi-pack reverse indexes pack-write.c: extract 'write_rev_file_order' pack-revindex: write multi-pack reverse indexes Torsten Bögershausen (2): precompose_utf8: make precompose_string_if_needed() public macOS: precompose startup_info->prefix Ville Skyttä (2): completion: audit and guard $GIT_* against unset use completion: avoid aliased command lookup error in nounset mode Will Chandler (1): refs: cleanup directories when deleting packed ref ZheNing Hu (7): commit: add --trailer option format-patch: allow a non-integral version numbers ref-filter: get rid of show_ref_array_item ref-filter: reuse output buffer pretty: provide human date format docs: correct descript of trailer.<token>.command trailer: add new .cmd config option brian m. carlson (14): builtin/init-db: handle bare clones when core.bare set to false hash: add an algo member to struct object_id Always use oidread to read into struct object_id http-push: set algorithm when reading object ID hash: add a function to finalize object IDs Use the final_oid_fn to finalize hashing of object IDs builtin/pack-redundant: avoid casting buffers to struct object_id hash: set, copy, and use algo field in struct object_id hash: provide per-algorithm null OIDs builtin/show-index: set the algorithm for object IDs commit-graph: don't store file hashes as struct object_id builtin/pack-objects: avoid using struct object_id for pack hash hex: default to the_hash_algo on zero algorithm value hex: print objects using the hash algorithm member Ævar Arnfjörð Bjarmason (87): grep/pcre2: drop needless assignment + assert() on opt->pcre2 grep/pcre2: drop needless assignment to NULL grep/pcre2: correct reference to grep_init() in comment grep/pcre2: prepare to add debugging to pcre2_malloc() grep/pcre2: add GREP_PCRE2_DEBUG_MALLOC debug mode grep/pcre2: use compile-time PCREv2 version test grep/pcre2: use pcre2_maketables_free() function grep/pcre2: actually make pcre2 use custom allocator grep/pcre2: move back to thread-only PCREv2 structures grep/pcre2: move definitions of pcre2_{malloc,free} Makefile: guard against TEST_OBJS in the environment Makefile: split up long OBJECTS line Makefile: sort OBJECTS assignment for subsequent change Makefile: split OBJECTS into OBJECTS and GIT_OBJS Makefile: add {program,xdiff,test,git,fuzz}-objs & objects targets remote: add camel-cased *.tagOpt key, like clone remote: write camel-cased *.pushRemote on rename fsck.c: refactor and rename common config callback show tests: add test for "git show <tree>" ls-files tests: add meaningful --with-tree tests tree.c API: move read_tree() into builtin/ls-files.c ls-files: don't needlessly pass around stage variable ls-files: refactor away read_tree() archive: stop passing "stage" through read_tree_recursive() tree.h API: expose read_tree_1() as read_tree_at() tree.h API: simplify read_tree_recursive() signature diff --no-index tests: add test for --exit-code diff --no-index tests: test mode normalization rebase: remove transitory rebase.useBuiltin setting & env mktag tests: fix broken "&&" chain fsck.h: use designed initializers for FSCK_OPTIONS_{DEFAULT,STRICT} fsck.h: use "enum object_type" instead of "int" fsck.c: rename variables in fsck_set_msg_type() for less confusion fsck.c: remove (mostly) redundant append_msg_id() function fsck.c: rename remaining fsck_msg_id "id" to "msg_id" fsck.c: refactor fsck_msg_type() to limit scope of "int msg_type" fsck.h: move FSCK_{FATAL,INFO,ERROR,WARN,IGNORE} into an enum fsck.h: re-order and re-assign "enum fsck_msg_type" fsck.c: call parse_msg_type() early in fsck_set_msg_type() fsck.c: undefine temporary STR macro after use fsck.c: give "FOREACH_MSG_ID" a more specific name fsck.[ch]: move FOREACH_FSCK_MSG_ID & fsck_msg_id from *.c to *.h fsck.c: pass along the fsck_msg_id in the fsck_error callback fsck.c: add an fsck_set_msg_type() API that takes enums fsck.c: move gitmodules_{found,done} into fsck_options fetch-pack: don't needlessly copy fsck_options fetch-pack: use file-scope static struct for fsck_options fetch-pack: use new fsck API to printing dangling submodules Makefile: add QUIET_GEN to "tags" and "TAGS" targets git-send-email: replace "map" in void context with "for" git-send-email: test full --validate output git-send-email: refactor duplicate $? checks into a function git-send-email: improve --validate error output bash completion: complete CHERRY_PICK_HEAD config.c: remove last remnant of GIT_TEST_GETTEXT_POISON userdiff style: re-order drivers in alphabetical order userdiff style: declare patterns with consistent style userdiff style: normalize pascal regex declaration userdiff: add and use for_each_userdiff_driver() userdiff tests: explicitly test "default" pattern userdiff tests: list builtin drivers via test-tool userdiff: remove support for "broken" tests blame tests: don't rely on t/t4018/ directory blame tests: simplify userdiff driver test rebase tests: camel-case rebase.rescheduleFailedExec consistently rebase: don't override --no-reschedule-failed-exec with config Documentation/Makefile: make $(wildcard howto/*.txt) a var Documentation/Makefile: make doc.dep dependencies a variable again doc lint: Perl "strict" and "warnings" in lint-gitlink.perl doc lint: fix bugs in, simplify and improve lint script doc lint: lint and fix missing "GIT" end sections doc lint: lint relative section order docs: fix linting issues due to incorrect relative section order svn tests: remove legacy re-setup from init-clone test svn tests: refactor away a "set -e" in test body tests: remove all uses of test_i18cmp usage.c: don't copy/paste the same comment three times api docs: document BUG() in api-error-handling.txt api docs: document that BUG() emits a trace2 error event pretty tests: simplify %aI/%cI date format test pretty tests: give --date/format tests a better description sparse-index.c: remove set_index_sparse_config() streaming.c: avoid forward declarations streaming.c: remove enum/function/vtbl indirection streaming.c: remove {open,close,read}_method_decl() macros streaming.c: stop passing around "object_info *" to open() streaming.c: move {open,close,read} from vtable to "struct git_istream" Øystein Walle (2): transport: respect verbosity when setting upstream add: die if both --dry-run and --interactive are given Đoàn Trần Công Danh (6): mailinfo: load default metainfo_charset lazily mailinfo: stop parsing options manually mailinfo: warn if CRLF found in decoded base64/QP email mailinfo: allow squelching quoted CRLF warning mailinfo: allow stripping quoted CR without warning am: learn to process quoted lines that ends with CRLF Version v2.31.8; changes since v2.31.7: --------------------------------------- Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Jeff King (6): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (13): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present tests: avoid using `test_i18ncmp` Git 2.31.8 Junio C Hamano (1): http.c: clear the 'finished' member once we are done with it Taylor Blau (5): t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 Version v2.31.7; changes since v2.31.6: --------------------------------------- Johannes Schindelin (2): attr: adjust a mismatched data type Git 2.31.7 Junio C Hamano (1): Git 2.30.8 Patrick Steinhardt (1): apply: fix writing behind newly created symbolic links Taylor Blau (3): t5619: demonstrate clone_local() with ambiguous transport clone: delay picking a transport until after get_repo_path() dir-iterator: prevent top-level symlinks without FOLLOW_SYMLINKS Version v2.31.6; changes since v2.31.5: --------------------------------------- Carlo Marcelo Arenas Belón (1): test-lib: add prerequisite for 64-bit platforms Junio C Hamano (2): Git 2.30.7 Git 2.31.6 Patrick Steinhardt (21): attr: fix overflow when upserting attribute with overly long name attr: fix out-of-bounds read with huge attribute names attr: fix integer overflow when parsing huge attribute names attr: fix out-of-bounds write when parsing huge number of attributes attr: fix out-of-bounds read with unreasonable amount of patterns attr: fix integer overflow with more than INT_MAX macros attr: harden allocation against integer overflows attr: fix silently splitting up lines longer than 2048 bytes attr: ignore attribute lines exceeding 2048 bytes attr: ignore overly large gitattributes files pretty: fix out-of-bounds write caused by integer overflow pretty: fix out-of-bounds read when left-flushing with stealing pretty: fix out-of-bounds read when parsing invalid padding format pretty: fix adding linefeed when placeholder is not expanded pretty: fix integer overflow in wrapping format utf8: fix truncated string lengths in `utf8_strnwidth()` utf8: fix returning negative string width utf8: fix overflow when returning string width utf8: fix checking for glyph width in `strbuf_utf8_replace()` utf8: refactor `strbuf_utf8_replace` to not rely on preallocated buffer pretty: restrict input lengths for padding and wrapping formats Version v2.31.5; changes since v2.31.4: --------------------------------------- Jeff King (2): shell: add basic tests shell: limit size of interactive commands Kevin Backhouse (1): alias.c: reject too-long cmdline strings in split_cmdline() Taylor Blau (13): builtin/clone.c: disallow `--local` clones with symlinks t/lib-submodule-update.sh: allow local submodules t/t1NNN: allow local submodules t/2NNNN: allow local submodules t/t3NNN: allow local submodules t/t4NNN: allow local submodules t/t5NNN: allow local submodules t/t6NNN: allow local submodules t/t7NNN: allow local submodules t/t9NNN: allow local submodules transport: make `protocol.file.allow` be "user" by default Git 2.30.6 Git 2.31.5 Version v2.31.4; changes since v2.31.3: --------------------------------------- Carlo Marcelo Arenas Belón (5): t: regression git needs safe.directory when using sudo git-compat-util: avoid failing dir ownership checks if running privileged t0034: add negative tests and allow git init to mostly work under sudo git-compat-util: allow root to access both SUDO_UID and root owned setup: tighten ownership checks post CVE-2022-24765 Johannes Schindelin (2): Git 2.30.5 Git 2.31.4 Version v2.31.3; changes since v2.31.2: --------------------------------------- Derrick Stolee (2): t0033: add tests for safe.directory setup: opt-out of check with safe.directory=* Junio C Hamano (1): Git 2.30.4 Matheus Valadares (1): setup: fix safe.directory key not being checked Version v2.31.2; changes since v2.31.1: --------------------------------------- Carlo Marcelo Arenas Belón (1): mingw: avoid fallback for {local,gm}time_r() Johannes Schindelin (5): Add a function to determine whether a path is owned by the current user setup_git_directory(): add an owner check for the top-level directory Fix `GIT_CEILING_DIRECTORIES` with `C:\` and the likes Git 2.30.3 Git 2.31.2 Version v2.31.1; changes since v2.31.0: --------------------------------------- Andrzej Hunt (2): Makefile: update 'make fuzz-all' docs to reflect modern clang fsmonitor: avoid global-buffer-overflow READ when checking trivial response Jeff King (1): bisect: peel annotated tags to commits Johannes Schindelin (2): fsmonitor: fix memory corruption in some corner cases fsmonitor: do not forget to release the token in `discard_index()` Jonathan Tan (1): t5606: run clone branch name test with protocol v2 Junio C Hamano (3): xcalloc: use CALLOC_ARRAY() when applicable cocci: allow xcalloc(1, size) Git 2.31.1 Kyle Meyer (1): config.txt: add missing period René Scharfe (6): fix xcalloc() argument order git-compat-util.h: drop trailing semicolon from macro definition use CALLOC_ARRAY vcs-svn: remove header files as well block-sha1: drop trailing semicolon from macro definition mem-pool: drop trailing semicolon from macro definition Torsten Bögershausen (1): git mv foo FOO ; git mv foo bar gave an assert Version v2.31.0; changes since v2.31.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5104t) Arusekk (1): l10n: pl.po: Update translation Bagas Sanjaya (2): l10n: start Indonesian translation l10n: Add translation team info Christopher Diaz Riveros (1): l10n: es: 2.31.0 round 2 Daniel Santos (1): l10n: pt_PT: add Portuguese translations part 1 Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Emir Sarı (2): l10n: tr: v2.31.0-rc0 l10n: tr: v2.31.0-rc1 Jean-Noël Avila (2): l10n: fr: v2.31.0 rnd 1 l10n: fr: v2.31 rnd 2 Jiang Xin (3): l10n: git.pot: v2.31.0 round 1 (155 new, 89 removed) l10n: git.pot: v2.31.0 round 2 (9 new, 8 removed) l10n: zh_CN: for git v2.31.0 l10n round 1 and 2 Jonathan Nieder (2): mergetool: do not enable hideResolved by default doc: describe mergetool configuration in git-mergetool(1) Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (1): Git 2.31 Matthias Rüster (1): l10n: de.po: Update German translation for Git v2.31.0 Peter Krefting (2): l10n: sv.po: Update Swedish translation (5103t0f0u) l10n: sv.po: Update Swedish translation (5104t0f0u) Taylor Blau (1): pack-revindex.c: don't close unopened file descriptors Trần Ngọc Quân (1): l10n: vi.po(5104t): for git v2.31.0 l10n round 2 Yi-Jyun Pan (1): l10n: zh_TW.po: v2.31.0 round 2 (15 untranslated) Version v2.31.0-rc2; changes since v2.31.0-rc1: ----------------------------------------------- Elijah Newren (1): Documentation/RelNotes: improve release note for rename detection work Jeff King (2): Makefile: add OPEN_RETURNS_EINTR knob config.mak.uname: enable OPEN_RETURNS_EINTR for macOS Big Sur Johannes Schindelin (15): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Git 2.22.5 Git 2.23.4 Git 2.24.4 Git 2.25.5 Git 2.26.3 Git 2.27.1 Git 2.28.1 Git 2.29.3 Git 2.30.2 Jonathan Tan (1): fetch-pack: do not mix --pack_header and packfile uri Junio C Hamano (2): Merged the open-eintr workaround for macOS Git 2.31-rc2 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Pratyush Yadav (1): Revert "git-gui: remove lines starting with the comment character" Version v2.31.0-rc1; changes since v2.31.0-rc0: ----------------------------------------------- Derrick Stolee (17): commit-graph: anonymize data in chunk_write_fn chunk-format: create chunk format write API commit-graph: use chunk-format write API midx: rename pack_info to write_midx_context midx: use context in write_midx_pack_names() midx: add entries to write_midx_context midx: add pack_perm to write_midx_context midx: add num_large_offsets to write_midx_context midx: return success/failure in chunk write methods midx: drop chunk progress during write midx: use chunk-format API in write_midx_internal() chunk-format: create read chunk API commit-graph: use chunk-format read API midx: use chunk-format read API midx: use 64-bit multiplication for chunk sizes chunk-format: restore duplicate chunk checks chunk-format: add technical docs Elijah Newren (8): diffcore-rename: no point trying to find a match better than exact diffcore-rename: filter rename_src list when possible t4001: add a test comparing basename similarity and content similarity diffcore-rename: compute basenames of source and dest candidates diffcore-rename: complete find_basename_matches() diffcore-rename: guide inexact rename detection based on basenames gitdiffcore doc: mention new preliminary step for rename detection merge-ort: call diffcore_rename() directly Han-Wen Nienhuys (1): doc/reftable: document how to handle windows Hariom Verma (4): t6300: use function to test trailer options pretty.c: refactor trailer logic to `format_set_trailers_options()` pretty.c: capture invalid trailer argument ref-filter: use pretty.c logic for trailers Jeff Hostetler (11): p7519: do not rely on "xargs -d" in test p7519: fix watchman watch-list test on Windows p7519: move watchman cleanup earlier in the test p7519: add trace logging during perf test preload-index: log the number of lstat calls to trace2 read-cache: log the number of lstat calls to trace2 read-cache: log the number of scanned files to trace2 fsmonitor: log invocation of FSMonitor hook to trace2 fsmonitor: log FSMN token when reading and writing the index fsmonitor: refactor initialization of fsmonitor_last_update token dir: fix malloc of root untracked_cache_dir Jonathan Tan (4): http: allow custom index-pack args http-fetch: allow custom index-pack args fetch-pack: with packfile URIs, use index-pack arg fetch-pack: print and use dangling .gitmodules Junio C Hamano (3): Revert "commit-graph: when incompatible with graphs, indicate why" Hopefully the last batch before -rc1 Git 2.31-rc1 Kevin Willford (1): fsmonitor: allow all entries for a folder to be invalidated Mikhail Klyushin (1): git-gui: fix typo in russian locale Neeraj Singh (1): read-cache: make the index write buffer size 128K Pratyush Yadav (1): git-gui: remove lines starting with the comment character Shubham Verma (10): t7001: modernize test formatting t7001: indent with TABs instead of spaces t7001: remove unnecessary blank lines t7001: modernize subshell formatting t7001: remove whitespace after redirect operators t7001: avoid using `cd` outside of subshells t7001: use '>' rather than 'touch' t7001: put each command on a separate line t7001: use here-docs instead of echo t7001: use `test` rather than `[` Taylor Blau (1): commit-graph.c: display correct number of chunks when writing Version v2.31.0-rc0; changes since v2.30.9: ------------------------------------------- Abhishek Kumar (11): commit-graph: fix regression when computing Bloom filters revision: parse parent in indegree_walk_step() commit-graph: consolidate fill_commit_graph_info t6600-test-reach: generalize *_three_modes commit-graph: add a slab to store topological levels commit-graph: return 64-bit generation number commit-graph: implement corrected commit date commit-graph: implement generation data chunk commit-graph: use generation v2 only if entire chain does commit-reach: use corrected commit dates in paint_down_to_common() doc: add corrected commit date info Alex Henrie (1): rebase: add a config option for --no-fork-point Andrew Klotz (1): config: improve error message for boolean config Andrzej Hunt (1): commit-graph: avoid leaking topo_levels slab in write_commit_graph() Christian Couder (3): fetch-pack: rename helper to create_promisor_file() fetch-pack: refactor writing promisor file pack-write: die on error in write_promisor_file() Christian Walther (1): doc: mention bigFileThreshold for packing Denton Liu (12): refs: factor out set_read_ref_cutoffs() refs: allow @{n} to work with n-sized reflog test-lib-functions.sh: fix usage for test_commit() t4203: stop losing return codes of git commands git-stash.txt: be explicit about subcommand options t3905: remove spaces after redirect operators t3905: move all commands into test cases t3905: remove nested git in command substitution t3905: replace test -s with test_file_not_empty t3905: use test_cmp() to check file contents stash: declare ref_stash as an array i18n.txt: camel case and monospace "i18n.commitEncoding" Derrick Stolee (47): maintenance: extract platform-specific scheduling maintenance: include 'cron' details in docs pack-bitmap-write: fill bitmap with commit history bitmap: implement bitmap_is_subset() commit: implement commit_list_contains() t5310: add branch-based checks pack-bitmap-write: rename children to reverse_edges pack-bitmap-write: build fewer intermediate bitmaps pack-bitmap-write: use existing bitmaps pack-bitmap-write: relax unique revwalk condition pack-bitmap-write: better reuse bitmaps revision: trace topo-walk statistics tree-walk: report recursion counts unpack-trees: add trace2 regions cache-tree: use trace2 in cache_tree_update() maintenance: use launchctl on macOS maintenance: use Windows scheduled tasks cache-tree: trace regions for I/O cache-tree: trace regions for prime_cache_tree index-format: use 'cache tree' over 'cached tree' index-format: update preamble to cache tree extension index-format: discuss recursion of cache-tree better cache-tree: speed up consecutive path comparisons maintenance: set log.excludeDecoration durin prefetch t7900: clean up some broken refs cache-tree: clean up cache_tree_update() cache-tree: simplify verify_cache() prototype cache-tree: extract subtree_pos() fsmonitor: de-duplicate BUG()s around dirty bits repository: add repo reference to index_state name-hash: use trace2 regions for init sparse-checkout: load sparse-checkout patterns test-lib: test_region looks for trace2 regions t1092: test interesting sparse-checkout scenarios commit-reach: reduce requirements for remove_redundant() commit-graph: use repo_parse_commit commit-graph: always parse before commit_graph_data_at() commit-graph: validate layers for generation data commit-graph: compute generations separately commit-graph: be extra careful about mixed generations commit-graph: prepare commit graph maintenance: add pack-refs task maintenance: incremental strategy runs pack-refs weekly commit-reach: use one walk in remove_redundant() commit-reach: move compare_commits_by_gen commit-reach: use heuristic in remove_redundant() commit-reach: stale commits may prune generation further Elijah Newren (81): merge-ort: setup basic internal data structures merge-ort: add some high-level algorithm structure merge-ort: port merge_start() from merge-recursive merge-ort: use histogram diff merge-ort: add an err() function similar to one from merge-recursive merge-ort: implement a very basic collect_merge_info() merge-ort: avoid repeating fill_tree_descriptor() on the same tree merge-ort: compute a few more useful fields for collect_merge_info merge-ort: record stage and auxiliary info for every path merge-ort: avoid recursing into identical trees merge-ort: add a preliminary simple process_entries() implementation merge-ort: have process_entries operate in a defined order merge-ort: step 1 of tree writing -- record basenames, modes, and oids merge-ort: step 2 of tree writing -- function to create tree object merge-ort: step 3 of tree writing -- handling subdirectories as we go merge-ort: basic outline for merge_switch_to_result() merge-ort: add implementation of checkout() tree: enable cmp_cache_name_compare() to be used elsewhere merge-ort: add implementation of record_conflicted_index_entries() merge-ort: free data structures in merge_finalize() merge-ort: add a few includes merge-ort: add a clear_internal_opts helper merge-ort: add a path_conflict field to merge_options_internal merge-ort: add a paths_to_free field to merge_options_internal merge-ort: add function grouping comments merge-ort: add die-not-implemented stub handle_content_merge() function merge-ort: add modify/delete handling and delayed output processing merge-ort: add basic data structures for handling renames merge-ort: add initial outline for basic rename detection merge-ort: implement detect_regular_renames() merge-ort: implement compare_pairs() and collect_renames() merge-ort: add basic outline for process_renames() diffcore-rename: rename num_create to num_destinations diffcore-rename: avoid usage of global in too_many_rename_candidates() diffcore-rename: simplify limit check diffcore-rename: reduce jumpiness in progress counters t4058: add more tests and documentation for duplicate tree entry handling t4058: explore duplicate tree entry handling in a bit more detail diffcore-rename: simplify and accelerate register_rename_src() diffcore-rename: accelerate rename_dst setup merge-ort: add implementation of both sides renaming identically merge-ort: add implementation of both sides renaming differently merge-ort: add implementation of rename/delete conflicts merge-ort: add implementation of rename collisions merge-ort: add implementation of normal rename handling merge-ort: add implementation of type-changed rename handling commit: move reverse_commit_list() from merge-recursive merge-ort: copy a few small helper functions from merge-recursive.c merge-ort: make clear_internal_opts() aware of partial clearing merge-ort: implement merge_incore_recursive() merge-ort: handle D/F conflict where directory disappears due to merge merge-ort: handle directory/file conflicts that remain merge-ort: implement unique_path() helper merge-ort: handle book-keeping around two- and three-way content merge merge-ort: flesh out implementation of handle_content_merge() merge-ort: copy and adapt merge_3way() from merge-recursive.c merge-ort: copy and adapt merge_submodule() from merge-recursive.c merge-ort: implement format_commit() merge-ort: copy find_first_merges() implementation from merge-recursive.c merge-ort: add handling for different types of files at same path diffcore-rename: remove unnecessary duplicate entry checks merge-ort: add new data structures for directory rename detection merge-ort: initialize and free new directory rename data structures merge-ort: collect which directories are removed in dirs_removed merge-ort: add outline for computing directory renames merge-ort: add outline of get_provisional_directory_renames() merge-ort: copy get_renamed_dir_portion() from merge-recursive.c merge-ort: implement compute_rename_counts() merge-ort: implement handle_directory_level_conflicts() merge-ort: modify collect_renames() for directory rename handling merge-ort: implement compute_collisions() merge-ort: implement apply_dir_rename() and check_dir_renamed() merge-ort: implement check_for_directory_rename() merge-ort: implement handle_path_level_conflicts() merge-ort: add a new toplevel_dir field merge-ort: implement apply_directory_rename_modifications() merge-ort: process_renames() now needs more defensiveness merge-ort: fix a directory rename detection bug merge-ort: fix massive leak merge-ort: ignore the directory rename split conflict for now merge-ort: begin performance work; instrument with trace2_region_* calls Eric Sunshine (3): worktree: teach `repair` to fix multi-directional breakage t/perf: avoid unnecessary test_export() recursion maintenance: fix incorrect `maintenance.repo` path with bare repository Eric Wong (2): core.abbrev=no disables abbreviations t1500: ensure current --since= behavior remains Felipe Contreras (7): pull: refactor fast-forward check pull: give the advice for choosing rebase/merge much later pull: display default warning only when non-ff completion: bash: add __git_have_func helper completion: bash: improve function detection test: completion: add tests for __git_complete completion: add proper public __git_complete Jacob Vosmaer (4): builtin/pack-objects.c: avoid iterating all refs ls-refs.c: initialize 'prefixes' before using it upload-pack.c: fix filter spec quoting bug t5544: clarify 'hook works with partial clone' test Jeff King (38): pack-bitmap: fix header size check pack-bitmap: bounds-check size of cache extension t5310: drop size of truncated ewah bitmap rev-list: die when --test-bitmap detects a mismatch ewah: factor out bitmap growth ewah: make bitmap growth less aggressive ewah: implement bitmap_or() ewah: add bitmap_dup() function pack-bitmap-write: reimplement bitmap writing pack-bitmap-write: pass ownership of intermediate bitmaps pack-bitmap-write: ignore BITMAP_FLAG_REUSE quote: make sq_dequote_step() a public function for_each_object_in_pack(): clarify pack vs index ordering config: parse more robust format in GIT_CONFIG_PARAMETERS refs: switch peel_ref() to peel_iterated_oid() run-command: document use_shell option git-svn tests: rewrite brittle tests to use "--[no-]merges". git-compat-util: always enable variadic macros commit_graft_pos(): take an oid instead of a bare hash rerere: check dirname format while iterating rr_cache directory rerere: tighten rr-cache dirname check rerere: use strmap to store rerere directories hash_pos(): convert to oid_pos() oid_pos(): access table through const pointers t0000: keep clean-up tests together t0000: run prereq tests inside sub-test t0000: run cleaning test inside sub-test t0000: consistently use single quotes for outer tests pretty: lazy-load commit data when expanding user-format completion: treat "branch -D" the same way as "branch -d" completion: handle other variants of "branch -m" doc/git-branch: fix awkward wording for "-c" t: add --no-tag option to test_commit mailmap: only look for .mailmap in work tree rev-list: add --disk-usage option for calculating disk usage docs/rev-list: add an examples section docs/rev-list: add some examples of --disk-usage doc: mention approxidates for git-commit --date Jiang Xin (5): test: add helper functions for git-bundle bundle: lost objects when removing duplicate pendings bundle: arguments can be read from stdin t5411: use different out file to prevent overwriting t5411: refactor check of refs using test_cmp_refs Joey Salazar (1): doc: fix naming of response-end-pkt Johannes Schindelin (42): tests: mark tests relying on the current default for `init.defaultBranch` t0060: preemptively adjust alignment t[01]*: adjust the references to the default branch name "main" t2*: adjust the references to the default branch name "main" t3[0-3]*: adjust the references to the default branch name "main" t3416: preemptively adjust alignment in a comment t34*: adjust the references to the default branch name "main" t3[5-9]*: adjust the references to the default branch name "main" t4*: adjust the references to the default branch name "main" t5323: prepare centered comment for `master` -> `main` t5[0-4]*: adjust the references to the default branch name "main" t5503: prepare aligned comment for replacing `master` with `main` t550*: adjust the references to the default branch name "main" t551*: adjust the references to the default branch name "main" t55[23]*: adjust the references to the default branch name "main" t55[4-9]*: adjust the references to the default branch name "main" t5[6-9]*: adjust the references to the default branch name "main" t6[0-3]*: adjust the references to the default branch name "main" t64*: preemptively adjust alignment to prepare for `master` -> `main` t6[4-9]*: adjust the references to the default branch name "main" t7[0-4]*: adjust the references to the default branch name "main" t7[5-9]*: adjust the references to the default branch name "main" t8*: adjust the references to the default branch name "main" t9[0-4]*: adjust the references to the default branch name "main" t9[5-7]*: adjust the references to the default branch name "main" tests(git-p4): transition to the default branch name `main` t99*: adjust the references to the default branch name "main" tests: drop prereq `PREPARE_FOR_MAIN_BRANCH` where no longer needed range-diff/format-patch: refactor check for commit range rebase -i: do leave commit message intact in fixup! chains range-diff: avoid leaking memory in two error code paths range-diff: libify the read_patches() function again range-diff: simplify code spawning `git log` range-diff: combine all options in a single data structure range-diff: move the diffopt initialization down one layer range-diff: offer --left-only/--right-only options range-diff/format-patch: handle commit ranges other than A..B range-diff(docs): explain how to specify commit ranges t1450: robustify `remove_object()` fsck --name-objects: be more careful parsing generation numbers reflog expire --stale-fix: be generous about missing objects commit-graph: when incompatible with graphs, indicate why Johannes Sixt (1): replace "parameters" by "arguments" in error messages Jonathan Tan (4): ls-refs: report unborn targets of symrefs connect, transport: encapsulate arg in struct clone: respect remote unborn HEAD usage: trace2 BUG() invocations Junio C Hamano (21): pack-redundant: gauge the usage before proposing its removal pull: get rid of unnecessary global variable pull: correct condition to trigger non-ff advice CoC: explicitly take any whitespace breakage The first batch in 2.31 cycle t4203: make blame output massaging more robust The second batch The third batch The fourth batch The fifth batch The sixth batch The seventh batch The eighth batch diff: --{rotate,skip}-to=<path> The ninth batch Documentation: typofix --column description The tenth batch push: do not turn --delete '' into a matching push blame-options.txt: camelcase blame.blankBoundary index-format doc: camelCase core.excludesFile Git 2.31-rc0 Martin von Zweigbergk (1): docs: clarify that refs/notes/ do not keep the attached objects alive Martin Ågren (7): object-name.c: rename from sha1-name.c object-file.c: rename from sha1-file.c sha1-lookup: rename `sha1_pos()` as `hash_pos()` hash-lookup: rename from sha1-lookup rev-list-options.txt: fix rendering of bonus paragraph git.txt: fix monospace rendering gitmailmap.txt: fix rendering of e-mail addresses Matheus Tavares (7): grep: error out if --untracked is used with --cached grep: honor sparse-checkout on working tree searches write_entry(): fix misuses of `path` in error messages checkout-index: omit entries with no tempname from --temp output add --chmod: don't update index when --dry-run is used add: mark --chmod error string for translation add: propagate --chmod errors to exit status Patrick Steinhardt (11): git: add `--super-prefix` to usage string config: add new way to pass config via `--config-env` config: extract function to parse config pairs fetch: extract writing to FETCH_HEAD fetch: use strbuf to format FETCH_HEAD updates fetch: refactor `s_update_ref` to use common exit path fetch: allow passing a transaction to `s_update_ref()` fetch: implement support for atomic reference updates config: store "git -c" variables using more robust format environment: make `getenv_safe()` a public function config: allow specifying config entries via envvar pairs Phil Hord (1): use delete_refs when deleting tags or branches Philippe Blain (1): mailmap doc: use correct environment variable 'GIT_WORK_TREE' Pranit Bauva (7): bisect--helper: reimplement `bisect_log` shell function in C bisect--helper: reimplement `bisect_replay` shell function in C bisect--helper: retire `--bisect-write` subcommand bisect--helper: use `res` instead of return in BISECT_RESET case option bisect--helper: retire `--bisect-auto-next` subcommand bisect--helper: reimplement `bisect_skip` shell function in C bisect--helper: retire `--check-and-set-terms` subcommand Rafael Silva (8): worktree: libify should_prune_worktree() worktree: teach worktree to lazy-load "prunable" reason worktree: teach worktree_lock_reason() to gently handle main worktree t2402: ensure locked worktree is properly cleaned up worktree: teach `list --porcelain` to annotate locked worktree worktree: teach `list` to annotate prunable worktree worktree: teach `list` verbose mode blame: remove unnecessary use of get_commit_info() René Scharfe (1): cache-tree: use ce_namelen() instead of strlen() SZEDER Gábor (2): t7800-difftool: don't accidentally match tmp dirs test-lib: prevent '--stress-jobs=X' from being ignored Sangeeta Jain (1): diff: do not show submodule with untracked files as "-dirty" Sergey Organov (32): revision: factor out parsing of diff-merge related options revision: factor out setup of diff-merge related settings revision: factor out initialization of diff-merge related settings revision: provide implementation for diff merges tweaks revision: move diff merges functions to its own diff-merges.c diff-merges: rename all functions to have common prefix diff-merges: move checks for first_parent_only out of the module diff-merges: rename diff_merges_default_to_enable() to match semantics diff-merges: re-arrange functions to match the order they are called in diff-merges: new function diff_merges_suppress() diff-merges: new function diff_merges_set_dense_combined_if_unset() diff-merges: introduce revs->first_parent_merges flag diff-merges: handle imply -p on -c/--cc logic for log.c diff-merges: revise revs->diff flag handling t4013: support test_expect_failure through ':failure' magic t4013: add tests for -m failing to override -c/--cc diff-merges: fix -m to properly override -c/--cc diff-merges: split 'ignore_merges' field diff-merges: group diff-merge flags next to each other inside 'rev_info' diff-merges: get rid of now empty diff_merges_init_revs() diff-merges: refactor opt settings into separate functions diff-merges: make -m/-c/--cc explicitly mutually exclusive diff-merges: implement new values for --diff-merges diff-merges: do not imply -p for new options diff-merges: let new options enable diff without -p diff-merges: add old mnemonic counterparts to --diff-merges diff-merges: add '--diff-merges=1' as synonym for 'first-parent' doc/git-log: describe new --diff-merges options doc/diff-generate-patch: mention new --diff-merges option doc/rev-list-options: document --first-parent changes merges format doc/git-show: include --diff-merges description t4013: add tests for --diff-merges=first-parent Seth House (4): mergetool: add hideResolved configuration mergetool: break setup_tool out into separate initialization function mergetool: add per-tool support and overrides for the hideResolved flag mergetools/vimdiff: add vimdiff1 merge tool variant Taylor Blau (36): ewah/ewah_bitmap.c: avoid open-coding ALLOC_GROW() pack-bitmap.c: check reads more aggressively when loading pack-bitmap: factor out 'bitmap_for_commit()' pack-bitmap: factor out 'add_commit_to_bitmap()' pack-revindex: introduce a new API write_reuse_object(): convert to new revindex API write_reused_pack_one(): convert to new revindex API write_reused_pack_verbatim(): convert to new revindex API check_object(): convert to new revindex API bitmap_position_packfile(): convert to new revindex API show_objects_for_type(): convert to new revindex API get_size_by_pos(): convert to new revindex API try_partial_reuse(): convert to new revindex API rebuild_existing_bitmaps(): convert to new revindex API get_delta_base_oid(): convert to new revindex API retry_bad_packed_offset(): convert to new revindex API packed_object_info(): convert to new revindex API unpack_entry(): convert to new revindex API for_each_object_in_pack(): convert to new revindex API builtin/gc.c: guess the size of the revindex pack-revindex: remove unused 'find_pack_revindex()' pack-revindex: remove unused 'find_revindex_position()' pack-revindex: hide the definition of 'revindex_entry' pack-revindex.c: avoid direct revindex access in 'offset_to_pack_pos()' refs: expose 'for_each_fullref_in_prefixes' ls-refs.c: traverse prefixes of disjoint "ref-prefix" sets packfile: prepare for the existence of '*.rev' files pack-write.c: prepare to write 'pack-*.rev' files builtin/index-pack.c: allow stripping arbitrary extensions builtin/index-pack.c: write reverse indexes builtin/pack-objects.c: respect 'pack.writeReverseIndex' Documentation/config/pack.txt: advertise 'pack.writeReverseIndex' t: prepare for GIT_TEST_WRITE_REV_INDEX t: support GIT_TEST_WRITE_REV_INDEX pack-revindex: ensure that on-disk reverse indexes are given precedence t5325: check both on-disk and in-memory reverse index Thomas Ackermann (6): doc hash-function-transition: fix asciidoc output doc hash-function-transition: use SHA-1 and SHA-256 consistently doc hash-function-transition: use upper case consistently doc hash-function-transition: fix incomplete sentence doc hash-function-transition: move rationale upwards doc: use https links Torsten Bögershausen (1): MacOS: precompose_argv_prefix() ZheNing Hu (4): ls_files.c: bugfix for --deleted and --modified ls_files.c: consolidate two for loops into one ls-files.c: add --deduplicate option difftool.c: learn a new way start at specified file brian m. carlson (8): abspath: add a function to resolve paths with missing components rev-parse: add option for absolute or relative path formatting ref-filter: switch some uses of unsigned long to size_t commit: ignore additional signatures when parsing signed commits gpg-interface: improve interface for parsing tags commit: allow parsing arbitrary buffers with headers ref-filter: hoist signature parsing gpg-interface: remove other signature headers before verifying Ævar Arnfjörð Bjarmason (90): pretty format %(trailers) test: split a long line pretty format %(trailers) doc: avoid repetition pretty-format %(trailers): fix broken standalone "valueonly" pretty format %(trailers): add a "keyonly" pretty format %(trailers): add a "key_value_separator" mktag doc: say <hash> not <sha1> mktag doc: grammar fix, when exists -> when it exists CoC: Update word-wrapping to match upstream mktag doc: update to explain why to use this mktag tests: don't needlessly use a subshell mktag tests: use "test_commit" helper mktag tests: remove needless SHA-1 hardcoding mktag tests: don't redirect stderr to a file needlessly mktag tests: don't create "mytag" twice mktag tests: run "fsck" after creating "mytag" mktag tests: stress test whitespace handling mktag tests: test "hash-object" compatibility mktag tests: improve verify_object() test coverage mktag tests: test verify_object() with replaced objects mktag: use default strbuf_read() hint mktag: remove redundant braces in one-line body "if" mktag: use puts(str) instead of printf("%s\n", str) mktag: use fsck instead of custom verify_tag() fsck: make fsck_config() re-usable mktag: allow turning off fsck.extraHeaderEntry mktag: allow omitting the header/body \n separator mktag: convert to parse-options mktag: mark strings for translation mktag: add a --[no-]strict option mailmap doc: create a new "gitmailmap(5)" man page mailmap doc: quote config variables `like.this` check-mailmap doc: note config options mailmap doc: start by mentioning the comment syntax mailmap tests: use our preferred whitespace syntax mailmap tests: modernize syntax & test idioms mailmap tests: improve --stdin tests mailmap tests: remove redundant entry in test mailmap tests: add a test for "not a blob" error mailmap tests: get rid of overly complex blame fuzzing mailmap: test for silent exiting on missing file/blob test-lib functions: expand "test_commit" comment template test-lib functions: document arguments to test_commit test-lib functions: add --author support to test_commit test-lib functions: add an --append option to test_commit tests: refactor a few tests to use "test_commit --append" mailmap doc + tests: add better examples & test them mailmap tests: add a test for comment syntax mailmap tests: add tests for whitespace syntax mailmap tests: add tests for empty "<>" syntax mailmap doc + tests: document and test for case-insensitivity shortlog: remove unused(?) "repo-abbrev" feature CoC: update to version 2.0 + local changes ci: remove GETTEXT_POISON jobs tests: remove support for GIT_TEST_GETTEXT_POISON tests: remove uses of GIT_TEST_GETTEXT_POISON=false cache-tree tests: refactor for modern test style cache-tree tests: remove unused $2 parameter cache-tree tests: use a sub-shell with less indirection cache-tree tests: explicitly test HEAD and index differences git svn mergeinfo tests: modernize redirection & quoting style git svn mergeinfo tests: refactor "test -z" to use test_must_be_empty upload-pack tests: avoid a non-zero "grep" exit status archive tests: use a cheaper "zipinfo -h" invocation to get header rm tests: actually test for SIGPIPE in SIGPIPE test config.mak.uname: remove redundant NO_LIBPCRE1_JIT flag Remove support for v1 of the PCRE library grep/pcre2 tests: don't rely on invalid UTF-8 data test grep/pcre2: better support invalid UTF-8 haystacks grep/log: remove hidden --debug and --grep-debug options pager: refactor wait_for_pager() function pager: test for exit code with and without SIGPIPE run-command: add braces for "if" block in wait_or_whine() pager: properly log pager exit code when signalled test-lib: remove check_var_migration test lib: change "error" to "BUG" as appropriate test-lib-functions: move test_set_index_version() to its user test-lib-functions: remove generate_zero_bytes() wrapper test libs: rename bundle helper to "lib-bundle.sh" test libs: rename gitweb-lib.sh to lib-gitweb.sh test-lib-functions: move function to lib-bitmap.sh t/.gitattributes: sort lines tests: remove last uses of GIT_TEST_GETTEXT_POISON=false tests: remove most uses of C_LOCALE_OUTPUT tests: remove last uses of C_LOCALE_OUTPUT tests: remove most uses of test_i18ncmp diff: add an API for deferred freeing diff: plug memory leak from regcomp() on {log,diff} -I test libs: rename "diff-lib" to "lib-diff" test-lib-functions: remove bug-inducing "diagnostics" helper param test-lib-functions: assert correct parameter count Version v2.30.9; changes since v2.30.8: --------------------------------------- Derrick Stolee (1): ci: update 'static-analysis' to Ubuntu 22.04 Jeff King (6): http-push: prefer CURLOPT_UPLOAD to CURLOPT_PUT http: prefer CURLOPT_SEEKFUNCTION to CURLOPT_IOCTLFUNCTION range-diff: drop useless "offset" variable from read_patches() http: support CURLOPT_PROTOCOLS_STR range-diff: handle unterminated lines in read_patches() range-diff: use ssize_t for parsed "len" in read_patches() Jiang Xin (4): github-actions: run gcc-8 on ubuntu-20.04 image ci: remove the pipe after "p4 -V" to catch errors ci: use the same version of p4 on both Linux and macOS ci: install python on ubuntu Johannes Schindelin (11): compat/win32/syslog: fix use-after-realloc nedmalloc: avoid new compile error t0033: GETTEXT_POISON fix t0003: GETTEXT_POISON fix, part 1 t0003: GETTEXT_POISON fix, conclusion t5619: GETTEXT_POISON fix t5604: GETTEXT_POISON fix, part 1 t5604: GETTEXT_POISON fix, conclusion clone.c: avoid "exceeds maximum object size" error with GCC v12.x apply --reject: overwrite existing `.rej` symlink if it exists gettext: avoid using gettext if the locale dir is not present Junio C Hamano (1): http.c: clear the 'finished' member once we are done with it Taylor Blau (5): t1300: demonstrate failure when renaming sections with long lines config: avoid fixed-sized buffer when renaming/deleting a section config.c: avoid integer truncation in `copy_or_rename_section_in_file()` config.c: disallow overly-long lines in `copy_or_rename_section_in_file()` Git 2.30.9 Version v2.30.8; changes since v2.30.7: --------------------------------------- Johannes Schindelin (1): attr: adjust a mismatched data type Junio C Hamano (1): Git 2.30.8 Patrick Steinhardt (1): apply: fix writing behind newly created symbolic links Taylor Blau (3): t5619: demonstrate clone_local() with ambiguous transport clone: delay picking a transport until after get_repo_path() dir-iterator: prevent top-level symlinks without FOLLOW_SYMLINKS Version v2.30.7; changes since v2.30.6: --------------------------------------- Carlo Marcelo Arenas Belón (1): test-lib: add prerequisite for 64-bit platforms Junio C Hamano (1): Git 2.30.7 Patrick Steinhardt (21): attr: fix overflow when upserting attribute with overly long name attr: fix out-of-bounds read with huge attribute names attr: fix integer overflow when parsing huge attribute names attr: fix out-of-bounds write when parsing huge number of attributes attr: fix out-of-bounds read with unreasonable amount of patterns attr: fix integer overflow with more than INT_MAX macros attr: harden allocation against integer overflows attr: fix silently splitting up lines longer than 2048 bytes attr: ignore attribute lines exceeding 2048 bytes attr: ignore overly large gitattributes files pretty: fix out-of-bounds write caused by integer overflow pretty: fix out-of-bounds read when left-flushing with stealing pretty: fix out-of-bounds read when parsing invalid padding format pretty: fix adding linefeed when placeholder is not expanded pretty: fix integer overflow in wrapping format utf8: fix truncated string lengths in `utf8_strnwidth()` utf8: fix returning negative string width utf8: fix overflow when returning string width utf8: fix checking for glyph width in `strbuf_utf8_replace()` utf8: refactor `strbuf_utf8_replace` to not rely on preallocated buffer pretty: restrict input lengths for padding and wrapping formats Version v2.30.6; changes since v2.30.5: --------------------------------------- Jeff King (2): shell: add basic tests shell: limit size of interactive commands Kevin Backhouse (1): alias.c: reject too-long cmdline strings in split_cmdline() Taylor Blau (12): builtin/clone.c: disallow `--local` clones with symlinks t/lib-submodule-update.sh: allow local submodules t/t1NNN: allow local submodules t/2NNNN: allow local submodules t/t3NNN: allow local submodules t/t4NNN: allow local submodules t/t5NNN: allow local submodules t/t6NNN: allow local submodules t/t7NNN: allow local submodules t/t9NNN: allow local submodules transport: make `protocol.file.allow` be "user" by default Git 2.30.6 Version v2.30.5; changes since v2.30.4: --------------------------------------- Carlo Marcelo Arenas Belón (5): t: regression git needs safe.directory when using sudo git-compat-util: avoid failing dir ownership checks if running privileged t0034: add negative tests and allow git init to mostly work under sudo git-compat-util: allow root to access both SUDO_UID and root owned setup: tighten ownership checks post CVE-2022-24765 Johannes Schindelin (1): Git 2.30.5 Version v2.30.4; changes since v2.30.3: --------------------------------------- Derrick Stolee (2): t0033: add tests for safe.directory setup: opt-out of check with safe.directory=* Junio C Hamano (1): Git 2.30.4 Matheus Valadares (1): setup: fix safe.directory key not being checked Version v2.30.3; changes since v2.30.2: --------------------------------------- Carlo Marcelo Arenas Belón (1): mingw: avoid fallback for {local,gm}time_r() Johannes Schindelin (4): Add a function to determine whether a path is owned by the current user setup_git_directory(): add an owner check for the top-level directory Fix `GIT_CEILING_DIRECTORIES` with `C:\` and the likes Git 2.30.3 Version v2.30.2; changes since v2.30.1: --------------------------------------- Johannes Schindelin (15): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Git 2.22.5 Git 2.23.4 Git 2.24.4 Git 2.25.5 Git 2.26.3 Git 2.27.1 Git 2.28.1 Git 2.29.3 Git 2.30.2 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Taylor Blau (1): .github/workflows/main.yml: run static-analysis on bionic Version v2.30.1; changes since v2.30.0: --------------------------------------- Adam Dinwoodie (1): t4129: fix setfacl-related permissions failure Antonio Russo (1): t6016: move to lib-log-graph.sh framework Daniel Levin (1): git-p4: fix syncing file types with pattern Derrick Stolee (1): for-each-repo: do nothing on empty config Elijah Newren (3): t7012: add a testcase demonstrating stash apply bugs in sparse checkouts stash: remove unnecessary process forking stash: fix stash application in sparse-checkouts Felipe Contreras (1): test: bisect-porcelain: fix location of files Jeff King (5): git_connect_git(): forbid newlines in host and path fsck: reject .gitmodules git:// urls with newlines t5516: loosen "not our ref" error check patch-ids: handle duplicate hashmap entries p5303: avoid sed GNU-ism Johannes Schindelin (1): SKIP_DASHED_BUILT_INS: respect `config.mak` Johannes Sixt (1): annotate-tests: quote variable expansions containing path names Jonathan Tan (1): Doc: clarify contents of packfile sent as URI Junio C Hamano (5): parse-options: format argh like error messages SubmittingPatches: tighten wording on "sign-off" procedure ci/install-depends: attempt to fix "brew cask" stuff Prepare for 2.30.1 Git 2.30.1 Martin Ågren (9): t1300: remove duplicate test for `--file ../foo` t1300: remove duplicate test for `--file no-such-file` t1300: don't needlessly work with `core.foo` configs pack-format.txt: document sizes at start of delta data builtin/gc: don't peek into `struct lock_file` commit-graph: don't peek into `struct lock_file` midx: don't peek into `struct lock_file` refs/files-backend: don't peek into `struct lock_file` read-cache: try not to peek into `struct {lock_,temp}file` Matheus Tavares (1): t4129: don't fail if setgid is set in the test directory Peter Kaestle (1): submodules: fix of regression on fetching of non-init subsub-repo Philippe Blain (3): gitmodules.txt: fix 'GIT_WORK_TREE' variable name mergetool--lib: fix '--tool-help' to correctly show available tools ci: do not cancel all jobs of a matrix if one fails René Scharfe (1): rebase: verify commit parameter Taylor Blau (2): p7519: allow running without watchman prereq Documentation/git-clone.txt: document race with --local Thomas Ackermann (1): doc: fix some typos Utku Gultopu (1): doc: remove "directory cache" from man pages Vasyl Vavrychuk (1): git-send-email.txt: mention less secure app access with Gmail ZheNing Hu (1): builtin/*: update usage format brian m. carlson (1): docs: rephrase and clarify the git status --short format Ævar Arnfjörð Bjarmason (10): branch: change "--local" to "--list" in comment branch tests: add to --sort tests ref-filter: add braces to if/else if/else chain ref-filter: move "cmp_fn" assignment into "else if" arm ref-filter: move ref_sorting flags to a bitfield branch: sort detached HEAD based on a flag branch: show "HEAD detached" first under reverse sort Makefile: remove a warning about old GETTEXT_POISON flag gettext.c: remove/reword a mostly-useless comment fsck doc: remove ancient out-of-date diagnostics Version v2.30.0; changes since v2.30.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5037t) Arusekk (1): l10n: pl.po: add translation and set team leader Baptiste Fontaine (1): l10n: fr.po Fix a typo Emir Sarı (2): l10n: tr: v2.30.0-r1 l10n: tr: v2.30.0-r2 Jean-Noël Avila (3): l10n: fr fix misleading message l10n: fr.po: v2.30.0 rnd 1 l10n: fr.po v2.30.0 rnd 2 Jiang Xin (3): l10n: git.pot: v2.30.0 round 1 (70 new, 45 removed) l10n: git.pot: v2.30.0 round 2 (1 new, 2 removed) l10n: zh_CN: for git v2.30.0 l10n round 1 and 2 Jordi Mas (2): l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (1): Git 2.30 Matthias Rüster (1): l10n: de.po: Update German translation for Git 2.30.0 Peter Krefting (2): l10n: sv.po: Update Swedish translation (5038t0f0u) l10n: sv.po: Update Swedish translation (5037t0f0u) Philippe Blain (1): git.txt: fix typos in 'linkgit' macro invocation Trần Ngọc Quân (1): l10n: vi.po(5037t): v2.30.0 rnd 2 Yi-Jyun Pan (1): l10n: zh_TW.po: v2.30.0 round 2 (1 untranslated) m4sk1n (1): l10n: pl.po: started Polish translation Version v2.30.0-rc2; changes since v2.30.0-rc1: ----------------------------------------------- Jiang Xin (1): pack-redundant: fix crash when one packfile in repo Johannes Schindelin (12): t1400: use `main` as initial branch name t3200: finish transitioning to the initial branch name `main` t3201: finalize transitioning to using the branch name `main` t3203: complete the transition to using the branch name `main` t3205: finalize transitioning to using the branch name `main` t5505: finalize transitioning to using the branch name `main` t5510: use `main` as initial branch name t5703: use `main` as initial branch name t6302: use `main` as initial branch name t9902: use `main` as initial branch name tests: drop the `PREPARE_FOR_MAIN_BRANCH` prereq checkout -p: handle tree arguments correctly again Junio C Hamano (1): Git 2.30-rc2 Martin Ågren (3): git-maintenance.txt: add missing word gc: fix handling of crontab magic markers t7900-maintenance: test for magic markers Nipunn Koorapati (2): negative-refspec: fix segfault on : refspec negative-refspec: improve comment on query_matches_negative_refspec Version v2.30.0-rc1; changes since v2.30.0-rc0: ----------------------------------------------- David Aguilar (1): git-gui: ssh-askpass: add a checkbox to show the input text Dimitriy Ryazantcev (1): git-gui: update Russian translation Eric Sunshine (1): t/perf: fix test_export() failure with BSD `sed` Jeff Hostetler (1): index-format.txt: document v2 format of file system monitor extension Jeff King (9): oid-array.h: drop sha1 mention from header guard t0064: drop sha1 mention from filename t0064: make duplicate tests more robust cache.h: move hash/oid functions to hash.h oid-array: make sort function public oid-array: provide a for-loop iterator commit-graph: drop count_distinct_commits() function commit-graph: replace packed_oid_list with oid_array commit-graph: use size_t for array allocation and indexing Johannes Berg (1): docs: multi-pack-index: remove note about future 'verify' work Johannes Schindelin (6): t6300: avoid using the default name of the initial branch t7064: avoid relying on a specific default branch name init: document `init.defaultBranch` better branch -m: allow renaming a yet-unborn branch get_default_branch_name(): prepare for showing some advice init: provide useful advice about init.defaultBranch Josh Steadmon (1): t7900: use --fixed-value in git-maintenance tests Junio C Hamano (5): strmap: make callers of strmap_remove() to call it in void context compat-util: pretend that stub setitimer() always succeeds diff: correct interaction between --exit-code and -I<pattern> Another batch before 2.30-rc1 Git 2.30-rc1 Martin Schön (1): git-gui: use commit message template Pratyush Yadav (1): git-gui: Only touch GITGUI_MSG when needed Ramsay Jones (6): Documentation/Makefile: conditionally include doc.dep Documentation/Makefile: conditionally include ../GIT-VERSION-FILE gitweb/Makefile: conditionally include ../GIT-VERSION-FILE Makefile: don't try to clean old debian build product Makefile: don't use a versioned temp distribution directory Makefile: conditionally include GIT-VERSION-FILE Randall S. Becker (1): config.mak.uname: remove old NonStop compatibility settings Serg Tereshchenko (1): git-gui: Fix selected text colors Stefan Haller (2): git-gui: fix colored label backgrounds when using themed widgets git-gui: use gray background for inactive text widgets Taylor Blau (2): builtin/clone.c: don't ignore transport_fetch_refs() errors upload-pack.c: don't free allowed_filters util pointers Ævar Arnfjörð Bjarmason (1): style: do not "break" in switch() after "return" Đoàn Trần Công Danh (1): doc: mention Python 3.x supports Version v2.30.0-rc0; changes since v2.29.3: ------------------------------------------- Adam Spiers (1): hook: add sample template for push-to-checkout Alex Vandiver (2): dir.c: fix comments to agree with argument name fsmonitor: use fsmonitor data in `git diff` Alexey (1): completion: fix zsh installation instructions Amanda Shafack (1): t2200,t9832: avoid using 'git' upstream in a pipe Arnout Engelen (1): doc: make HTML manual reproducible Bradley M. Kuhn (2): Documentation: clarify and expand description of --signoff Documentation: stylistically normalize references to Signed-off-by: Caleb Tillman (1): t0000: use test_path_is_file instead of "test -f" Charvi Mendiratta (5): t7101,t7102,t7201: modernize test formatting t7102,t7201: remove unnecessary blank spaces in test body t7102,t7201: remove whitespace after redirect operator t7201: use 'git -C' to avoid subshell t7201: put each command on a separate line Chris. Webster (1): ci: github action - add check for whitespace errors Daniel Duvall (1): upload-pack: allow stateless client EOF just prior to haves Daniel Gurney (2): compat/bswap.h: simplify MSVC endianness detection compat/bswap.h: don't assume MSVC is little-endian Dennis Ameling (1): ci(vs-build): stop passing the iconv library location explicitly Denton Liu (18): t4068: remove unnecessary >tmp git-diff-index.txt: make --cached description a proper sentence git-diff.txt: backtick quote command text contrib/completion: extract common diff/difftool options diff-lib: accept option flags in run_diff_index() diff-lib: define diff_get_merge_base() t4068: add --merge-base tests builtin/diff-index: learn --merge-base builtin/diff-tree: learn --merge-base contrib/completion: complete `git diff --merge-base` Documentation/config/checkout: replace sq with backticks builtin/checkout: fix `git checkout -p HEAD...` bug Doc: document "A...B" form for <tree-ish> in checkout and switch add-patch: add NEEDSWORK about comparing commits t2016: add a NEEDSWORK about the PERL prerequisite checkout: learn to respect checkout.guess contrib/git-resurrect.sh: indent with tabs contrib/git-resurrect.sh: use hash-agnostic OID pattern Derrick Stolee (28): maintenance: add prefetch task maintenance: add loose-objects task maintenance: create auto condition for loose-objects midx: enable core.multiPackIndex by default midx: use start_delayed_progress() maintenance: add incremental-repack task maintenance: auto-size incremental-repack batch maintenance: add incremental-repack auto condition maintenance: optionally skip --auto process maintenance: add --schedule option and config for-each-repo: run subcommands on configured repos maintenance: add [un]register subcommands maintenance: add start/stop subcommands maintenance: test commit-graph auto condition commit-graph: ignore duplicates when merging layers commit-graph: don't write commit-graph when disabled maintenance: core.commitGraph=false prevents writes maintenance: create maintenance.strategy config maintenance: use 'incremental' strategy by default maintenance: add troubleshooting guide to docs config: convert multi_replace to flags config: replace 'value_regex' with 'value_pattern' t1300: test "set all" mode with value-pattern t1300: add test for --replace-all with value-pattern config: add --fixed-value option, un-implemented config: plumb --fixed-value into config API config: implement --fixed-value with --get* maintenance: use 'git config --fixed-value' Drew DeVault (1): help.c: help.autocorrect=never means "do not compute suggestions" Elijah Newren (37): hashmap: add usage documentation explaining hashmap_free[_entries]() directory-rename-detection.txt: update references to regression tests t6423: more involved directory rename test t6423: update directory rename detection tests with new rule t6423: more involved rules for renaming directories into each other t7518: fix flaky grep invocation test-lib: allow selecting tests by substring/glob with --run t6006, t6012: adjust tests to use 'setup' instead of synonyms test-lib: reduce verbosity of skipped tests sequencer: remove duplicate rollback_lock_file() call t/: new helper for tests that pass with ort but fail with recursive merge tests: expect improved directory/file conflict handling in ort t6416: correct expectation for rename/rename(1to2) + directory/file t6404, t6423: expect improved rename/delete handling in ort backend t6423: expect improved conflict markers labels in the ort backend merge tests: expect slight differences in output for recursive vs. ort t6423, t6436: note improved ort handling with dirty files t6423: note improved ort handling with untracked files t6423: add more details about direct resolution of directories merge-ort: barebones API of new merge strategy with empty implementation merge-ort-wrappers: new convience wrappers to mimic the old merge API fast-rebase: demonstrate merge-ort's API via new test-tool command hashmap: adjust spacing to fix argument alignment hashmap: allow re-use after hashmap_free() hashmap: introduce a new hashmap_partial_clear() hashmap: provide deallocation function names strmap: new utility functions merge,rebase,revert: select ort or recursive by config or environment strmap: add more utility functions strmap: enable faster clearing and reusing of strmaps strmap: add functions facilitating use as a string->int map strmap: split create_entry() out of strmap_put() strmap: add a strset sub-type strmap: enable allocations to come from a mem_pool strmap: take advantage of FLEXPTR_ALLOC_STR when relevant Use new HASHMAP_INIT macro to simplify hashmap initialization shortlog: use strset from strmap.h Emily Shaffer (1): MyFirstContribution: clarify asciidoc dependency Felipe Contreras (41): completion: zsh: fix __gitcomp_direct() completion: zsh: fix name due to broken autoloading completion: zsh: fix bash script extension completion: zsh: reorganize install instructions completion: zsh: fix for directories with spaces completion: zsh: update slave script locations completion: prompt: fix color for Zsh completion: zsh: fix for command aliasing completion: bash: synchronize zsh wrapper completion: bash: remove zsh wrapper completion: zsh: fix completion for --no-.. options completion: fix conflict with bashcomp completion: zsh: add missing direct_append completion: zsh: fix splitting of words completion: zsh: simplify compadd functions completion: zsh: simplify direct compadd completion: zsh: trivial cleanup completion: zsh: simplify nl_append completion: zsh: simplify file_direct completion: zsh: shuffle functions around completion: zsh: refactor command completion completion: zsh: improve command tags completion: zsh: add alias descriptions completion: zsh: trivial simplification completion: zsh: add simple version check completion: bash: trivial cleanup completion: bash: cleanup cygwin check completion: bash: remove old compat wrappers zsh: update copyright notices completion: bash: support recursive aliases completion: bash: check for alias loop completion: bash: improve alias loop detection tests: push: improve cleanup of HEAD tests tests: push: trivial cleanup refspec: make @ a synonym of HEAD refspec: trivial cleanup .gitignore: remove dangling file test: completion: fix typos tests: lib-functions: trivial style cleanups completion: zsh: fix file completion regression completion: bash: fix gitk alias regression Han-Wen Nienhuys (1): move sleep_millisec to git-compat-util.h Javier Spagnoletti (1): userdiff: PHP: catch "abstract" and "final" functions Jeff King (32): fast-import: fix over-allocation of marks storage usage: define a type for a reporting function config.mak.dev: build with -fno-common fast-import: remove duplicated option-parsing line perl: check for perl warnings while running tests am, sequencer: stop parsing our own committer ident test-pkt-line: drop colon from sideband identity checkout-index: drop error message from empty --stage=all checkout-index: propagate errors to exit code sideband: diagnose more sideband anomalies format-patch: refactor output selection format-patch: tie file-opening logic to output_directory format-patch: support --output option rev-parse: don't accept options after dashdash rev-parse: put all options under the "-" check rev-parse: handle --end-of-options compute pack .idx byte offsets using size_t use size_t to store pack .idx byte offsets fsck: correctly compute checksums on idx files larger than 4GB block-sha1: take a size_t length parameter packfile: detect overflow in .idx file size checks repack: make "exts" array available outside cmd_repack() send-pack: kill pack-objects helper on signal or exit submodule: fix fetch_in_submodule logic upload-pack: kill pack-objects helper on signal or exit banned.h: mark non-reentrant gmtime, etc as banned t7900: speed up expensive test gitignore: drop duplicate entry for git-sh-i18n banned.h: mark ctime_r() and asctime_r() as banned Makefile: mark git-maintenance as a builtin upload-pack: propagate return value from object filter config callback style: indent multiline "if" conditions to align Jiang Xin (3): t5411: new helper filter_out_user_friendly_and_stable_output receive-pack: gently write messages to proc-receive receive-pack: use default version 0 for proc-receive Jinoh Kang (2): diff: allow passing NULL to diff_free_filespec_data() t7800: simplify difftool test Joey Salazar (1): t7006: Use test_path_is_* functions in test script Johannes Schindelin (56): ci: work around old records of GitHub runs ci: make the "skip-if-redundant" check more defensive sideband: avoid reporting incomplete sideband messages sideband: report unhandled incomplete sideband messages as bugs fmt-merge-msg: also suppress "into main" by default t9801: use `--` in preparation for default branch rename tests: start moving to a different default main branch name t6200: adjust suppression pattern to also match "main" t5703: adjust a test case for the upcoming default branch name t3200: prepare for `main` being shorter than `master` t9902: prepare a test for the upcoming default branch name tests: prepare aligned mentions of the default branch name t1400: prepare for `main` being default branch name t5411: start using the default branch name "main" t5411: start adjusting the support files for init.defaultBranch=main t5411: adjust the remaining support files for init.defaultBranch=main t5411: finish preparing for `main` being the default branch name t5515: use `main` as the name of the main branch for testing (part 1) t5515: use `main` as the name of the main branch for testing (part 2) t5515: use `main` as the name of the main branch for testing (part 3) t5515: use `main` as the name of the main branch for testing (conclusion) t2402: fix typo ci: make the whitespace checker more robust tests: consolidate the `file_size` function into `test-lib-functions.sh` ci: avoid using the deprecated `set-env` construct p4: respect init.defaultBranch t1004: insert missing "branch" in a message t3406: indent with tabs, not spaces t3427: adjust stale comment t5400,t5402: consistently indent with tabs, not with spaces t5570: remove trailing padding t9603: use tabs for indentation add -i (built-in): do show an error message for incorrect inputs add -i (built-in): send error messages to stderr add -p (built-in): imitate `xdl_format_hunk_hdr()` generating hunk headers add -i: use `reset_color` consistently add -i (built-in): prevent the `reset` "color" from being configured add -i (built-in): use correct names to load color.diff.* config mergetools/bc: add `bc4` to the alias list for Beyond Compare mergetool: avoid letting `list_tool_variants` break user-defined setups add -p (built-in): do not color the progress indicator separately add -i (built-in): use the same indentation as the Perl version add -i (Perl version): color header to match the C version add -p: prefer color.diff.context over color.diff.plain add -i: verify in the tests that colors can be overridden t2106: adjust style to the current conventions t2106: make test independent of the current main branch name t2106: ensure that the checkout fails for the expected reason t3040: remove stale note t1309: use a neutral branch name in the `onbranch` test cases t4015: let the test pass with any default branch name pull: colorize the hint about setting `pull.rebase` t3404: do not depend on any specific default branch name t5526: avoid depending on a specific default branch name t5526: drop the prereq expecting the default branch name `main` cmake: determine list of extra built-ins dynamically Jonathan Tan (3): apply: when -R, also reverse list of sections sequencer: tolerate abbreviated stopped-sha file usage: add trace2 entry upon warning() Josh Steadmon (12): docs: new capability to advertise session IDs docs: new transfer.advertiseSID option trace2: add a public function for getting the SID upload-pack: advertise session ID in v0 capabilities receive-pack: advertise session ID in v0 capabilities serve: advertise session ID in v2 capabilities transport: log received server session ID fetch-pack: advertise session ID in capabilities upload-pack, serve: log received client session ID send-pack: advertise session ID in capabilities receive-pack: log received client session ID t7900: fix typo: "test_execpt_success" Junio C Hamano (26): doc: preparatory clean-up of description on the sign-off option SubmittingPatches: clarify DCO is our --signoff rule Revert "test_cmp: diagnose incorrect arguments" t7102: prepare expected output inside test_expect_* block other small fixes for 2.29.2 SubmittingPatches: clarify the purpose of the final resend First batch Second batch Makefile: enable -Wsparse-error for DEVELOPER build Third batch log: diagnose -L used with pathspec as an error doc: clarify that --abbrev=<n> is about the minimum length Fourth batch format-patch: make output filename configurable Fifth batch ci: avoid `set-env` construct in print-test-failures.sh Sixth batch Seventh batch MyFirstContribition: answering questions is not the end of the story config doc: value-pattern is not necessarily a regexp Eighth batch Ninth batch Revert "submodules: fix of regression on fetching of non-init subsub-repo" Tenth batch Eleventh batch Git 2.30-rc0 Konrad Borowski (1): userdiff: recognize 'macro_rules!' as starting a Rust function block Kyle Meyer (1): stash: add missing space to an error message Marlon Rac Cambasis (1): doc: fixing two trivial typos in Documentation/ Martin Ågren (5): list-objects-filter-options: fix function name in BUG grep: don't set up a "default" repo for grep grep: use designated initializers for `grep_defaults` grep: copy struct in one fell swoop MyFirstObjectWalk: drop `init_walken_defaults()` Matheus Tavares (2): worktree: fix order of arguments in error message apply: don't use core.sharedRepository to create working tree files Michał Kępień (2): merge-base, xdiff: zero out xpparam_t structures diff: add -I<regex> that ignores matching changes Nate Avers (2): notes.c: fix a segfault in notes_display_config() t3301: test proper exit response to no-value notes.displayRef. Nicolas Morey-Chaisemartin (1): imap-send: parse default git config Nipunn Koorapati (17): t/perf/README: elaborate on output format t/perf/p7519-fsmonitor.sh: warm cache on first git status t/perf: add fsmonitor perf test for git diff perf lint: add make test-lint to perf tests p7519-fsmonitor: refactor to avoid code duplication p7519-fsmonitor: add a git add benchmark t/perf/fsmonitor: separate one time repo initialization t/perf/fsmonitor: move watchman setup to one-time-repo-setup t/perf/fsmonitor: improve error message if typoing hook name t/perf/fsmonitor: factor description out for readability t/perf/fsmonitor: shorten DESC to basename t/perf/fsmonitor: silence initial git commit t/perf/fsmonitor: factor setup for fsmonitor into function t/perf/fsmonitor: initialize test with git reset t/perf/fsmonitor: perf comparison of multiple fsmonitor integrations t/perf/fsmonitor: add benchmark for dirty status perf/fsmonitor: use test_must_be_empty helper Patrick Steinhardt (4): t1400: avoid touching refs on filesystem update-ref: allow creation of multiple transactions p1400: use `git-update-ref --stdin` to test multiple transactions update-ref: disallow "start" for ongoing transactions Peter Kaestle (1): submodules: fix of regression on fetching of non-init subsub-repo Philippe Blain (14): ref-filter: handle CRLF at end-of-line more gracefully log, show: add tests for messages containing CRLF doc: log, gitk: move '-L' description to 'line-range-options.txt' doc: line-range: improve formatting blame-options.txt: also mention 'funcname' in '-L' description doc: add more pointers to gitattributes(5) for userdiff line-log: mention both modes in 'blame' and 'log' short help blame: enable funcname blaming with userdiff driver blame: simplify 'setup_scoreboard' interface blame: simplify 'setup_blame_bloom_data' interface pull --rebase: compute rebase arguments in separate function t5572: add notes on a peculiar test t5572: describe '--rebase' tests a little more pull: check for local submodule modifications with the right range Phillip Wood (4): rebase -i: stop overwriting ORIG_HEAD buffer rebase -i: use struct object_id rather than looking up commit rebase -i: use struct object_id when writing state rebase -i: simplify get_revision_ranges() Pranit Bauva (7): bisect--helper: finish porting `bisect_start()` to C bisect--helper: retire `--bisect-clean-state` subcommand bisect--helper: retire `--next-all` subcommand bisect--helper: reimplement `bisect_state` & `bisect_head` shell functions in C bisect--helper: retire `--check-expected-revs` subcommand bisect--helper: retire `--write-terms` subcommand bisect--helper: retire `--bisect-autostart` subcommand Rafael Silva (2): worktree: teach `list` to annotate locked worktree maintenance: fix SEGFAULT when no repository René Scharfe (19): Makefile: use git init/add/commit/archive for dist-doc Makefile: remove the unused variable TAR_DIST_EXTRA_OPTS grep: handle deref_tag() returning NULL blame: handle deref_tag() returning NULL line-log: handle deref_tag() returning NULL object: allow clear_commit_marks_all to handle any repo bisect: clear flags in passed repository stash: simplify reflog emptiness check pack-write: use hashwrite_be32() instead of double-buffering array archive: support compression levels beyond 9 blame: silently ignore invalid ignore file objects csum-file: add hashwrite_be64() midx: use hashwrite_be64() pack-write: use hashwrite_be64() diff-lib: plug minor memory leaks in do_diff_cache() archive: release refname after use gc: fix cast in compare_tasks_by_selection() fetch-pack: disregard invalid pack lockfiles gitignore: remove entry for git serve Robert Karszniewicz (2): git-completion.bash: __git_diff_common_options: add --[no-]patch git-completion.bash: stash-show: complete $__git_diff_common_options SZEDER Gábor (4): bisect: loosen halfway() check for a large number of commits t5310-pack-bitmaps: skip JGit tests with SHA256 tests: make sure nested lazy prereqs work reliably tests: fix description of 'test_set_prereq' Samuel Čavoj (3): sequencer: fix gpg option passed to merge subcommand sequencer: pass explicit --no-gpg-sign to merge t3435: add tests for rebase -r GPG signing Sean Barag (7): clone: add tests for --template and some disallowed option pairs clone: use more conventional config/option layering remote: add tests for add and rename with invalid names refs: consolidate remote name validation clone: validate --origin option before use clone: read new remote name from remote_name instead of option_origin clone: allow configurable default for `-o`/`--origin` Sergey Organov (2): doc/diff-options: fix out of place mentions of '--patch/-p' glossary: improve "branch" definition Sibo Dong (1): git-prompt.sh: localize `option` in __git_ps1_show_upstream Simão Afonso (1): crendential-store: use timeout when locking file Sohom Datta (1): userdiff: expand detected chunk headers for css Srinidhi Kaushik (3): push: add reflog check for "--force-if-includes" push: parse and set flag for "--force-if-includes" t, doc: update tests, reference for "--force-if-includes" Taylor Blau (5): builtin/repack.c: keep track of what pack-objects wrote builtin/repack.c: don't move existing packs out of the way packfile.c: protect against disappearing indexes midx.c: protect against disappearing packs builtin/bugreport.c: use thread-safe localtime_r() Thomas Koutcher (1): credential: load default config Victor Engmark (1): userdiff: support Bash brian m. carlson (1): svn: use correct variable name for short OID Ævar Arnfjörð Bjarmason (8): remote: add meaningful exit code on missing/existing config.mak.uname: remove unused the NO_R_TO_GCC_LINKER flag config.mak.uname: remove unused NEEDS_SSL_WITH_CURL flag submodule: use "fetch" logic instead of custom remote discovery submodule: remove sh function in favor of helper parse-remote: remove this now-unused library gc docs: change --keep-base-pack to --keep-largest-pack gc: rename keep_base_pack variable for --keep-largest-pack Štěpán Němec (1): config.txt: fix a typo (backslash != backquote) Version v2.29.3; changes since v2.29.2: --------------------------------------- Johannes Schindelin (14): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Git 2.22.5 Git 2.23.4 Git 2.24.4 Git 2.25.5 Git 2.26.3 Git 2.27.1 Git 2.28.1 Git 2.29.3 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.29.2; changes since v2.29.1: --------------------------------------- Christian Couder (1): filter-branch doc: fix filter-repo typo Jeff King (3): t3436: check --committer-date-is-author-date result more carefully am: fix broken email with --committer-date-is-author-date rebase: fix broken email with --committer-date-is-author-date Junio C Hamano (1): Git 2.29.2 Version v2.29.1; changes since v2.29.0: --------------------------------------- Johannes Schindelin (1): SKIP_DASHED_BUILT_INS: do not skip the bin/ programs Junio C Hamano (1): Git 2.29.1 Version v2.29.0; changes since v2.29.0-rc2: ------------------------------------------- Alessandro Menti (2): l10n: it.po: update the Italian translation for Git 2.29.0 round 1 l10n: it.po: update the Italian translation Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (5013t) Daniel Santos (2): l10n: Portuguese translation team has changed. Wohoo! l10n: pt_PT: make on po/pt_PT.po Emir Sarı (2): l10n: tr: v2.29.0 round 1 l10n: tr: v2.29.0 round 2 Jean-Noël Avila (2): l10n: fr: v2.29.0 rnd 1 l10n: fr: v2.29.0 rnd 2 Jiang Xin (3): l10n: git.pot: v2.29.0 round 1 (124 new, 42 removed) l10n: git.pot: v2.29.0 round 2 (1 new, 1 removed) l10n: zh_CN: for git v2.29.0 l10n round 1 and 2 Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (1): Git 2.29 Matthias Rüster (1): l10n: de.po: Update German translation for Git 2.29.0 Peter Krefting (1): l10n: sv.po: Update Swedish translation (5013t0f0u) Serg Tereshchenko (2): git-gui: fix mixed tabs and spaces; prefer tabs git-gui: improve dark mode support Stefan Haller (1): git-gui: blame: prevent tool tips from sticking around after Command-Tab Trần Ngọc Quân (1): l10n: vi(5013t): Updated translation for v2.29.0 rd2 Yi-Jyun Pan (1): l10n: zh_TW.po: v2.29.0 round 2 (2 untranslated) Version v2.29.0-rc2; changes since v2.29.0-rc1: ----------------------------------------------- Junio C Hamano (1): Git 2.29-rc2 Version v2.29.0-rc1; changes since v2.29.0-rc0: ----------------------------------------------- Denton Liu (2): compat/mingw.h: drop extern from function declaration Makefile: ASCII-sort += lists Jean-Noël Avila (4): git-bisect-lk2009: make continuation of list indented doc: use linkgit macro where needed. doc: git-remote fix ups doc: fix the bnf like style of some commands Jeff King (2): index-pack: restore "resolving deltas" progress meter index-pack: drop type_cas mutex Johannes Schindelin (6): GitHub workflow: automatically follow minor updates of setup-msbuild help: do not expect built-in commands to be hardlinked t1415: avoid using `main` as ref name tests: avoid using the branch name `main` ci: skip GitHub workflow runs for already-tested commits/trees ci: do not skip tagged revisions in GitHub workflows Jonathan Tan (1): index-pack: make get_base_data() comment clearer Junio C Hamano (1): Git 2.29-rc1 Đoàn Trần Công Danh (1): t5534: split stdout and stderr redirection Version v2.29.0-rc0; changes since v2.28.1: ------------------------------------------- Aaron Lipman (12): t6030: modernize "git bisect run" tests rev-list: allow bisect and first-parent flags cmd_bisect__helper: defer parsing no-checkout flag bisect: introduce first-parent flag bisect: combine args passed to find_bisection() bisect: add first-parent option to documentation t3200: clean side effect of git checkout --orphan t3201: test multiple branch filter combinations Doc: cover multiple contains/no-contains filters ref-filter: allow merged and no-merged filters ref-filter: make internal reachable-filter API more precise Doc: prefer more specific file name Adrian Moennich (1): ci: fix inconsistent indentation Alban Gruin (1): t6300: fix issues related to %(contents:size) Alex Henrie (1): pull: don't warn if pull.ff has been set Alex Riesen (1): fetch: pass --ipv4 and --ipv6 options to sub-fetches Andrei Rybak (1): git-help.txt: fix mentions of option --guides Antti Keränen (1): rebase -i: fix possibly wrong onto hash in todo Beat Bolli (1): gitk: rename "commit summary" to "commit reference" Ben Wijen (1): git clone: don't clone into non-empty directory Chris Torek (1): git-mv: improve error message for conflicted file Christian Couder (4): Documentation: clarify %(contents:XXXX) doc t6300: test refs pointing to tree and blob ref-filter: add support for %(contents:size) bisect: don't use invalid oid as rev when starting Christian Schlack (1): remote: don't show success message when set-head fails Conor Davis (1): commit-graph-format.txt: fix no-parent value Danny Lin (2): contrib/subtree: fix "unsure" for --message in the document contrib/subtree: document 'push' does not take '--squash' Denton Liu (11): t3701: stop using `env` in force_color() t5324: reorder `run_with_limited_open_files test_might_fail` t7107: don't use test_must_fail() t9834: remove use of `test_might_fail p4` t9400: don't use test_must_fail with cvs test-lib-functions: restrict test_must_fail usage contrib/completion: complete options that take refs for format-patch hooks--pre-push.sample: modernize script hooks--pre-push.sample: use hash-agnostic zero OID hooks--update.sample: use hash-agnostic zero OID gitk: replace tabs with spaces Derrick Stolee (22): commit-graph: place bloom_settings in context commit-graph: change test to die on parse, not load bloom: fix logic in get_bloom_filter() commit-graph: persist existence of changed-paths revision.c: fix whitespace multi-pack-index: repack batches below --batch-size t/README: document GIT_TEST_DEFAULT_HASH commit-graph: use the "hash version" byte multi-pack-index: use hash version byte bloom/diff: properly short-circuit on max_changes maintenance: create basic maintenance runner maintenance: add --quiet option maintenance: replace run_auto_gc() maintenance: initialize task array maintenance: add commit-graph task maintenance: add --task option maintenance: take a lock on the objects directory maintenance: create maintenance.<task>.enabled config maintenance: use pointers to check --auto maintenance: add auto condition for commit-graph task maintenance: add trace2 regions for task execution commit-reach: fix in_merge_bases_many bug Drew DeVault (1): git-send-email: die if sendmail.* config is set Edmundo Carmona Antoranz (1): blame.c: replace instance of !oidcmp for oideq Elijah Newren (26): Remove doubled words in various comments hashmap: fix typo in usage docs merge-recursive: fix unclear and outright wrong comments t6038: make tests fail for the right reason t6038: remove problematic test merge: make merge.renormalize work for all uses of merge machinery checkout: support renormalization with checkout -m <paths> Collect merge-related tests to t64xx t6418: tighten delete/normalize conflict testcase t6422: fix bad check against missing file t6416, t6422: fix incorrect untracked file count t6423: fix test setup for a couple tests t6422: fix multiple errors with the mod6 test expectations t6416, t6423: clarify some comments and fix some typos t6423: add an explanation about why one of the tests does not pass t6422, t6426: be more flexible for add/add conflicts involving renames t642[23]: be more flexible for add/add conflicts involving pair renames t6425: be more flexible with rename/delete conflict messages t3000: fix some test description typos dir: avoid prematurely marking nonbare repositories as matches sequencer: avoid garbled merge machinery messages due to commit labels mem-pool: add convenience functions for strdup and strndup mem-pool: use more standard initialization and finalization mem-pool: use consistent pool variable name dir: make clear_directory() free all relevant memory dir: fix problematic API to avoid memory leaks Emily Shaffer (1): Revert "contrib: subtree: adjust test to change in fmt-merge-msg" Eric Huber (1): gitk: Preserve window dimensions on exit when not using ttk themes Eric Sunshine (22): worktree: drop pointless strbuf_release() worktree: drop unused code from get_linked_worktree() worktree: drop bogus and unnecessary path munging worktree: retire special-case normalization of main worktree path git-worktree.txt: employ fixed-width typeface consistently git-worktree.txt: consistently use term "working tree" git-worktree.txt: fix minor grammatical issues git-worktree.txt: make start of new sentence more obvious git-worktree.txt: link to man pages when citing other Git commands test_cmp: diagnose incorrect arguments init: disallow --separate-git-dir with bare repository worktree: add skeleton "repair" command worktree: teach "repair" to fix worktree back-links to main worktree worktree: teach "repair" to fix outgoing links to worktrees init: teach --separate-git-dir to repair linked worktrees init: make --separate-git-dir work from within linked worktree git-checkout.txt: document -d short option for --detach worktree: teach `add` to recognize -d as shorthand for --detach git-worktree.txt: discuss branch-based vs. throwaway worktrees diff: move show_interdiff() from its own file to diff-lib diff-lib: tighten show_interdiff()'s interface format-patch: use 'origin' as start of current-series-range when known Evan Gates (1): Doc: show example scissors line Han Xin (1): send-pack: run GPG after atomic push checking Han-Wen Nienhuys (17): lib-t6000.sh: write tag using git-update-ref t3432: use git-reflog to inspect the reflog for HEAD bisect: treat BISECT_HEAD as a pseudo ref t1400: use git rev-parse for testing PSEUDOREF existence Modify pseudo refs through ref backend storage Make HEAD a PSEUDOREF rather than PER_WORKTREE. refs: move the logic to add \t to reflog to the files backend refs: split off reading loose ref data in separate function refs: fix comment about submodule ref_stores refs: move gitdir into base ref_store refs: read FETCH_HEAD and MERGE_HEAD generically refs: make refs_ref_exists public sequencer: treat CHERRY_PICK_HEAD as a pseudo ref builtin/commit: suggest update-ref for pseudoref removal sequencer: treat REVERT_HEAD as a pseudo ref refs: move REF_LOG_ONLY to refs-internal.h refs: add GIT_TRACE_REFS debugging mechanism Hariom Verma (10): t6300: unify %(trailers) and %(contents:trailers) tests ref-filter: 'contents:trailers' show error if `:` is missing ref-filter: support different email formats ref-filter: refactor `grab_objectname()` ref-filter: modify error messages in `grab_objectname()` ref-filter: rename `objectname` related functions and fields ref-filter: add `short` modifier to 'tree' atom ref-filter: add `short` modifier to 'parent' atom pretty: refactor `format_sanitized_subject()` ref-filter: add `sanitize` option for 'subject' atom Hugo Locurcio (1): bisect: swap command-line options in documentation Jacob Keller (4): refspec: fix documentation referring to refspec_item refspec: make sure stack refspec_item variables are zeroed refspec: add support for negative refspecs format-patch: teach format.useAutoBase "whenAble" option Jeff Hostetler (1): mingw: improve performance of mingw_unlink() Jeff King (80): t6000: use test_tick consistently t9700: loosen ident timezone regex t5539: make timestamp requirements more explicit t9100: explicitly unset GIT_COMMITTER_DATE test-lib: set deterministic default author/committer date t9100: stop depending on commit timestamps verify_repository_format(): complain about new extensions in v0 repo argv-array: use size_t for count and alloc argv-array: rename to strvec strvec: rename files from argv-array to strvec quote: rename sq_dequote_to_argv_array to mention strvec strvec: convert builtin/ callers away from argv_array name strvec: convert more callers away from argv_array name strvec: convert remaining callers away from argv_array name strvec: fix indentation in renamed calls strvec: update documention to avoid argv_array strvec: drop argv_array compatibility layer log: drop "--cc implies -m" logic revision: add "--no-diff-merges" option to counteract "-m" log: enable "-m" automatically with "--first-parent" doc/git-log: move "Diff Formatting" from rev-list-options doc/git-log: drop "-r" diff option doc/git-log: move "-t" into diff-options list doc/git-log: clarify handling of merge commit diffs strvec: rename struct fields config: work around gcc-10 -Wstringop-overflow warning revision: avoid out-of-bounds read/write on empty pathspec revision: avoid leak when preparing bloom filter for "/" t5616: use test_i18ngrep for upload-pack errors sideband: mark "remote error:" prefix for translation t1416: avoid hard-coded sha1 ids t8003: check output of coalesced blame t8003: factor setup out of coalesce test blame: only coalesce lines that are adjacent in result Makefile: drop builtins from MSVC pdb list make credential helpers builtins make git-bugreport a builtin make git-fast-import a builtin drop vcs-svn experiment stop calling UNLEAK() before die() ls-remote: simplify UNLEAK() usage clear_pattern_list(): clear embedded hashmaps submodule--helper: use strbuf_release() to free strbufs checkout: fix leak of non-existent branch names config: fix leaks from git_config_get_string_const() config: drop git_config_get_string_const() config: fix leak in git_config_get_expiry_in_days() submodule--helper: fix leak of core.worktree value p5302: disable thread-count parameter tests by default p5302: count up to online-cpus for thread tests index-pack: adjust default threading cap revision: set rev_input_given in handle_revision_arg() worktree: fix leak in check_clean_worktree() xrealloc: do not reuse pointer freed by zero-length realloc() add-patch: fix inverted return code of repo_read_index() add--interactive.perl: specify --no-color explicitly packfile: actually set approximate_object_count_valid diff-highlight: correctly match blank lines for flush bswap.h: drop unaligned loads Revert "fast-export: use local array to store anonymized oid" shortlog: change "author" variables to "ident" protocol: re-enable v2 protocol by default shortlog: add grouping option trailer: add interface for iterating over commit trailers shortlog: match commit trailers with --group shortlog: de-duplicate trailer values shortlog: rename parse_stdin_ident() shortlog: parse trailer idents shortlog: allow multiple groups to be specified convert: drop unused crlf_action from check_global_conv_flags_eol() drop unused argc parameters env--helper: write to opt->value in parseopt helper assert PARSE_OPT_NONEG in parse-options callbacks push: drop unused repo argument to do_push() sequencer: drop repository argument from run_git_commit() sparse-checkout: fill in some options boilerplate test-advise: check argument count with argc instead of argv sequencer: handle ignore_footer when parsing trailers dir.c: drop unused "untracked" from treat_path_fast() combine-diff: handle --find-object in multitree code path Jiang Xin (10): transport: not report a non-head push as a branch t5411: add basic test cases for proc-receive hook receive-pack: add new proc-receive hook receive-pack: feed report options to post-receive New capability "report-status-v2" for git-push doc: add document for capability report-status-v2 receive-pack: new config receive.procReceiveRefs t5411: test updates of remote-tracking branches transport: parse report options for tracking refs doc: add documentation for the proc-receive hook Johannes Berg (2): pack-write/docs: update regarding pack naming docs: commit-graph: fix some whitespace in the diagram Johannes Schindelin (20): t3404: prepare 'short SHA-1 collision' tests for SHA-256 ci: fix indentation of the `ci-config` job ci: avoid ugly "failure" in the `ci-config` job t/test-terminal: avoid non-inclusive language fast-export: avoid using unnecessary language in a code comment t3200: avoid variations of the `master` branch name msvc: copy the correct `.pdb` files in the Makefile target `install` Optionally skip linking/copying the built-ins ci: stop linking built-ins to the dashed versions cmake: ignore files generated by CMake as run in Visual Studio tests: avoid variations of the `master` branch name t9902: avoid using the branch name `master` cmake: do find Git for Windows' shell interpreter cmake: ensure that the `vcpkg` packages are found on Windows cmake: fall back to using `vcpkg`'s `msgfmt.exe` on Windows cmake: quote the path accurately when editing `test-lib.sh` cmake (Windows): let the `.dll` files be found when running the tests cmake (Windows): complain when encountering an unknown compiler cmake (Windows): initialize vcpkg/build dependencies automatically cmake (Windows): recommend using Visual Studio's built-in CMake support Johannes Sixt (1): gitk: Un-hide selection in areas with non-default background color Jonathan Tan (32): upload-pack: do not lazy-fetch "have" objects pack-objects: refactor to oid_object_info_extended pack-objects: prefetch objects to be packed sha1-file: make pretend_object_file() not prefetch sha1-file: introduce no-lazy-fetch has_object() apply: do not lazy fetch when applying binary pack-objects: no fetch when allow-{any,promisor} fsck: do not lazy fetch known non-promisor object negotiator/noop: add noop fetch negotiator fetch: allow refspecs specified through stdin fetch: avoid reading submodule config until needed fetch: only populate existing_refs if needed fetch-pack: do not lazy-fetch during ref iteration promisor-remote: lazy-fetch objects in subprocess fetch-pack: remove no_dependents code fetch-pack: in partial clone, pass --promisor Documentation: deltaBaseCacheLimit is per-thread index-pack: remove redundant parameter index-pack: unify threaded and unthreaded code index-pack: remove redundant child field index-pack: calculate {ref,ofs}_{first,last} early index-pack: make resolve_delta() assume base data (various): document from_promisor parameter fetch-pack: document only_packfile in get_pack() fetch-pack: make packfile URIs work with transfer.fsckobjects fetch: no FETCH_HEAD display if --no-write-fetch-head sha1-name: replace unsigned int with option struct refs: move dwim_ref() to header file wt-status: tolerate dangling marks index-pack: make quantum of work smaller promisor-remote: remove unused variable fetch: do not override partial clone filter Junio C Hamano (49): gitk: be prepared to be run in a bare repository reflog: cleanse messages in the refs.c layer Revert "fmt-merge-msg: stop treating `master` specially" fmt-merge-msg: allow merge destination to be omitted again First batch post 2.28 The second batch -- mostly minor typofixes Third batch Fourth batch Documentation: don't hardcode command categories twice compat-util: type-check parameters of no-op replacement functions Fifth batch Sixth batch Seventh batch messages: avoid SHA-1 in end-user facing messages Eighth batch fetch: optionally allow disabling FETCH_HEAD update Ninth batch ident: say whose identity is missing when giving user.name hint Tenth batch t3436: do not run git-merge-recursive in dashed form transport-helper: do not run git-remote-ext etc. in dashed form cvsexportcommit: do not run git programs in dashed form run_command: teach API users to use embedded 'args' more credential-cache: use child_process.args Eleventh batch doc: clarify how exit status of post-checkout hook is used Twelfth batch Thirteenth batch add -i: use the built-in version when feature.experimental is set Makefile: allow extra tweaking of distribution tarball Fourteenth batch quote_path: rename quote_path_relative() to quote_path() quote_path: give flags parameter to quote_path() quote_path: optionally allow quoting a path with SP in it quote_path: code clarification wt-status: consistently quote paths in "status --short" output quote: rename misnamed sq_lookup[] to cq_lookup[] quote: turn 'nodq' parameter into a set of flags Fifteenth batch Sixteenth batch t8013: minimum preparatory clean-up blame: validate and peel the object names on the ignore list t1506: rev-parse A..B and A...B sequencer: stop abbreviating stopped-sha file Seventeenth batch Eighteenth batch hashmap_for_each_entry(): workaround MSVC's runtime check failure #3 Nineteenth batch Git 2.29-rc0 Kazuhiro Kato (1): gitk: fix branch name encoding error Kyohei Kadota (1): Fit to Plan 9's ANSI/POSIX compatibility layer Lin Sun (1): mergetool: allow auto-merge for meld to follow the vim-diff behavior Luke Diamand (2): git-p4 unshelve: adding a commit breaks git-p4 unshelve git-p4: use HEAD~$n to find parent commit for unshelve Martin Ågren (19): dir: check pathspecs before returning `path_excluded` t1450: fix quoting of NUL byte when corrupting pack t: don't spuriously close and reopen quotes t4104: modernize and simplify quoting progress: don't dereference before checking for NULL http-protocol.txt: document SHA-256 "want"/"have" format index-format.txt: document SHA-256 index format protocol-capabilities.txt: clarify "allow-x-sha1-in-want" re SHA-256 shallow.txt: document SHA-256 shallow format Documentation: mark `--object-format=sha256` as experimental wt-status: replace sha1 mentions with oid wt-status: print to s->fp, not stdout wt-status: introduce wt_status_state_free_buffers() worktree: inline `worktree_ref()` into its only caller worktree: update renamed variable in comment worktree: rename copy-pasted variable worktree: use skip_prefix to parse target config/fmt-merge-msg.txt: drop space in quote config/uploadpack.txt: fix typo in `--filter=tree:<n>` Matheus Tavares (4): checkout_entry(): remove unreachable error() call config: complain about --worktree outside of a git repo packfile: fix race condition on unpack_entry() packfile: fix memory leak in add_delta_base_cache() Matthew Rogers (1): diff: teach --stat to ignore uninteresting modifications Michael Forney (2): revision: use repository from rev_info when parsing commits submodule: use submodule repository when preparing summary Michal Privoznik (1): completion: add show --color-moved[-ws] Miriam Rubio (4): bisect--helper: BUG() in cmd_*() on invalid subcommand bisect--helper: use '-res' in 'cmd_bisect__helper' return bisect--helper: introduce new `write_in_file()` function bisect: call 'clear_commit_marks_all()' in 'bisect_next_all()' Nikita Leonov (1): credential: treat CR/LF as line endings in the credential protocol Noam Yorav-Raphael (1): docs: improve the example that illustrates git-notes path names Orgad Shaneh (5): vcbuild: fix library name for expat with make MSVC=1 vcbuild: fix batch file name in README fetch: do not look for submodule changes in unchanged refs submodule: suppress checking for file name and ref ambiguity for object ids contrib/buildsystems: fix expat library name for generated vcxproj Patrick Steinhardt (2): refs: fix interleaving hook calls with reference-transaction hook refs: remove lookup cache for reference-transaction hook Paul Mackerras (1): gitk: Resize panes correctly when reducing window size Philippe Blain (19): git-log.txt: add links to 'rev-list' and 'diff' docs revisions.txt: describe 'rev1 rev2 ...' meaning for ranges git-rev-list.txt: fix Asciidoc syntax git-rev-list.txt: tweak wording in set operations git-rev-list.txt: move description to separate file git-log.txt: include rev-list-description.txt command-list.txt: add missing 'gitcredentials' and 'gitremote-helpers' help: drop usage of 'common' and 'useful' for guides git.txt: add list of guides fetch, pull doc: correct description of '--set-upstream' userdiff: add tests for Fortran xfuncname regex userdiff: improve Fortran xfuncname regex git-imap-send.txt: don't duplicate 'Examples' sections git-imap-send.txt: do verify SSL certificate for gmail.com git-imap-send.txt: add note about localized Gmail folders doc: mention GIT_SEQUENCE_EDITOR and 'sequence.editor' more git.txt: correct stale 'GIT_EXTERNAL_DIFF' description Makefile: add support for generating JSON compilation database gitsubmodules doc: invoke 'ls-files' with '--recurse-submodules' Phillip Wood (7): add -p: use ALLOC_GROW_BY instead of ALLOW_GROW add -p: fix checking of user input am: stop exporting GIT_COMMITTER_DATE rebase -i: support --committer-date-is-author-date rebase -i: support --ignore-date add -p: fix memory leak add -p: fix editing of intent-to-add paths Pranit Bauva (2): bisect--helper: reimplement `bisect_autostart` shell function in C bisect--helper: reimplement `bisect_next` and `bisect_auto_next` shell functions in C Prathamesh Chavan (1): submodule: port submodule subcommand 'summary' from shell to C Raymond E. Pasco (6): apply: allow "new file" patches on i-t-a entries blame-options.txt: document --first-parent option apply: make i-t-a entries never match worktree t4140: test apply with i-t-a paths diff-lib: use worktree mode in diffs from i-t-a entries git-apply.txt: update descriptions of --cached, --index René Scharfe (21): read-cache: remove bogus shortcut grep: avoid using oid_to_hex() with parse_object_or_die() bisect: use oid_to_hex_r() instead of memcpy()+oid_to_hex() upload-pack: remove superfluous sigchain_pop() call rebase: remove unused function reschedule_last_action connected: use buffered I/O to talk to rev-list midx: use buffered I/O to talk to pack-objects upload-pack: use buffered I/O to talk to rev-list patch-id: ignore newline at end of file in diff_flush_patch_id() checkout, restore: make pathspec recursive read-cache: fix mem-pool allocation for multi-threaded index loading push: release strbufs used for refspec formatting refspec: add and use refspec_appendf() fast-import: use write_pack_header() midx: use hashwrite_u8() in write_midx_header() pack-bitmap-write: use hashwrite_be32() in write_hash_cache() pack-write: use hashwrite_be32() in write_idx_file() archive: read short blobs in archive.c::write_archive_entry() archive: add --add-file Makefile: use git-archive --add-file ref-filter: plug memory leak in reach_filter() Rohit Ashiwal (2): rebase -i: add --ignore-whitespace flag rebase: add --reset-author-date Ryan Zoeller (2): parse-options: add --git-completion-helper-all completion: add GIT_COMPLETION_SHOW_ALL env var SZEDER Gábor (15): tree-walk.c: don't match submodule entries for 'submod/anything' commit-graph: fix parsing the Chunk Lookup table commit-graph-format.txt: all multi-byte numbers are in network byte order commit-slab: add a function to deep free entries on the slab diff.h: drop diff_tree_oid() & friends' return value commit-graph: clean up #includes commit-graph: simplify parse_commit_graph() #1 commit-graph: simplify parse_commit_graph() #2 commit-graph: simplify write_commit_graph_file() #1 commit-graph: simplify write_commit_graph_file() #2 commit-graph: unify the signatures of all write_graph_chunk_*() functions commit-graph: simplify chunk writes into loop commit-graph: check chunk sizes after writing commit-graph: check all leading directories in changed path Bloom filters ci: use absolute PYTHON_PATH in the Linux jobs Samanta Navarro (1): fast-import: fix typo in documentation Sergey Organov (9): revision: fix die() message for "--unpacked=" revision: change "--diff-merges" option to require parameter doc/git-log: describe --diff-merges=off t/t4013: add test for --diff-merges=off pretty-options.txt: fix --no-abbrev-commit description revision: add separate field for "-m" of "diff-index -m" log_tree_diff: get rid of code duplication for first_parent_only log_tree_diff: get rid of extra check for NULL diff: get rid of redundant 'dense' argument Shourya Shukla (11): submodule: remove extra line feeds between callback struct and macro submodule: rename helper functions to avoid ambiguity t7421: introduce a test script for verifying 'summary' output t7401: modernize style t7401: use 'short' instead of 'verify' and cut in rev-parse calls t7401: change syntax of test_i18ncmp calls for clarity t7401: change indentation for enhanced readability t7401: add a NEEDSWORK submodule: eliminate unused parameters from print_submodule_summary() submodule: fix style in function definition t7421: eliminate 'grep' check in t7421.4 for mingw compatibility Sibi Siddharthan (8): Introduce CMake support for configuring Git cmake: generate the shell/perl/python scripts and templates, translations cmake: installation support for git cmake: support for testing git with ctest cmake: support for testing git when building out of the source tree cmake: support for building git on windows with mingw cmake: support for building git on windows with msvc and clang. ci: modification of main.yml to use cmake for vs-build job Simon Legner (1): remote-mediawiki: fix duplicate revisions being imported Stefan Dotterweich (1): gitk: add diff lines background colors Steve Kemp (1): comment: fix spelling mistakes inside comments Taylor Blau (18): revision: empty pathspecs should not use Bloom filters list_objects_filter_options: introduce 'list_object_filter_config_name' upload-pack.c: allow banning certain object filter(s) upload-pack.c: introduce 'uploadpackfilter.tree.maxDepth' builtin/repack.c: invalidate MIDX only when necessary midx: traverse the local MIDX first commit-graph: introduce 'get_bloom_filter_settings()' t4216: use an '&&'-chain commit-graph: pass a 'struct repository *' in more places t/helper/test-read-graph.c: prepare repo settings commit-graph: respect 'commitGraph.readChangedPaths' commit-graph.c: store maximum changed paths bloom: split 'get_bloom_filter()' in two bloom: use provided 'struct bloom_filter_settings' bloom: encode out-of-bounds filters as non-empty commit-graph: rename 'split_commit_graph_opts' builtin/commit-graph.c: introduce '--max-new-filters=<n>' commit-graph: introduce 'commitGraph.maxNewFilters' Theodore Dubois (1): submodule update: silence underlying merge/rebase with "--quiet" Thomas Guyot-Sionnest (1): diff: fix modified lines stats with --stat and --numstat brian m. carlson (48): remote-curl: make --force-with-lease work with non-ASCII ref names t: make test-bloom initialize repository t1001: use $ZERO_OID t3305: make hash agnostic t6100: make hash size independent t6101: make hash size independent t6301: make hash size independent t6500: specify test values for SHA-256 t6501: avoid hard-coded objects t7003: compute appropriate length constant t7063: make hash size independent t7201: abstract away SHA-1-specific constants t7102: abstract away SHA-1-specific constants t7400: make hash size independent t7405: make hash size independent t7506: avoid checking for SHA-1-specific constants t7508: use $ZERO_OID instead of hard-coded constant t8002: make hash size independent t8003: make hash size independent t8011: make hash size independent t9300: abstract away SHA-1-specific constants t9300: use $ZERO_OID instead of hard-coded object ID t9301: make hash size independent t9350: make hash size independent t9500: ensure that algorithm info is preserved in config t9700: make hash size independent t5308: make test work with SHA-256 t0410: mark test with SHA1 prerequisite http-fetch: set up git directory before parsing pack hashes builtin/verify-pack: implement an --object-format option bundle: add new version for use with SHA-256 setup: add support for reading extensions.objectformat repository: enable SHA-256 support by default t: add test_oid option to select hash algorithm t: allow testing different hash algorithms via environment t: make SHA1 prerequisite depend on default hash ci: run tests with SHA-256 docs: add documentation for extensions.objectFormat t: remove test_oid_init in tests git-cvsexportcommit: support Perl before 5.10.1 docs: document SHA-256 pack and indices docs: fix step in transition plan t4013: improve diff-post-processor logic po: add missing letter for French message docs: explain why squash merges are broken with long-running branches docs: explain why reverts are not always applied on merge docs: explain how to deal with files that are always modified builtin/clone: avoid failure with GIT_DEFAULT_HASH pudinha (2): mergetool--lib: improve support for vimdiff-style tool variants mergetools: add support for nvimdiff (neovim) family Ákos Uzonyi (2): completion: use "prev" variable instead of introducing "prevword" completion: complete refs after 'git restore -s' Ævar Arnfjörð Bjarmason (17): remote-mediawiki doc: correct link to GitHub project remote-mediawiki doc: link to MediaWiki's current version remote-mediawiki doc: don't hardcode Debian PHP versions remote-mediawiki tests: use the login/password variables remote-mediawiki tests: use a 10 character password remote-mediawiki tests: use test_cmp in tests remote-mediawiki tests: change `[]` to `test` remote-mediawiki tests: use "$dir/" instead of "$dir." remote-mediawiki tests: use a more idiomatic dispatch table remote-mediawiki tests: replace deprecated Perl construct remote-mediawiki tests: use inline PerlIO for readability remote-mediawiki tests: use CLI installer remote-mediawiki tests: annotate failing tests remote-mediawiki: provide a list form of run_git() remote-mediawiki: convert to quoted run_git() invocation remote-mediawiki: annotate unquoted uses of run_git() remote-mediawiki: use "sh" to eliminate unquoted commands Đoàn Trần Công Danh (1): diff: index-line: respect --abbrev in object's name Роман Донченко (2): gitk: don't highlight files after submodules as submodules gitk: fix the context menu not appearing in the presence of submodule diffs Version v2.28.1; changes since v2.28.0: --------------------------------------- Johannes Schindelin (13): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Git 2.22.5 Git 2.23.4 Git 2.24.4 Git 2.25.5 Git 2.26.3 Git 2.27.1 Git 2.28.1 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.28.0; changes since v2.28.0-rc2: ------------------------------------------- Alessandro Menti (1): l10n: it.po: update the Italian translation for Git 2.28.0 round 1 Bojun Chen (1): githooks.txt: use correct "reference-transaction" hook name Christopher Diaz Riveros (1): l10n: es: 2.28.0 round 1 Emir Sarı (1): l10n: tr: v2.28.0 round 1 Jean-Noël Avila (1): l10n: fr v2.28.0 round 1 Jiang Xin (2): l10n: git.pot: v2.28.0 round 1 (70 new, 14 removed) l10n: zh_CN: for git v2.28.0 l10n round 1 Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (1): Git 2.28 Matthias Rüster (1): l10n: de.po: Update German translation for Git v2.28.0 Peter Krefting (1): l10n: sv.po: Update Swedish translation (4931t0f0u) Ralf Thielow (1): l10n: de.po: fix grammar Taylor Blau (1): Documentation/RelNotes: fix a typo in 2.28's relnotes Trần Ngọc Quân (1): l10n: vi.po(4931t): Updated translation for v2.28.0 Yi-Jyun Pan (1): l10n: zh_TW.po: v2.28.0 round 1 (0 untranslated) Đoàn Trần Công Danh (1): l10n: vi.po: correct "ident line" translation Version v2.28.0-rc2; changes since v2.28.0-rc1: ----------------------------------------------- David J. Malan (1): git-prompt: change == to = for zsh's sake Junio C Hamano (2): RelNotes: update the v0 with extension situation Git 2.28-rc2 Martin Ågren (2): gitworkflows.txt: fix broken subsection underline t3200: don't grep for `strerror()` string Mikhail Terekhov (1): git-gui: allow opening work trees from the startup dialog Version v2.28.0-rc1; changes since v2.28.0-rc0: ----------------------------------------------- Jonathan Nieder (2): Revert "check_repository_format_gently(): refuse extensions for old repositories" repository: allow repository format upgrade with extensions Junio C Hamano (2): Hopefully the last batch before -rc1 Git 2.28-rc1 Martin Ågren (2): git-diff.txt: don't mark required argument as optional git-diff.txt: reorder possible usages SZEDER Gábor (3): commit-graph: fix progress of reachable commits commit-graph: fix "Writing out commit graph" progress counter commit-graph: fix "Collecting commits from input" progress line Trygve Aaberge (2): Wait for child on signal death for aliases to builtins Wait for child on signal death for aliases to externals Version v2.28.0-rc0; changes since v2.27.1: ------------------------------------------- Abhishek Kumar (4): object: drop parsed_object_pool->commit_count commit-graph: introduce commit_graph_data_slab commit: move members graph_pos, generation to a slab commit-graph: minimize commit_graph_data_slab access Andrew Ng (1): merge: optimization to skip evaluate_result for single strategy Ben Keene (1): git-p4.py: fix --prepare-p4-only error with multiple commits Carlo Marcelo Arenas Belón (5): t/helper: teach test-regex to report pattern errors (like REG_ILLSEQ) t4210: detect REG_ILLSEQ dynamically and skip affected tests bisect--helper: avoid segfault with bad syntax in `start --term-*` t5608: avoid say() and use "skip_all" instead for consistency commit-reach: avoid is_descendant_of() shim Chris Torek (3): t/t3430: avoid undefined git diff behavior git diff: improve range handling Documentation: usage for diff combined commits Christian Couder (40): upload-pack: remove unused 'wants' from upload_pack_data upload-pack: move {want,have}_obj to upload_pack_data upload-pack: move 'struct upload_pack_data' around upload-pack: use 'struct upload_pack_data' in upload_pack() upload-pack: pass upload_pack_data to get_common_commits() upload-pack: pass upload_pack_data to receive_needs() upload-pack: use upload_pack_data writer in receive_needs() upload-pack: move symref to upload_pack_data upload-pack: pass upload_pack_data to send_ref() upload-pack: pass upload_pack_data to check_non_tip() upload-pack: remove static variable 'stateless_rpc' upload-pack: pass upload_pack_data to create_pack_file() upload-pack: use upload_pack_data fields in receive_needs() upload-pack: annotate upload_pack_data fields upload-pack: move static vars to upload_pack_data upload-pack: move use_sideband to upload_pack_data upload-pack: move filter_capability_requested to upload_pack_data upload-pack: move multi_ack to upload_pack_data upload-pack: change multi_ack to an enum upload-pack: pass upload_pack_data to upload_pack_config() upload-pack: move keepalive to upload_pack_data upload-pack: move allow_filter to upload_pack_data upload-pack: move allow_ref_in_want to upload_pack_data upload-pack: move allow_sideband_all to upload_pack_data upload-pack: move pack_objects_hook to upload_pack_data upload-pack: pass upload_pack_data to send_shallow_list() upload-pack: pass upload_pack_data to deepen() upload-pack: pass upload_pack_data to deepen_by_rev_list() upload-pack: pass upload_pack_data to send_unshallow() upload-pack: move shallow_nr to upload_pack_data upload-pack: move extra_edge_obj to upload_pack_data upload-pack: move allow_unadvertised_object_request to upload_pack_data upload-pack: change allow_unadvertised_object_request to an enum upload-pack: pass upload_pack_data to process_haves() upload-pack: pass upload_pack_data to send_acks() upload-pack: pass upload_pack_data to ok_to_give_up() upload-pack: pass upload_pack_data to got_oid() upload-pack: move oldest_have to upload_pack_data upload-pack: refactor common code into do_got_oid() cat-file: add missing [=<format>] to usage/synopsis Denton Liu (18): lib-submodule-update: add space after function name lib-submodule-update: consolidate --recurse-submodules remote-curl: fix typo remote-curl: remove label indentation transport: extract common fetch_pack() call pkt-line: extern packet_length() remote-curl: error on incomplete packet pkt-line: define PACKET_READ_RESPONSE_END stateless-connect: send response end packet t/README: avoid poor-man's small caps GIT CodingGuidelines: specify Python 2.7 is the oldest version lib-submodule-update: prepend "git" to $command t3200: rename "expected" to "expect" t3200: test for specific errors branch: don't mix --edit-description builtin/diff: update usage comment builtin/diff: fix botched update of usage comment lib-submodule-update: pass 'test_must_fail' as an argument Derrick Stolee (3): line-log: integrate with changed-path Bloom filters commit-reach: create repo_is_descendant_of() commit-reach: use fast logic in repo_in_merge_base Don Goodman-Wilson (1): init: allow setting the default for the initial branch name via the config Elijah Newren (11): fast-import: add new --date-format=raw-permissive format sparse-checkout: avoid staging deletions of all files dir: fix treatment of negated pathspecs git-sparse-checkout: clarify interactions with submodules dir: fix a few confusing comments dir, clean: avoid disallowed behavior clean: consolidate handling of ignored parameters clean: optimize and document cases where we recurse into subdirectories wt-status: show sparse checkout status as well git-prompt: document how in-progress operations affect the prompt git-prompt: include sparsity state as well Emily Shaffer (3): help: add shell-path to --build-options bugreport: include user interactive shell docs: mention MyFirstContribution in more places Eric Sunshine (10): worktree: factor out repeated string literal worktree: give "should be pruned?" function more meaningful name worktree: make high-level pruning re-usable worktree: prune duplicate entries referencing same worktree path worktree: prune linked worktree referencing main worktree path worktree: generalize candidate worktree path validation worktree: make "move" refuse to move atop missing registered worktree worktree: drop get_worktrees() special-purpose sorting option worktree: drop get_worktrees() unused 'flags' argument worktree: avoid dead-code in conditional Han-Wen Nienhuys (5): refs.h: clarify reflog iteration order t: use update-ref and show-ref to reading/writing refs refs: improve documentation for ref iterator reftable: clarify how empty tables should be written reftable: define version 2 of the spec to accomodate SHA256 Jacob Keller (16): completion: add test showing subpar git switch completion completion: add tests showing subpar DWIM logic for switch/checkout completion: add tests showing subar checkout --detach logic completion: add tests showing subpar switch/checkout --track logic completion: add tests showing subpar -c/-C startpoint completion completion: add tests showing subpar -c/C argument completion completion: add tests showing subpar switch/checkout --orphan logic completion: replace overloaded track term for __git_complete_refs completion: extract function __git_dwim_remote_heads completion: perform DWIM logic directly in __git_complete_refs completion: improve handling of DWIM mode for switch/checkout completion: improve completion for git switch with no options completion: improve handling of --detach in checkout completion: improve handling of --track in switch/checkout completion: improve handling of -c/-C and -b/-B in switch/checkout completion: improve handling of --orphan option of switch/checkout Jeff King (14): diff: discard blob data from stat-unmatched pairs upload-pack: actually use some upload_pack_data bitfields t9351: derive anonymized tree checks from original repo fast-export: use xmemdupz() for anonymizing oids fast-export: store anonymized oids as hex strings fast-export: tighten anonymize_mem() interface to handle only strings fast-export: stop storing lengths in anonymized hashmaps fast-export: use a flex array to store anonymized entries fast-export: move global "idents" anonymize hashmap into function fast-export: add a "data" callback parameter to anonymize_str() fast-export: allow seeding the anonymized mapping fast-export: anonymize "master" refname fast-export: use local array to store anonymized oid diff: check for merge bases before assigning sym->base Jiuyang Xie (1): doc: fix wrong 4-byte length of pkt-line message Johannes Schindelin (16): checkout -p: handle new files correctly clone/fetch: anonymize URLs in the reflog msvc: fix "REG_STARTEND" issue fmt-merge-msg: stop treating `master` specially send-pack/transport-helper: avoid mentioning a particular branch submodule: fall back to remote's HEAD for missing remote.<name>.branch docs: add missing diamond brackets init: allow specifying the initial branch name for the new repository clone: use configured default branch name when appropriate remote: use the configured default branch name when appropriate testsvn: respect `init.defaultBranch` docs: adjust for the recent rename of `pu` to `seen` docs: adjust the technical overview for the rename `pu` -> `seen` tests: reference `seen` wherever `pu` was referenced diff-files --raw: show correct post-image of intent-to-add files difftool -d: ensure that intent-to-add files are handled correctly John Lin (1): bash-completion: add git-prune into bash completion Jonathan Nieder (3): config: let feature.experimental imply protocol.version=2 reftable: file format documentation experimental: default to fetch.writeCommitGraph=false Jonathan Tan (12): t5551: test that GIT_TRACE_CURL redacts password http, imap-send: stop using CURLOPT_VERBOSE http: redact all cookies, teach GIT_TRACE_REDACT=0 http: use --stdin when indexing dumb HTTP pack http: refactor finish_http_pack_request() http-fetch: refactor into function http-fetch: support fetching packfiles by URL Documentation: order protocol v2 sections Documentation: add Packfile URIs design doc upload-pack: refactor reading of pack-objects out fetch-pack: support more than one pack lockfile upload-pack: send part of packfile response as uri Josh Steadmon (1): fuzz-commit-graph: properly free graph struct Junio C Hamano (8): Start the post 2.27 cycle The second batch The third batch The fourth batch The fifth batch The sixth batch The seventh batch Git 2.28-rc0 Laurent Arnoud (1): diff: add config option relative Luc Van Oostenryck (1): sparse: allow '{ 0 }' to be used without warnings Marco Trevisan (Treviño) (1): completion: use native ZSH array pattern matching Martin Ågren (1): git-rebase.txt: fix description list separator Matheus Tavares (1): entry: check for fstat() errors after checkout Miroslav Koškár (1): doc: fix author vs. committer copy/paste error Paolo Bonzini (1): t4014: do not use "slave branch" nomenclature Patrick Steinhardt (1): refs: implement reference transaction hook Rafael Aquini (1): send-email: restore --in-reply-to superseding behavior Ramsay Jones (1): upload-pack: fix a sparse '0 as NULL pointer' warning Randall S. Becker (2): bugreport.c: replace strbuf_write_fd with write_in_full strbuf: remove unreferenced strbuf_write_fd method. René Scharfe (10): fsck: fix a typo in a comment t1450: increase test coverage of in-tree d/f detection t1450: demonstrate undetected in-tree d/f conflict fsck: detect more in-tree d/f conflicts checkout: add tests for -b and --track checkout: improve error messages for -b with extra argument commit-reach: plug minor memory leak after using is_descendant_of() pull: plug minor memory leak after using is_descendant_of() revision: reallocate TOPO_WALK object flags revision: disable min_age optimization with line-log SZEDER Gábor (4): line-log: remove unused fields from 'struct line_log_data' t4211-line-log: add tests for parent oids line-log: more responsive, incremental 'git log -L' line-log: try to use generation number-based topo-ordering Shourya Shukla (1): submodule: port subcommand 'set-branch' from shell to C Srinidhi Kaushik (1): diff-files: treat "i-t-a" files as "not-in-index" Taylor Blau (11): commit-graph.c: extract 'refs_cb_data' commit-graph.c: show progress of finding reachable commits commit-graph.c: peel refs in 'add_ref_to_set' builtin/commit-graph.c: extract 'read_one_commit()' builtin/commit-graph.c: dereference tags in builtin commit-graph.c: simplify 'fill_oids_from_commits' t5318: reorder test below 'graph_read_expect' commit-graph: drop COMMIT_GRAPH_WRITE_CHECK_OIDS flag t5318: use 'test_must_be_empty' t5318: test that '--stdin-commits' respects '--[no-]progress' commit.c: don't persist substituted parents when unshallowing Ville Skyttä (2): completion: don't override given stash subcommand with -p completion: nounset mode fixes Xin Li (4): repository: add a helper function to perform repository format upgrade fetch: allow adding a filter after initial clone sparse-checkout: upgrade repository to version 1 when enabling extension check_repository_format_gently(): refuse extensions for old repositories brian m. carlson (61): t1050: match object ID paths in a hash-insensitive way Documentation: document v1 protocol object-format capability builtin/checkout: simplify metadata initialization t2060: add a test for switch with --orphan and --discard-changes connect: have ref processing code take struct packet_reader wrapper: add function to compare strings with different NUL termination remote: advertise the object-format capability on the server side connect: add function to parse multiple v1 capability values connect: add function to fetch value of a v2 server capability pkt-line: add a member for hash algorithm transport: add a hash algorithm member connect: add function to detect supported v1 hash functions send-pack: detect when the server doesn't support our hash connect: make parse_feature_value extern fetch-pack: detect when the server doesn't support our hash connect: detect algorithm when fetching refs builtin/receive-pack: detect when the server doesn't support our hash docs: update remote helper docs for object-format extensions transport-helper: implement object-format extensions remote-curl: implement object-format extensions builtin/clone: initialize hash algorithm properly t5562: pass object-format in synthesized test data fetch-pack: parse and advertise the object-format capability setup: set the_repository's hash algo when checking format t3200: mark assertion with SHA1 prerequisite packfile: compute and use the index CRC offset t5302: modernize test formatting builtin/show-index: provide options to determine hash algo t1302: expect repo format version 1 for SHA-256 Documentation/technical: document object-format for protocol v2 connect: pass full packet reader when parsing v2 refs connect: parse v2 refs with correct hash algorithm serve: advertise object-format capability for protocol v2 t5500: make hash independent builtin/ls-remote: initialize repository based on fetch remote-curl: detect algorithm for dumb HTTP by size builtin/index-pack: add option to specify hash algorithm t1050: pass algorithm to index-pack when outside repo remote-curl: avoid truncating refs with ls-remote t/helper: initialize the repository for test-sha1-array t5702: offer an object-format capability in the test t5703: use object-format serve option t5704: send object-format capability with SHA-256 t5300: pass --object-format to git index-pack bundle: detect hash algorithm when reading refs remote-testgit: adapt for object-format t9109: make test hash independent t9168: make test hash independent t9108: make test hash independent t9100: make test work with SHA-256 t9104: make hash size independent t9101: make hash independent t/lib-git-svn: make hash size independent perl: create and switch variables for hash constants perl: make Git::IndexInfo work with SHA-256 perl: make SVN code hash independent git-svn: set the OID length based on hash algorithm git-cvsserver: port to SHA-256 git-cvsimport: port to SHA-256 git-cvsexportcommit: port to SHA-256 http-push: ensure unforced pushes fail when data would be lost Đoàn Trần Công Danh (1): contrib: subtree: adjust test to change in fmt-merge-msg Version v2.27.1; changes since v2.27.0: --------------------------------------- Johannes Schindelin (12): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Git 2.22.5 Git 2.23.4 Git 2.24.4 Git 2.25.5 Git 2.26.3 Git 2.27.1 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.27.0; changes since v2.27.0-rc2: ------------------------------------------- Alessandro Menti (2): l10n: it.po: update the Italian translation for Git 2.27.0 round 1 l10n: it.po: update for Git 2.27.0 round #2 Alexander Shopov (2): l10n: bg.po: Updated Bulgarian translation (4868t) l10n: bg.po: Updated Bulgarian translation (4875t) Carlo Marcelo Arenas Belón (1): t: avoid alternation (not POSIX) in grep's BRE Christopher Diaz Riveros (1): l10n: es: 2.27.0 round 1 Emir Sarı (2): l10n: tr: v2.27.0 round 1 l10n: tr: v2.27.0 round 2 Jan Engelhardt (1): l10n: de.po: Fix typo in the German translation of octopus Jean-Noël Avila (2): l10n: fr v2.27.0 rnd 1 l10n: fr.po v2.27.0 rnd 2 Jiang Xin (3): l10n: git.pot: v2.27.0 round 1 (72 new, 37 removed) l10n: git.pot: v2.27.0 round 2 (+1) l10n: zh_CN: for git v2.27.0 l10n round 1~2 Jordi Mas (3): l10n: Update Catalan translation l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (1): Git 2.27 Martin Ågren (1): rev-list-options.txt: start a list for `show-pulls` Matthias Rüster (1): l10n: de.po: Update German translation for Git 2.27.0 Peter Krefting (2): l10n: sv.po: Update Swedish translation (4839t0f0u) l10n: sv.po: Update Swedish translation (4875t0f0u) Toon Claes (1): Documentation: correct hash environment variable Trần Ngọc Quân (2): l10n: vi(4874t): Updated Vietnamses translation for 2.27.0 l10n: vi(4875t): Updated Vietnamses translation for 2.27.0rd2 Yi-Jyun Pan (2): l10n: zh_TW.po: v2.27.0 round 1 (0 untranslated) l10n: zh_TW.po: v2.27.0 round 2 (0 untranslated) Đoàn Trần Công Danh (1): ci/config: correct instruction for CI preferences Version v2.27.0-rc2; changes since v2.27.0-rc1: ----------------------------------------------- Ansgar Röber (1): Subject: git-gui: fix syntax error because of missing semicolon Carlo Marcelo Arenas Belón (3): t4216: avoid unnecessary subshell in test_bloom_filters_not_used t5520: avoid alternation in grep's BRE (not POSIX) bisect: avoid tailing CR characters from revision in replay Derrick Stolee (1): fsck: use ERROR_MULTI_PACK_INDEX Greg Price (1): tests: skip small-stack tests on hppa architecture Ismael Luceno (1): git-gui: Handle Ctrl + BS/Del in the commit msg Jonathan Tan (1): t4067: make rename detection test output raw diff Junio C Hamano (2): Hopefully final batch before 2.27-rc2 Git 2.27-rc2 Martin Ågren (5): date-formats.txt: fix list continuation git-commit-graph.txt: fix grammo git-commit-graph.txt: fix list rendering git-credential.txt: use list continuation git-sparse-checkout.txt: add missing ' Philippe Blain (1): command-list.txt: add gitfaq to the list of guides Todd Zullinger (1): gitfaq: avoid validation error with older asciidoc Đoàn Trần Công Danh (1): t5703: replace "grep -a" usage by perl Version v2.27.0-rc1; changes since v2.27.0-rc0: ----------------------------------------------- Abhishek Kumar (1): commit-slab-decl.h: update include guard Carlo Marcelo Arenas Belón (1): compat: remove gmtime Derrick Stolee (1): progress: call trace2_region_leave() only after calling _enter() Elijah Newren (2): merge-recursive: fix rename/rename(1to2) for working tree with a binary unpack-trees: also allow get_progress() to work on a different index Johannes Schindelin (1): ci: avoid pounding on the poor ci-artifacts container Junio C Hamano (4): Revert "t/test_lib: avoid naked bash arrays in file_lineno" Revert "ci: add a problem matcher for GitHub Actions" Revert "tests: when run in Bash, annotate test failures with file name/line number" Git 2.27-rc1 Todd Zullinger (1): git-bugreport.txt: adjust reference to strftime(3) Đoàn Trần Công Danh (1): t1509: correct i18n test Version v2.27.0-rc0; changes since v2.26.3: ------------------------------------------- Alban Gruin (3): sequencer: mark messages for translation sequencer: don't abbreviate a command if it doesn't have a short form t3432: test `--merge' with `rebase.abbreviateCommands = true', too Alex Henrie (1): pull: warn if the user didn't say whether to rebase or to merge Alexandr Miloslavskiy (4): set_git_dir: fix crash when used with real_path() real_path: remove unsafe API real_path_if_valid(): remove unsafe API get_superproject_working_tree(): return strbuf Andras Kucsma (1): run-command: trigger PATH lookup properly on Cygwin Andrei Rybak (2): t9500: remove spaces after redirect operators t: fix whitespace around && Andrew Oakley (1): git-p4: recover from inconsistent perforce history Ash Holland (1): userdiff: support Markdown Ben Keene (8): git-p4: change the expansion test from basestring to list git-p4: rewrite prompt to be Windows compatible git-p4: create new function run_git_hook git-p4: add p4-pre-submit exit text git-p4: add --no-verify option git-p4: restructure code in submit git-p4: add p4 submit hooks git-p4: add RCS keyword status message Carlo Marcelo Arenas Belón (8): credential-store: ignore bogus lines from store file credential: update description for credential_from_url_gently credential: correct order of parameters for credential_match builtin/receive-pack: avoid generic function name hmac() t/t0000-basic: make sure subtests also use TEST_SHELL_PATH t/test_lib: avoid naked bash arrays in file_lineno credential: update gitcredentials documentation credential: document protocol updates Christian Couder (1): upload-pack: clear filter_options for each v2 fetch command Christopher Warrington (1): bisect: allow CRLF line endings in "git bisect replay" input Damien Robert (6): midx.c: fix an integer underflow doc: list all commands affected by submodule.recurse doc: document --recurse-submodules for reset and restore doc: explain how to deactivate submodule.recurse completely doc: be more precise on (fetch|push).recurseSubmodules doc: --recurse-submodules mostly applies to active submodules Denton Liu (45): Makefile: ASCII-sort += lists t7600: use test_write_lines() Lib-ify fmt-merge-msg Lib-ify prune-packed t5512: don't use `test_must_fail test_cmp` t5512: stop losing git exit code in here-docs t5512: stop losing return codes of git commands t5550: simplify no matching line check t5607: reorder `nongit test_must_fail` t5612: don't use `test_must_fail test_cmp` t5612: stop losing return codes of git commands t5801: teach compare_refs() to accept ! wrapper: indent with tabs sequencer: stop leaking buf sequencer: make file exists check more efficient sequencer: make read_oneliner() accept flags sequencer: configurably warn on non-existent files sequencer: make read_oneliner() extern rebase: use read_oneliner() sequencer: make apply_autostash() accept a path sequencer: rename stash_sha1 to stash_oid rebase: use apply_autostash() from sequencer.c rebase: generify reset_head() reset: extract reset_head() from rebase rebase: extract create_autostash() rebase: generify create_autostash() sequencer: extract perform_autostash() from rebase sequencer: unlink autostash in apply_autostash() sequencer: implement save_autostash() sequencer: implement apply_autostash_oid() merge: teach --autostash option t5520: make test_pull_autostash() accept expect_parent_num pull: pass --autostash to merge t6030: use test_path_is_missing() t7408: replace incorrect uses of test_must_fail t7508: don't use `test_must_fail test_cmp` t9141: use test_path_is_missing() t9160: use test_path_is_missing() t9164: use test_must_fail only on git commands t9819: don't use test_must_fail with p4 Use OPT_CALLBACK and OPT_CALLBACK_F push: unset PARSE_OPT_OPTARG for --recurse-submodules rebase: save autostash entry into stash reflog on --quit switch: fix errors and comments related to -c and -C Doc: reference the "stash list" in autostash docs Derrick Stolee (25): connected.c: reprepare packs for corner cases config: set pack.useSparse=true by default pack-objects: flip the use of GIT_TEST_PACK_SPARSE clone: document --filter options diff: halt tree-diff early after max_changes dir: refactor treat_directory to clarify control flow commit-graph: fix buggy --expire-time option t5319: replace 'touch -m' with 'test-tool chmtime' bloom: ignore renames when computing changed paths revision: --show-pulls adds helpful merges log-tree: make ref_filter_match() a helper method log: add log.excludeDecoration config option revision: complicated pathspecs disable filters tests: write commit-graph with Bloom filters blame: use changed-path Bloom filters multi-pack-index: close file descriptor after mmap bloom: fix whitespace around tab length test-bloom: fix usage typo sparse-checkout: stop blocking empty workdirs unpack-trees: avoid array out-of-bounds error multi-pack-index: respect repack.packKeptObjects=false bloom: parse commit before computing filters Documentation: changed-path Bloom filters use byte words bloom: de-duplicate directory entries bloom: use num_changes not nr for limit detection Elijah Newren (37): oidset: remove unnecessary include unpack-trees: fix minor typo in comment unpack-trees: remove unused error type unpack-trees: simplify verify_absent_sparse() unpack-trees: simplify pattern_list freeing t1091: make some tests a little more defensive against failures unpack-trees: allow check_updates() to work on a different index unpack-trees: do not mark a dirty path with SKIP_WORKTREE unpack-trees: pull sparse-checkout pattern reading into a new function unpack-trees: add a new update_sparsity() function sparse-checkout: use new update_sparsity() function sparse-checkout: use improved unpack_trees porcelain messages unpack-trees: move ERROR_WOULD_LOSE_SUBMODULE earlier unpack-trees: rename ERROR_* fields meant for warnings to WARNING_* unpack-trees: split display_error_msgs() into two unpack-trees: make sparse path messages sound like warnings unpack-trees: provide warnings on sparse updates for unmerged paths too unpack-trees: failure to set SKIP_WORKTREE bits always just a warning sparse-checkout: provide a new reapply subcommand pull: avoid running both merge and rebase t7063: more thorough status checking t3000: add more testcases testing a variety of ls-files issues dir: fix simple typo in comment dir: consolidate treat_path() and treat_one_path() dir: fix broken comment dir: fix confusion based on variable tense dir: replace exponential algorithm with a linear one dir: include DIR_KEEP_UNTRACKED_CONTENTS handling in treat_directory() dir: replace double pathspec matching with single in treat_directory() Fix error-prone fill_directory() API; make it only return matches completion: fix 'git add' on paths under an untracked directory git-rebase.txt: add another hook to the hooks section, and explain more sequencer: honor GIT_REFLOG_ACTION rebase -i: mark commits that begin empty in todo editor rebase: reinstate --no-keep-empty rebase: fix an incompatible-options error message rebase: display an error if --root and --fork-point are both provided Emily Shaffer (8): help: move list_config_help to builtin/help bugreport: add tool to generate debugging info bugreport: gather git version and build info bugreport: add uname info bugreport: add compiler info bugreport: drop extraneous includes bugreport: collect list of populated hooks trace2: log progress time and throughput Emma Brooks (3): format-patch: teach --no-encode-email-headers Documentation: explain "mboxrd" pretty format gitweb: Recognize *-to and Closes/Fixes trailers Eric Sunshine (1): restore: default to HEAD when combining --staged and --worktree Garima Singh (13): commit-graph: define and use MAX_NUM_CHUNKS bloom.c: add the murmur3 hash implementation bloom.c: introduce core Bloom filter constructs bloom.c: core Bloom filter implementation for changed paths. commit-graph: compute Bloom filters for changed paths commit-graph: examine commits by generation number commit-graph: write Bloom filters to commit graph file commit-graph: reuse existing Bloom filters during write commit-graph: add --changed-paths option to write subcommand revision.c: use Bloom filters to speed up path based revision walks revision.c: add trace2 stats around Bloom filter usage t4216: add end to end tests for git log with Bloom filters commit-graph: add GIT_TEST_COMMIT_GRAPH_CHANGED_PATHS test flag Hans Jerry Illikainen (2): t: increase test coverage of signature verification output gpg-interface: prefer check_signature() for GPG verification Heba Waly (4): advice: extract vadvise() from advise() advice: change "setupStreamFailure" to "setUpstreamFailure" advice: revamp advise API tag: use new advice API to check visibility Jeff King (41): t3419: drop EXPENSIVE tests t/lib-credential.sh: drop shebang line t/lib-*.sh: drop executable bit test-lib-functions: make packetize() more efficient upload-pack: handle unexpected delim packets p5310: stop timing non-bitmap pack-to-disk Makefile: avoid running curl-config multiple times Makefile: use curl-config --cflags test-lib-functions: simplify packetize() stdin code commit-graph: examine changed-path objects in pack order oid_array: use size_t for count and allocation oid_array: use size_t for iteration oid_array: rename source file from sha1-array test-tool: rename sha1-array to oid-array bisect: stop referring to sha1_array ref-filter: stop referring to "sha1 array" oidset: stop referring to sha1-array clone: use "quick" lookup while following tags Makefile: avoid running curl-config unnecessarily fast-import: replace custom hash with hashmap.c repository: mark the "refs" pointer as private remote: drop auto-strlen behavior of make_branch() and make_rewrite() parse_config_key(): return subsection len as size_t config: drop useless length variable in write_pair() git_config_parse_key(): return baselen as size_t config: use size_t to store parsed variable baselen config: reject parsing of files over INT_MAX credential: treat "?" and "#" in URLs as end of host blame: drop unused parameter from maybe_changed_path test-bloom: fix some whitespace issues test-bloom: check that we have expected arguments commit-graph: close descriptors after mmap t0000: disable GIT_TEST_FAIL_PREREQS in sub-tests gitcredentials(7): clarify quoting of helper examples gitcredentials(7): make shell-snippet example more realistic CodingGuidelines: drop arithmetic expansion advice to use "$x" ref-filter: apply --ignore-case to all sorting keys ref-filter: apply fallback refname sort only after all user sorts list-objects-filter: treat NULL filter_options as "disabled" pack-bitmap: pass object filter to fill-in traversal ci: allow per-branch config for GitHub Actions Jessica Clarke (1): config.mak.uname: Define FREAD_READS_DIRECTORIES for GNU/Hurd Jiang Xin (5): send-pack: fix inconsistent porcelain output t5543: never report what we do not push send-pack: mark failure of atomic push properly transport-helper: mark failure for atomic push transport-helper: new method reject_atomic_push() Johannes Schindelin (36): cherry-pick: add test for `--skip` advice in `git commit` tests(junit-xml): avoid invalid XML import-tars: ignore the global PAX header tests(gpg): allow the gpg-agent to start on Windows t/lib-gpg.sh: stop pretending to be a stand-alone script tests: do not let lazy prereqs inside `test_expect_*` turn off tracing tests: turn GPG, GPGSM and RFC1991 into lazy prereqs tests: increase the verbosity of the GPG-related prereqs MyFirstObjectWalk: remove unnecessary conditional statement t0007: fix a typo ci/lib: if CI type is unknown, show the environment variables ci/lib: allow running in GitHub Actions ci: fix the `jobname` of the `GETTEXT_POISON` job subtree: fix build with AsciiDoctor 2 mingw: do not treat `COM0` as a reserved file name t3904: fix incorrect demonstration of a bug stash -p: (partially) fix bug concerning split hunks mingw: help debugging by optionally executing bash with strace interactive: refactor code asking the user for interactive input ci: run gem with sudo to install asciidoctor README: add a build badge for the GitHub Actions runs ci: retire the Azure Pipelines definition tests: when run in Bash, annotate test failures with file name/line number ci: add a problem matcher for GitHub Actions ci: let GitHub Actions upload failed tests' directories t: consolidate the `is_hidden` functions mingw: make test_path_is_hidden more robust t: restrict `is_hidden` to be called only on Windows credential: fix grammar credential: optionally allow partial URLs in credential_from_url_gently() credential: optionally allow partial URLs in credential_from_url_gently() credential: handle `credential.<partial-URL>.<key>` again macOS/brew: let the build find gettext headers/libraries/msgfmt push: anonymize URLs in error messages and warnings credential: handle `credential.<partial-URL>.<key>` again rebase --autosquash: fix a potential segfault Jonathan Nieder (1): Revert "fetch: default to protocol version 2" Jonathan Tan (11): connected: always use partial clone optimization promisor-remote: accept 0 as oid_nr in function diff: make diff_populate_filespec_options struct diff: refactor object read diff: restrict when prefetching occurs rebase --merge: optionally skip upstreamed commits fetch-pack: return enum from process_acks() fetch-pack: in protocol v2, in_vain only after ACK fetch-pack: in protocol v2, reset in_vain upon ACK commit-graph: avoid memory leaks t5500: count objects through stderr, not trace Jorge Lopez Silva (2): http: add client cert support for HTTPS proxies http: add environment variable support for HTTPS proxies Josh Steadmon (1): trace2: teach Git to log environment variables Julien Moutinho (1): gitweb: fix UTF-8 encoding when using CGI::Fast Junio C Hamano (26): rebase: --fork-point regression fix describe: force long format for a name based on a mislocated tag update how-to-maintain-git parse-options: teach "git cmd -h" to show alias as alias clone: reorder --recursive/--recurse-submodules log: give --[no-]use-mailmap a more sensible synonym --[no-]mailmap separate tar.* config to its own source file The first batch post 2.26 cycle The second batch post 2.26 cycle t/README: suggest how to leave test early with failure CodingGuidelines: allow ${#posix} == strlen($posix) sha1-name: do not assume that the ref store is initialized receive-pack: compilation fix The third batch The fourth batch credential-store: document the file format a bit more Revert "commit-graph.c: introduce '--[no-]check-oids'" The fifth batch The sixth batch The seventh batch auto-gc: extract a reusable helper from "git fetch" auto-gc: pass --quiet down from am, commit, merge and rebase CodingGuidelines: do not ==/!= compare with 0 or '\0' or NULL The eighth batch The ninth batch Git 2.27-rc0 Li Xuejiang (1): git-submodule.sh: setup uninitialized variables Martin Ågren (9): Doc: drop support for docbook-xsl before 1.71.1 Doc: drop support for docbook-xsl before 1.72.0 Doc: drop support for docbook-xsl before 1.73.0 manpage-bold-literal.xsl: stop using git.docbook.backslash manpage-normal.xsl: fold in manpage-base.xsl INSTALL: drop support for docbook-xsl before 1.74 user-manual.conf: don't specify [listingblock] config.txt: move closing "----" to cover entire listing merge: use skip_prefix to parse config key Matheus Tavares (3): test-lib: allow short options to be bundled grep: follow conventions for printing paths w/ unusual chars config doc: fix reference to config.worktree info Matthias Aßhauer (1): mingw: use modern strftime implementation if possible Michael F. Schönitzer (1): docs: fix minor glitch in illustration Nathan Sanders (1): mingw: cope with the Isilon network file system Patrick Steinhardt (9): refs: fix segfault when aborting empty transaction git-update-ref.txt: add missing word strbuf: provide function to append whole lines update-ref: organize commands in an array update-ref: drop unused argument for `parse_refname` update-ref: pass end pointer instead of strbuf update-ref: move transaction handling into `update_refs_stdin()` update-ref: read commands in a line-wise fashion update-ref: implement interactive transaction handling Philippe Blain (9): t7112: remove mention of KNOWN_FAILURE_SUBMODULE_RECURSIVE_NESTED t/lib-submodule-update: remove outdated test description t/lib-submodule-update: move a test to the right section unpack-trees: remove outdated description for verify_clean_submodule unpack-trees: check for missing submodule directory in merged_entry t/lib-submodule-update: add test removing nested submodules git-rebase.txt: fix typo pull doc: refer to a specific section in 'fetch' doc pull doc: correct outdated description of an example Phillip Wood (6): t3404: use test_cmp_rev cherry-pick: check commit error messages sequencer: write CHERRY_PICK_HEAD for reword and edit commit: use enum value for multiple cherry-picks commit: encapsulate determine_whence() for sequencer commit: give correct advice for empty commit during a rebase René Scharfe (4): pull: document more passthru options pull: remove --update-head-ok from documentation pull: pass documented fetch options on fsck: report non-consecutive duplicate names in trees SZEDER Gábor (4): ci: use python3 in linux-gcc and osx-gcc and python2 elsewhere commit-slab: clarify slabname##_peek()'s return value ci: make MAKEFLAGS available inside the Docker container in the Linux32 job completion: offer '--(no-)patch' among 'git log' options Shourya Shukla (4): submodule--helper.c: Rename 'cb_foreach' to 'foreach_cb' gitfaq: files in .gitignore are tracked gitfaq: fetching and pulling a repository submodule: port subcommand 'set-url' from shell to C Son Luong Ngoc (1): midx: teach "git multi-pack-index repack" honor "git repack" configurations Taylor Blau (24): t/helper/test-read-graph.c: support commit-graph chains builtin/commit-graph.c: support for '--split[=<strategy>]' builtin/commit-graph.c: introduce split strategy 'no-merge' builtin/commit-graph.c: introduce split strategy 'replace' oidset: introduce 'oidset_size' commit-graph.h: replace 'commit_hex' with 'commits' commit-graph.c: introduce '--[no-]check-oids' diff-tree.c: load notes machinery when required commit-graph.c: don't use discarded graph_name in error t/test-lib.sh: make ULIMIT_FILE_DESCRIPTORS available to tests commit-graph.c: gracefully handle file descriptor exhaustion t5537: use test_write_lines and indented heredocs for readability shallow.c: use '{commit,rollback}_shallow_file' tempfile.c: introduce 'create_tempfile_mode' lockfile.c: introduce 'hold_lock_file_for_update_mode' commit-graph.c: write non-split graphs as read-only commit-graph.c: ensure graph layers respect core.sharedRepository commit-graph.c: make 'commit-graph-chain's read-only commit: make 'commit_graft_pos' non-static shallow: extract a header file for shallow-related functions shallow.h: document '{commit,rollback}_shallow_file' shallow: use struct 'shallow_lock' for additional safety pack-bitmap.c: make object filtering functions generic pack-bitmap.c: support 'tree:0' filtering Terry Moschou (1): complete: zsh: add missing sub cmd completion candidates Thomas Gummerer (2): stash: get git_stash_config at the top level stash: remove the stash.useBuiltin setting Vasil Dimov (2): range-diff: fix a crash in parsing git-log output range-diff: avoid negative string precision Yang Zhao (12): git-p4: make python2.7 the oldest supported version git-p4: remove string type aliasing git-p4: encode/decode communication with p4 for python3 git-p4: encode/decode communication with git for python3 git-p4: convert path to unicode before processing them git-p4: open .gitp4-usercache.txt in text mode git-p4: use marshal format version 2 when sending to p4 git-p4: fix freezing while waiting for fast-import progress git-p4: use functools.reduce instead of reduce git-p4: use dict.items() iteration for python3 compatibility git-p4: simplify regex pattern generation for parsing diff-tree git-p4: use python3's input() everywhere brian m. carlson (34): builtin/pack-objects: make hash agnostic hash: implement and use a context cloning function hex: introduce parsing variants taking hash algorithms hex: add functions to parse hex object IDs in any algorithm repository: require a build flag to use SHA-256 t: use hash-specific lookup tables to define test constants t6300: abstract away SHA-1-specific constants t6300: make hash algorithm independent t/helper/test-dump-split-index: initialize git repository t/helper: initialize repository if necessary t/helper: make repository tests hash independent setup: allow check_repository_format to read repository format builtin/init-db: allow specifying hash algorithm on command line builtin/init-db: add environment variable for new repo hash init-db: move writing repo version into a function worktree: allow repository version 1 commit: use expected signature header for SHA-256 fast-import: permit reading multiple marks files fast-import: add helper function for inserting mark object entries fast-import: make find_marks work on any mark set fast-import: add a generic function to iterate over marks fast-import: add options for rewriting submodules builtin/checkout: pass branch info down to checkout_worktree convert: permit passing additional metadata to filter processes convert: provide additional metadata to filters builtin/checkout: compute checkout metadata for checkouts builtin/clone: compute checkout metadata for clones builtin/rebase: compute checkout metadata for rebases builtin/reset: compute checkout metadata for reset t0021: test filter metadata for additional cases docs: add a FAQ builtin/receive-pack: use constant-time comparison for HMAC value credential: fix matching URLs with multiple levels in path docs: document credential.helper allowed values luciano.rocha@booking.com (1): freshen_file(): use NULL `times' for implicit current-time Đoàn Trần Công Danh (34): t4061: use POSIX compliant regex(7) test-lib-functions: test_cmp: eval $GIT_TEST_CMP t5003: drop the subshell in test_lazy_prereq t5003: skip conversion test if unzip -a is unavailable t5616: use rev-parse instead to get HEAD's object_id t7063: drop non-POSIX argument "-ls" from find(1) t4124: tweak test so that non-compliant diff(1) can also be used t5703: feed raw data into test-tool unpack-sideband rebase.c: honour --no-gpg-sign cherry-pick/revert: honour --no-gpg-sign in all case Documentation: document am --no-gpg-sign Documentation: reword commit --no-gpg-sign Documentation: merge commit-tree --[no-]gpg-sign Documentation: document merge option --no-gpg-sign ci/lib-docker: preserve required environment variables ci/linux32: parameterise command to switch arch ci: refactor docker runner script ci/linux32: libify install-dependencies step travis: build and test on Linux with musl libc and busybox ci/lib: set TERM environment variable if not exist ci: explicit install all required packages ci: configure GitHub Actions for CI/PR t4254: merge 2 steps of a single test mailinfo.c: avoid strlen on strings that can contains NUL mailinfo: disallow NUL character in mail's header date.c: s/is_date/set_date/ date.c: validate and set time in a helper function date.c: skip fractional second part of ISO-8601 date.c: allow compact version of ISO-8601 datetime test-parse-pathspec-file.c: s/0/NULL/ for pointer type compat/regex: move stdlib.h up in inclusion chain graph.c: limit linkage of internal variable progress.c: silence cgcc suggestion about internal linkage bloom: fix `make sparse` warning 마누엘 (1): interactive: explicitly `fflush` stdout before expecting input Version v2.26.3; changes since v2.26.2: --------------------------------------- Johannes Schindelin (11): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Git 2.22.5 Git 2.23.4 Git 2.24.4 Git 2.25.5 Git 2.26.3 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.26.2; changes since v2.26.1: --------------------------------------- Jeff King (6): t0300: make "quit" helper more realistic t0300: use more realistic inputs credential: parse URL without host as empty host, not unset credential: refuse to operate when missing host or protocol credential: die() when parsing invalid urls Git 2.17.5 Jonathan Nieder (4): fsck: convert gitmodules url to URL passed to curl credential: treat URL without scheme as invalid credential: treat URL with empty scheme as invalid fsck: reject URL with empty host in .gitmodules Version v2.26.1; changes since v2.26.0: --------------------------------------- Jeff King (4): credential: avoid writing values with newlines t/lib-credential: use test_i18ncmp to check stderr credential: detect unrepresentable values when parsing urls fsck: detect gitmodules URLs with embedded newlines Junio C Hamano (1): Git 2.17.4 Version v2.26.0; changes since v2.26.0-rc2: ------------------------------------------- Alessandro Menti (2): l10n: it.po: update the Italian translation for Git 2.26.0 round 1 l10n: it.po: update the Italian translation for Git 2.26.0 round 2 Alexander Shopov (2): l10n: bg.po: Updated Bulgarian translation (4835t) l10n: bg.po: Updated Bulgarian translation (4839t) Beat Bolli (1): unicode: update the width tables to Unicode 13.0 Christian Stimming (3): git-gui: update pot template and German translation to current source code git-gui: extend translation glossary template with more terms git-gui: update German translation Christopher Diaz Riveros (1): l10n: es: 2.26.0 round#2 Elijah Newren (1): RelNotes/2.26.0: fix various typos Emir Sarı (5): l10n: tr: Add Turkish translation team info l10n: tr: Add Turkish translations l10n: tr: Add glossary for Turkish translations l10n: tr: v2.26.0 round 2 l10n: tr: Fix a couple of ambiguities Fangyi Zhou (1): l10n: zh_CN: Revise v2.26.0 translation Jean-Noël Avila (2): l10n: fr v2.26.0 rnd1 l10n: fr : v2.26.0 rnd 2 Jiang Xin (4): l10n: git.pot: v2.26.0 round 1 (73 new, 38 removed) l10n: git.pot: v2.26.0 round 2 (7 new, 2 removed) l10n: zh_CN: for git v2.26.0 l10n round 1 and 2 l10n: tr.po: change file mode to 644 Jordi Mas (3): l10n: Update Catalan translation l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (2): Git 2.25.2 Git 2.26 Luke Bonanomi (1): git-gui--askpass: coerce answers to UTF-8 on Windows Matthias Rüster (1): l10n: de.po: Update German translation for Git 2.26.0 Peter Krefting (2): l10n: sv.po: Update Swedish translation (4835t0f0u) l10n: sv.po: Update Swedish translation (4839t0f0u) Pratyush Yadav (4): git-gui: add missing close bracket git-gui: fix error popup when doing blame -> "Show History Context" git-gui: reduce Tcl version requirement from 8.6 to 8.5 git-gui: create a new namespace for chord script evaluation Ralf Thielow (1): l10n: de.po: add missing space Trần Ngọc Quân (1): l10n: vi(4839t): Updated Vietnamese translation for v2.26.0 Yi-Jyun Pan (2): l10n: zh_TW.po: v2.26.0 round 1 (11 untranslated) l10n: zh_TW.po: v2.26.0 round 2 (0 untranslated) brian m. carlson (1): t3419: prevent failure when run with EXPENSIVE Đoàn Trần Công Danh (1): l10n: vi: fix translation + grammar Version v2.26.0-rc2; changes since v2.26.0-rc1: ----------------------------------------------- Elijah Newren (3): sequencer: clear state upon dropping a become-empty commit git-rebase.txt: highlight backend differences with commit rewording t6022, t6046: fix flaky files-are-updated checks Emily Shaffer (1): prefix_path: show gitdir if worktree unavailable Jeff King (1): remote: drop "explicit" parameter from remote_ref_for_branch() Jiang Xin (1): i18n: unmark a message in rebase.c Junio C Hamano (3): Documentation: clarify that `-h` alone stands for `help` Hopefully the final batch before -rc2 Git 2.26-rc2 Martin Ågren (1): t1091: don't grep for `strerror()` string Version v2.26.0-rc1; changes since v2.26.0-rc0: ----------------------------------------------- Alexandr Miloslavskiy (9): doc: rm: synchronize <pathspec> description rm: support the --pathspec-from-file option doc: stash: split options from description (1) doc: stash: split options from description (2) doc: stash: document more options doc: stash: synchronize <pathspec> description stash: eliminate crude option parsing stash push: support the --pathspec-from-file option mingw: workaround for hangs when sending STDIN Elijah Newren (6): merge-recursive: apply collision handling unification to recursive case t602[1236], t6034: modernize test formatting t6020, t6022, t6035: update merge tests to use test helper functions t3035: prefer test_must_fail to bash negation for git commands t6022, t6046: test expected behavior instead of testing a proxy for it t6020: new test with interleaved lexicographic ordering of directories Harald van Dijk (1): show_one_mergetag: print non-parent in hex form. Jeff King (1): config.mak.dev: re-enable -Wformat-zero-length Junio C Hamano (1): Git 2.26-rc1 Kir Kolyshkin (1): completion: add diff --color-moved[-ws] Paolo Bonzini (5): parse-options: add testcases for OPT_CMDMODE() parse-options: convert "command mode" to a flag am: convert "resume" variable to a struct am: support --show-current-patch=raw as a synonym for--show-current-patch am: support --show-current-patch=diff to retrieve .git/rebase-apply/patch Ralf Thielow (1): rebase-interactive.c: silence format-zero-length warnings Rasmus Jonsson (1): t1050: replace test -f with test_path_is_file René Scharfe (1): remote-curl: show progress for fetches over dumb HTTP Version v2.26.0-rc0; changes since v2.25.5: ------------------------------------------- Abhishek Kumar (2): lib-log-graph: consolidate test_cmp_graph logic lib-log-graph: consolidate colored graph cmp logic Alban Gruin (4): rebase -i: stop checking out the tip of the branch to rebase sequencer: move check_todo_list_from_file() to rebase-interactive.c rebase-interactive: warn if commit is dropped with `rebase --edit-todo' builtin/rebase: remove a call to get_oid() on `options.switch_to' Alexandr Miloslavskiy (5): parse_branchname_arg(): extract part as new function checkout: don't revert file on ambiguous tracking branches t: add tests for error conditions with --pathspec-from-file t: fix quotes tests for --pathspec-from-file t: directly test parse_pathspec_file() Benno Evers (1): describe: don't abort too early when searching tags Bert Wesarg (6): pull --rebase/remote rename: document and honor single-letter abbreviations rebase types remote: clean-up by returning early to avoid one indentation remote: clean-up config callback remote rename/remove: handle branch.<name>.pushRemote config values config: provide access to the current line number remote rename/remove: gently handle remote.pushDefault config Denton Liu (32): t/lib-git-p4: use test_path_is_missing() t0000: replace test_must_fail with run_sub_test_lib_test_err() t0003: use named parameters in attr_check() t0003: use test_must_be_empty() t0003: don't use `test_must_fail attr_check` t0020: don't use `test_must_fail has_cr` t0020: use ! check_packed_refs_marked t1306: convert `test_might_fail rm` to `rm -f` t1307: reorder `nongit test_must_fail` t1409: let sed open its own input file t1409: use test_path_is_missing() t1501: remove use of `test_might_fail cp` t1507: stop losing return codes of git commands t1507: run commands within test_expect_success t1507: inline full_name() contrib/credential/netrc: make PERL_PATH configurable contrib/credential/netrc: work outside a repo t2018: remove trailing space from test description t2018: add space between function name and () t2018: improve style of if-statement t2018: be more discerning when checking for expected exit codes t2018: teach do_checkout() to accept `!` arg t2018: don't lose return code of git commands t2018: replace "sha" with "oid" t3030: use test_path_is_missing() t3310: extract common notes_merge_files_gone() t3415: stop losing return codes of git commands t3415: increase granularity of test_auto_{fixup,squash}() t3419: stop losing return code of git command t3507: fix indentation t3507: use test_path_is_missing() t4124: only mark git command with test_must_fail Derrick Stolee (21): graph: add test to demonstrate horizontal line bug graph: fix collapse of multiple edges t1091: use check_files to reduce boilerplate t1091: improve here-docs sparse-checkout: create leading directories clone: fix --sparse option with URLs sparse-checkout: cone mode does not recognize "**" sparse-checkout: detect short patterns sparse-checkout: warn on globs in cone patterns sparse-checkout: properly match escaped characters sparse-checkout: write escaped patterns in cone mode sparse-checkout: unquote C-style strings over --stdin sparse-checkout: use C-style quotes in 'list' subcommand sparse-checkout: escape all glob characters on write sparse-checkout: improve docs around 'set' in cone mode sparse-checkout: fix cone mode behavior mismatch sparse-checkout: extract add_patterns_from_input() sparse-checkout: extract pattern update from 'set' subcommand sparse-checkout: create 'add' subcommand sparse-checkout: work with Windows paths sparse-checkout: allow one-character directories in cone mode Elijah Newren (20): git-rebase.txt: update description of --allow-empty-message t3404: directly test the behavior of interest rebase (interactive-backend): make --keep-empty the default rebase (interactive-backend): fix handling of commits that become empty t3406: simplify an already simple test rebase, sequencer: remove the broken GIT_QUIET handling rebase: make sure to pass along the quiet flag to the sequencer rebase: fix handling of restrict_revision t3432: make these tests work with either am or merge backends rebase: allow more types of rebases to fast-forward git-rebase.txt: add more details about behavioral differences of backends rebase: move incompatibility checks between backend options a bit earlier rebase: add an --am option git-prompt: change the prompt for interactive-based rebases rebase: drop '-i' from the reflog for interactive-based rebases rebase tests: mark tests specific to the am-backend with --am rebase tests: repeat some tests using the merge backend instead of am rebase: make the backend configurable via config setting rebase: change the default backend from "am" to "merge" rebase: rename the two primary rebase backends Emily Shaffer (5): fetch: emphasize failure during submodule fetch MyFirstContribution: add avenues for getting help MyFirstContribution: rephrase contact info submodule--helper: use C99 named initializer clone: pass --single-branch during --recurse-submodules Eric Sunshine (6): t3400: make test clean up after itself rebase: refuse to switch to branch already checked out elsewhere worktree: drop unused code from get_main_worktree() worktree: improve find_worktree() documentation worktree: add utility to find worktree by pathname worktree: don't allow "add" validation to be fooled by suffix matching Eyal Soha (3): color.c: refactor color_output arguments color.c: support bright aixterm colors color.c: alias RGB colors 8-15 to aixterm colors Hans Jerry Illikainen (2): editorconfig: indent text files with tabs gpg-interface: add minTrustLevel as a configuration option Hariom Verma (4): get_main_worktree(): allow it to be called in the Git directory t5509: use a bare repository for test push target receive.denyCurrentBranch: respect all worktrees t2402: test worktree path when called in .git directory Heba Waly (3): add: use advise function to display hints git: update documentation for --git-dir add: change advice config variables used by the add API Jeff King (52): builtin/pack-objects: report reused packfile objects packfile: expose get_delta_base() ewah/bitmap: introduce bitmap_word_alloc() pack-bitmap: introduce bitmap_walk_contains() pack-bitmap: uninteresting oid can be outside bitmapped packfile pack-bitmap: simplify bitmap_has_oid_in_uninteresting() csum-file: introduce hashfile_total() pack-objects: introduce pack.allowPackReuse builtin/pack-objects: introduce obj_is_packed() pack-objects: improve partial packfile reuse pack-objects: add checks for duplicate objects pack-bitmap: don't rely on bitmap_git->reuse_objects sparse-checkout: fix documentation typo for core.sparseCheckoutCone verify_filename(): handle backslashes in "wildcards are pathspecs" rule t1400: avoid "test" string comparisons t1506: drop space after redirection operator doc: drop "explicitly given" from push.default description sha1-name: mark get_oid() error messages for translation normalize_path_copy(): document "dst" size expectations walker_fetch(): avoid raw array length computation traverse_trees(): use stack array for name entries diff: move diff.wsErrorHighlight to "basic" config tree-walk.c: break circular dependency with unpack-trees mailinfo: treat header values as C strings mailinfo: simplify parsing of header values mailinfo: be more liberal with header whitespace mailinfo: factor out some repeated header handling pack-bitmap: factor out type iterator initialization pack-bitmap: fix leak of haves/wants object lists rev-list: fallback to non-bitmap traversal when filtering pack-bitmap: refuse to do a bitmap traversal with pathspecs rev-list: factor out bitmap-optimized routines rev-list: make --count work with --objects rev-list: allow bitmaps when counting objects t5310: factor out bitmap traversal comparison rev-list: allow commit-only bitmap traversals pack-bitmap: basic noop bitmap filter infrastructure rev-list: use bitmap filters for traversal bitmap: add bitmap_unset() function pack-bitmap: implement BLOB_NONE filtering pack-bitmap: implement BLOB_LIMIT filtering pack-objects: support filters with bitmaps nth_packed_object_oid(): use customary integer return pack-objects: read delta base oid into object_id struct pack-objects: convert oe_set_delta_ext() to use object_id pack-objects: use object_id struct in pack-reuse code pack-bitmap: use object_id when loading on-disk bitmaps pack-check: convert "internal error" die to a BUG() pack-check: push oid lookup into loop packed_object_info(): use object_id for returning delta base packed_object_info(): use object_id internally for delta base packfile: drop nth_packed_object_sha1() Johannes Schindelin (19): built-in add -p: prepare for patch modes other than "stage" built-in add -p: implement the "stash" and "reset" patch modes legacy stash -p: respect the add.interactive.usebuiltin setting built-in stash: use the built-in `git add -p` if so configured built-in add -p: implement the "checkout" patch modes built-in add -p: implement the "worktree" patch modes commit --interactive: make it work with the built-in `add -i` t3701: adjust difffilter test built-in add -p: support interactive.diffFilter built-in add -p: handle diff.algorithm terminal: make the code of disable_echo() reusable terminal: accommodate Git for Windows' default terminal terminal: add a new function to read a single keystroke built-in add -p: respect the `interactive.singlekey` config setting built-in add -p: handle Escape sequences in interactive.singlekey mode built-in add -p: handle Escape sequences more efficiently ci: include the built-in `git add -i` in the `linux-gcc` job t9001, t9116: avoid pipes t5537: adjust test_oid label Johannes Sixt (1): t3504: do check for conflict marker after failed cherry-pick Jonathan Nieder (9): sha1-file: document how to use pretend_object_file fetch test: avoid use of "VAR= cmd" with a shell function t/check-non-portable-shell: detect "FOO= shell_func", too fetch test: mark test of "skipping" haves as v0-only fetch test: use more robust test for filtered objects config doc: protocol.version is not experimental test: request GIT_TEST_PROTOCOL_VERSION=0 when appropriate protocol test: let protocol.version override GIT_TEST_PROTOCOL_VERSION fetch: default to protocol version 2 Jonathan Tan (2): connected: verify promisor-ness of partial clone fetch: forgo full connectivity check if --filter Junio C Hamano (11): The first batch post 2.25 cycle The second batch C: use skip_prefix() to avoid hardcoded string length The third batch for 2.26 The fourth batch for 2.26 The fifth batch for 2.26 The sixth batch for 2.26 rev-list --count: comment on the use of count_right++ The seventh batch for 2.26 The eighth batch for 2.26 Git 2.26-rc0 Kevin Willford (4): fsmonitor: change last update timestamp on the index_state to opaque token fsmonitor: handle version 2 of the hooks that will use opaque token fsmonitor: add fsmonitor hook scripts for version 2 fsmonitor: update documentation for hook version and watchman hooks Kyle Meyer (1): submodule add: show 'add --dry-run' stderr when aborting Lucius Hu (1): templates: fix deprecated type option `--bool` Luke Diamand (7): git-p4: make closeStreams() idempotent git-p4: add P4CommandException to report errors talking to Perforce git-p4: disable some pylint warnings, to get pylint output to something manageable git-p4: create helper function importRevisions() git-p4: cleanup better on error exit git-p4: check for access to remote host earlier git-p4: avoid leak of file handle when cloning Martin Ågren (4): name-rev: rewrite create_or_update_name() t4117: check for files using `test_path_is_file` t9810: drop debug `cat` call t: drop debug `cat` calls Matheus Tavares (21): grep: fix race conditions on userdiff calls grep: fix race conditions at grep_submodule() grep: fix racy calls in grep_objects() replace-object: make replace operations thread-safe object-store: allow threaded access to object reading grep: replace grep_read_mutex by internal obj read lock submodule-config: add skip_if_read option to repo_read_gitmodules() grep: allow submodule functions to run in parallel grep: protect packed_git [re-]initialization grep: re-enable threads in non-worktree case grep: move driver pre-load out of critical section grep: use no. of cores as the default no. of threads doc: sparse-checkout: mention --cone option completion: add support for sparse-checkout diff: make diff_populate_filespec() honor its repo argument cache-tree: use given repo's hash_algo at verify_one() pack-check: use given repo's hash_algo at verify_packfile() streaming: allow open_istream() to handle any repo sha1-file: pass git_hash_algo to write_object_file_prepare() sha1-file: pass git_hash_algo to hash_object_file() sha1-file: allow check_object_signature() to handle any repo Matthew Rogers (10): config: fix typo in variable name t1300: fix over-indented HERE-DOCs t1300: create custom config file without special characters config: make scope_name non-static and rename it config: split repo scope to local and worktree config: clarify meaning of command line scoping config: preserve scope in do_git_config_sequence config: teach git_config_source to remember its scope submodule-config: add subomdule config scope config: add '--show-scope' to print the scope of a config value Miriam Rubio (3): bisect--helper: convert `vocab_*` char pointers to char arrays bisect: use the standard 'if (!var)' way to check for 0 bisect: add enum to represent bisect returning codes Peter Kaestle (3): t7400: add a testcase for submodule status on empty dirs submodule: fix status of initialized but not cloned submodules t7400: testcase for submodule status on unregistered inner git repos Pranit Bauva (7): bisect--helper: return error codes from `cmd_bisect__helper()` bisect: libify `exit_if_skipped_commits` to `error_if_skipped*` and its dependents bisect: libify `bisect_checkout` bisect: libify `check_merge_bases` and its dependents bisect: libify `check_good_are_ancestors_of_bad` and its dependents bisect: libify `handle_bad_merge_base` and its dependents bisect: libify `bisect_next_all` René Scharfe (20): name-rev: remove unused typedef name-rev: respect const qualifier name-rev: don't leak path copy in name_ref() name-rev: don't _peek() in create_or_update_name() name-rev: put struct rev_name into commit slab name-rev: factor out get_parent_name() name-rev: pre-size buffer in get_parent_name() name-rev: generate name strings only if they are better name-rev: release unused name strings name-rev: sort tip names before applying strbuf: add and use strbuf_insertstr() mailinfo: don't insert header prefix for handle_content_type() parse-options: use COPY_ARRAY in parse_options_concat() parse-options: factor out parse_options_count() parse-options: const parse_options_concat() parameters parse-options: simplify parse_options_dup() quote: use isalnum() to check for alphanumeric characters use strpbrk(3) to search for characters from a given set blame: provide type of fingerprints pointer commit-graph: use progress title directly SZEDER Gábor (6): t9902-completion: add tests for the __git_find_on_cmdline() helper completion: clean up the __git_find_on_cmdline() helper function completion: return the index of found word from __git_find_on_cmdline() completion: simplify completing 'git worktree' subcommands and options completion: list existing working trees for 'git worktree' subcommands completion: list paths and refs for 'git worktree add' Shourya Shukla (2): t6025: modernize style t6025: use helpers to replace test -f <path> Tanushree Tumane (2): bisect--helper: change `retval` to `res` bisect--helper: introduce new `decide_next()` function Taylor Blau (5): t5318: don't pass non-object directory to '--object-dir' commit-graph.h: store an odb in 'struct write_commit_graph_context' commit-graph.h: store object directory in 'struct commit_graph' commit-graph.c: remove path normalization, comparison commit-graph.h: use odb in 'load_commit_graph_one_fd_st' brian m. carlson (46): t4054: make hash-size independent t4066: compute index line in diffs t4134: compute appropriate length constant t4200: make hash size independent t4202: abstract away SHA-1-specific constants t4204: make hash size independent t4300: abstract away SHA-1-specific constants t5318: update for SHA-256 t5319: change invalid offset for SHA-256 compatibility t5319: make test work with SHA-256 t5324: make hash size independent t5504: make hash algorithm independent t5510: make hash size independent t5512: abstract away SHA-1-specific constants t5530: compute results based on object length t5537: make hash size independent t5540: make hash size independent t5562: use $ZERO_OID t5601: switch into repository to hash object t5604: make hash independent t/lib-pack: support SHA-256 t3206: make hash size independent t3308: make test work with SHA-256 t3309: make test work with SHA-256 t3310: make test work with SHA-256 t3311: make test work with SHA-256 t4013: make test hash independent t4211: move SHA-1-specific test cases into a directory t4211: add test cases for SHA-256 t4060: make test work with SHA-256 t5302: make hash size independent t5309: make test hash independent t5313: make test hash independent t5321: make test hash independent t5515: make test hash independent t5318: update for SHA-256 t5607: make hash size independent t5703: make test work with SHA-256 t6000: abstract away SHA-1-specific constants t6006: make hash size independent t6024: update for SHA-256 mailmap: add an additional email address for brian m. carlson t1300: add test for urlmatch with multiple wildcards t0300: add tests for some additional cases credential: use the last matching username in the config credential: allow wildcard patterns when matching config Version v2.25.5; changes since v2.25.4: --------------------------------------- Johannes Schindelin (10): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Git 2.22.5 Git 2.23.4 Git 2.24.4 Git 2.25.5 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.25.4; changes since v2.25.3: --------------------------------------- Jeff King (6): t0300: make "quit" helper more realistic t0300: use more realistic inputs credential: parse URL without host as empty host, not unset credential: refuse to operate when missing host or protocol credential: die() when parsing invalid urls Git 2.17.5 Jonathan Nieder (4): fsck: convert gitmodules url to URL passed to curl credential: treat URL without scheme as invalid credential: treat URL with empty scheme as invalid fsck: reject URL with empty host in .gitmodules Version v2.25.3; changes since v2.25.2: --------------------------------------- Jeff King (4): credential: avoid writing values with newlines t/lib-credential: use test_i18ncmp to check stderr credential: detect unrepresentable values when parsing urls fsck: detect gitmodules URLs with embedded newlines Junio C Hamano (1): Git 2.17.4 Version v2.25.2; changes since v2.25.1: --------------------------------------- Alexandr Miloslavskiy (1): mingw: workaround for hangs when sending STDIN Beat Bolli (1): unicode: update the width tables to Unicode 13.0 David Turner (1): git rm submodule: succeed if .gitmodules index stat info is zero Derrick Stolee (2): partial-clone: demonstrate bugs in partial fetch partial-clone: avoid fetching when looking for objects Elijah Newren (4): unpack-trees: exit check_updates() early if updates are not wanted check-ignore: fix documentation and implementation to match t3433: new rebase testcase documenting a stat-dirty-like failure merge-recursive: fix the refresh logic in update_file_flags Emily Shaffer (2): prefix_path: show gitdir when arg is outside repo prefix_path: show gitdir if worktree unavailable Harald van Dijk (1): show_one_mergetag: print non-parent in hex form. Jeff King (9): merge-recursive: silence -Wxor-used-as-pow warning avoid computing zero offsets from NULL pointer xdiff: avoid computing non-zero offset from NULL pointer obstack: avoid computing offsets from NULL pointer index-pack: downgrade twice-resolved REF_DELTA to die() doc: move credential helper info into gitcredentials(7) doc/config/push: use longer "--" line for preformatted example doc-diff: use single-colon rule in rendering Makefile run-command.h: fix mis-indented struct member Johan Herland (2): t3305: check notes fanout more carefully and robustly notes.c: fix off-by-one error when decreasing notes fanout Johannes Schindelin (11): built-in add -i: do not try to `patch`/`diff` an empty list of files built-in add -i: accept open-ended ranges again parse_insn_line(): improve error message when parsing failed rebase -i: re-fix short SHA-1 collision rebase -i: also avoid SHA-1 collisions with missingCommitsCheck tests: fix --write-junit-xml with subshells t5580: test cloning without file://, test fetching via UNC paths mingw: add a helper function to attach GDB to the current process t/lib-httpd: avoid using macOS' sed ci: prevent `perforce` from being quarantined Azure Pipeline: switch to the latest agent pools Junio C Hamano (4): merge-recursive: use subtraction to flip stage Documentation: clarify that `-h` alone stands for `help` Revert "gpg-interface: prefer check_signature() for GPG verification" Git 2.25.2 Philippe Blain (4): t7410: rename to t2405-worktree-submodule.sh t2405: use git -C and test_commit -C instead of subshells t2405: clarify test descriptions and simplify test submodule.c: use get_git_dir() instead of get_git_common_dir() Version v2.25.1; changes since v2.25.0: --------------------------------------- Denton Liu (2): .mailmap: fix erroneous authorship for Johannes Schindelin .mailmap: map Yi-Jyun Pan's email Derrick Stolee (3): unpack-trees: correctly compute result count clean: demonstrate a bug with pathspecs fetch: document and test --refmap="" Elijah Newren (2): string-list: note in docs that callers can specify sorting function dir: treat_leading_path() and read_directory_recursive(), round 2 Emily Shaffer (2): unpack-trees: watch for out-of-range index position submodule: add newline on invalid submodule error Heba Waly (2): commit: honor advice.statusHints when rejecting an empty commit doc/gitcore-tutorial: fix prose to match example command Jacques Bodin-Hullin (1): parse-options: lose an unnecessary space in an error message Jeff King (7): restore: invalidate cache-tree when removing entries with --staged transport: don't flush when disconnecting stateless-rpc helper dir: restructure in a way to avoid passing around a struct dirent dir: point treat_leading_path() warning to the right place Makefile: use compat regex with SANITIZE=address t4018: drop "debugging" cat from hunk-header tests t7800: don't rely on reuse_worktree_file() Johannes Berg (1): pack-format: correct multi-pack-index description Johannes Schindelin (3): msvc: accommodate for vcpkg's upgrade to OpenSSL v1.1.x ci: ignore rubygems warning in the "Documentation" job convert: fix typo Jonathan Tan (2): sha1-file: remove OBJECT_INFO_SKIP_CACHED t5616: make robust to delta base change Junio C Hamano (2): .mailmap: fix GGG authoship screwup Git 2.25.1 Kyle Meyer (1): submodule foreach: replace $path with $sm_path in example Martin Ågren (2): git-filter-branch.txt: wrap "maths" notation in backticks diff-options.txt: avoid "regex" overload in example Masaya Suzuki (1): doc: describe Git bundle format Philippe Blain (1): grep: ignore --recurse-submodules if --no-index is given Ralf Thielow (1): submodule.c: mark more strings for translation brian m. carlson (7): run-command: avoid undefined behavior in exists_in_PATH docs: use "currently" for the present time doc: move author and committer information to git-commit(1) docs: expand on possible and recommended user config options doc: provide guidance on user.name format doc: dissuade users from trying to ignore tracked files docs: mention when increasing http.postBuffer is valuable Version v2.25.0; changes since v2.25.0-rc2: ------------------------------------------- Alessandro Menti (1): l10n: it.po: update the Italian translation for Git 2.25.0 Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (4800t) Christopher Diaz Riveros (1): l10n: es: 2.25.0 round #1 Jean-Noël Avila (1): l10n: fr.po v2.25.0 rnd 1 Jiang Xin (2): l10n: git.pot: v2.25.0 round 1 (119 new, 13 removed) l10n: zh_CN: for git v2.25.0 l10n round 1 Johannes Schindelin (1): mingw: safeguard better against backslashes in file names Jordi Mas (2): l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (2): Revert "Merge branch 'ra/rebase-i-more-options'" Git 2.25 Martin Ågren (1): config/advice.txt: fix description list separator Matthias Rüster (1): l10n: de.po: Update German translation v2.25.0 round 1 Peter Krefting (1): l10n: sv.po: Update Swedish translation (4800t0f0u) Thomas Braun (1): l10n: de.po: Reword generation numbers Trần Ngọc Quân (1): l10n: vi(4800t): Updated Vietnamese translation v2.25.0 Yi-Jyun Pan (2): l10n: zh_TW: add translation for v2.24.0 l10n: zh_TW.po: update translation for v2.25.0 round 1 Version v2.25.0-rc2; changes since v2.25.0-rc1: ----------------------------------------------- Denis Ovsienko (1): gitweb: fix a couple spelling errors in comments Derrick Stolee (6): sparse-checkout: list directories in cone mode sparse-checkout: document interactions with submodules sparse-checkout: use extern for global variables commit-graph: prefer default size_mult when given zero graph: drop assert() for merge with two collapsing parents graph: fix lack of color in horizontal lines Elijah Newren (1): merge-recursive: remove unnecessary oid_eq function Eric Wong (2): packfile: remove redundant fcntl F_GETFD/F_SETFD packfile: replace lseek+read with pread Johannes Berg (1): multi-pack-index: correct configuration in documentation Johannes Schindelin (1): mingw: only test index entries for backslashes, not tree entries Jonathan Gilbert (3): git-gui: consolidate naming conventions git-gui: update status bar to track operations git-gui: revert untracked files by deleting them Junio C Hamano (2): The final batch before -rc2 Git 2.25-rc2 Kazuhiro Kato (1): git gui: fix branch name encoding error Paul Menzel (1): am: document that Date: can appear as an in-body header Philippe Blain (2): doc: log, gitk: document accepted line-log diff formats doc: log, gitk: line-log arguments must exist in starting revision Pratyush Yadav (1): git-gui: allow closing console window with Escape Taylor Blau (1): Documentation/git-sparse-checkout.txt: fix a typo Thomas Menzel (1): doc: submodule: fix typo for command absorbgitdirs Zoli Szabó (1): git-gui: allow opening currently selected file in default app Version v2.25.0-rc1; changes since v2.25.0-rc0: ----------------------------------------------- Ben Keene (2): git-p4: yes/no prompts should sanitize user text git-p4: show detailed help when parsing options fail Ed Maste (1): CI: add FreeBSD CI support via Cirrus-CI Elijah Newren (1): rebase: fix saving of --signoff state for am-based rebases Johannes Schindelin (2): mingw: short-circuit the conversion of `/dev/null` to UTF-16 mingw: refuse paths containing reserved names Johannes Sixt (1): t3008: find test-tool through path lookup Junio C Hamano (2): mailmap: mask accentless variant for Công Danh Git 2.25-rc1 Version v2.25.0-rc0; changes since v2.24.4: ------------------------------------------- Alban Gruin (6): sequencer: update `total_nr' when adding an item to a todo list sequencer: update `done_nr' when skipping commands in a todo list sequencer: move the code writing total_nr on the disk to a new function rebase: fill `squash_onto' in get_replay_opts() sequencer: directly call pick_commits() from complete_action() sequencer: fix a memory leak in sequencer_continue() Alexandr Miloslavskiy (14): parse-options.h: add new options `--pathspec-from-file`, `--pathspec-file-nul` pathspec: add new function to parse file doc: reset: synchronize <pathspec> description reset: support the `--pathspec-from-file` option doc: commit: synchronize <pathspec> description commit: support the --pathspec-from-file option cmd_add: prepare for next patch add: support the --pathspec-from-file option doc: checkout: remove duplicate synopsis doc: checkout: fix broken text reference doc: checkout: synchronize <pathspec> description doc: restore: synchronize <pathspec> description checkout, restore: support the --pathspec-from-file option commit: forbid --pathspec-from-file --all Andreas Schwab (1): t7812: add missing redirects Andrei Rybak (1): INSTALL: use existing shell scripts as example Colin Stolley (1): packfile.c: speed up loading lots of packfiles Daniel Ferreira (2): diff: export diffstat interface built-in add -i: implement the `status` command Denton Liu (93): format-patch: replace erroneous and condition format-patch: use enum variables format-patch: teach --cover-from-description option rebase: hide --preserve-merges option t4108: replace create_file with test_write_lines t4108: remove git command upstream of pipe t4108: use `test_config` instead of `git config` t4108: demonstrate bug in apply apply: respect merge.conflictStyle in --3way submodule: teach set-url subcommand git-diff.txt: document return code of `--no-index` completion: learn to complete `git rebase --onto=` t4215: use helper function to check output argv-array: add space after `while` rev-list-options.txt: remove reference to --show-notes SubmittingPatches: use generic terms for hash pretty-formats.txt: use generic terms for hash SubmittingPatches: remove dq from commit reference completion: complete `tformat:` pretty format revision: make get_revision_mark() return const pointer pretty.c: inline initalize format_context t4205: cover `git log --reflog -z` blindspot pretty: add struct cmt_fmt_map::default_date_mode_type pretty: implement 'reference' format SubmittingPatches: use `--pretty=reference` pretty-options.txt: --notes accepts a ref instead of treeish t3206: remove spaces after redirect operators t3206: disable parameter substitution in heredoc t3206: s/expected/expect/ t3206: range-diff compares logs with commit notes range-diff: output `## Notes ##` header range-diff: pass through --notes to `git log` format-patch: pass notes configuration to range-diff t0000: test multiple local assignment t: teach test_cmp_rev to accept ! for not-equals t5520: improve test style t5520: use sq for test case names t5520: let sed open its own input t5520: replace test -f with test-lib functions t5520: remove spaces after redirect operator t5520: use test_line_count where possible t5520: replace test -{n,z} with test-lib functions t5520: use test_cmp_rev where possible t5520: test single-line files by git with test_cmp t5520: don't put git in upstream of pipe t5520: replace $(cat ...) comparison with test_cmp t5520: remove redundant lines in test cases t5520: replace `! git` with `test_must_fail git` lib-bash.sh: move `then` onto its own line apply-one-time-sed.sh: modernize style t0014: remove git command upstream of pipe t0090: stop losing return codes of git commands t3301: stop losing return codes of git commands t3600: use test_line_count() where possible t3600: stop losing return codes of git commands t3600: comment on inducing SIGPIPE in `git rm` t4015: stop losing return codes of git commands t4015: use test_write_lines() t4138: stop losing return codes of git commands t5317: stop losing return codes of git commands t5317: use ! grep to check for no matching lines t5703: simplify one-time-sed generation logic t5703: stop losing return codes of git commands t7501: remove spaces after redirect operators t7501: stop losing return codes of git commands t7700: drop redirections to /dev/null t7700: remove spaces after redirect operators t7700: move keywords onto their own line t7700: s/test -f/test_path_is_file/ doc: replace MARC links with lore.kernel.org RelNotes: replace Gmane with real Message-IDs doc: replace LKML link with lore.kernel.org t7700: consolidate code into test_no_missing_in_packs() t7700: consolidate code into test_has_duplicate_object() t7700: replace egrep with grep t7700: make references to SHA-1 generic t7700: stop losing return codes of git commands t3400: demonstrate failure with format.useAutoBase format-patch: fix indentation t4014: use test_config() format-patch: teach --no-base rebase: fix format.useAutoBase breakage t3206: fix incorrect test name range-diff: mark pointers as const range-diff: clear `other_arg` at end of function notes: rename to load_display_notes() notes: create init_display_notes() helper notes: extract logic into set_display_notes() format-patch: use --notes behavior for format.notes format-patch: move git_config() before repo_init_revisions() config/format.txt: clarify behavior of multiple format.notes notes: break set_display_notes() into smaller functions notes.h: fix typos in comment Derrick Stolee (22): test-tool: use 'read-graph' helper sparse-checkout: create builtin with 'list' subcommand sparse-checkout: create 'init' subcommand clone: add --sparse mode sparse-checkout: 'set' subcommand sparse-checkout: add '--stdin' option to set subcommand sparse-checkout: create 'disable' subcommand sparse-checkout: add 'cone' mode sparse-checkout: use hashmaps for cone patterns sparse-checkout: init and set in cone mode unpack-trees: hash less in cone mode unpack-trees: add progress to clear_ce_flags() sparse-checkout: sanitize for nested folders sparse-checkout: update working directory in-process sparse-checkout: use in-process update for disable subcommand sparse-checkout: write using lockfile sparse-checkout: cone mode should not interact with .gitignore sparse-checkout: update working directory in-process for 'init' sparse-checkout: check for dirty status progress: create GIT_PROGRESS_DELAY commit-graph: use start_delayed_progress() sparse-checkout: respect core.ignoreCase in cone mode Dimitriy Ryazantcev (1): l10n: minor case fix in 'git branch' '--unset-upstream' description Dominic Jäger (1): merge-strategies: fix typo "reflected to" to "reflected in" Ed Maste (3): t4210: skip i18n tests that don't work on FreeBSD userdiff: remove empty subexpression from elixir regex sparse-checkout: improve OS ls compatibility Elia Pinto (1): kset.h, tar.h: add missing header guard to prevent multiple inclusion Elijah Newren (26): merge-recursive: clean up get_renamed_dir_portion() merge-recursive: fix merging a subdirectory into the root directory t604[236]: do not run setup in separate tests Documentation: fix a bunch of typos, both old and new Fix spelling errors in documentation outside of Documentation/ git-filter-branch.txt: correct argument name typo hashmap: fix documentation misuses of -> versus . name-hash.c: remove duplicate word in comment t6024: modernize style Fix spelling errors in code comments Fix spelling errors in comments of testcases Fix spelling errors in names of tests Fix spelling errors in messages shown to users Fix spelling errors in test commands sha1dc: fix trivial comment spelling error multimail: fix a few simple spelling errors Fix spelling errors in no-longer-updated-from-upstream modules t3011: demonstrate directory traversal failures Revert "dir.c: make 'git-status --ignored' work within leading directories" dir: remove stray quote character in comment dir: exit before wildcard fall-through if there is no wildcard dir: break part of read_directory_recursive() out for reuse t3434: mark successful test as such dir: fix checks on common prefix directory dir: synchronize treat_leading_path() and read_directory_recursive() dir: consolidate similar code in treat_directory() Emily Shaffer (4): documentation: add tutorial for object walking myfirstcontrib: add 'psuh' to command-list.txt myfirstcontrib: add dependency installation step myfirstcontrib: hint to find gitgitgadget allower Erik Chen (1): fetch: add trace2 instrumentation Hans Jerry Illikainen (4): gpg-interface: refactor the free-and-xmemdupz pattern gpg-interface: limit search for primary key fingerprint gpg-interface: prefer check_signature() for GPG verification grep: don't return an expression from pcre2_free() Hariom Verma (2): builtin/blame.c: constants into bit shift format git-compat-util.h: drop the `PRIuMAX` and other fallback definitions Heba Waly (22): config: move documentation to config.h documentation: remove empty doc files diff: move doc to diff.h and diffcore.h dir: move doc to dir.h graph: move doc to graph.h and graph.c merge: move doc to ll-merge.h sha1-array: move doc to sha1-array.h remote: move doc to remote.h and refspec.h refs: move doc to refs.h attr: move doc to attr.h revision: move doc to revision.h pathspec: move doc to pathspec.h sigchain: move doc to sigchain.h cache: move doc to cache.h argv-array: move doc to argv-array.h credential: move doc to credential.h parse-options: add link to doc file in parse-options.h run-command: move doc to run-command.h trace: move doc to trace.h tree-walk: move doc to tree-walk.h submodule-config: move doc to submodule-config.h trace2: move doc to trace2.h James Coglan (13): graph: automatically track display width of graph lines graph: handle line padding in `graph_next_line()` graph: reuse `find_new_column_by_commit()` graph: reduce duplication in `graph_insert_into_new_columns()` graph: remove `mapping_idx` and `graph_update_width()` graph: extract logic for moving to GRAPH_PRE_COMMIT state graph: example of graph output that can be simplified graph: tidy up display of left-skewed merges graph: commit and post-merge lines for left-skewed merges graph: rename `new_mapping` to `old_mapping` graph: smooth appearance of collapsing edges on commit lines graph: flatten edges that fuse with their right neighbor graph: fix coloring of octopus dashes James Shubin (1): completion: tab-complete "git svn --recursive" Jean-Noël Avila (2): doc: remove non pure ASCII characters doc: indent multi-line items in list Jeff Hostetler (1): trace2: add region in clear_ce_flags Jeff King (37): parse_commit_buffer(): treat lookup_commit() failure as parse error parse_commit_buffer(): treat lookup_tree() failure as parse error parse_tag_buffer(): treat NULL tag pointer as parse error commit, tag: don't set parsed bit for parse failures fsck: stop checking commit->tree value fsck: stop checking commit->parent counts fsck: stop checking tag->tagged fsck: require an actual buffer for non-blobs fsck: unify object-name code fsck_describe_object(): build on our get_object_name() primitive fsck: use oids rather than objects for object_name API fsck: don't require object structs for display functions fsck: only provide oid/type in fsck_error callback fsck: only require an oid for skiplist functions fsck: don't require an object struct for report() fsck: accept an oid instead of a "struct blob" for fsck_blob() fsck: drop blob struct from fsck_finish() fsck: don't require an object struct for fsck_ident() fsck: don't require an object struct in verify_headers() fsck: rename vague "oid" local variables fsck: accept an oid instead of a "struct tag" for fsck_tag() fsck: accept an oid instead of a "struct commit" for fsck_commit() fsck: accept an oid instead of a "struct tree" for fsck_tree() hex: drop sha1_to_hex_r() pack-objects: avoid pointless oe_map_new_pack() calls hex: drop sha1_to_hex() send-pack: check remote ref status on pack-objects failure t9502: pass along all arguments in xss helper t/gitweb-lib.sh: drop confusing quotes t/gitweb-lib.sh: set $REQUEST_URI gitweb: escape URLs generated by href() rev-parse: make --show-toplevel without a worktree an error perf-lib: use a single filename for all measurement types t/perf: don't depend on Git.pm send-pack: use OBJECT_INFO_QUICK to check negative objects doc: recommend lore.kernel.org over public-inbox.org doc: replace public-inbox links with lore.kernel.org Johannes Schindelin (57): t1400: wrap setup code in test case git_path(): handle `.lock` files correctly vreportf(): avoid relying on stdio buffering update-index: optionally leave skip-worktree entries alone stash: handle staged changes in skip-worktree files correctly fetch: add the command-line option `--write-commit-graph` fetch: avoid locking issues between fetch.jobs/fetch.writeCommitGraph remote-curl: unbreak http.extraHeader with custom allocators Start to implement a built-in version of `git add --interactive` built-in add -i: implement the main loop built-in add -i: show unique prefixes of the commands built-in add -i: support `?` (prompt help) rebase-merges: move labels' whitespace mangling into `label_oid()` git svn: stop using `rebase --preserve-merges` mingw: demonstrate that all file handles are inherited by child processes mingw: work around incorrect standard handles mingw: spawned processes need to inherit only standard handles mingw: restrict file handle inheritance only on Windows 7 and later mingw: do set `errno` correctly when trying to restrict handle inheritance add-interactive: make sure to release `rev.prune_data` built-in add -i: allow filtering the modified files list built-in add -i: prepare for multi-selection commands built-in add -i: implement the `update` command built-in add -i: re-implement `revert` in C built-in add -i: re-implement `add-untracked` in C built-in add -i: implement the `patch` command built-in add -i: re-implement the `diff` command built-in add -i: offer the `quit` command pkt-line: fix a typo mingw: forbid translating ERROR_SUCCESS to an errno value t3701: add a test for advanced split-hunk editing t3701: avoid depending on the TTY prerequisite t3701: add a test for the different `add -p` prompts t3701: verify the shown messages when nothing can be added t3701: verify that the diff.algorithm config setting is handled git add -p: use non-zero exit code when the diff generation failed apply --allow-overlap: fix a corner case t3404: fix indentation built-in add -i: start implementing the `patch` functionality in C built-in add -i: wire up the new C code for the `patch` command built-in add -p: show colored hunks by default built-in add -p: adjust hunk headers as needed built-in add -p: color the prompt and the help text built-in add -p: offer a helpful error message when hunk navigation failed built-in add -p: support multi-file diffs built-in add -p: handle deleted empty files built-in app -p: allow selecting a mode change as a "hunk" built-in add -p: show different prompts for mode changes and deletions built-in add -p: implement the hunk splitting feature built-in add -p: coalesce hunks after splitting them strbuf: add a helper function to call the editor "on an strbuf" built-in add -p: implement hunk editing built-in add -p: implement the 'g' ("goto") command built-in add -p: implement the '/' ("search regex") command built-in add -p: implement the 'q' ("quit") command built-in add -p: only show the applicable parts of the help text built-in add -p: show helpful hint when nothing can be staged Jonathan Tan (6): fetch-pack: write fetched refs to .promisor fetch: remove fetch_if_missing=0 clone: remove fetch_if_missing=0 promisor-remote: remove fetch_if_missing=0 Doc: explain submodule.alternateErrorStrategy submodule--helper: advise on fatal alternate error Josh Holland (1): userdiff: support Python async functions Junio C Hamano (13): doc: am --show-current-patch gives an entire e-mail message The first batch post 2.24 cycle fsmonitor: do not compare bitmap size with size of split index ci(osx): update homebrew-cask repository with less noise rebase -i: finishing touches to --reset-author-date The second batch The third batch The fourth batch The fifth batch Makefile: drop GEN_HDRS The sixth batch dir.c: use st_add3() for allocation size Git 2.25-rc0 Kevin Willford (1): fsmonitor: fix watchman integration Manish Goregaokar (2): doc: document 'git submodule status --cached' submodule: fix 'submodule status' when called from a subdirectory Martin Ågren (1): t7004: check existence of correct tag Matthew Rogers (1): rebase -r: let `label` generate safer labels Mihail Atanassov (1): Documentation/git-bisect.txt: add --no-ff to merge command Mike Hommey (2): revision: clear the topo-walk flags in reset_revision_walk revision: free topo_walk_info before creating a new one in init_topo_walk Miriam Rubio (1): clone: rename static function `dir_exists()`. Nathan Stocks (1): t: fix typo in test descriptions Naveen Nathan (1): doc: improve readability of --rebase-merges in git-rebase Nika Layzell (1): reset: parse rev as tree-ish in patch mode Philip Oakley (1): Doc: Bundle file usage Philippe Blain (4): help: add gitsubmodules to the list of guides worktree: teach "add" to ignore submodule.recurse config doc: mention that 'git submodule update' fetches missing commits gitmodules: link to gitsubmodules guide Phillip Wood (7): t3404: remove unnecessary subshell t3404: set $EDITOR in subshell t3404: remove uneeded calls to set_fake_editor sequencer.h fix placement of #endif move run_commit_hook() to libgit and use it there sequencer: run post-commit hook sequencer: fix empty commit check when amending Prarit Bhargava (3): t6006: use test-lib.sh definitions t4203: use test-lib.sh definitions pretty: add "%aL" etc. to show local-part of email addresses Pratyush Yadav (1): git-shortlog.txt: include commit limiting options Ralf Thielow (1): fetch.c: fix typo in a warning message René Scharfe (32): trace2: add dots directly to strbuf in perf_fmt_prepare() utf8: use skip_iprefix() in same_utf_encoding() convert: use skip_iprefix() in validate_encoding() mingw: use COPY_ARRAY for copying array parse-options: avoid arithmetic on pointer that's potentially NULL pretty: provide short date format fetch: use skip_prefix() instead of starts_with() fmt-merge-msg: use skip_prefix() instead of starts_with() shell: use skip_prefix() instead of starts_with() push: use skip_prefix() instead of starts_with() name-rev: use skip_prefix() instead of starts_with() run-command: use prepare_git_cmd() in prepare_cmd() t1512: use test_line_count t1410: use test_line_count t1400: use test_must_be_empty test: use test_must_be_empty F instead of test -z $(cat F) test: use test_must_be_empty F instead of test_cmp empty F t9300: don't create unused file t7811: don't create unused file xdiff: unignore changes in function context name-rev: use strbuf_strip_suffix() in get_rev_name() commit: use strbuf_add() to add a length-limited string patch-id: use oid_to_hex() to print multiple object IDs archive-zip: use enum for compression method t4256: don't create unused file t7004: don't create unused file refs: pass NULL to refs_read_ref_full() because object ID is not needed remote: pass NULL to read_ref_full() because object ID is not needed t3501: don't create unused file t5580: don't create unused file t6030: don't create unused file t4015: improve coverage of function context test Robin H. Johnson (3): bundle: framework for options before bundle file bundle-create: progress output control bundle-verify: add --quiet Rohit Ashiwal (6): rebase -i: add --ignore-whitespace flag sequencer: allow callers of read_author_script() to ignore fields rebase -i: support --committer-date-is-author-date sequencer: rename amend_author to author_to_rename rebase -i: support --ignore-date rebase: add --reset-author-date Ruud van Asseldonk (1): t5150: skip request-pull test if Perl is disabled SZEDER Gábor (29): Documentation: mention more worktree-specific exceptions path.c: clarify trie_find()'s in-code comment path.c: mark 'logs/HEAD' in 'common_list' as file path.c: clarify two field names in 'struct common_dir' path.c: don't call the match function without value in trie_find() builtin/commit-graph.c: remove subcommand-less usage string builtin/blame.c: remove '--indent-heuristic' from usage string test-lib: don't check prereqs of test cases that won't be run anyway t6120-describe: correct test repo history graph in comment builtin/unpack-objects.c: show throughput progress tests: add 'test_bool_env' to catch non-bool GIT_TEST_* values t5608-clone-2gb.sh: turn GIT_TEST_CLONE_2GB into a bool sequencer: don't re-read todo for revert and cherry-pick test-lib-functions: suppress a 'git rev-parse' error in 'test_commit_bulk' ci: build Git with GCC 9 in the 'osx-gcc' build job t9300-fast-import: store the PID in a variable instead of pidfile t9300-fast-import: don't hang if background fast-import exits too early t6120-describe: modernize the 'check_describe' helper name-rev: avoid unnecessary cast in name_ref() name-rev: use sizeof(*ptr) instead of sizeof(type) in allocation t6120: add a test to cover inner conditions in 'git name-rev's name_rev() name-rev: extract creating/updating a 'struct name_rev' into a helper name-rev: pull out deref handling from the recursion name-rev: restructure parsing commits and applying date cutoff name-rev: restructure creating/updating 'struct rev_name' instances name-rev: drop name_rev()'s 'generation' and 'distance' parameters name-rev: use 'name->tip_name' instead of 'tip_name' name-rev: eliminate recursion in name_rev() name-rev: cleanup name_ref() Slavica Đukić (3): built-in add -i: color the header in the `status` command built-in add -i: use color in the main loop built-in add -i: implement the `help` command Tanushree Tumane (2): bisect--helper: avoid use-after-free bisect--helper: convert `*_warning` char pointers to char arrays. Thomas Gummerer (1): stash: make sure we have a valid index before writing it Todd Zullinger (1): t7812: expect failure for grep -i with invalid UTF-8 data Utsav Shah (1): unpack-trees: skip stat on fsmonitor-valid files William Baker (6): midx: add MIDX_PROGRESS flag midx: add progress to write_midx_file midx: add progress to expire_midx_packs midx: honor the MIDX_PROGRESS flag in verify_midx_file midx: honor the MIDX_PROGRESS flag in midx_repack multi-pack-index: add [--[no-]progress] option. brian m. carlson (16): t/oid-info: allow looking up hash algorithm name t/oid-info: add empty tree and empty blob values rev-parse: add a --show-object-format option t1305: avoid comparing extensions t3429: remove SHA1 annotation t4010: abstract away SHA-1-specific constants t4011: abstract away SHA-1-specific constants t4015: abstract away SHA-1-specific constants t4027: make hash-size independent t4034: abstract away SHA-1-specific constants t4038: abstract away SHA-1 specific constants t4039: abstract away SHA-1-specific constants t4044: update test to work with SHA-256 t4045: make hash-size independent t4048: abstract away SHA-1-specific constants t9001: avoid including non-trailing NUL bytes in variables r.burenkov (1): git-p4: honor lfs.storage configuration variable ryenus (1): fix-typo: consecutive-word duplications Đoàn Trần Công Danh (14): t3301: test diagnose messages for too few/many paramters notes: fix minimum number of parameters to "copy" subcommand t0028: eliminate non-standard usage of printf configure.ac: define ICONV_OMITS_BOM if necessary t3900: demonstrate git-rebase problem with multi encoding sequencer: reencode to utf-8 before arrange rebase's todo list sequencer: reencode revert/cherry-pick's todo list sequencer: reencode squashing commit's message sequencer: reencode old merge-commit message sequencer: reencode commit message for am/rebase --show-current-patch sequencer: handle rebase-merges for "onto" message date.c: switch to reentrant {gm,local}time_r archive-zip.c: switch to reentrant localtime_r mingw: use {gm,local}time_s as backend for {gm,local}time_r Łukasz Niemier (1): userdiff: add Elixir to supported userdiff languages Version v2.24.4; changes since v2.24.3: --------------------------------------- Johannes Schindelin (9): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Git 2.22.5 Git 2.23.4 Git 2.24.4 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.24.3; changes since v2.24.2: --------------------------------------- Jeff King (6): t0300: make "quit" helper more realistic t0300: use more realistic inputs credential: parse URL without host as empty host, not unset credential: refuse to operate when missing host or protocol credential: die() when parsing invalid urls Git 2.17.5 Jonathan Nieder (4): fsck: convert gitmodules url to URL passed to curl credential: treat URL without scheme as invalid credential: treat URL with empty scheme as invalid fsck: reject URL with empty host in .gitmodules Version v2.24.2; changes since v2.24.1: --------------------------------------- Jeff King (4): credential: avoid writing values with newlines t/lib-credential: use test_i18ncmp to check stderr credential: detect unrepresentable values when parsing urls fsck: detect gitmodules URLs with embedded newlines Johannes Schindelin (1): msvc: accommodate for vcpkg's upgrade to OpenSSL v1.1.x Junio C Hamano (1): Git 2.17.4 Version v2.24.1; changes since v2.24.0: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (36): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Git 2.15.4 test-drop-caches: use `has_dos_drive_prefix()` Git 2.16.6 Git 2.17.3 Git 2.18.2 Git 2.19.3 t7415: adjust test for dubiously-nested submodule gitdirs for v2.20.x Git 2.20.2 mingw: detect when MSYS2's sh is to be spawned more robustly mingw: use MSYS2 quoting even when spawning shell scripts mingw: fix quoting of empty arguments for `sh` t7415: drop v2.20.x-specific work-around mingw: sh arguments need quoting in more circumstances Git 2.21.1 Git 2.22.2 Git 2.23.1 Git 2.24.1 Jonathan Nieder (3): submodule: reject submodule.update = !command in .gitmodules fsck: reject submodule.update = !command in .gitmodules submodule: defend against submodule.update = !command in .gitmodules Version v2.24.0; changes since v2.24.0-rc2: ------------------------------------------- Alessandro Menti (2): l10n: it.po: update the Italian translation for Git 2.24.0 l10n: it.po: update the Italian translation for Git 2.24.0 round #2 Alexander Shopov (2): l10n: bg.po: Updated Bulgarian translation (4693) l10n: bg.po: Updated Bulgarian translation (4694) Bert Wesarg (2): git-gui: use existing interface to query a path's attribute git-gui: support for diff3 conflict style Christopher Diaz Riveros (1): l10n: es: 2.24.0 round 2 Derrick Stolee (2): t5510-fetch.sh: demonstrate fetch.writeCommitGraph bug commit-graph: fix writing first commit-graph during fetch Elijah Newren (2): RelNotes/2.24.0: typofix RelNotes/2.24.0: fix self-contradictory note Jean-Noël Avila (2): l10n: fr 2.24.0 rnd 1 l10n: fr v2.24.0 rnd2 Jiang Xin (3): l10n: git.pot: v2.24.0 round 1 (35 new, 16 removed) l10n: git.pot: v2.24.0 round 2 (1 new) l10n: zh_CN: for git v2.24.0 l10n round 1~2 Johannes Schindelin (1): Fix build with core.autocrlf=true Jonathan Tan (1): fetch: delay fetch_if_missing=0 until after config Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (1): Git 2.24 Martin Ågren (2): treewide: correct several "up-to-date" to "up to date" manpage-bold-literal.xsl: match for namespaced "d:literal" in template Matthias Rüster (1): l10n: de.po: Update German translation Peter Krefting (2): l10n: sv.po: Update Swedish translation (4674t0f0u) l10n: sv.po: Update Swedish translation (4695t0f0u) Pratyush Yadav (1): git-gui: add a readme Thomas Klaeger (1): git-gui (Windows): use git-bash.exe if it is available Trần Ngọc Quân (1): l10n: vi(4694t): Updated translation for v2.24.0 kdnakt (1): git-gui: improve Japanese translation Version v2.24.0-rc2; changes since v2.24.0-rc1: ----------------------------------------------- Johannes Schindelin (1): mingw: avoid a buffer overrun in `needs_hiding()` Junio C Hamano (1): Git 2.24-rc2 Robert Luberda (1): gitweb: correctly store previous rev in javascript-actions mode William Baker (1): t7519-status-fsmonitor: improve comments Version v2.24.0-rc1; changes since v2.24.0-rc0: ----------------------------------------------- Bert Wesarg (1): t4014: make output-directory tests self-contained Carlo Marcelo Arenas Belón (3): grep: make PCRE1 aware of custom allocator grep: make PCRE2 aware of custom allocator grep: avoid leak of chartables in PCRE2 Denton Liu (1): t7419: change test_must_fail to ! for grep Derrick Stolee (1): repo-settings: read an int for index.version Johannes Schindelin (3): ci(visual-studio): use strict compile flags, and optimization ci(visual-studio): actually run the tests in parallel ci(osx): use new location of the `perforce` cask Junio C Hamano (2): Eleventh batch Git 2.24-rc1 Maxim Belsky (1): completion: clarify installation instruction for zsh Norman Rasmussen (1): diff-highlight: fix a whitespace nit SZEDER Gábor (2): test-progress: fix test failures on big-endian systems ci: fix GCC install in the Travis CI GCC OSX job Stephen Boyd (1): userdiff: fix some corner cases in dts regex William Baker (1): fsmonitor: don't fill bitmap with entries to be removed brian m. carlson (1): remote-curl: pass on atomic capability to remote side Version v2.24.0-rc0; changes since v2.23.4: ------------------------------------------- Adam Roben (1): mingw: fix launching of externals from Unicode paths Alex Henrie (4): doc: fix reference to --ignore-submodules commit-graph: remove a duplicate assignment diffcore-break: use a goto instead of a redundant if statement wrapper: use a loop instead of repetitive statements Alexandr Miloslavskiy (4): contrib/buildsystems: fix Visual Studio Debug configuration t0028: fix test for UTF-16-LE-BOM t0028: add more tests t0061: fix test for argv[0] with spaces (MINGW only) Ali Utku Selen (1): shallow.c: don't free unallocated slabs Andrey Mazo (1): .mailmap: update email address of Andrey Mazo Beat Bolli (3): grep: under --debug, show whether PCRE JIT is enabled utf8: use ARRAY_SIZE() in git_wcwidth() git-compat-util: fix documentation syntax Ben Milman (1): repository-layout.txt: correct pluralization of 'object' Ben Wijen (2): builtin/rebase.c: make sure the active branch isn't moved when autostashing builtin/rebase.c: Remove pointless message Bert Wesarg (4): git-gui: convert new/amend commit radiobutton to checkbutton git-gui: add horizontal scrollbar to commit buffer builtin/submodule--helper: fix usage string for 'update-clone' format-patch: create leading components of output directory Birger Skogeng Pedersen (2): git-gui: add hotkeys to set widget focus git-gui: add hotkey to toggle "Amend Last Commit" CB Bailey (1): t4038: Remove non-portable '-a' option passed to test_cmp Cameron Steffen (1): doc: minor formatting fix Carlo Marcelo Arenas Belón (4): http: use xmalloc with cURL grep: make sure NO_LIBPCRE1_JIT disable JIT in PCRE1 grep: refactor and simplify PCRE1 support grep: skip UTF8 checks explicitly Christian Couder (15): t0410: remove pipes after git commands fetch-object: make functions return an error code Add initial support for many promisor remotes promisor-remote: implement promisor_remote_get_direct() promisor-remote: add promisor_remote_reinit() promisor-remote: use repository_format_partial_clone Use promisor_remote_get_direct() and has_promisor_remote() promisor-remote: parse remote.*.partialclonefilter builtin/fetch: remove unique promisor remote limitation t0410: test fetching from many promisor remotes partial-clone: add multiple remotes in the doc remote: add promisor and partial clone config to the doc Remove fetch-object.{c,h} in favor of promisor-remote.{c,h} Move repository_format_partial_clone to promisor-remote.c Move core_partial_clone_filter_default to promisor-remote.c Clément Chigot (1): contrib/svn-fe: fix shebang for svnrdump_sim.py Corentin BOMPARD (1): pull, fetch: add --set-upstream option David Turner (1): clarify documentation for remote helpers Denton Liu (49): packfile.h: drop extern from function declaration t4014: drop unnecessary blank lines from test cases t3431: add rebase --fork-point tests t3432: test rebase fast-forward behavior completion: merge options for cherry-pick and revert completion: add --skip for cherry-pick and revert status: mention --skip for revert and cherry-pick rebase: refactor can_fast_forward into goto tower rebase: fast-forward --onto in more cases rebase: fast-forward --fork-point in more cases rebase: teach rebase --keep-base mingw: apply array.cocci rule compat/*.[ch]: remove extern from function declarations using spatch t4014: s/expected/expect/ t4014: move closing sq onto its own line t4014: use sq for test case names t4014: remove spaces after redirect operators t4014: use indentable here-docs t4014: drop redirections to /dev/null t4014: let sed open its own files t4014: use test_line_count() where possible t4014: remove confusing pipe in check_threading() t4014: stop losing return codes of git commands Doc: add more detail for git-format-patch config/format.txt: specify default value of format.coverLetter t: use common $SQ variable completion: teach rebase to use __gitcomp_builtin completion: teach archive to use __gitcomp_builtin git-submodule.txt: fix AsciiDoc formatting error Makefile: strip leading ./ in $(LIB_H) Makefile: define THIRD_PARTY_SOURCES Makefile: strip leading ./ in $(FIND_SOURCE_FILES) Makefile: run coccicheck on more source files gitk: rename zh_CN.po to zh_cn.po promisor-remote.h: drop extern from function declaration apply.h: include missing header promisor-remote.h: include missing header pack-bitmap.h: remove magic number Makefile: emulate compile in $(HCO) target better test-lib: let test_merge() perform octopus merges t4214: use test_merge t4214: generate expect in their own test cases t4214: explicitly list tags in log t4214: demonstrate octopus graph coloring failure git-rev-list.txt: prune options in synopsis t4014: treat rev-list output as the expected value t0000: cover GIT_SKIP_TESTS blindspots pthread.h: manually align parameter lists Makefile: respect $(V) in %.cocci.patch target Derrick Stolee (14): repo-settings: consolidate some config settings t6501: use 'git gc' in quiet mode commit-graph: turn on commit-graph by default repo-settings: parse core.untrackedCache repo-settings: create feature.manyFiles setting repo-settings: create feature.experimental setting merge-recursive: introduce an enum for detect_directory_renames values checkout: add simple check for 'git checkout -b' fetch: add fetch.writeCommitGraph config setting treewide: rename 'struct exclude' to 'struct path_pattern' treewide: rename 'struct exclude_list' to 'struct pattern_list' treewide: rename 'EXCL_FLAG_' to 'PATTERN_FLAG_' treewide: rename 'exclude' methods to 'pattern' unpack-trees: rename 'is_excluded_from_list()' Elijah Newren (53): git-fast-import.txt: clarify that multiple merge commits are allowed checkout: remove duplicate code merge-recursive: be consistent with assert checkout: provide better conflict hunk description with detached HEAD merge-recursive: enforce opt->ancestor != NULL when calling merge_trees() merge-recursive: provide a better label for diff3 common ancestor merge-recursive: future-proof update_file_flags() against memory leaks merge-recursive: remove another implicit dependency on the_repository Ensure index matches head before invoking merge machinery, round N merge-recursive: exit early if index != head merge-recursive: remove useless parameter in merge_trees() merge-recursive: don't force external callers to do our logging cache-tree: share code between functions writing an index as a tree merge-recursive: fix some overly long lines merge-recursive: use common name for ancestors/common/base_list merge-recursive: rename 'mrtree' to 'result_tree', for clarity merge-recursive: rename merge_options argument to opt in header merge-recursive: move some definitions around to clean up the header merge-recursive: consolidate unnecessary fields in merge_options merge-recursive: comment and reorder the merge_options fields merge-recursive: avoid losing output and leaking memory holding that output merge-recursive: split internal fields into a separate struct merge-recursive: rename MERGE_RECURSIVE_* to MERGE_VARIANT_* merge-recursive: add sanity checks for relevant merge_options merge-recursive: alphabetize include list merge-options.txt: clarify meaning of various ff-related options t3427: accelerate this test by using fast-export and fast-import t6006: simplify, fix, and optimize empty message test Recommend git-filter-repo instead of git-filter-branch t9902: use a non-deprecated command for testing t7300: add testcases showing failure to clean specified pathspecs dir: fix typo in comment dir: fix off-by-one error in match_pathspec_item dir: also check directories for matching pathspecs dir: make the DO_MATCH_SUBMODULE code reusable for a non-submodule case dir: if our pathspec might match files under a dir, recurse into it dir: add commentary explaining match_pathspec_item's return value git-clean.txt: do not claim we will delete files with -n/--dry-run clean: disambiguate the definition of -d clean: avoid removing untracked files in a nested git repository clean: rewrap overly long line clean: fix theoretical path corruption fast-export: fix exporting a tag and nothing else dir: special case check for the possibility that pathspec is NULL merge-recursive: fix the diff3 common ancestor label for virtual commits fast-import: fix handling of deleted tags fast-import: allow tags to be identified by mark labels fast-import: add support for new 'alias' command fast-export: add support for --import-marks-if-exists fast-export: allow user to request tags be marked with --mark-tags t9350: add tests for tags of things other than a commit fast-export: handle nested tags merge-recursive: fix the fix to the diff3 common ancestor label Emily Shaffer (1): promisor-remote: skip move_to_tail when no-op Eric Wong (20): diff: use hashmap_entry_init on moved_entry.ent coccicheck: detect hashmap_entry.hash assignment packfile: use hashmap_entry in delta_base_cache_entry hashmap_entry_init takes "struct hashmap_entry *" hashmap_get_next takes "const struct hashmap_entry *" hashmap_add takes "struct hashmap_entry *" hashmap_get takes "const struct hashmap_entry *" hashmap_remove takes "const struct hashmap_entry *" hashmap_put takes "struct hashmap_entry *" introduce container_of macro hashmap_get_next returns "struct hashmap_entry *" hashmap: use *_entry APIs to wrap container_of hashmap_get{,_from_hash} return "struct hashmap_entry *" hashmap_cmp_fn takes hashmap_entry params hashmap: use *_entry APIs for iteration hashmap: hashmap_{put,remove} return hashmap_entry * hashmap: introduce hashmap_free_entries OFFSETOF_VAR macro to simplify hashmap iterators hashmap: remove type arg from hashmap_{get,put,remove}_entry hashmap_entry: remove first member requirement from docs Gabriele Mazzotta (1): gitk: Do not mistake unchanged lines for submodule changes Garima Singh (3): commit-graph: add --[no-]progress to write and verify commit-graph: emit trace2 cmd_mode for each sub-command sq_quote_buf_pretty: don't drop empty arguments Hervé Beraud (1): hg-to-git: make it compatible with both python3 and python2 Jakob Jarmar (1): stash: avoid recursive hard reset on submodules Jeff Hostetler (7): trace2: cleanup column alignment in perf target format trace2: trim whitespace in region messages in perf target format trace2: remove dead code in maybe_add_string_va() trace2: trim trailing whitespace in normal format error message quote: add sq_append_quote_argv_pretty() trace2: cleanup whitespace in normal format trace2: cleanup whitespace in perf format Jeff King (32): setup_traverse_info(): stop copying oid tree-walk: drop oid from traverse_info tree-walk: use size_t consistently tree-walk: accept a raw length for traverse_path_len() tree-walk: add a strbuf wrapper for make_traverse_path() tree-walk: harden make_traverse_path() length computations revision: allow --end-of-options to end option parsing parse-options: allow --end-of-options as a synonym for "--" gitcli: document --end-of-options t1309: use short branch name in includeIf.onbranch test common-main: delay trace2 initialization config: stop checking whether the_repository is NULL t/perf: rename duplicate-numbered test script packfile: drop release_pack_memory() notes: avoid potential use-after-free during insertion fast-import: duplicate parsed encoding string fast-import: duplicate into history rather than passing ownership git-am: handle missing "author" when parsing commit pack-objects: use object_id in packlist_alloc() bulk-checkin: zero-initialize hashfile_checkpoint diff-delta: set size out-parameter to 0 for NULL delta test-read-cache: drop namelen variable pack-objects: drop packlist index_pos optimization commit-graph: turn off save_commit_buffer list-objects: don't queue root trees unless revs->tree_objects is set commit-graph: bump DIE_ON_LOAD check to actual load-time upload-pack: disable commit graph more gently for shallow traversal list-objects-filter: delay parsing of sparse oid list-objects-filter: use empty string instead of NULL for sparse "base" git_mkstemps_mode(): replace magic numbers with computed value add a Code of Conduct document CODE_OF_CONDUCT: mention individual project-leader emails Johannes Schindelin (41): Drop unused git-rebase--am.sh t3400: stop referring to the scripted rebase .gitignore: there is no longer a built-in `git-rebase--interactive` sequencer: the `am` and `rebase--interactive` scripts are gone rebase: fold git-rebase--common into the -p backend t3427: add a clarifying comment t3427: simplify the `setup` test case significantly t3427: move the `filter-branch` invocation into the `setup` case t3427: condense the unnecessarily repetitive test cases into three t3427: fix erroneous assumption t3427: accommodate for the `rebase --merge` backend having been replaced t3427: fix another incorrect assumption rebase -r: support merge strategies other than `recursive` t/lib-rebase: prepare for testing `git rebase --rebase-merges` t3418: test `rebase -r` with merge strategies rebase -r: do not (re-)generate root commits with `--root` *and* `--onto` setup_git_directory(): handle UNC paths correctly Fix .git/ discovery at the root of UNC shares setup_git_directory(): handle UNC root paths correctly .gitignore: stop ignoring `.manifest` files Move git_sort(), a stable sort, into into libgit.a diffcore_rename(): use a stable sort ci: run `hdr-check` as part of the `Static Analysis` job range-diff: internally force `diff.noprefix=true` push: do not pretend to return `int` from `die_push_simple()` fetch: let --jobs=<n> parallelize --multiple, too stash apply: report status correctly even in a worktree's subdirectory msvc: avoid using minus operator on unsigned types winansi: use FLEX_ARRAY to avoid compiler warning compat/win32/path-utils.h: add #include guards msvc: ignore some libraries when linking msvc: handle DEVELOPER=1 msvc: work around a bug in GetEnvironmentVariable() vcxproj: only copy `git-remote-http.exe` once it was built vcxproj: include more generated files test-tool run-command: learn to run (parts of) the testsuite tests: let --immediate and --write-junit-xml play well together ci: really use shallow clones on Azure Pipelines ci: also build and test with MS Visual Studio on Azure Pipelines xdiffi: fix typos and touch up comments doc(stash): clarify the description of `save` Johannes Sixt (2): diff, log doc: say "patch text" instead of "patches" diff, log doc: small grammer, format, and language fixes Jon Simons (2): t5616: test cloning/fetching with sparse:oid=<oid> filter list-objects-filter: give a more specific error sparse parsing error Jonathan Tan (6): diff: skip GITLINK when lazy fetching missing objs transport-helper: skip ls-refs if unnecessary transport: teach all vtables to allow fetch first cache-tree: do not lazy-fetch tentative tree merge-recursive: symlink's descendants not in way send-pack: never fetch when checking exclusions Josh Steadmon (7): t7503: verify proper hook execution fetch: add trace2 instrumentation push: add trace2 instrumentation docs: mention trace2 target-dir mode in git-config docs: clarify trace2 version invariants trace2: discard new traces if target directory has too many files trace2: write discard message to sentinel files Junio C Hamano (14): First batch after Git 2.23 t: use LF variable defined in the test harness t3005: remove unused variable Second batch Third batch SubmittingPatches: git-gui has a new maintainer Fourth batch Fifth batch Sixth batch transport: push codepath can take arbitrary repository Seventh batch Eighth batch Ninth batch Git 2.24-rc0 Kunal Tyagi (1): add -i: show progress counter in the prompt Martin Ågren (14): Documentation: wrap blocks with "--" git-merge-base.txt: render indentations correctly under Asciidoctor Documentation: wrap config listings in "----" git-ls-remote.txt: wrap shell listing in "----" git-receive-pack.txt: wrap shell [script] listing in "----" git-merge-index.txt: wrap shell listing in "----" gitweb.conf.txt: switch pluses to backticks to help Asciidoctor Doc/Makefile: give mansource/-version/-manual attributes asciidoctor-extensions: provide `<refmiscinfo/>` doc-diff: replace --cut-header-footer with --cut-footer user-manual.txt: add missing section label user-manual.txt: change header notation asciidoctor-extensions.rb: handle "book" doctype in linkgit user-manual.txt: render ASCII art correctly under Asciidoctor Masaya Suzuki (1): fetch: use oidset to keep the want OIDs for faster lookup Matheus Tavares (1): grep: fix worktree case in submodules Matthew DeVore (10): list-objects-filter: encapsulate filter components list-objects-filter: put omits set in filter struct list-objects-filter-options: always supply *errbuf list-objects-filter: implement composite filters list-objects-filter-options: move error check up list-objects-filter-options: make filter_spec a string_list strbuf: give URL-encoding API a char predicate fn list-objects-filter-options: allow mult. --filter list-objects-filter-options: clean up use of ALLOC_GROW list-objects-filter-options: make parser void Max Rothman (1): completion: add missing completions for log, diff, show Michael J Gruber (3): merge: do no-verify like commit git-merge: honor pre-merge-commit hook merge: --no-verify to bypass pre-merge-commit hook Mike Hommey (3): notes: avoid leaking duplicate entries commit: free the right buffer in release_commit_memory http: don't leak urlmatch_config.vars Mischa POSLAWSKY (1): ref-filter: initialize empty name or email fields Paul Mackerras (1): gitk: Make web links clickable Paul Wise (1): gitk: Use right colour for remote refs in the "Tags and heads" dialog Pedro Sousa (1): doc: MyFirstContribution: fix cmd placement instructions Philip.McGraw (1): git-p4: auto-delete named temporary file Phillip Wood (3): rebase -i: always update HEAD before rewording rebase -i: check for updated todo after squash and reword sequencer: simplify root commit creation Pratyush Yadav (6): git-gui: call do_quit before destroying the main window git-gui: allow reverting selected lines git-gui: allow reverting selected hunk git-gui: return early when patch fails to apply git-gui: allow undoing last revert Documentation: update the location of the git-gui repo René Scharfe (28): nedmalloc: do assignments only after the declaration section nedmalloc: avoid compiler warning about unused value archive-tar: report wrong pax extended header length archive-tar: fix pax extended header length calculation archive-tar: use size_t in strbuf_append_ext_header() archive-tar: turn length miscalculation warning into BUG parseopt: move definition of enum parse_opt_result up sha1-name: make sort_ambiguous_oid_array() thread-safe log-tree: always use return value of strbuf_detach() grep: use return value of strbuf_detach() trace2: use warning() directly in tr2_dst_malformed_warning() help: make help_unknown_ref() NORETURN tree: simplify parse_tree_indirect() tag: factor out get_tagged_oid() use get_tagged_oid() log: test --decorate-refs-exclude with --simplify-by-decoration log-tree: call load_ref_decorations() in get_name_decoration() rev-parse: demonstrate overflow of N for "foo^N" and "foo~N" sha1-name: check for overflow of N in "foo^N" and "foo~N" commit-graph: use commit_list_count() sha1_name: simplify strbuf handling in interpret_nth_prior_checkout() git: use COPY_ARRAY and MOVE_ARRAY in handle_alias() treewide: remove duplicate #include directives convert: fix handling of dashless UTF prefix in validate_encoding() tests: remove "cat foo" before "test_i18ngrep bar foo" http-push: simplify deleting a list item column: use utf8_strnwidth() to strip out ANSI color escapes remote-curl: use argv_array in parse_push() SZEDER Gábor (33): t5510-fetch: fix negated 'test_i18ngrep' invocation t5510-fetch: run non-httpd-specific test before sourcing 'lib-httpd.sh' t5703: run all non-httpd-specific tests before sourcing 'lib-httpd.sh' t: warn against adding non-httpd-specific tests after sourcing 'lib-httpd' t5318-commit-graph: use 'test_expect_code' commit-graph: turn a group of write-related macro flags into an enum commit-graph: error out on invalid commit oids in 'write --stdin-commits' t0000-basic: use realistic test script names in the verbose tests tests: show the test name and number at the start of verbose output completion: fix a typo in a comment completion: complete more values of more 'color.*' configuration variables completion: add tests for 'git config' completion completion: deduplicate configuration sections completion: use 'sort -u' to deduplicate config variable names completion: simplify inner 'case' pattern in __gitcomp() completion: split _git_config() completion: complete configuration sections and variable names for 'git -c' completion: complete values of configuration variables after 'git -c var=' completion: complete config variables names and values for 'git clone -c' completion: complete config variables and values for 'git clone --config=' worktree remove: clarify error message on dirty worktree diff: 'diff.indentHeuristic' is no longer experimental line-log: extract pathspec parsing from line ranges into a helper function line-log: avoid unnecessary full tree diffs t7300-clean: demonstrate deleting nested repo with an ignored file breakage t/lib-git-svn.sh: check GIT_TEST_SVN_HTTPD when running SVN HTTP tests ci: restore running httpd tests commit-graph: don't show progress percentages while expanding reachable commits Revert "progress: use term_clear_line()" Test the progress display t/helper: ignore only executable files travis-ci: do not skip successfully tested trees in debug mode name-rev: avoid cutoff timestamp underflow Stephen Boyd (1): userdiff: add a builtin pattern for dts files Stephen P. Smith (2): Quit passing 'now' to date code test_date.c: remove reference to GIT_TEST_DATE_NOW Sun Chao (1): pack-refs: always refresh after taking the lock file Tanay Abhra (1): t1308-config-set: fix a test that has a typo Taylor Blau (4): banned.h: fix vsprintf()'s ban message t/t5318: introduce failing 'git commit-graph write' tests commit-graph.c: handle commit parsing errors commit-graph.c: handle corrupt/missing trees Thomas Gummerer (6): t0021: make sure clean filter runs push: disallow --all and refspecs when remote.<name>.mirror is set factor out refresh_and_write_cache function merge: use refresh_and_write_cache stash: make sure to write refreshed cache range-diff: don't segfault with mode-only changes Tobias Klauser (1): git-svn: trim leading and trailing whitespaces in author name Torsten Bögershausen (1): mingw: support UNC in git clone file://server/share/repo Varun Naik (2): checkout.c: unstage empty deleted ita files restore: add test for deleted ita files YanKe (1): gitk: Add Chinese (zh_CN) translation brian m. carlson (43): builtin/replace: make hash size independent patch-id: convert to use the_hash_algo fetch-pack: use parse_oid_hex builtin/receive-pack: switch to use the_hash_algo builtin/blame: switch uses of GIT_SHA1_HEXSZ to the_hash_algo builtin/rev-parse: switch to use the_hash_algo blame: remove needless comparison with GIT_SHA1_HEXSZ show-index: switch hard-coded constants to the_hash_algo connected: switch GIT_SHA1_HEXSZ to the_hash_algo bundle: switch to use the_hash_algo combine-diff: replace GIT_SHA1_HEXSZ with the_hash_algo config: use the_hash_algo in abbrev comparison sha1-lookup: switch hard-coded constants to the_hash_algo bisect: switch to using the_hash_algo sequencer: convert to use the_hash_algo pack-write: use hash_to_hex when writing checksums builtin/repack: write object IDs of the proper length builtin/worktree: switch null_sha1 to null_oid cache: remove null_sha1 wt-status: convert struct wt_status to object_id packfile: replace sha1_to_hex builtin/index-pack: replace sha1_to_hex builtin/receive-pack: replace sha1_to_hex rerere: replace sha1_to_hex builtin/show-index: replace sha1_to_hex midx: switch to using the_hash_algo t3201: abstract away SHA-1-specific constants t3206: abstract away hash size constants t3301: abstract away SHA-1-specific constants t3305: make hash size independent t3306: abstract away SHA-1-specific constants t3404: abstract away SHA-1-specific constants t3430: avoid hard-coded object IDs t3506: make hash independent t3600: make hash size independent t3800: make hash-size independent t3903: abstract away SHA-1-specific constants t4000: make hash size independent t4002: make hash independent t4009: make hash size independent path: add a function to check for path suffix am: reload .gitattributes after patching it Documentation: fix build with Asciidoctor 2 Ævar Arnfjörð Bjarmason (20): log tests: test regex backends in "--encode=<enc>" tests grep: don't use PCRE2?_UTF8 with "log --encoding=<non-utf8>" t4210: skip more command-line encoding tests on MinGW grep: inline the return value of a function call used only once grep tests: move "grep binary" alongside the rest grep tests: move binary pattern tests into their own file grep: make the behavior for NUL-byte in patterns sane grep: drop support for \0 in --fixed-strings <pattern> grep: remove the kwset optimization grep: use PCRE v2 for optimized fixed-string search grep: remove overly paranoid BUG(...) code grep: stop "using" a custom JIT stack with PCRE v2 grep: stop using a custom JIT stack with PCRE v1 grep: consistently use "p->fixed" in compile_regexp() grep: create a "is_fixed" member in "grep_pat" grep: stess test PCRE v2 on invalid UTF-8 data grep: do not enter PCRE2_UTF mode on fixed matching t3432: distinguish "noop-same" v.s. "work-same" in "same head" tests t3432: test for --no-ff's interaction with fast-forward rebase tests: test linear branch topology Version v2.23.4; changes since v2.23.3: --------------------------------------- Johannes Schindelin (8): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Git 2.22.5 Git 2.23.4 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.23.3; changes since v2.23.2: --------------------------------------- Jeff King (6): t0300: make "quit" helper more realistic t0300: use more realistic inputs credential: parse URL without host as empty host, not unset credential: refuse to operate when missing host or protocol credential: die() when parsing invalid urls Git 2.17.5 Jonathan Nieder (4): fsck: convert gitmodules url to URL passed to curl credential: treat URL without scheme as invalid credential: treat URL with empty scheme as invalid fsck: reject URL with empty host in .gitmodules Version v2.23.2; changes since v2.23.1: --------------------------------------- Jeff King (4): credential: avoid writing values with newlines t/lib-credential: use test_i18ncmp to check stderr credential: detect unrepresentable values when parsing urls fsck: detect gitmodules URLs with embedded newlines Junio C Hamano (1): Git 2.17.4 Version v2.23.1; changes since v2.23.0: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (35): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Git 2.15.4 test-drop-caches: use `has_dos_drive_prefix()` Git 2.16.6 Git 2.17.3 Git 2.18.2 Git 2.19.3 t7415: adjust test for dubiously-nested submodule gitdirs for v2.20.x Git 2.20.2 mingw: detect when MSYS2's sh is to be spawned more robustly mingw: use MSYS2 quoting even when spawning shell scripts mingw: fix quoting of empty arguments for `sh` t7415: drop v2.20.x-specific work-around mingw: sh arguments need quoting in more circumstances Git 2.21.1 Git 2.22.2 Git 2.23.1 Jonathan Nieder (3): submodule: reject submodule.update = !command in .gitmodules fsck: reject submodule.update = !command in .gitmodules submodule: defend against submodule.update = !command in .gitmodules Version v2.23.0; changes since v2.23.0-rc2: ------------------------------------------- Alessandro Menti (3): l10n: it.po: update the Italian translation l10n: it.po: update the Italian translation for v2.23.0 l10n: it.po: update the Italian localization for v2.23.0 round 2 Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (4674t) Carmine Zaccagnino (1): l10n: it.po: remove an extra space Christopher Díaz Riveros (1): l10n: es: 2.23.0 round 2 Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Jean-Noël Avila (1): l10n: fr v2.23.0 round 2 Jiang Xin (3): l10n: git.pot: v2.23.0 round 1 (130 new, 35 removed) l10n: git.pot: v2.23.0 round 2 (4 new, 6 removed) l10n: zh_CN: for git v2.23.0 l10n round 1~2 Jordi Mas (2): l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (2): Git 2.22.1 Git 2.23 Mark Rushakoff (1): doc: fix repeated words Matthias Rüster (1): l10n: de.po: Update German translation Peter Krefting (1): l10n: sv.po: Update Swedish translation (4676t0f0u) Philip Oakley (1): .mailmap: update email address of Philip Oakley Philipp Weißmann (1): l10n: de.po: Fix typo in German translation Trần Ngọc Quân (2): l10n: vi.po (4676t): Updated Vietnamese translation l10n: vi(4674t): Updated translation for Vietnamese Version v2.23.0-rc2; changes since v2.23.0-rc1: ----------------------------------------------- Derrick Stolee (1): commit-graph: fix bug around octopus merges Elijah Newren (1): merge-recursive: avoid directory rename detection in recursive case Jean-Noël Avila (1): l10n: reformat some localized strings for v2.23.0 Jeff King (1): t0000: reword comments for "local" test Jonathan Nieder (1): t: decrease nesting in test_oid_to_path Junio C Hamano (1): Git 2.23-rc2 Mark Rushakoff (1): doc: typo: s/can not/cannot/ and s/is does/does/ René Scharfe (4): commit-graph: release strbufs after use dir-iterator: release strbuf after use test-dir-iterator: use path argument directly sha1-file: release strbuf after use William Chargin (1): restore: fix typo in docs Version v2.23.0-rc1; changes since v2.23.0-rc0: ----------------------------------------------- Carlo Marcelo Arenas Belón (3): xdiff: drop system includes in xutils.c xdiff: remove duplicate headers from xhistogram.c xdiff: remove duplicate headers from xpatience.c Jeff King (6): verify-tag: drop signal.h include wt-status.h: drop stdio.h include t: sort output of hashmap iteration t7700: clean up .keep file in bitmap-writing test repack: silence warnings when auto-enabled bitmaps cannot be built repack: simplify handling of auto-bitmaps and .keep files Johannes Schindelin (15): Vcproj.pm: auto-generate GUIDs Vcproj.pm: do not configure VCWebServiceProxyGeneratorTool Vcproj.pm: urlencode '<' and '>' when generating VC projects contrib/buildsystems: ignore irrelevant files in Generators/ contrib/buildsystems: error out on unknown option contrib/buildsystems: handle libiconv, too contrib/buildsystems: also handle -lexpat contrib/buildsystems: handle options starting with a slash contrib/buildsystems: add a backend for modern Visual Studio versions msvc: add a Makefile target to pre-generate the Visual Studio solution vcxproj: also link-or-copy builtins .gitignore: ignore Visual Studio's temporary/generated files bin-wrappers: append `.exe` to target paths if necessary git: avoid calling aliased builtins via their dashed form config: work around bug with includeif:onbranch and early config Junio C Hamano (5): test-dir-iterator: do not assume errno values A few more last-minute fixes log: flip the --mailmap default unconditionally log: really flip the --mailmap default Git 2.23-rc1 Martin Ågren (2): RelNotes/2.21.1: typofix RelNotes/2.23.0: fix a few typos and other minor issues Philip Oakley (9): Vcproj.pm: list git.exe first to be startup project contrib/buildsystems: ignore invalidcontinue.obj contrib/buildsystems: fix misleading error message contrib/buildsystems: handle quoted spaces in filenames contrib/buildsystems: ignore gettext stuff contrib/buildsystems: redirect errors of the dry run into a log file contrib/buildsystems: optionally capture the dry-run in a file contrib/buildsystems: handle the curl library option .gitignore: touch up the entries regarding Visual Studio SZEDER Gábor (1): Documentation/git-fsck.txt: include fsck.* config variables brian m. carlson (10): t: add helper to convert object IDs to paths t1410: make hash size independent t1450: make hash size independent t5000: make hash independent t6030: make test work with SHA-256 t0027: make hash size independent t0090: make test pass with SHA-256 t1007: remove SHA1 prerequisites t1710: make hash independent t2203: avoid hard-coded object ID values Version v2.23.0-rc0; changes since v2.22.5: ------------------------------------------- Andrey Mazo (8): git-p4: detect/prevent infinite loop in gitCommitByP4Change() git-p4: add failing test for "git-p4: match branches case insensitively if configured" git-p4: match branches case insensitively if configured git-p4: don't groom exclude path list on every commit git-p4: add failing test for "don't exclude other files with same prefix" git-p4: don't exclude other files with same prefix git-p4: add failing test for "git-p4: respect excluded paths when detecting branches" git-p4: respect excluded paths when detecting branches Ariadne Conill (3): log: add warning for unspecified log.mailmap setting documentation: mention --no-use-mailmap and log.mailmap false setting tests: defang pager tests by explicitly disabling the log.mailmap warning Barret Rhoden (8): fsck: rename and touch up init_skiplist() Move oidset_parse_file() to oidset.c blame: use a helper function in blame_chunk() blame: add the ability to ignore commits and their changes blame: add config options for the output of ignored or unblamable lines blame: optionally track line fingerprints during fill_blame_origin() blame: use the fingerprint heuristic to match ignored lines blame: add a test to cover blame_coalesce() Beat Bolli (1): grep: print the pcre2_jit_on value Ben Avison (1): clone: add `--remote-submodules` flag Boxuan Li (2): userdiff: add Octave userdiff: fix grammar and style issues Carlo Marcelo Arenas Belón (1): trace2: correct typo in technical documentation Cesar Eduardo Barros (1): mingw: embed a manifest to trick UAC into Doing The Right Thing Christian Couder (7): t/helper: add test-oidmap.c t: add t0016-oidmap.sh oidmap: use sha1hash() instead of static hash() function test-hashmap: remove 'hash' command doc: improve usage string in MyFirstContribution test-oidmap: remove 'add' subcommand t0016: add 'remove' subcommand test Daniel Ferreira (1): dir-iterator: add tests for dir-iterator API Denton Liu (3): git-format-patch.txt: document --no-notes option format-patch: teach format.notes config option config: learn the "onbranch:" includeIf condition Derrick Stolee (35): revision: use generation for A..B --topo-order queries revision: keep topo-walk free of unintersting commits repack: refactor pack deletion for future use Docs: rearrange subcommands for multi-pack-index multi-pack-index: prepare for 'expire' subcommand midx: simplify computation of pack name lengths midx: refactor permutation logic and pack sorting multi-pack-index: implement 'expire' subcommand multi-pack-index: prepare 'repack' subcommand midx: implement midx_repack() multi-pack-index: test expire while adding packs midx: add test that 'expire' respects .keep files t5319-multi-pack-index.sh: test batch size zero commit-graph: document commit-graph chains commit-graph: prepare for commit-graph chains commit-graph: rename commit_compare to oid_compare commit-graph: load commit-graph chains commit-graph: add base graphs chunk commit-graph: rearrange chunk count logic commit-graph: write commit-graph chains commit-graph: add --split option to builtin commit-graph: merge commit-graph chains commit-graph: allow cross-alternate chains commit-graph: expire commit-graph files commit-graph: create options for split files commit-graph: verify chains with --shallow mode commit-graph: clean up chains after flattened write commit-graph: test octopus merges with --split commit-graph: test --split across alternate without --split commit-graph: normalize commit-graph filenames commit-graph: test verify across alternates fetch: add --[no-]show-forced-updates argument fetch: warn about forced updates in branch listing pull: add --[no-]show-forced-updates passthrough t5319: use 'test-tool path-utils' instead of 'ls -l' Dimitriy Ryazantcev (1): l10n: localizable upload progress messages Edmundo Carmona Antoranz (1): builtin/merge.c - cleanup of code in for-cycle that tests strategies Elijah Newren (5): t9350: fix encoding test to actually test reencoding fast-import: support 'encoding' commit header fast-export: avoid stripping encoding header if we cannot reencode fast-export: differentiate between explicitly UTF-8 and implicitly UTF-8 fast-export: do automatic reencoding of commit messages only if requested Emily Shaffer (4): documentation: add tutorial for first contribution documentation: add anchors to MyFirstContribution doc: add some nit fixes to MyFirstContribution rev-list: teach --no-object-names to enable piping Eric Wong (2): update-server-info: avoid needless overwrites repack: disable bitmaps-by-default if .keep files exist Jeff Hostetler (13): cache-tree/blame: avoid reusing the DEBUG constant msvc: mark a variable as non-const msvc: do not re-declare the timespec struct msvc: define ftello() msvc: fix detect_msys_tty() msvc: update Makefile to allow for spaces in the compiler path status: add status.aheadbehind setting status: warn when a/b calculation takes too long status: ignore status.aheadbehind in porcelain formats msvc: support building Git using MS Visual C++ msvc: add a compile-time flag to allow detailed heap debugging msvc: do not pretend to support all signals msvc: ignore .dll and incremental compile output Jeff King (42): cmd_{read,write}_tree: rename "unused" variable that is used builtin: consistently pass cmd_* prefix to parse_options submodule: drop unused prefix parameter from some functions clone: drop dest parameter from copy_alternates() read-cache: drop unused parameter from threaded load wt-status: drop unused status parameter mktree: drop unused length parameter name-rev: drop unused parameters from is_better_name() pack-objects: drop unused rev_info parameters receive-pack: drop unused "commands" from prepare_shallow_update() remove_all_fetch_refspecs(): drop unused "remote" parameter rev-list: drop unused void pointer from finish_commit() show-branch: drop unused parameter from show_independent() verify-commit: simplify parameters to run_gpg_verify() help_unknown_ref(): duplicate collected refnames help_unknown_ref(): check for refname ambiguity describe: fix accidental oid/hash type-punning upload-pack: rename a "sha1" variable to "oid" pack-bitmap-write: convert some helpers to use object_id pack-objects: convert packlist_find() to use object_id pack-objects: convert locate_object_entry_hash() to object_id object: convert lookup_unknown_object() to use object_id object: convert lookup_object() to use object_id object: convert internal hash_obj() to object_id object: convert create_object() to use object_id khash: drop broken oid_map typedef khash: rename kh_oid_t to kh_oid_set delta-islands: convert island_marks khash to use oids pack-bitmap: convert khash_sha1 maps into kh_oid_map khash: drop sha1-specific map types khash: rename oid helper functions hash.h: move object_id definition from cache.h hashmap: convert sha1hash() to oidhash() blame: drop some unused function parameters object-store.h: move for_each_alternate_ref() from transport.h check_everything_connected: assume alternate ref tips are valid test-lib: introduce test_commit_bulk t5310: increase the number of bitmapped commits t3311: use test_commit_bulk t5702: use test_commit_bulk t5703: use test_commit_bulk t6200: use test_commit_bulk Johannes Schindelin (18): Drop unused git-rebase--am.sh t3400: stop referring to the scripted rebase .gitignore: there is no longer a built-in `git-rebase--interactive` sequencer: the `am` and `rebase--interactive` scripts are gone rebase: fold git-rebase--common into the -p backend mingw: fix a typo in the msysGit-specific section Mark .bat files as requiring CR/LF endings t0001 (mingw): do not expect a specific order of stdout/stderr obstack: fix compiler warning mingw: replace mingw_startup() hack msvc: fix dependencies of compat/msvc.c msvc: avoid debug assertion windows in Debug Mode mingw: enable stack smashing protector mingw: get pw_name in UTF-8 format mingw: use Unicode functions explicitly mingw: fix possible buffer overrun when calling `GetUserNameW()` rebase: fix white-space git: mark cmd_rebase as requiring a worktree Johannes Sixt (5): userdiff: two simplifications of patterns for rust t7610-mergetool: do not place pipelines headed by `yes` in subshells t7610-mergetool: use test_cmp instead of test $(cat file) = $txt mergetool: dissect strings with shell variable magic instead of `expr` mergetool: use shell variable magic instead of `awk` John Lin (1): status: remove the empty line after hints Junio C Hamano (8): The first batch after 2.22 The second batch The third batch The fourth batch The fifth batch The sixth batch The seventh batch Git 2.23-rc0 Karsten Blees (2): gettext: always use UTF-8 on native Windows mingw: initialize HOME on startup Marc-André Lureau (1): userdiff: add built-in pattern for rust Martin Ågren (1): ref-filter: fix memory leak in `free_array_item()` Matheus Tavares (8): clone: better handle symlinked files at .git/objects/ dir-iterator: use warning_errno when possible dir-iterator: refactor state machine model dir-iterator: add flags parameter to dir_iterator_begin clone: copy hidden paths at local clone clone: extract function from copy_or_link_directory clone: use dir-iterator to avoid explicit dir traversal clone: replace strcmp by fspathcmp Matthew DeVore (2): list-objects-filter-options: error is localizeable ref-filter: sort detached HEAD lines firstly Michael Osipov (1): configure: Detect linking style for HP aCC on HP-UX Michael Platings (2): blame: add a fingerprint heuristic to match ignored lines t8014: remove unnecessary braces Nguyễn Thái Ngọc Duy (60): git-checkout.txt: spell out --no-option git-checkout.txt: fix one syntax line doc: document --overwrite-ignore git-checkout.txt: fix monospace typeset t: rename t2014-switch.sh to t2014-checkout-switch.sh checkout: advice how to get out of detached HEAD mode checkout: inform the user when removing branch state checkout: keep most #include sorted checkout: factor out some code in parse_branchname_arg() checkout: make "opts" in cmd_checkout() a pointer checkout: move 'confict_style' and 'dwim_..' to checkout_opts checkout: split options[] array in three pieces checkout: split part of it to new command 'switch' switch: better names for -b and -B switch: add --discard-changes switch: remove -l switch: stop accepting pathspec switch: reject "do nothing" case switch: only allow explicit detached HEAD switch: add short option for --detach switch: implicit dwim, use --no-guess to disable it switch: no worktree status unless real branch switch happens switch: reject if some operation is in progress switch: make --orphan switch to an empty tree t: add tests for switch completion: support switch doc: promote "git switch" checkout: split part of it to new command 'restore' restore: take tree-ish from --source option instead restore: make pathspec mandatory restore: disable overlay mode by default checkout: factor out worktree checkout code restore: add --worktree and --staged restore: reject invalid combinations with --staged restore: default to --source=HEAD when only --staged is specified restore: replace --force with --ignore-unmerged restore: support --patch t: add tests for restore completion: support restore user-manual.txt: prefer 'merge --abort' over 'reset --hard' doc: promote "git restore" help: move git-diff and git-reset to different groups Declare both git-switch and git-restore experimental merge: remove drop_save() in favor of remove_merge_branch_state() worktree add: sanitize worktree names merge: add --quit fetch: only run 'gc' once when fetching multiple remotes t2027: use test_must_be_empty switch: allow to switch in the middle of bisect completion: disable dwim on "git switch -d" fetch-pack: move capability names out of i18n strings fetch-pack: print all relevant supported capabilities with -v -v fetch-pack: print server version at the top in -v -v sha1-file.c: remove the_repo from read_object_with_reference() tree-walk.c: remove the_repo from fill_tree_descriptor() tree-walk.c: remove the_repo from get_tree_entry() tree-walk.c: remove the_repo from get_tree_entry_follow_symlinks() match-trees.c: remove the_repo from shift_tree*() Use the right 'struct repository' instead of the_repository t7814: do not generate same commits in different repos Nickolai Belakovski (3): ref-filter: add worktreepath atom branch: update output to include worktree info branch: add worktree info on verbose output Philip Oakley (5): git.c: show usage for accessing the git(1) help page Doc: git.txt: remove backticks from link and add git-scm.com/docs msvc: include sigset_t definition msvc: define O_ACCMODE msvc: add pragmas for common warnings Phillip Wood (7): rebase -r: always reword merge -c show --continue/skip etc. consistently in synopsis sequencer: always allow tab after command name sequencer: factor out todo command name parsing status: do not report errors in sequencer/todo git-prompt: improve cherry-pick/revert detection t3420: remove progress lines before comparing output Ramsay Jones (1): env--helper: mark a file-local symbol as static Rohit Ashiwal (5): sequencer: add advice for revert sequencer: rename reset_for_rollback to reset_merge sequencer: use argv_array in reset_merge cherry-pick/revert: add --skip option cherry-pick/revert: advise using --skip SZEDER Gábor (1): travis-ci: build with GCC 4.8 as well Stephen Boyd (2): format-patch: inform user that patch-id generation is unstable format-patch: make --base patch-id output stable Taylor Blau (1): ref-filter.c: find disjoint pattern prefixes Thomas Gummerer (15): apply: replace marc.info link with public-inbox apply: only pass required data to skip_tree_prefix apply: only pass required data to git_header_name apply: only pass required data to check_header_line apply: only pass required data to find_name_* apply: only pass required data to gitdiff_* functions apply: make parse_git_diff_header public range-diff: fix function parameter indentation range-diff: split lines manually range-diff: don't remove funcname from inner diff range-diff: suppress line count in outer diff range-diff: add section header instead of diff header range-diff: add filename to inner diff range-diff: add headers to the outer hunk header stash: fix handling removed files with --keep-index Tigran Mkrtchyan (1): tag: add tag.gpgSign config option to force all tags be GPG-signed Ævar Arnfjörð Bjarmason (20): send-email: move the read_config() function above getopts send-email: rename the @bcclist variable for consistency send-email: do defaults -> config -> getopt in that order tests: add a special setup where prerequisites fail Makefile: remove the NO_R_TO_GCC_LINKER flag send-email: remove cargo-culted multi-patch pattern in tests send-email: fix broken transferEncoding tests send-email: document --no-[to|cc|bcc] send-email: fix regression in sendemail.identity parsing Revert "test-lib: whitelist GIT_TR2_* in the environment" config tests: simplify include cycle test env--helper: new undocumented builtin wrapping git_env_*() config.c: refactor die_bad_number() to not call gettext() early t6040 test: stop using global "script" variable tests: make GIT_TEST_GETTEXT_POISON a boolean tests README: re-flow a previously changed paragraph tests: replace test_tristate with "git env--helper" tests: make GIT_TEST_FAIL_PREREQS a boolean tests: mark two failing tests under FAIL_PREREQS clone: test for our behavior on odd objects/* content Version v2.22.5; changes since v2.22.4: --------------------------------------- Johannes Schindelin (7): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Git 2.22.5 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.22.4; changes since v2.22.3: --------------------------------------- Jeff King (6): t0300: make "quit" helper more realistic t0300: use more realistic inputs credential: parse URL without host as empty host, not unset credential: refuse to operate when missing host or protocol credential: die() when parsing invalid urls Git 2.17.5 Jonathan Nieder (4): fsck: convert gitmodules url to URL passed to curl credential: treat URL without scheme as invalid credential: treat URL with empty scheme as invalid fsck: reject URL with empty host in .gitmodules Version v2.22.3; changes since v2.22.2: --------------------------------------- Jeff King (4): credential: avoid writing values with newlines t/lib-credential: use test_i18ncmp to check stderr credential: detect unrepresentable values when parsing urls fsck: detect gitmodules URLs with embedded newlines Junio C Hamano (1): Git 2.17.4 Version v2.22.2; changes since v2.22.1: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (34): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Git 2.15.4 test-drop-caches: use `has_dos_drive_prefix()` Git 2.16.6 Git 2.17.3 Git 2.18.2 Git 2.19.3 t7415: adjust test for dubiously-nested submodule gitdirs for v2.20.x Git 2.20.2 mingw: detect when MSYS2's sh is to be spawned more robustly mingw: use MSYS2 quoting even when spawning shell scripts mingw: fix quoting of empty arguments for `sh` t7415: drop v2.20.x-specific work-around mingw: sh arguments need quoting in more circumstances Git 2.21.1 Git 2.22.2 Jonathan Nieder (3): submodule: reject submodule.update = !command in .gitmodules fsck: reject submodule.update = !command in .gitmodules submodule: defend against submodule.update = !command in .gitmodules Version v2.22.1; changes since v2.22.0: --------------------------------------- Beat Bolli (1): unicode: update the width tables to Unicode 12.1 Carlo Marcelo Arenas Belón (5): fsmonitor: avoid signed integer overflow / infinite loop wrapper: avoid undefined behaviour in macOS xdiff: drop system includes in xutils.c xdiff: remove duplicate headers from xhistogram.c xdiff: remove duplicate headers from xpatience.c Chris Mayo (1): send-email: update documentation of required Perl modules Denton Liu (2): config/alias.txt: change " and ' to ` config/alias.txt: document alias accepting non-command first word Derrick Stolee (15): commit-graph: fix the_repository reference sha1-file: split OBJECT_INFO_FOR_PREFETCH commit-graph: return with errors during write commit-graph: collapse parameters into flags commit-graph: remove Future Work section commit-graph: create write_commit_graph_context commit-graph: extract fill_oids_from_packs() commit-graph: extract fill_oids_from_commit_hex() commit-graph: extract fill_oids_from_all_packs() commit-graph: extract count_distinct_commits() commit-graph: extract copy_oids_to_commits() commit-graph: extract write_commit_graph_file() commit-graph: use raw_object_store when closing packfile: close commit-graph in close_all_packs packfile: rename close_all_packs to close_object_store Doug Ilijev (1): README: fix rendering of text in angle brackets Dr. Adam Nielsen (1): gitignore.txt: make slash-rules more readable Emily Shaffer (3): grep: fail if call could output and name is null doc: hint about GIT_DEBUGGER in CodingGuidelines transport-helper: enforce atomic in push_refs_with_push Eric Wong (1): server-info: do not list unlinked packs Felipe Contreras (5): t5801 (remote-helpers): cleanup refspec stuff t5801 (remote-helpers): add test to fetch tags fetch: trivial cleanup fetch: make the code more understandable fetch: fix regression with transport helpers Jakub Wilk (1): doc: don't use git.kernel.org as example gitweb URL Jeff King (10): upload-pack: strip namespace from symref data am: simplify prompt response handling am: read interactive input from stdin am: drop tty requirement for --interactive am: fix --interactive HEAD tree resolution interpret-trailers: load default config verify-tag: drop signal.h include wt-status.h: drop stdio.h include delta-islands: respect progress flag xdiff: clamp function context indices in post-image Johannes Schindelin (14): bisect--helper: verify HEAD could be parsed before continuing fill_stat_cache_info(): prepare for an fsmonitor fix mark_fsmonitor_valid(): mark the index as changed if needed bundle verify: error out if called without an object database poll (mingw): allow compiling with GCC 8 and DEVELOPER=1 kwset: allow building with GCC 8 winansi: simplify loading the GetCurrentConsoleFontEx() function config: avoid calling `labs()` on too-large data type t3404: fix a typo t0001: fix on case-insensitive filesystems rebase --am: ignore rebase.rescheduleFailedExec diff: munmap() file contents before running external diff mingw: support spawning programs containing spaces in their names clean: show an error message when the path is too long Jonathan Tan (5): t5616: refactor packfile replacement index-pack: prefetch missing REF_DELTA bases t5616: use correct flag to check object is missing t5616: cover case of client having delta base t5551: test usage of chunked encoding explicitly Josh Steadmon (1): trace2: correct trace2 field name documentation Junio C Hamano (6): transport-helper: avoid var decl in for () loop control rm: resolving by removal is not a warning-worthy event CodingGuidelines: spell out post-C89 rules Flush fixes up to the third batch post 2.22.0 Merge fixes made on the 'master' front Git 2.22.1 Martin Ågren (1): RelNotes/2.21.1: typofix Matthew DeVore (3): list-objects-filter: correct usage of ALLOC_GROW url: do not read past end of buffer url: do not allow %00 to represent NUL in URLs Miguel Ojeda (1): clang-format: use git grep to generate the ForEachMacros list Mike Hommey (2): dup() the input fd for fast-import used for remote helpers Use xmmap_gently instead of xmmap in use_pack Mike Mueller (1): p4 unshelve: fix "Not a valid object name HEAD0" on Windows Morian Sonnet (1): submodule foreach: fix recursion of options Nguyễn Thái Ngọc Duy (3): init: make --template path relative to $CWD worktree add: be tolerant of corrupt worktrees completion: do not cache if --git-completion-helper fails Paolo Bonzini (2): request-pull: quote regex metacharacters in local ref request-pull: warn if the remote object is not the same as the local one Philip Oakley (2): doc branch: provide examples for listing remote tracking branches .mailmap: update email address of Philip Oakley Phillip Wood (5): rebase: fix a memory leak rebase: warn if state directory cannot be removed sequencer: return errors from sequencer_remove_state() rebase --abort/--quit: cleanup refs/rewritten add -p: fix checkout -p with pathological context Quentin Nerden (2): docs: git-clone: refer to long form of options docs: git-clone: list short form of options first René Scharfe (6): cleanup: fix possible overflow errors in binary search, part 2 coccinelle: use COPY_ARRAY for copying arrays use COPY_ARRAY for copying arrays config: use unsigned_mult_overflows to check for overflows config: don't multiply in parse_unit_factor() config: simplify parsing of unit factors Robert Morgan (1): gpg(docs): use correct --verify syntax SZEDER Gábor (11): t3404: modernize here doc style t3404: make the 'rebase.missingCommitsCheck=ignore' test more focused pager: add a helper function to clear the last line in the terminal t5551: use 'test_i18ngrep' to check translated output rebase: fix garbled progress display with '-x' progress: use term_clear_line() Document that 'git -C ""' works and doesn't change directory ci: don't update Homebrew ci: disable Homebrew's auto cleanup ci/lib.sh: update a comment about installed P4 and Git-LFS versions Documentation/git-fsck.txt: include fsck.* config variables Simon Williams (1): git-p4: allow unshelving of branched files Steven Roberts (1): gpg-interface: do not scan past the end of buffer Thomas Gummerer (1): stash: fix show referencing stash index Varun Naik (1): read-cache.c: do not die if mmap fails Vishal Verma (1): merge: refuse --commit with --squash Xin Li (1): clone: respect user supplied origin name when setting up partial clone Ævar Arnfjörð Bjarmason (1): hash-object doc: stop mentioning git-cvsimport Version v2.22.0; changes since v2.22.0-rc3: ------------------------------------------- Alessandro Menti (1): l10n: it.po: Updated Italian translation Alexander Shopov (3): l10n: bg.po: Updated Bulgarian translation (4577t) l10n: bg.po: Updated Bulgarian translation (4580t) l10n: bg.po: Updated Bulgarian translation (4581t) Christopher Díaz Riveros (3): l10n: es: 2.22.0 round 1 l10n: es: 2.22.0 round 2 l10n: es: 2.22.0 round 3 Cédric Malard (1): l10n: fr.po: Review French translation Elijah Newren (1): merge-recursive: restore accidentally dropped setting of path Fangyi Zhou (1): l10n: zh_CN: Revision for git v2.22.0 l10n Jean-Noël Avila (3): l10n: fr.po v2.22.0.rnd1 l10n: fr.po v2.22.0 round 2 l10n: fr v2.22.0 rnd 3 Jiang Xin (4): l10n: git.pot: v2.22.0 round 1 (270 new, 56 removed) l10n: git.pot: v2.22.0 round 2 (6 new, 3 removed) l10n: git.pot: v2.22.0 round 3 (3 new, 2 removed) l10n: zh_CN: for git v2.22.0 l10n round 1~3 Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (1): Git 2.22 Matthias Rüster (2): l10n: TEAMS: Change German translation team leader l10n: de.po: Update German translation Peter Krefting (2): l10n: sv.po: Update Swedish translation l10n: sv.po: Update Swedish translation (4577t0f0u) Ralf Thielow (1): l10n: de.po: improve description of 'git reset --quiet' Trần Ngọc Quân (3): l10n: vi.po(4577t): Updated Vietnamese translation for v2.22.0 round 1 l10n: vi.po(4580t): Updated Vietnamese translation for v2.22.0 round 2 l10n: vi.po(4581t): Updated Vietnamese translation for v2.22.0 round 3 Version v2.22.0-rc3; changes since v2.22.0-rc2: ----------------------------------------------- Christian Couder (1): list-objects-filter: disable 'sparse:path' filters Jiang Xin (1): i18n: fix typos found during l10n for git 2.22.0 Junio C Hamano (1): Git 2.22-rc3 Todd Zullinger (1): RelNotes: minor typo fixes in 2.22.0 draft Version v2.22.0-rc2; changes since v2.22.0-rc1: ----------------------------------------------- Emily Shaffer (1): gitsubmodules: align html and nroff lists Jean-Noël Avila (1): diff: fix mistake in translatable strings Jeff Hostetler (1): trace2: fix tracing when NO_PTHREADS is defined Johannes Schindelin (4): rebase: replace incorrect logical negation by correct bitwise one tests: mark a couple more test cases as requiring `rebase -p` docs: say that `--rebase=preserve` is deprecated rebase docs: recommend `-r` over `-p` Jonathan Tan (1): fetch-pack: send server options after command Junio C Hamano (1): Git 2.22-rc2 Nguyễn Thái Ngọc Duy (3): diff-parseopt: correct variable types that are used by parseopt diff-parseopt: restore -U (no argument) behavior parse-options: check empty value in OPT_INTEGER and OPT_ABBREV SZEDER Gábor (3): trace2: rename environment variables to GIT_TRACE2* trace2: document the supported values of GIT_TRACE2* env variables progress: avoid empty line when breaking the progress line Version v2.22.0-rc1; changes since v2.22.0-rc0: ----------------------------------------------- Boxuan Li (1): t4253-am-keep-cr-dos: avoid using pipes Carlo Marcelo Arenas Belón (1): http-push: prevent format overflow warning with gcc >= 9 Chris Mayo (1): notes: correct documentation of format_display_notes() Chris. Webster (1): diff-highlight: use correct /dev/null for UNIX and Windows Denton Liu (10): t7610: unsuppress output t7610: add mergetool --gui tests t2018: cleanup in current test branch: make create_branch accept a merge base rev tag: fix typo in nested tagging hint mergetool: use get_merge_tool function mergetool--lib: create gui_mode function mergetool: fallback to tool when guitool unavailable difftool: make --gui, --tool and --extcmd mutually exclusive difftool: fallback on merge.guitool Derrick Stolee (3): midx: pass a repository pointer midx: add packs to packed_git linked list trace2: add variable description to git.txt Dustin Spicuzza (1): cvsexportcommit: force crlf translation Elijah Newren (1): Honor core.precomposeUnicode in more places Eric Sunshine (1): check-non-portable-shell: support Perl versions older than 5.10 Jeff King (4): coccicheck: optionally batch spatch invocations t/lib-httpd: pass LSAN_OPTIONS through apache coccicheck: make batch size of 0 mean "unlimited" get_oid: handle NULL repo->index Johannes Schindelin (8): t5580: verify that alternates can be UNC paths fsmonitor: demonstrate that it is not refreshed after discard_index() fsmonitor: force a refresh after the index was discarded t6500(mingw): use the Windows PID of the shell difftool --no-index: error out on --dir-diff (and don't crash) status: fix display of rebase -ir's `label` command parse-options: adjust `parse_opt_unknown_cb()`s declared return type stash: document stash.useBuiltin Josh Steadmon (1): commit-graph: fix memory leak Junio C Hamano (2): pkt-line: drop 'const'-ness of a param to set_packet_header() Git 2.22-rc1 Mike Hommey (1): Make fread/fwrite-like functions in http.c more like fread/fwrite. Nguyễn Thái Ngọc Duy (2): parse-options: don't emit "ambiguous option" for aliases submodule--helper: add a missing \n SZEDER Gábor (1): ci: install 'libsvn-perl' instead of 'git-svn' Tanushree Tumane (1): mingw: remove obsolete IPv6-related code Todd Zullinger (1): test-lib: try harder to ensure a working jgit Ævar Arnfjörð Bjarmason (8): perf README: correct docs for 3c8f12c96c regression perf aggregate: remove GIT_TEST_INSTALLED from --codespeed perf-lib.sh: make "./run <revisions>" use the correct gits perf-lib.sh: remove GIT_TEST_INSTALLED from perf-lib.sh perf tests: add "bindir" prefix to git tree test results perf-lib.sh: forbid the use of GIT_TEST_INSTALLED trace2: fix up a missing "leave" entry point sha1dc: update from upstream İsmail Dönmez (2): mingw: do not let ld strip relocations mingw: enable DEP and ASLR Version v2.22.0-rc0; changes since v2.21.4: ------------------------------------------- Alban Gruin (18): sequencer: changes in parse_insn_buffer() sequencer: make the todo_list structure public sequencer: remove the 'arg' field from todo_item sequencer: refactor transform_todos() to work on a todo_list sequencer: introduce todo_list_write_to_file() sequencer: refactor check_todo_list() to work on a todo_list sequencer: refactor sequencer_add_exec_commands() to work on a todo_list sequencer: refactor rearrange_squash() to work on a todo_list sequencer: make sequencer_make_script() write its script to a strbuf sequencer: change complete_action() to use the refactored functions rebase--interactive: move sequencer_add_exec_commands() rebase--interactive: move rearrange_squash_in_todo_file() sequencer: refactor skip_unnecessary_picks() to work on a todo_list rebase-interactive: use todo_list_write_to_file() in edit_todo_list() rebase-interactive: append_todo_help() changes rebase-interactive: rewrite edit_todo_list() to handle the initial edit sequencer: use edit_todo_list() in complete_action() rebase--interactive: move transform_todo_file() Alexander Blesius (1): doc: fix typos in man pages Alexander Shopov (1): gitk: Update Bulgarian translation (317t) Anders Waldenborg (7): doc: group pretty-format.txt placeholders descriptions pretty: allow %(trailers) options with explicit value pretty: single return path in %(trailers) handling pretty: allow showing specific trailers pretty: add support for "valueonly" option in %(trailers) strbuf: separate callback for strbuf_expand:ing literals pretty: add support for separator option in %(trailers) Andreas Heiduk (1): revisions.txt: remove ambibuity between <rev>:<path> and :<path> Andrei Rybak (1): t4150: remove unused variable Baruch Siach (1): send-email: don't cc *-by lines with '-' prefix Beat Bolli (1): unicode: update the width tables to Unicode 12 Ben Peart (1): read-cache: add post-index-change hook Brandon Richardson (1): commit-tree: utilize parse-options api Christian Couder (4): t6050: use test_line_count instead of wc -l t6050: redirect expected error output to a file replace: peel tag when passing a tag as parent to --graft replace: peel tag when passing a tag first to --graft Clément Chigot (2): Makefile: use fileno macro work around on AIX git-compat-util: work around for access(X_OK) under root Corentin BOMPARD (2): doc/CodingGuidelines: URLs and paths as monospace doc: format pathnames and URLs as monospace. Damien Robert (1): ref-filter: use correct branch for %(push:track) Daniels Umanovskis (1): branch: introduce --show-current display option David Aguilar (2): mergetools: add support for smerge (Sublime Merge) contrib/completion: add smerge to the mergetool completion candidates David Kastrup (1): blame.c: don't drop origin blobs as eagerly Denton Liu (28): completion: complete git submodule absorbgitdirs git-submodule.txt: "--branch <branch>" option defaults to 'master' submodule--helper: teach config subcommand --unset submodule: document default behavior git-reset.txt: clarify documentation git-clean.txt: clarify ignore pattern files docs: move core.excludesFile from git-add to gitignore contrib/subtree: ensure only one rev is provided midx.c: convert FLEX_ALLOC_MEM to FLEX_ALLOC_STR cocci: FLEX_ALLOC_MEM to FLEX_ALLOC_STR tag: fix formatting submodule: teach set-branch subcommand tag: advise on nested tags t7600: clean up style t3507: clean up style t7604: clean up style t7502: clean up style commit: extract cleanup_mode functions to sequencer parse-options.h: extract common --cleanup option merge: cleanup messages like commit merge: add scissors line on merge conflict cherry-pick/revert: add scissors line on merge conflict *.[ch]: remove extern from function declarations using spatch *.[ch]: remove extern from function declarations using sed *.[ch]: manually align parameter lists revisions.txt: change "rev" to "<rev>" revisions.txt: mark optional rev arguments with [] revisions.txt: mention <rev>~ form Derrick Stolee (1): trace2:data: pack-objects: add trace2 regions Elijah Newren (22): log,diff-tree: add --combined-all-paths option merge-options.txt: correct wording of --no-commit option t9300: demonstrate bug with get-mark and empty orphan commits git-fast-import.txt: fix wording about where ls command can appear fast-import: check most prominent commands first fast-import: only allow cat-blob requests where it makes sense fast-import: fix erroneous handling of get-mark with empty orphan commits Use 'unsigned short' for mode, like diff_filespec does merge-recursive: rename merge_options argument from 'o' to 'opt' merge-recursive: rename diff_filespec 'one' to 'o' merge-recursive: rename locals 'o' and 'a' to 'obuf' and 'abuf' merge-recursive: use 'ci' for rename_conflict_info variable name merge-recursive: move some struct declarations together merge-recursive: shrink rename_conflict_info merge-recursive: remove ren[12]_other fields from rename_conflict_info merge-recursive: track branch where rename occurred in rename struct merge-recursive: cleanup handle_rename_* function signatures merge-recursive: switch from (oid,mode) pairs to a diff_filespec t6043: fix copied test description to match its purpose merge-recursive: track information associated with directory renames merge-recursive: give callers of handle_content_merge() access to contents merge-recursive: switch directory rename detection default Eric Wong (1): repack: enable bitmaps by default on bare repos Jean-Noël Avila (2): l10n: fr.po remove obsolete entries Doc: fix misleading asciidoc formating Jeff Hostetler (29): trace2: Documentation/technical/api-trace2.txt trace2: create new combined trace facility trace2: collect Windows-specific process information trace2:data: add trace2 regions to wt-status trace2:data: add editor/pager child classification trace2:data: add trace2 sub-process classification trace2:data: add trace2 transport child classification trace2:data: add trace2 hook classification trace2:data: add trace2 instrumentation to index read/write trace2:data: add subverb to checkout command trace2:data: add subverb to reset command trace2:data: add subverb for rebase trace2: t/helper/test-trace2, t0210.sh, t0211.sh, t0212.sh trace2: add for_each macros to clang-format progress: add sparse mode to force 100% complete message trace2:data: add trace2 data to midx midx: add progress indicators in multi-pack-index verify midx: during verify group objects by packfile to speed verification config: initialize opts structure in repo_read_config() trace2: refactor setting process starting time trace2: add absolute elapsed time to start event trace2: find exec-dir before trace2 initialization config: add read_very_early_config() trace2: use system/global config for default trace2 settings trace2: report peak memory usage of the process trace2: clarify UTC datetime formatting trace2: make SIDs more unique trace2: update docs to describe system/global config settings trace2: fixup access problem on /etc/gitconfig in read_very_early_config Jeff King (88): prune: lazily perform reachability traversal prune: use bitmaps for reachability traversal prune: check SEEN flag for reachability t5304: rename "sha1" variables to "oid" diff: drop options parameter from diffcore_fix_diff_index() diff: drop unused color reset parameters diff: drop unused emit data parameter from sane_truncate_line() diff: drop complete_rewrite parameter from run_external_diff() merge-recursive: drop several unused parameters pack-objects: drop unused parameter from oe_map_new_pack() files-backend: drop refs parameter from split_symref_update() ref-filter: drop unused buf/sz pairs ref-filter: drop unused "obj" parameters ref-filter: drop unused "sz" parameters diff: reuse diff setup for --no-index case bisect: use string arguments to feed internal diff-tree bisect: fix internal diff-tree config loading bisect: make diff-tree output prettier fetch: avoid calling write_or_die() fetch: ignore SIGPIPE during network operation rev-list: allow cached objects in existence check doc/fsck: clarify --connectivity-only behavior fsck: always compute USED flags for unreachable objects compat/bswap: add include header guards config: document --type=color output is a complete line line-log: suppress diff output with "-s" line-log: detect unsupported formats point pull requesters to GitGitGadget Makefile: fix unaligned loads in sha1dc with UBSan t5310: correctly remove bitmaps for jgit test pack-objects: default to writing bitmap hash-cache perf-lib.sh: rely on test-lib.sh for --tee handling revision: drop some unused "revs" parameters log: drop unused rev_info from early output log: drop unused "len" from show_tagger() update-index: drop unused prefix_length parameter from do_reupdate() test-date: drop unused "now" parameter from parse_dates() unpack-trees: drop name_entry from traverse_by_cache_tree() unpack-trees: drop unused error_type parameters report_path_error(): drop unused prefix parameter fetch_pack(): drop unused parameters parse-options: drop unused ctx parameter from show_gitcomp() pretty: drop unused "type" parameter in needs_rfc2047_encoding() pretty: drop unused strbuf from parse_padding_placeholder() git: read local config in --list-cmds completion: fix multiple command removals parse_opt_ref_sorting: always use with NONEG flag refs/files-backend: handle packed transaction prepare failure refs/files-backend: don't look at an aborted transaction http: factor out curl result code normalization http: normalize curl results for dumb loose and alternates fetches http: use normalize_curl_result() instead of manual conversion revision: use a prio_queue to hold rewritten parents get_commit_tree(): return NULL for broken tree rev-list: let traversal die when --missing is not in use rev-list: detect broken root trees test-prio-queue: use xmalloc xdiff: use git-compat-util xdiff: use xmalloc/xrealloc progress: use xmalloc/xcalloc t5516: drop ok=sigpipe from unreachable-want tests t5530: check protocol response for "not our ref" upload-pack: send ERR packet for non-tip objects pkt-line: prepare buffer before handling ERR packets fetch: use free_refs() remote.c: make singular free_ref() public fetch: do not consider peeled tags as advertised tips packfile.h: drop extern from function declarations pack-revindex: open index if necessary t5319: fix bogus cat-file argument t5319: drop useless --buffer from cat-file midx: check both pack and index names for containment packfile: fix pack basename computation http: simplify parsing of remote objects/info/packs server-info: fix blind pointer arithmetic server-info: simplify cleanup in parse_pack_def() server-info: use strbuf to read old info/packs file server-info: drop nr_alloc struct member server-info: drop objdirlen pointer arithmetic update_info_refs(): drop unused force parameter t5304: add a test for pruning with bitmaps untracked-cache: be defensive about missing NULs in index untracked-cache: simplify parsing by dropping "next" untracked-cache: simplify parsing by dropping "len" p5302: create the repo in each index-pack test doc/ls-files: put nested list for "-t" option into block t/perf: depend on perl JSON only when using --codespeed t/perf: add perf script for partial clones Jiang Xin (4): t5323: test cases for git-pack-redundant pack-redundant: delay creation of unique_objects pack-redundant: rename pack_list.all_objects pack-redundant: consistent sort method Joel Teichroeb (5): stash: improve option parsing test coverage stash: convert apply to builtin stash: convert drop and clear to builtin stash: convert branch to builtin stash: convert pop to builtin Joey Hess (1): convert: avoid malloc of original file size Johannes Schindelin (55): ident: add the ability to provide a "fallback identity" travis: remove the hack to build the Windows job on Azure Pipelines tests: let --stress-limit=<N> imply --stress tests: introduce --stress-jobs=<N> built-in rebase: no need to check out `onto` twice built-in rebase: use the correct reflog when switching branches built-in rebase: demonstrate that ORIG_HEAD is not set correctly built-in rebase: set ORIG_HEAD just once, before the rebase Makefile: use `git ls-files` to list header files, if possible curl: anonymize URLs in error messages and warnings remote-curl: mark all error messages for translation stash: add back the original, scripted `git stash` stash: optionally use the scripted version again tests: add a special setup where stash.useBuiltin is off legacy stash: fix "rudimentary backport of -q" built-in stash: handle :(glob) pathspecs again mingw: drop MakeMaker reference mingw: allow building with an MSYS2 runtime v3.x rebase: deprecate --preserve-merges mingw: respect core.hidedotfiles = false in git-init again test-lib: introduce 'test_atexit' git-daemon: use 'test_atexit` to stop 'git-daemon' git p4 test: use 'test_atexit' to kill p4d and the watchdog process rebase -i: demonstrate obscure loose object cache bug sequencer: improve error message when an OID could not be parsed sequencer: move stale comment into correct location get_oid(): when an object was not found, try harder difftool: remove obsolete (and misleading) comment parse-options: make OPT_ARGUMENT() more useful difftool: allow running outside Git worktrees with --no-index docs: move gitremote-helpers into section 7 docs: do not document the `git remote-testgit` command check-docs: really look at the documented commands again check-docs: do not expect guide pages to correspond to commands check-docs: fix for setups where executables have an extension tests (rebase): spell out the `--keep-empty` option tests (rebase): spell out the `--force-rebase` option t7810: do not abbreviate `--no-exclude-standard` nor `--invert-match` t5531: avoid using an abbreviated option tests (push): do not abbreviate the `--follow-tags` option tests (status): spell out the `--find-renames` option in full tests (pack-objects): use the full, unabbreviated `--revs` option t3301: fix false negative untracked cache: fix off-by-one tests: disallow the use of abbreviated options (by default) t9822: skip tests if file names cannot be ISO-8859-1 encoded macOS: make sure that gettext is found remote-testgit: move it into the support directory for t5801 Makefile: drop the NO_INSTALL variable help -a: do not list commands that are excluded from the build check-docs: allow command-list.txt to contain excluded commands docs: exclude documentation for commands that have been excluded check-docs: do not bother checking for legacy scripts' documentation test-tool: handle the `-C <directory>` option just like `git` Turn `git serve` into a test helper Jonathan Tan (24): remote-curl: reduce scope of rpc_state.argv remote-curl: reduce scope of rpc_state.stdin_preamble remote-curl: reduce scope of rpc_state.result remote-curl: refactor reading into rpc_state's buf remote-curl: use post_rpc() for protocol v2 also tests: define GIT_TEST_PROTOCOL_VERSION t5601: check ssh command only with protocol v0 tests: always test fetch of unreachable with v0 t5503: fix overspecification of trace expectation t5512: compensate for v0 only sending HEAD symrefs t5700: only run with protocol version 1 tests: fix protocol version for overspecifications t5552: compensate for v2 filtering ref adv. submodule: explain first attempt failure clearly t5551: mark half-auth no-op fetch test as v0-only fetch-pack: call prepare_shallow_info only if v0 fetch-pack: respect --no-update-shallow in v2 sha1-file: support OBJECT_INFO_FOR_PREFETCH fetch-pack: binary search when storing wanted-refs diff: batch fetching of missing blobs pack-objects: write objects packed to trace2 transport: die if server options are unsupported clone: send server options when using protocol v2 worktree: update is_bare heuristics Jordi Mas (1): l10n: Fixes to Catalan translation Josh Steadmon (4): protocol-capabilities.txt: document symref trace2: write to directory targets clone: do faster object check for partial clones trace2: fix incorrect function pointer check Junio C Hamano (14): test: caution on our version of 'yes' builtin/log: downcase the beginning of error messages format-patch: notice failure to open cover letter for writing Start 2.22 cycle The second batch The third batch The fourth batch gettext tests: export the restored GIT_TEST_GETTEXT_POISON The fifth batch The sixth batch Makefile: dedup list of files obtained from ls-files The seventh batch The eighth batch Git 2.22-rc0 Kyle Meyer (5): rebase docs: fix "gitlink" typo submodule: refuse to add repository with no commits dir: do not traverse repositories with no commits add: error appropriately on repository with no commits t3000 (ls-files -o): widen description to reflect current tests Martin Ågren (14): setup: free old value before setting `work_tree` setup: fix memory leaks with `struct repository_format` config/diff.txt: drop spurious backtick config/fsck.txt: avoid starting line with dash git.txt: remove empty line before list continuation git-svn.txt: drop escaping '\' that ends up being rendered Documentation: turn middle-of-line tabs into spaces Documentation/Makefile: add missing xsl dependencies for manpages Documentation/Makefile: add missing dependency on asciidoctor-extensions asciidoctor-extensions: fix spurious space after linkgit Doc: auto-detect changed build flags doc-diff: let `render_tree()` take an explicit directory name doc-diff: support diffing from/to AsciiDoc(tor) doc-diff: add `--cut-header-footer` Matthew Kraai (1): t3903: add test for --intent-to-add file Michal Suchanek (1): worktree: fix worktree add race Mike Hommey (1): fix pack protocol example client/server communication Nguyễn Thái Ngọc Duy (124): parse-options.h: remove extern on function prototypes parse-options: add one-shot mode parse-options: disable option abbreviation with PARSE_OPT_KEEP_UNKNOWN parse-options: add OPT_BITOP() parse-options: stop abusing 'callback' for lowlevel callbacks parse-options: avoid magic return codes parse-options: allow ll_callback with OPTION_CALLBACK diff.h: keep forward struct declarations sorted diff.h: avoid bit fields in struct diff_flags diff.c: prepare to use parse_options() for parsing diff.c: convert -u|-p|--patch diff.c: convert -U|--unified diff.c: convert -W|--[no-]function-context diff.c: convert --raw read-cache.c: fix writing "link" index ext with null base oid completion: add more parameter value completion diff-parseopt: convert --patch-with-raw diff-parseopt: convert --numstat and --shortstat diff-parseopt: convert --dirstat and friends diff-parseopt: convert --check diff-parseopt: convert --summary diff-parseopt: convert --patch-with-stat diff-parseopt: convert --name-only diff-parseopt: convert --name-status diff-parseopt: convert -s|--no-patch diff-parseopt: convert --stat* diff-parseopt: convert --[no-]compact-summary diff-parseopt: convert --output-* diff-parseopt: convert -B|--break-rewrites diff-parseopt: convert -M|--find-renames diff-parseopt: convert -D|--irreversible-delete diff-parseopt: convert -C|--find-copies diff-parseopt: convert --find-copies-harder diff-parseopt: convert --no-renames|--[no--rename-empty diff-parseopt: convert --relative diff-parseopt: convert --[no-]minimal diff-parseopt: convert --ignore-some-changes Delete check-racy.c diff-parseopt: convert --[no-]indent-heuristic diff-parseopt: convert --patience diff-parseopt: convert --histogram diff-parseopt: convert --diff-algorithm diff-parseopt: convert --anchored diff-parseopt: convert --binary diff-parseopt: convert --full-index diff-parseopt: convert -a|--text diff-parseopt: convert -R diff-parseopt: convert --[no-]follow diff-parseopt: convert --[no-]color diff-parseopt: convert --word-diff diff-parseopt: convert --word-diff-regex diff-parseopt: convert --color-words diff-parseopt: convert --exit-code diff-parseopt: convert --quiet diff-parseopt: convert --ext-diff diff-parseopt: convert --textconv diff-parseopt: convert --ignore-submodules diff-parseopt: convert --submodule files-backend.c: factor out per-worktree code in loose_fill_ref_dir() files-backend.c: reduce duplication in add_per_worktree_entries_to_dir() Make sure refs/rewritten/ is per-worktree unpack-trees: fix oneway_merge accidentally carry over stage index checkout.txt: note about losing staged changes with --merge commit: improve error message in "-a <paths>" case unpack-trees: keep gently check inside add_rejected_path unpack-trees: rename "gently" flag to "quiet" read-tree: add --quiet checkout: prevent losing staged changes with --merge diff-parseopt: convert --ws-error-highlight diff-parseopt: convert --ita-[in]visible-in-index diff-parseopt: convert -z diff-parseopt: convert -l diff-parseopt: convert -S|-G diff-parseopt: convert --pickaxe-all|--pickaxe-regex diff-parseopt: convert -O diff-parseopt: convert --find-object diff-parseopt: convert --diff-filter diff-parseopt: convert --[no-]abbrev diff-parseopt: convert --[src|dst]-prefix diff-parseopt: convert --line-prefix diff-parseopt: convert --no-prefix diff-parseopt: convert --inter-hunk-context diff-parseopt: convert --[no-]color-moved diff-parseopt: convert --color-moved-ws diff.c: allow --no-color-moved-ws range-diff: use parse_options() instead of diff_opt_parse() diff --no-index: use parse_options() instead of diff_opt_parse() am: avoid diff_opt_parse() config: correct '**' matching in includeIf patterns interpret-trailers.txt: start the desc line with a capital letter read-tree.txt: clarify --reset and worktree changes packfile.c: add repo_approximate_object_count() refs.c: add refs_ref_exists() refs.c: add refs_shorten_unambiguous_ref() refs.c: remove the_repo from substitute_branch_name() refs.c: remove the_repo from expand_ref() refs.c: add repo_dwim_ref() refs.c: add repo_dwim_log() refs.c: remove the_repo from read_ref_at() submodule foreach: fix "<command> --quiet" not being respected commit.cocci: refactor code, avoid double rewrite commit.c: add repo_get_commit_tree() sha1-name.c: remove the_repo from sort_ambiguous() sha1-name.c: remove the_repo from find_abbrev_len_packed() sha1-name.c: add repo_find_unique_abbrev_r() sha1-name.c: store and use repo in struct disambiguate_state sha1-name.c: add repo_for_each_abbrev() sha1-name.c: remove the_repo from get_short_oid() sha1-name.c: remove the_repo from interpret_nth_prior_checkout() sha1-name.c: remove the_repo from interpret_branch_mark() sha1-name.c: add repo_interpret_branch_name() sha1-name.c: remove the_repo from get_oid_oneline() sha1-name.c: remove the_repo from get_describe_name() sha1-name.c: remove the_repo from get_oid_basic() sha1-name.c: remove the_repo from get_oid_1() sha1-name.c: remove the_repo from handle_one_ref() sha1-name.c: remove the_repo from diagnose_invalid_index_path() sha1-name.c: remove the_repo from resolve_relative_path() sha1-name.c: remove the_repo from get_oid_with_context_1() sha1-name.c: add repo_get_oid() submodule-config.c: use repo_get_oid for reading .gitmodules sha1-name.c: remove the_repo from maybe_die_on_misspelt_object_name sha1-name.c: remove the_repo from other get_oid_* sha1-name.c: remove the_repo from get_oid_mb() Paul-Sebastian Ungureanu (17): sha1-name.c: add `get_oidf()` which acts like `get_oid()` strbuf.c: add `strbuf_join_argv()` strbuf.c: add `strbuf_insertf()` and `strbuf_vinsertf()` t3903: modernize style stash: rename test cases to be more descriptive stash: add tests for `git stash show` config stash: mention options in `show` synopsis stash: convert list to builtin stash: convert show to builtin stash: convert store to builtin stash: convert create to builtin stash: convert push to builtin stash: make push -q quiet stash: convert save to builtin stash: optimize `get_untracked_files()` and `check_changes()` stash: replace all `write-tree` child processes with API calls stash: convert `stash--helper.c` into `stash.c` Philip Oakley (2): rerere doc: quote `rerere.enabled` describe doc: remove '7-char' abbreviation reference Phillip Wood (21): am/cherry-pick/rebase/revert: document --rerere-autoupdate merge: tweak --rerere-autoupdate documentation sequencer: break some long lines cherry-pick: demonstrate option amnesia cherry-pick --continue: remember options commit/reset: try to clean up sequencer state fix cherry-pick/revert status after commit sequencer: fix cleanup with --signoff and -x sequencer.c: save and restore cleanup mode sequencer: always discard index after checkout rebase: don't translate trace strings rebase: rename write_basic_state() rebase: use OPT_RERERE_AUTOUPDATE() rebase -i: combine rebase--interactive.c with rebase.c rebase -i: remove duplication rebase -i: use struct commit when parsing options rebase -i: use struct object_id for squash_onto rebase -i: use struct rebase_options to parse args rebase -i: use struct rebase_options in do_interactive_rebase() rebase: use a common action enum rebase -i: run without forking rebase--interactive Ramsay Jones (2): prune-packed: check for too many arguments Makefile: fix 'hdr-check' when GCRYPT not installed René Scharfe (1): get-tar-commit-id: parse comment record Robert P. J. Day (3): mention use of "hooks.allownonascii" in "man githooks" docs/git-gc: fix typo "--prune=all" to "--prune=now" attr.c: ".gitattribute" -> ".gitattributes" (comments) Rohit Ashiwal (3): test functions: add function `test_file_not_empty` t3600: modernize style t3600: use helpers to replace test -d/f/e/s <path> SZEDER Gábor (23): test-lib: fix interrupt handling with 'dash' and '--verbose-log -x' t/lib-git-daemon: make sure to kill the 'git-daemon' process tests: use 'test_atexit' to stop httpd t0301-credential-cache: use 'test_atexit' to stop the credentials helper git p4 test: clean up the p4d cleanup functions git p4 test: simplify timeout handling git p4 test: disable '-x' tracing in the p4d watchdog loop t9811-git-p4-label-import: fix pipeline negation t5318-commit-graph: remove unused variable Documentation/git-diff-tree.txt: fix formatting Documentation/technical/api-config.txt: fix formatting Documentation/technical/protocol-v2.txt: fix formatting ci: install Asciidoctor in 'ci/install-dependencies.sh' index-pack: show progress while checking objects ci: stick with Asciidoctor v1.5.8 for now ci: fix AsciiDoc/Asciidoctor stderr check in the documentation build job progress: make display_progress() return void progress: assemble percentage and counters in a strbuf before printing blame: default to HEAD in a bare repo when no start commit is given builtin rebase: use FREE_AND_NULL builtin rebase: use oideq() progress: clear previous progress update dynamically progress: break too long progress bar lines Sun Chao (2): pack-redundant: delete redundant code pack-redundant: new algorithm to find min packs Sven Strickroth (1): MSVC: include compat/win32/path-utils.h for MSVC, too, for real_path() Taylor Blau (4): t: move 'hex2oct' into test-lib-functions.sh t: introduce tests for unexpected object types list-objects.c: handle unexpected non-blob entries list-objects.c: handle unexpected non-tree entries Thomas Gummerer (15): move worktree tests to t24* entry: factor out unlink_entry function entry: support CE_WT_REMOVE flag in checkout_entry read-cache: add invalidate parameter to remove_marked_cache_entries checkout: clarify comment checkout: factor out mark_cache_entry_for_checkout function checkout: introduce --{,no-}overlay option checkout: introduce checkout.overlayMode config revert "checkout: introduce checkout.overlayMode config" ident: don't require calling prepare_fallback_ident first stash: drop unused parameter stash: pass pathspec as pointer glossary: add definition for overlay stash: setup default diff output format if necessary ls-files: use correct format string Todd Zullinger (7): t4038-diff-combined: quote paths with whitespace t9902: test multiple removals via completion.commands completion: use __git when calling --list-cmds Documentation/rev-list-options: wrap --date=<format> block with "--" Documentation/git-status: fix titles in porcelain v2 section Documentation/git-svn: improve asciidoctor compatibility Documentation/git-show-branch: avoid literal {apostrophe} Torsten Bögershausen (1): trace2: NULL is not allowed for va_list Trần Ngọc Quân (1): l10n: Updated Vietnamese translation for v2.21 rd2 Vadim Kochan (1): autoconf: #include <libintl.h> when checking for gettext() William Hubbs (1): config: allow giving separate author and committer idents Yash Bhatambare (1): gitattributes.txt: fix typo brian m. carlson (35): t/lib-submodule-update: use appropriate length constant khash: move oid hash table definition pack-bitmap: make bitmap header handling hash agnostic pack-bitmap: convert struct stored_bitmap to object_id pack-bitmap: replace sha1_to_hex pack-bitmap: switch hard-coded constants to the_hash_algo pack-bitmap: switch hash tables to use struct object_id submodule: avoid hard-coded constants notes-merge: switch to use the_hash_algo notes: make hash size independent notes: replace sha1_to_hex object-store: rename and expand packed_git's sha1 member builtin/name-rev: make hash-size independent fast-import: make hash-size independent fast-import: replace sha1_to_hex builtin/am: make hash size independent builtin/pull: make hash-size independent http-push: convert to use the_hash_algo http-backend: allow 64-character hex names http-push: remove remaining uses of sha1_to_hex http-walker: replace sha1_to_hex http: replace hard-coded constant with the_hash_algo http: compute hash of downloaded objects using the_hash_algo http: replace sha1_to_hex remote-curl: make hash size independent hash: add a function to lookup hash algorithm by length builtin/get-tar-commit-id: make hash size independent archive: convert struct archiver_args to object_id refspec: make hash size independent builtin/difftool: use parse_oid_hex dir: make untracked cache extension hash size independent read-cache: read data in a hash-independent way Git.pm: make hash size independent gitweb: make hash size independent send-email: default to quoted-printable when CR is present Ævar Arnfjörð Bjarmason (36): receive-pack: fix use-after-free bug commit-graph tests: split up corrupt_graph_and_verify() commit-graph tests: test a graph that's too small Makefile: remove an out-of-date comment Makefile: move "strip" assignment down from flags Makefile: add/remove comments at top and tweak whitespace Makefile: Move *_LIBS assignment into its own section Makefile: move the setting of *FLAGS closer to "include" Makefile: allow for combining DEVELOPER=1 and CFLAGS="..." gc: remove redundant check for gc_auto_threshold gc: convert to using the_hash_algo gc: refactor a "call me once" pattern reflog tests: make use of "test_config" idiom reflog tests: test for the "points nowhere" warning rebase: remove the rebase.useBuiltin setting gc docs: modernize the advice for manually running "gc" gc docs: stop noting "repack" flags gc docs: clean grammar for "gc.bigPackThreshold" commit-graph: fix segfault on e.g. "git status" commit-graph: don't early exit(1) on e.g. "git status" commit-graph: don't pass filename to load_commit_graph_one_fd_st() commit-graph verify: detect inability to read the graph commit-graph write: don't die if the existing graph is corrupt commit-graph: improve & i18n error messages reflog tests: assert lack of early exit with expiry="never" gc: handle & check gc.reflogExpire config test-lib: whitelist GIT_TR2_* in the environment gc docs: include the "gc.*" section from "config" in "gc" gc docs: re-flow the "gc.*" section in "config" gc docs: fix formatting for "gc.writeCommitGraph" gc docs: note how --aggressive impacts --window & --depth gc docs: downplay the usefulness of --aggressive gc docs: note "gc --aggressive" in "fast-import" gc docs: clarify that "gc" doesn't throw away referenced objects gc docs: remove incorrect reference to gc.auto=0 trace2: fix up a missing "leave" entry point Version v2.21.4; changes since v2.21.3: --------------------------------------- Johannes Schindelin (6): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Git 2.21.4 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.21.3; changes since v2.21.2: --------------------------------------- Jeff King (6): t0300: make "quit" helper more realistic t0300: use more realistic inputs credential: parse URL without host as empty host, not unset credential: refuse to operate when missing host or protocol credential: die() when parsing invalid urls Git 2.17.5 Jonathan Nieder (4): fsck: convert gitmodules url to URL passed to curl credential: treat URL without scheme as invalid credential: treat URL with empty scheme as invalid fsck: reject URL with empty host in .gitmodules Version v2.21.2; changes since v2.21.1: --------------------------------------- Jeff King (4): credential: avoid writing values with newlines t/lib-credential: use test_i18ncmp to check stderr credential: detect unrepresentable values when parsing urls fsck: detect gitmodules URLs with embedded newlines Junio C Hamano (1): Git 2.17.4 Version v2.21.1; changes since v2.21.0: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (33): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Git 2.15.4 test-drop-caches: use `has_dos_drive_prefix()` Git 2.16.6 Git 2.17.3 Git 2.18.2 Git 2.19.3 t7415: adjust test for dubiously-nested submodule gitdirs for v2.20.x Git 2.20.2 mingw: detect when MSYS2's sh is to be spawned more robustly mingw: use MSYS2 quoting even when spawning shell scripts mingw: fix quoting of empty arguments for `sh` t7415: drop v2.20.x-specific work-around mingw: sh arguments need quoting in more circumstances Git 2.21.1 Jonathan Nieder (3): submodule: reject submodule.update = !command in .gitmodules fsck: reject submodule.update = !command in .gitmodules submodule: defend against submodule.update = !command in .gitmodules Version v2.21.0; changes since v2.21.0-rc2: ------------------------------------------- Alessandro Menti (1): l10n: it: update the Italian translation Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (4363t) Christopher Díaz Riveros (1): l10n: es: 2.21.0 round 2 Fabien Villepinte (2): l10n: fr.po Fix some typos l10n: fr.po Fix some typos from round3 Fangyi Zhou (1): l10n: zh_CN: Revision for git v2.21.0 l10n Jean-Noël Avila (1): l10n: fr.po v2.21.0 rnd 2 Jiang Xin (3): l10n: git.pot: v2.21.0 round 1 (214 new, 38 removed) l10n: git.pot: v2.21.0 round 2 (3 new, 3 removed) l10n: zh_CN: for git v2.21.0 l10n round 1~2 Jimmy Angelakos (1): l10n: el: add Greek l10n team and essential translations Johannes Schindelin (1): README: adjust for final Azure Pipeline ID Jordi Mas (2): l10n: Update Catalan translation l10n: Fixes to Catalan translation Junio C Hamano (1): Git 2.21 Nguyễn Thái Ngọc Duy (1): l10n: bg.po: correct typo Peter Krefting (1): l10n: Update Swedish translation (4363t0f0u) Ralf Thielow (1): l10n: update German translation Sebastian Staudt (3): l10n: de.po: consistent translation of 'root commit' l10n: de.po: fix a message for index-pack.c l10n: de.po: fix grammar in message for tag.c Yoichi Nakayama (1): checkout doc: fix an unmatched double-quote pair Zhilei Han (1): l10n: zh_CN: fix typo of submodule init message Ævar Arnfjörð Bjarmason (3): tests: avoid syntax triggering old dash bug tests: fix unportable "\?" and "\+" regex syntax commit-graph tests: fix unportable "dd" invocation Version v2.21.0-rc2; changes since v2.21.0-rc1: ----------------------------------------------- Elijah Newren (1): git-rebase.txt: update to reflect merge now implemented on sequencer Emilio Cobos Álvarez (1): docs/git-rebase: remove redundant entry in incompatible options list Johannes Schindelin (2): mingw: safe-guard a bit more against getenv() problems tests: teach the test-tool to generate NUL bytes and use it Junio C Hamano (3): t1404: do not rely on the exact phrasing of strerror() Revert "t5562: replace /dev/zero with a pipe from generate_zero_bytes" Git 2.21-rc2 Max Kirillov (2): t5562: do not depend on /dev/zero t5562: do not reuse output files Todd Zullinger (1): t/lib-httpd: pass GIT_TEST_SIDEBAND_ALL through Apache Version v2.21.0-rc1; changes since v2.21.0-rc0: ----------------------------------------------- Derrick Stolee (1): Makefile: add coverage-prove target Jean-Noël Avila (1): Fix typos in translatable strings for v2.21.0 Jeff King (4): remote-curl: refactor smart-http discovery remote-curl: tighten "version 2" check for smart-http RelNotes/2.21: tweak "--date=auto" mention RelNotes/2.21: misc typo/English fixups Johannes Schindelin (4): Revert "rebase: introduce a shortcut for --reschedule-failed-exec" mingw: fix CPU reporting in `git version --build-options` .mailmap: map Clemens Buchacher's mail addresses mingw: use a more canonical method to fix the CPU reporting Josh Steadmon (3): t5551: test server-side ERR packet fuzz-commit-graph: initialize repo object object: fix leak of shallow_stat Junio C Hamano (3): ci: clear and mark MAKEFLAGS exported just once Seventh batch for 2.21 Git 2.21-rc1 Katrin Leinweber (1): doc: prevent overflowing <code> tag in rendered HTML Kevin Daudt (1): t0028: fix wrong octal values for BOM in setup Luke Diamand (1): git-p4: remove ticket expiry test Nguyễn Thái Ngọc Duy (5): checkout: update count-checkouts messages checkout: count and print -m paths separately imap-send.c: add a missing space in error message git-compat-util: work around fileno(fp) that is a macro get_oid_with_context(): match prototype and implementation Ramsay Jones (1): sequencer: make sign_off_header a file local symbol Randall S. Becker (6): t5403: correct bash ambiguous redirect error in subtest 8 by quoting $GIT_DIR config.mak.uname: add FREAD_READS_DIRECTORIES for NonStop platform test-lib-functions.sh: add generate_zero_bytes function t5318: replace use of /dev/zero with generate_zero_bytes t5562: replace /dev/zero with a pipe from generate_zero_bytes config.mak.uname: move location of bash on NonStop to CoreUtils SZEDER Gábor (3): ci: make sure we build Git parallel test-lib: make '--stress' more bisect-friendly test-lib: fix non-portable pattern bracket expressions Todd Zullinger (2): t/lib-gpg: quote path to ${GNUPGHOME}/trustlist.txt t/lib-gpg: drop redundant killing of gpg-agent brian m. carlson (1): utf8: handle systems that don't write BOM for UTF-16 Ævar Arnfjörð Bjarmason (1): rebase: fix regression in rebase.useBuiltin=false test mode Version v2.21.0-rc0; changes since v2.20.5: ------------------------------------------- Arti Zirk (1): git-instaweb: add Python builtin http.server support Ben Peart (2): checkout: add test demonstrating regression with checkout -b on initial commit checkout: fix regression in checkout -b on intitial checkout Brandon Richardson (1): commit-tree: add missing --gpg-sign flag Brandon Williams (1): mailmap: update brandon williams's email address Carlo Marcelo Arenas Belón (4): t6036: avoid non-portable "cp -a" tests: add lint for non portable cp -a t5004: avoid using tar for empty packages config.mak.uname: OpenBSD uses BSD semantics with fread for directories Chayoung You (3): zsh: complete unquoted paths with spaces correctly completion: treat results of git ls-tree as file paths completion: fix typo in git-completion.bash Christian Couder (3): fetch: fix extensions.partialclone name in error message partial-clone: add missing 'is' in doc helper/test-ref-store: fix "new-sha1" vs "old-sha1" typo David Turner (1): Do not print 'dangling' for cat-file in case of ambiguity Denis Ovsienko (1): docs: fix $strict_export text in gitweb.conf.txt Derrick Stolee (8): merge-recursive: combine error handling commit-graph: writing missing parents is a BUG git-gc.txt: fix typo about gc.writeCommitGraph revision: add mark_tree_uninteresting_sparse list-objects: consume sparse tree walk revision: implement sparse algorithm pack-objects: create pack.useSparse setting pack-objects: create GIT_TEST_PACK_SPARSE Elijah Newren (30): t6042: add tests for consistency in file collision conflict handling t6036, t6042: testcases for rename collision of already conflicting files merge-recursive: increase marker length with depth of recursion merge-recursive: new function for better colliding conflict resolutions merge-recursive: fix rename/add conflict handling merge-recursive: improve handling for rename/rename(2to1) conflicts merge-recursive: use handle_file_collision for add/add conflicts merge-recursive: improve rename/rename(1to2)/add[/add] handling t6036, t6043: increase code coverage for file collision handling fast-export: convert sha1 to oid git-fast-import.txt: fix documentation for --quiet option git-fast-export.txt: clarify misleading documentation about rev-list args fast-export: use value from correct enum fast-export: avoid dying when filtering by paths and old tags exist fast-export: move commit rewriting logic into a function for reuse fast-export: when using paths, avoid corrupt stream with non-existent mark fast-export: ensure we export requested refs fast-export: add --reference-excluded-parents option fast-import: remove unmaintained duplicate documentation fast-export: add a --show-original-ids option to show original names git-rebase.txt: update note about directory rename detection and am rebase: make builtin and legacy script error messages the same rebase: fix incompatible options error message t5407: add a test demonstrating how interactive handles --skip differently am, rebase--merge: do not overlook --skip'ed commits with post-rewrite git-rebase, sequencer: extend --quiet option for the interactive machinery git-legacy-rebase: simplify unnecessary triply-nested if rebase: define linearization ordering and enforce it rebase: implement --merge via the interactive machinery git-show-ref.txt: fix order of flags Eric Sunshine (1): doc/config: do a better job of introducing 'worktree.guessRemote' Eric Wong (2): banned.h: mark strncat() as banned t1512: test ambiguous cat-file --batch and --batch-output Erin Dahlgren (1): Simplify handling of setup_git_directory_gently() failure cases. Force Charlie (1): http: add support selecting http version Frank Dana (1): docs/gitweb.conf: config variable typo Issac Trotts (1): log: add %S option (like --source) to log --format Jean-Noël Avila (2): Documentation/Makefile add optional targets for l10n doc: tidy asciidoc style Jeff King (50): fsck: do not reuse child_process structs submodule--helper: prefer strip_suffix() to ends_with() rename "alternate_object_database" to "object_directory" sha1_file_name(): overwrite buffer instead of appending handle alternates paths the same as the main object dir sha1-file: use an object_directory for the main object dir object-store: provide helpers for loose_objects_cache sha1-file: use loose object cache for quick existence check fetch-pack: drop custom loose object cache odb_load_loose_cache: fix strbuf leak transport-helper: drop read/write errno checks sha1-file: fix outdated sha1 comment references update comment references to sha1_object_info() http: use struct object_id instead of bare sha1 sha1-file: modernize loose object file functions sha1-file: modernize loose header/stream functions sha1-file: convert pass-through functions to object_id convert has_sha1_file() callers to has_object_file() sha1-file: drop has_sha1_file() sha1-file: prefer "loose object file" to "sha1 file" in messages sha1-file: avoid "sha1 file" for generic use in messages prefer "hash mismatch" to "sha1 mismatch" upload-pack: support hidden refs with protocol v2 remote: check config validity before creating rewrite struct get_super_prefix(): copy getenv() result commit: copy saved getenv() result config: make a copy of $GIT_CONFIG string init: make a copy of $GIT_DIR string merge-recursive: copy $GITHEAD strings builtin_diff(): read $GIT_DIFF_OPTS closer to use add: use separate ADD_CACHE_RENORMALIZE flag attr: do not mark queried macros as unset t4006: resurrect commented-out tests diff: clear emitted_symbols flag after use combine-diff: factor out stat-format mask combine-diff: treat --shortstat like --stat combine-diff: treat --summary like --stat combine-diff: treat --dirstat like --stat match-trees: drop unused path parameter from score functions apply: drop unused "def" parameter from find_name_gnu() create_bundle(): drop unused "header" parameter column: drop unused "opts" parameter in item_length() show_date_relative(): drop unused "tz" parameter config: drop unused parameter from maybe_remove_section() convert: drop len parameter from conversion checks convert: drop path parameter from actual conversion functions doc/gitattributes: clarify "autocrlf overrides eol" docs/config: clarify "text property" in core.eol test-date: drop unused parameter to getnanos() add_to_index(): convert forgotten HASH_RENORMALIZE check Johannes Schindelin (35): rebase: introduce --reschedule-failed-exec rebase: add a config option to default to --reschedule-failed-exec rebase: introduce a shortcut for --reschedule-failed-exec gc/repack: release packs when needed add --edit: truncate the patch file t6042: work around speed optimization on Windows abspath_part_inside_repo: respect core.ignoreCase rebase: move `reset_head()` into a better spot rebase: avoid double reflog entry when switching branches rebase: teach `reset_head()` to optionally skip the worktree built-in rebase: call `git am` directly mingw (t5580): document bug when cloning from backslashed UNC paths mingw: special-case arguments to `sh` tests: explicitly use `test-tool.exe` on Windows travis: fix skipping tagged releases ci: rename the library of common functions ci/lib.sh: encapsulate Travis-specific things ci: inherit --jobs via MAKEFLAGS in run-build-and-tests ci: use a junction on Windows instead of a symlink test-date: add a subcommand to measure times in shell scripts tests: optionally write results as JUnit-style .xml ci/lib.sh: add support for Azure Pipelines Add a build definition for Azure DevOps ci: add a Windows job to the Azure Pipelines definition ci: use git-sdk-64-minimal build artifact mingw: be more generous when wrapping up the setitimer() emulation README: add a build badge (status of the Azure Pipelines build) tests: avoid calling Perl just to determine file sizes tests: include detailed trace logs with --write-junit-xml upon failure mingw: try to work around issues with the test cleanup tests: add t/helper/ to the PATH with --with-dashes t0061: workaround issues with --with-dashes and RUNTIME_PREFIX tests: optionally skip bin-wrappers/ ci: speed up Windows phase ci: parallelize testing on Windows Jonathan Nieder (1): stripspace: allow -s/-c outside git repository Jonathan Tan (9): revision: use commit graph in get_reference() fetch-pack: support protocol version 2 fetch-pack: do not take shallow lock unnecessarily upload-pack: teach deepen-relative in protocol v2 pkt-line: introduce struct packet_writer sideband: reverse its dependency on pkt-line {fetch,upload}-pack: sideband v2 fetch response tests: define GIT_TEST_SIDEBAND_ALL ls-refs: filter refs using namespace-stripped name Josh Steadmon (4): filter-options: expand scaled numbers commit-graph, fuzz: add fuzzer for commit-graph commit-graph: fix buffer read-overflow Makefile: correct example fuzz build Junio C Hamano (11): t0027: squelch checkout path run outside test_expect_* block t0061: do not fail test if '.' is part of $PATH submodule update: run at most one fetch job unless otherwise set Prepare for 2.21 cycle to start soonish First batch after 2.20.1 ref-filter: give uintmax_t to format with %PRIuMAX Second batch after 2.20 Third batch after 2.20 Fourth batch after 2.20 Fifth batch for 2.21 Git 2.21-rc0 Kim Gybels (1): diff: ensure correct lifetime of external_diff_cmd Kyle Meyer (2): rebase docs: drop stray word in merge command description init docs: correct a punctuation typo Laura Abbott (1): git-quiltimport: add --keep-non-patch option Linus Torvalds (1): Add 'human' date format Luke Diamand (2): git-p4: add failing test for shelved CL update involving move/copy git-p4: handle update of moved/copied files when updating a shelve Martin Ågren (5): git-column.txt: fix section header Documentation: do not nest open blocks git-status.txt: render tables correctly under Asciidoctor t7510: invoke git as part of &&-chain doc-diff: don't `cd_to_toplevel` Masaya Suzuki (7): Use packet_reader instead of packet_read_line pack-protocol.txt: accept error packets in any context http: support file handles for HTTP_KEEP_ERROR http: enable keep_error for HTTP requests remote-curl: define struct for CURLOPT_WRITEFUNCTION remote-curl: unset CURLOPT_FAILONERROR test: test GIT_CURL_VERBOSE=1 shows an error Matthew DeVore (4): list-objects.c: don't segfault for missing cmdline objects revision.c: put promisor option in specialized struct list-objects-filter: teach tree:# how to handle >0 tree:<depth>: skip some trees even when collecting omits Matthieu Moy (1): git-multimail: update to release 1.5.0 Max Kirillov (1): http-backend: enable cleaning up forked upload/receive-pack on exit Nguyễn Thái Ngọc Duy (62): git.c: mark more strings for translation alias.c: mark split_cmdline_strerror() strings for translation archive.c: mark more strings for translation attr.c: mark more string for translation read-cache.c: turn die("internal error") to BUG() read-cache.c: mark more strings for translation read-cache.c: add missing colon separators reflog: mark strings for translation remote.c: turn some error() or die() to BUG() remote.c: mark messages for translation repack: mark more strings for translation parse-options: replace opterror() with optname() parse-options.c: turn some die() to BUG() parse-options.c: mark more strings for translation fsck: reduce word legos to help i18n fsck: mark strings for translation wt-status.c: remove implicit dependency on the_index wt-status.c: remove implicit dependency the_repository list-objects-filter.c: remove implicit dependency on the_index list-objects.c: reduce the_repository references notes-merge.c: remove implicit dependency on the_index notes-merge.c: remove implicit dependency the_repository transport.c: remove implicit dependency on the_index sequencer.c: remove implicit dependency on the_index sequencer.c: remove implicit dependency on the_repository blame.c: remove implicit dependency the_repository bisect.c: remove the_repository reference branch.c: remove the_repository reference bundle.c: remove the_repository references cache-tree.c: remove the_repository references delta-islands.c: remove the_repository references diff-lib.c: remove the_repository references line-log.c: remove the_repository reference notes-cache.c: remove the_repository references pack-check.c: remove the_repository references pack-*.c: remove the_repository references rerere.c: remove the_repository references rebase-interactive.c: remove the_repository references checkout: disambiguate dwim tracking branches and local files checkout: print something when checking out paths tree.c: make read_tree*() take 'struct repository *' tree-walk.c: make tree_entry_interesting() take an index pathspec.h: clean up "extern" in function declarations dir.c: move, rename and export match_attrs() tree-walk: support :(attr) matching Indent code with TABs style: the opening '{' of a function is in a separate line worktree: allow to (re)move worktrees with uninitialized submodules grep: use grep_opt->repo instead of explict repo argument notes-utils.c: remove the_repository references repository.c: replace hold_locked_index() with repo_hold_locked_index() checkout: avoid the_index when possible read-cache.c: kill read_index() read-cache.c: replace update_index_if_able with repo_& sha1-name.c: remove implicit dependency on the_index merge-recursive.c: remove implicit dependency on the_index merge-recursive.c: remove implicit dependency on the_repository read-cache.c: remove the_* from index_has_changes() cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch fetch: prefer suffix substitution in compact fetch.output help: align the longest command in the command listing git-commit.txt: better description what it does Olga Telezhnaya (6): ref-filter: add objectsize:disk option ref-filter: add check for negative file size ref-filter: add tests for objectsize:disk ref-filter: add deltabase option ref-filter: add tests for deltabase ref-filter: add docs for new options Orgad Shaneh (2): t5403: simplify by using a single repository rebase: run post-checkout hook on checkout Patrick Hogg (2): pack-objects: move read mutex to packing_data struct pack-objects: merge read_lock and lock in packing_data struct Peter Osterlund (1): git-p4: fix problem when p4 login is not necessary Phillip Wood (11): diff: document --no-color-moved Use "whitespace" consistently diff: allow --no-color-moved-ws diff --color-moved-ws: demonstrate false positives diff --color-moved-ws: fix false positives diff --color-moved=zebra: be stricter with color alternation diff --color-moved-ws: optimize allow-indentation-change diff --color-moved-ws: modify allow-indentation-change diff --color-moved-ws: handle blank lines implicit interactive rebase: don't run sequence editor rebase -x: sanity check command Pranit Bauva (7): bisect--helper: `bisect_reset` shell function in C bisect--helper: `bisect_write` shell function in C wrapper: move is_empty_file() and rename it as is_empty_or_missing_file() bisect--helper: `check_and_set_terms` shell function in C bisect--helper: `bisect_next_check` shell function in C bisect--helper: `get_terms` & `bisect_terms` shell function in C bisect--helper: `bisect_start` shell function partially in C Ramsay Jones (2): config.mak.uname: remove obsolete SPARSE_FLAGS setting Makefile: improve SPARSE_FLAGS customisation Randall S. Becker (4): transport-helper: use xread instead of read config.mak.uname: support for modern HPE NonStop config. git-compat-util.h: add FLOSS headers for HPE NonStop compat/regex/regcomp.c: define intptr_t and uintptr_t on NonStop René Scharfe (5): sha1-file: close fd of empty file in map_sha1_file_1() object-store: factor out odb_loose_cache() object-store: factor out odb_clear_loose_cache() object-store: use one oid_array per subdirectory for loose cache object-store: retire odb_load_loose_cache() SZEDER Gábor (22): clone: use a more appropriate variable name for the default refspec clone: respect additional configured fetch refspecs during initial fetch Documentation/clone: document ignored configuration variables test-lib: check Bash version for '-x' without using shell arrays test-lib: translate SIGTERM and SIGHUP to an exit test-lib: extract Bash version check for '-x' tracing test-lib: parse options in a for loop to keep $@ intact test-lib: parse command line options earlier test-lib: consolidate naming of test-results paths test-lib: set $TRASH_DIRECTORY earlier test-lib-functions: introduce the 'test_set_port' helper function test-lib: add the '--stress' option to run a test repeatedly under load compat/obstack: fix -Wcast-function-type warnings .gitignore: ignore external debug symbols from GCC on macOS travis-ci: don't be '--quiet' when running the tests travis-ci: switch to Xcode 10.1 macOS image travis-ci: build with the right compiler commit-graph: rename "large edges" to "extra edges" commit-graph: don't call write_graph_chunk_extra_edges() unnecessarily strbuf.cocci: suggest strbuf_addbuf() to add one strbuf to an other object_as_type: initialize commit-graph-related fields of 'struct commit' travis-ci: make the OSX build jobs' 'brew update' more quiet Sebastian Staudt (2): describe: setup working tree for --dirty t6120: test for describe with a bare repository Sergey Organov (4): t3510: stop using '-m 1' to force failure mid-sequence of cherry-picks cherry-pick: do not error on non-merge commits when '-m 1' is specified t3502: validate '-m 1' argument is now accepted for non-merge commits t3506: validate '-m 1 -ff' is now accepted for non-merge commits Shahzad Lone (1): various: tighten constness of some local variables Slavica Djukic (1): stash: tolerate missing user identity Stefan Beller (39): sha1_file: allow read_object to read objects in arbitrary repositories packfile: allow has_packed_and_bad to handle arbitrary repositories diff: align move detection error handling with other options object-store: allow read_object_file_extended to read from any repo object-store: prepare read_object_file to deal with any repo object-store: prepare has_{sha1, object}_file to handle any repo object: parse_object to honor its repository argument commit: allow parse_commit* to handle any repo commit-reach.c: allow paint_down_to_common to handle any repo commit-reach.c: allow merge_bases_many to handle any repo commit-reach.c: allow remove_redundant to handle any repo commit-reach.c: allow get_merge_bases_many_0 to handle any repo commit-reach: prepare get_merge_bases to handle any repo commit-reach: prepare in_merge_bases[_many] to handle any repo commit: prepare get_commit_buffer to handle any repo commit: prepare repo_unuse_commit_buffer to handle any repo commit: prepare logmsg_reencode to handle arbitrary repositories pretty: prepare format_commit_message to handle arbitrary repositories sideband: color lines with keyword only sha1-array: provide oid_array_filter submodule.c: fix indentation submodule.c: sort changed_submodule_names before searching it submodule.c: tighten scope of changed_submodule_names struct submodule: store OIDs in changed_submodule_names repository: repo_submodule_init to take a submodule struct submodule: migrate get_next_submodule to use repository structs submodule.c: fetch in submodules git directory instead of in worktree fetch: ensure submodule objects fetched submodule update: add regression test with old style setups submodule: unset core.worktree if no working tree is present submodule--helper: fix BUG message in ensure_core_worktree submodule deinit: unset core.worktree submodule: use submodule repos for object lookup submodule: don't add submodule as odb for push commit-graph: convert remaining functions to handle any repo commit: prepare free_commit_buffer and release_commit_memory for any repo path.h: make REPO_GIT_PATH_FUNC repository agnostic t/helper/test-repository: celebrate independence from the_repository git-submodule: abort if core.worktree could not be set correctly Stephen P. Smith (4): Replace the proposed 'auto' mode with 'auto:' Add 'human' date format documentation Add `human` format to test-tool Add `human` date format tests. Sven van Haastregt (1): git-submodule.sh: shorten submodule SHA-1s using rev-parse Thomas Braun (1): log -G: ignore binary files Thomas Gummerer (3): t5570: drop racy test Revert "t/lib-git-daemon: record daemon log" config.mak.dev: add -Wall, primarily for -Wformat, to help autoconf users Torsten Bögershausen (3): git clone <url> C:\cygwin\home\USER\repo' is working (again) test-lint: only use only sed [-n] [-e command] [-f command_file] Support working-tree-encoding "UTF-16LE-BOM" brian m. carlson (19): sha1-file: rename algorithm to "sha1" sha1-file: provide functions to look up hash algorithms hex: introduce functions to print arbitrary hashes cache: make hashcmp and hasheq work with larger hashes t: add basic tests for our SHA-1 implementation t: make the sha1 test-tool helper generic sha1-file: add a constant for hash block size t/helper: add a test helper to compute hash speed commit-graph: convert to using the_hash_algo Add a base implementation of SHA-256 support sha256: add an SHA-256 implementation using libgcrypt hash: add an SHA-256 implementation using OpenSSL tree-walk: copy object ID before use match-trees: compute buffer offset correctly when splicing match-trees: use hashcpy to splice trees tree-walk: store object_id in a separate member cache: make oidcpy always copy GIT_MAX_RAWSZ bytes fetch-pack: clear alternate shallow when complete fetch-pack: clear alternate shallow in one more place Ævar Arnfjörð Bjarmason (17): remote.c: add braces in anticipation of a follow-up change i18n: remote.c: mark error(...) messages for translation push: improve the error shown on unqualified <dst> push push: move unqualified refname error into a function push: add an advice on unqualified <dst> push push: test that <src> doesn't DWYM if <dst> is unqualified push doc: document the DWYM behavior pushing to unqualified <dst> commit-graph: split up close_reachable() progress output commit-graph write: use pack order when finding commits commit-graph write: add "Writing out" progress output commit-graph write: more descriptive "writing out" output commit-graph write: show progress for object search commit-graph write: add more descriptive progress output commit-graph write: remove empty line for readability commit-graph write: add itermediate progress commit-graph write: emit a percentage for all progress diff-tree doc: correct & remove wrong documentation Version v2.20.5; changes since v2.20.4: --------------------------------------- Johannes Schindelin (5): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Git 2.20.5 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.20.4; changes since v2.20.3: --------------------------------------- Jeff King (6): t0300: make "quit" helper more realistic t0300: use more realistic inputs credential: parse URL without host as empty host, not unset credential: refuse to operate when missing host or protocol credential: die() when parsing invalid urls Git 2.17.5 Jonathan Nieder (4): fsck: convert gitmodules url to URL passed to curl credential: treat URL without scheme as invalid credential: treat URL with empty scheme as invalid fsck: reject URL with empty host in .gitmodules Version v2.20.3; changes since v2.20.2: --------------------------------------- Jeff King (4): credential: avoid writing values with newlines t/lib-credential: use test_i18ncmp to check stderr credential: detect unrepresentable values when parsing urls fsck: detect gitmodules URLs with embedded newlines Junio C Hamano (1): Git 2.17.4 Version v2.20.2; changes since v2.20.1: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (27): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Git 2.15.4 test-drop-caches: use `has_dos_drive_prefix()` Git 2.16.6 Git 2.17.3 Git 2.18.2 Git 2.19.3 t7415: adjust test for dubiously-nested submodule gitdirs for v2.20.x Git 2.20.2 Jonathan Nieder (3): submodule: reject submodule.update = !command in .gitmodules fsck: reject submodule.update = !command in .gitmodules submodule: defend against submodule.update = !command in .gitmodules Version v2.20.1; changes since v2.20.0: --------------------------------------- Derrick Stolee (1): .gitattributes: ensure t/oid-info/* has eol=lf Johannes Schindelin (4): help.h: fix coding style help -a: handle aliases with long names gracefully t4256: mark support files as LF-only t9902: 'send-email' test case requires PERL Junio C Hamano (2): run-command: report exec failure Git 2.20.1 Nguyễn Thái Ngọc Duy (1): parse-options: fix SunCC compiler warning Version v2.20.0; changes since v2.20.0-rc2: ------------------------------------------- Alexander Shopov (3): l10n: bg.po: Updated Bulgarian translation (4185t) l10n: bg.po: Updated Bulgarian translation (4185t) l10n: bg.po: Updated Bulgarian translation (4187t) Christopher Díaz Riveros (2): l10n: es.po v2.20.0 round 1 l10n: es.po v2.20.0 round 3 Jean-Noël Avila (2): l10n: fr.po v2.20 rnd 1 l10n: fr.po v2.20.0 round 3 Jiang Xin (5): l10n: zh_CN: review for git v2.19.0 l10n l10n: git.pot: v2.20.0 round 1 (254 new, 27 removed) l10n: git.pot: v2.20.0 round 2 (2 new, 2 removed) l10n: git.pot: v2.20.0 round 3 (5 new, 3 removed) l10n: zh_CN: for git v2.20.0 l10n round 1 to 3 Johannes Sixt (1): rebase docs: fix incorrect format of the section Behavioral Differences Jordi Mas (2): l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (1): Git 2.20 Martin Ågren (4): range-diff: always pass at least minimal diff options RelNotes 2.20: move some items between sections RelNotes 2.20: clarify sentence RelNotes 2.20: drop spurious double quote Minh Nguyen (1): l10n: vi.po: fix typo in pack-objects Peter Krefting (2): l10n: sv.po: Update Swedish translation (4185t0f0u) l10n: sv.po: Update Swedish translation (4187t0f0u) Ralf Thielow (3): l10n: update German translation l10n: update German translation l10n: de.po: fix two messages Trần Ngọc Quân (2): l10n: vi(4185t): Updated Vietnamese translation for v2.20.0 l10n: vi(4187t): Updated Vietnamese translation for v2.20.0 rd3 Version v2.20.0-rc2; changes since v2.20.0-rc1: ----------------------------------------------- Greg Hurrell (1): doc: update diff-format.txt for removed ellipses in --raw Jean-Noël Avila (1): i18n: fix small typos Jeff King (1): t5562: fix perl path Johannes Schindelin (2): rebase: fix GIT_REFLOG_ACTION regression rebase --stat: fix when rebasing to an unrelated history Junio C Hamano (2): format-patch: do not let its diff-options affect --range-diff Git 2.20-rc2 Martin Ågren (2): git-reset.txt: render tables correctly under Asciidoctor git-reset.txt: render literal examples as monospace Nguyễn Thái Ngọc Duy (2): files-backend.c: fix build error on Solaris transport-helper.c: do not translate a string twice Ralf Thielow (1): builtin/rebase.c: remove superfluous space in messages SZEDER Gábor (3): tests: send "bug in the test script" errors to the script's stderr test-lib-functions: make 'test_cmp_rev' more informative on failure t/lib-git-daemon: fix signal checking Sven Strickroth (1): msvc: directly use MS version (_stricmp) of strcasecmp Torsten Bögershausen (1): t5601-99: Enable colliding file detection for MINGW Ævar Arnfjörð Bjarmason (2): push: change needlessly ambiguous example in error advice: don't pointlessly suggest --convert-graft-file Version v2.20.0-rc1; changes since v2.20.0-rc0: ----------------------------------------------- Derrick Stolee (1): pack-objects: ignore ambiguous object warnings Jeff King (3): pack-objects: fix tree_depth and layer invariants pack-objects: zero-initialize tree_depth/layer arrays pack-objects: fix off-by-one in delta-island tree-depth computation Johannes Schindelin (7): tests: fix GIT_TEST_INSTALLED's PATH to include t/helper/ tests: respect GIT_TEST_INSTALLED when initializing repositories t/lib-gettext: test installed git-sh-i18n if GIT_TEST_INSTALLED is set tests: do not require Git to be built when testing an installed Git tests: explicitly use `git.exe` on Windows legacy-rebase: backport -C<n> and --whitespace=<option> checks rebase: warn about the correct tree's OID Jonathan Nieder (3): eoie: default to not writing EOIE section ieot: default to not writing IEOT section index: make index.threads=true enable ieot and eoie Junio C Hamano (5): Makefile: ease dynamic-gettext-poison transition RelNotes: name the release properly Prepare for 2.20-rc1 Git 2.19.2 Git 2.20-rc1 Nguyễn Thái Ngọc Duy (2): format-patch: respect --stat in cover letter's diffstat clone: fix colliding file detection on APFS SZEDER Gábor (1): coccicheck: introduce 'pending' semantic patches Todd Zullinger (1): Documentation: build technical/multi-pack-index Torsten Bögershausen (2): Upcast size_t variables to uintmax_t when printing remote-curl.c: xcurl_off_t is not portable (on 32 bit platfoms) Ævar Arnfjörð Bjarmason (2): i18n: make GETTEXT_POISON a runtime option read-cache: make the split index obey umask settings Đoàn Trần Công Danh (1): git-compat-util: prefer poll.h to sys/poll.h Version v2.20.0-rc0; changes since v2.19.6: ------------------------------------------- Aaron Lindsay (1): send-email: avoid empty transfer encoding header Alban Gruin (21): sequencer: make three functions and an enum from sequencer.c public rebase -i: rewrite append_todo_help() in C editor: add a function to launch the sequence editor rebase -i: rewrite the edit-todo functionality in C sequencer: add a new function to silence a command, except if it fails rebase -i: rewrite setup_reflog_action() in C rebase -i: rewrite checkout_onto() in C sequencer: refactor append_todo_help() to write its message to a buffer sequencer: change the way skip_unnecessary_picks() returns its result t3404: todo list with commented-out commands only aborts rebase -i: rewrite complete_action() in C rebase -i: remove unused modes and functions rebase -i: implement the logic to initialize $revisions in C rebase -i: rewrite the rest of init_revisions_and_shortrevisions() in C rebase -i: rewrite write_basic_state() in C rebase -i: rewrite init_basic_state() in C rebase -i: implement the main part of interactive rebase as a builtin rebase--interactive2: rewrite the submodes of interactive rebase in C rebase -i: remove git-rebase--interactive.sh rebase -i: move rebase--helper modes to rebase--interactive p3400: replace calls to `git checkout -b' by `git checkout -B' Andreas Gruenbacher (1): rev-parse: clear --exclude list after 'git rev-parse --all' Anton Serbulov (1): mingw: fix getcwd when the parent directory cannot be queried Antonio Ospite (10): submodule: add a print_config_from_gitmodules() helper submodule: factor out a config_set_in_gitmodules_file_gently function t7411: merge tests 5 and 6 t7411: be nicer to future tests and really clean things up submodule--helper: add a new 'config' subcommand submodule: use the 'submodule--helper config' command t7506: clean up .gitmodules properly before setting up new scenario submodule: add a helper to check if it is safe to write to .gitmodules submodule: support reading .gitmodules when it's not in the working tree t/helper: add test-submodule-nested-repo-config Ben Peart (18): checkout: optimize "git checkout -b <new_branch>" t/README: correct spelling of "uncommon" preload-index: use git_env_bool() not getenv() for customization fsmonitor: update GIT_TEST_FSMONITOR support read-cache: update TEST_GIT_INDEX_VERSION support preload-index: update GIT_FORCE_PRELOAD_TEST support read-cache: clean up casting and byte decoding eoie: add End of Index Entry (EOIE) extension config: add new index.threads config setting read-cache: load cache extensions on a worker thread ieot: add Index Entry Offset Table (IEOT) extension read-cache: load cache entries on worker threads reset: don't compute unstaged changes after reset when --quiet reset: add new reset.quiet config setting reset: warn when refresh_index() takes more than 2 seconds speed up refresh_index() by utilizing preload_index() add: speed up cmd_add() by utilizing read_cache_preload() refresh_index: remove unnecessary calls to preload_index() Brendan Forster (1): http: add support for disabling SSL revocation checks in cURL Carlo Marcelo Arenas Belón (8): unpack-trees: avoid dead store for struct progress multi-pack-index: avoid dead store for struct progress read-cache: use of memory after it is freed commit-slabs: move MAYBE_UNUSED out khash: silence -Wunused-function for delta-islands compat: make sure git_mmap is not expected to write sequencer: cleanup for gcc warning in non developer mode builtin/notes: remove unnecessary free Christian Couder (3): pack-objects: refactor code into compute_layer_order() pack-objects: move tree_depth into 'struct packing_data' pack-objects: move 'layer' into 'struct packing_data' Christian Hesse (2): subtree: add build targets 'man' and 'html' subtree: make install targets depend on build targets Denton Liu (3): mergetool: accept -g/--[no-]gui as arguments completion: support `git mergetool --[no-]gui` doc: document diff/merge.guitool config keys Derrick Stolee (86): multi-pack-index: add design document multi-pack-index: add format details multi-pack-index: add builtin multi-pack-index: add 'write' verb midx: write header information to lockfile multi-pack-index: load into memory t5319: expand test data packfile: generalize pack directory list multi-pack-index: read packfile list multi-pack-index: write pack names in chunk midx: read pack names into array midx: sort and deduplicate objects from packfiles midx: write object ids in a chunk midx: write object id fanout chunk midx: write object offsets config: create core.multiPackIndex setting midx: read objects from multi-pack-index midx: use midx in abbreviation calculations midx: use existing midx when writing new one midx: use midx in approximate_object_count midx: prevent duplicate packfile loads packfile: skip loading index if in multi-pack-index midx: clear midx on repack commit-reach: move walk methods from commit.c commit.h: remove method declarations commit-reach: move ref_newer from remote.c commit-reach: move commit_contains from ref-filter upload-pack: make reachable() more generic upload-pack: refactor ok_to_give_up() upload-pack: generalize commit date cutoff commit-reach: move can_all_from_reach_with_flags test-reach: create new test tool for ref_newer test-reach: test in_merge_bases test-reach: test is_descendant_of test-reach: test get_merge_bases_many test-reach: test reduce_heads test-reach: test can_all_from_reach_with_flags test-reach: test commit_contains commit-reach: replace ref_newer logic commit-reach: make can_all_from_reach... linear commit-reach: use can_all_from_reach multi-pack-index: provide more helpful usage info multi-pack-index: store local property midx: mark bad packed objects midx: stop reporting garbage midx: fix bug that skips midx with alternates packfile: add all_packs list treewide: use get_all_packs midx: test a few commands that use get_all_packs pack-objects: consider packs in multi-pack-index commit-graph: define GIT_TEST_COMMIT_GRAPH t3206-range-diff.sh: cover single-patch case t5318: use test_oid for HASH_LEN multi-pack-index: add 'verify' verb multi-pack-index: verify bad header multi-pack-index: verify corrupt chunk lookup table multi-pack-index: verify packname order multi-pack-index: verify missing pack multi-pack-index: verify oid fanout order multi-pack-index: verify oid lookup order multi-pack-index: fix 32-bit vs 64-bit size check multi-pack-index: verify object offsets multi-pack-index: report progress during 'verify' fsck: verify multi-pack-index commit-reach: properly peel tags commit-reach: fix memory and flag leaks commit-reach: cleanups in can_all_from_reach... commit-graph: clean up leaked memory during write commit-graph: reduce initial oid allocation midx: fix broken free() in close_midx() contrib: add coverage-diff script ci: add optional test variables commit-reach: fix first-parent heuristic midx: close multi-pack-index on repack multi-pack-index: define GIT_TEST_MULTI_PACK_INDEX packfile: close multi-pack-index in close_all_packs prio-queue: add 'peek' operation test-reach: add run_three_modes method test-reach: add rev-list tests revision.c: begin refactoring --topo-order logic commit/revisions: bookkeeping before refactoring revision.c: generation-based topo-order algorithm t6012: make rev-list tests more interesting commit-reach: implement get_reachable_subset test-reach: test get_reachable_subset remote: make add_missing_tags() linear Elijah Newren (7): merge-recursive: set paths correctly when three-way merging content merge-recursive: avoid wrapper function when unnecessary and wasteful merge-recursive: remove final remaining caller of merge_file_one() merge-recursive: rename merge_file_1() and merge_content() merge-recursive: improve auto-merging messages with path collisions merge-recursive: avoid showing conflicts with merge branch before HEAD fsck: move fsck_head_link() to get_default_heads() to avoid some globals Eric Sunshine (26): format-patch: allow additional generated content in make_cover_letter() format-patch: add --interdiff option to embed diff in cover letter format-patch: teach --interdiff to respect -v/--reroll-count interdiff: teach show_interdiff() to indent interdiff log-tree: show_log: make commentary block delimiting reusable format-patch: allow --interdiff to apply to a lone-patch range-diff: respect diff_option.file rather than assuming 'stdout' range-diff: publish default creation factor range-diff: relieve callers of low-level configuration burden format-patch: add --range-diff option to embed diff in cover letter format-patch: extend --range-diff to accept revision range format-patch: teach --range-diff to respect -v/--reroll-count format-patch: add --creation-factor tweak for --range-diff format-patch: allow --range-diff to apply to a lone-patch worktree: don't die() in library function find_worktree() worktree: move delete_git_dir() earlier in file for upcoming new callers worktree: generalize delete_git_dir() to reduce code duplication worktree: prepare for more checks of whether path can become worktree worktree: disallow adding same path multiple times worktree: teach 'add' to respect --force for registered but missing path worktree: teach 'move' to override lock when --force given twice worktree: teach 'remove' to override lock when --force given twice worktree: delete .git/worktrees if empty after 'remove' doc-diff: fix non-portable 'man' invocation doc-diff: add --clean mode to remove temporary working gunk doc/Makefile: drop doc-diff worktree and temporary files on "make clean" James Knight (1): build: link with curl-defined linker flags Jann Horn (2): patch-delta: fix oob read patch-delta: consistently report corruption Jeff King (73): branch: make "-l" a synonym for "--list" Add delta-islands.{c,h} pack-objects: add delta-islands support repack: add delta-islands support t5320: tests for delta islands t/perf: factor boilerplate out of test_perf t/perf: factor out percent calculations t/perf: add infrastructure for measuring sizes t/perf: add perf tests for fetches from a bitmapped server pack-bitmap: save "have" bitmap from walk pack-objects: reuse on-disk deltas for thin "have" objects SubmittingPatches: mention doc-diff rev-list: make empty --stdin not an error coccinelle: use <...> for function exclusion introduce hasheq() and oideq() convert "oidcmp() == 0" to oideq() convert "hashcmp() == 0" to hasheq() convert "oidcmp() != 0" to "!oideq()" convert "hashcmp() != 0" to "!hasheq()" convert hashmap comparison functions to oideq() read-cache: use oideq() in ce_compare functions show_dirstat: simplify same-content check doc-diff: always use oids inside worktree test-delta: read input into a heap buffer t5303: test some corrupt deltas patch-delta: handle truncated copy parameters t5303: use printf to generate delta bases doc/git-branch: remove obsolete "-l" references bitmap_has_sha1_in_uninteresting(): drop BUG check t5310: test delta reuse with bitmaps traverse_bitmap_commit_list(): don't free result pack-bitmap: drop "loaded" flag doc-diff: force worktree add pack-objects: handle island check for "external" delta base more oideq/hasheq conversions transport: drop refnames from for_each_alternate_ref test-tool: show tool list on error config.mak.dev: enable -Wunused-function t5410: use longer path for sample script ls-remote: do not send ref prefixes for patterns ls-remote: pass heads/tags prefixes to transport read_istream_pack_non_delta(): document input handling xdiff: provide a separate emit callback for hunks xdiff-interface: provide a separate consume callback for hunks rev-list: handle flags for --indexed-objects approxidate: handle pending number for "specials" pathspec: handle non-terminated strings with :(attr) diff: avoid generating unused hunk header lines diff: discard hunk headers for patch-ids earlier diff: use hunk callback for word-diff combine-diff: use an xdiff hunk callback diff: convert --check to use a hunk callback range-diff: use a hunk callback xdiff-interface: drop parse_hunk_header() apply: mark include/exclude options as NONEG am: handle --no-patch-format option ls-files: mark exclude options as NONEG pack-objects: mark index-version option as NONEG cat-file: mark batch options with NONEG status: mark --find-renames option with NONEG format-patch: mark "--no-numbered" option with NONEG show-branch: mark --reflog option as NONEG tag: mark "--message" option with NONEG cat-file: report an error on multiple --batch options apply: return -1 from option callback instead of calling exit(1) parse-options: drop OPT_DATE() assert NOARG/NONEG behavior of parse-options callbacks midx: double-check large object write loop merge: extract verify_merge_signature() helper merge: handle --verify-signatures for unborn branch pull: handle --verify-signatures for unborn branch approxidate: fix NULL dereference in date_time() bundle: dup() output descriptor closer to point-of-use Johannes Schindelin (47): compat/poll: prepare for targeting Windows Vista mingw: set _WIN32_WINNT explicitly for Git for Windows mingw: bump the minimum Windows version to Vista builtin rebase: prepare for builtin rebase -i rebase -i: clarify what happens on a failed `exec` rebase -i: introduce the 'break' command getpwuid(mingw): initialize the structure only once getpwuid(mingw): provide a better default for the user name mingw: use domain information for default email http: add support for selecting SSL backends at runtime rebase (autostash): avoid duplicate call to state_dir_path() rebase (autostash): store the full OID in <state-dir>/autostash rebase (autostash): use an explicit OID to apply the stash mingw: factor out code to set stat() data rebase --autostash: demonstrate a problem with dirty submodules rebase --autostash: fix issue with dirty submodules mingw: load system libraries the recommended way mingw: ensure `getcwd()` reports the correct case http: when using Secure Channel, ignore sslCAInfo by default t7800: fix quoting mingw: reencode environment variables on the fly (UTF-16 <-> UTF-8) config: rename `dummy` parameter to `cb` in git_default_config() config: allow for platform-specific core.* config settings config: move Windows-specific config settings into compat/mingw.c mingw: unset PERL5LIB by default mingw: fix isatty() after dup2() t3404: decouple some test cases from outcomes of previous test cases t3418: decouple test cases from a previous `rebase -p` test case tests: optionally skip `git rebase -p` tests Windows: force-recompile git.res for differing architectures built-in rebase: demonstrate regression with --autostash built-in rebase --autostash: leave the current branch alone if possible Update .mailmap rebase -r: demonstrate bug with conflicting merges rebase -r: do not write MERGE_HEAD unless needed rebase -i: include MERGE_HEAD into files to clean up built-in rebase --skip/--abort: clean up stale .git/<name> files status: rebase and merge can be in progress at the same time apply --recount: allow "no-op hunks" rebase: consolidate clean-up code before leaving reset_head() rebase: prepare reset_head() for more flags built-in rebase: reinstate `checkout -q` behavior where appropriate mingw: use `CreateHardLink()` directly rebase: really just passthru the `git am` options rebase: validate -C<n> and --whitespace=<mode> parameters early config: report a bug if git_dir exists without commondir mingw: replace an obsolete link with the superseding one Johannes Sixt (1): rebase -i: recognize short commands without arguments Jonathan Nieder (4): gc: improve handling of errors reading gc.log gc: exit with status 128 on failure gc: do not return error for prior errors in daemonized mode commit-reach: correct accidental #include of C file Jonathan Tan (11): connected: document connectivity in partial clones fetch: in partial clone, check presence of targets transport: allow skipping of ref listing transport: do not list refs if possible transport: list refs before fetch if necessary fetch: do not list refs if fetching only hashes cache-tree: skip some blob checks in partial clone upload-pack: make have_obj not global upload-pack: make want_obj not global upload-pack: clear flags before each v2 request fetch-pack: be more precise in parsing v2 response Josh Steadmon (4): fuzz: add basic fuzz testing target. fuzz: add fuzz testing for packfile indices. archive: initialize archivers earlier Makefile: use FUZZ_CXXFLAGS for linking fuzzers Joshua Watt (1): send-email: explicitly disable authentication Junio C Hamano (19): Revert "doc/Makefile: drop doc-diff worktree and temporary files on "make clean"" Initial batch post 2.19 Second batch post 2.19 t0000: do not get self-test disrupted by environment warnings Declare that the next one will be named 2.20 Third batch for 2.20 rebase: fix typoes in error messages Fourth batch for 2.20 Revert "subtree: make install targets depend on build targets" Fifth batch for 2.20 http: give curl version warnings consistently Sixth batch for 2.20 Seventh batch for 2.20 fetch: replace string-list used as a look-up table with a hashmap rebase: apply cocci patch Eighth batch for 2.20 Ninth batch for 2.20 Tenth batch for 2.20 Git 2.20-rc0 Karsten Blees (2): mingw: replace MSVCRT's fstat() with a Win32-based implementation mingw: implement nanosecond-precision file times Loo Rong Jie (1): win32: replace pthread_cond_*() with much simpler code Lucas De Marchi (1): range-diff: allow to diff files regardless of submodule config Luke Diamand (3): git-p4: do not fail in verbose mode for missing 'fileSize' key git-p4: unshelve into refs/remotes/p4-unshelved, not refs/remotes/p4/unshelved git-p4: fully support unshelving changelists Martin Ågren (4): Doc: use `--type=bool` instead of `--bool` git-config.txt: fix 'see: above' note builtin/commit-graph.c: UNLEAK variables sequencer: break out of loop explicitly Matthew DeVore (17): list-objects: store common func args in struct list-objects: refactor to process_tree_contents list-objects: always parse trees gently t/README: reformat Do, Don't, Keep in mind lists Documentation: add shell guidelines tests: standardize pipe placement t/*: fix ordering of expected/observed arguments tests: don't swallow Git errors upstream of pipes t9109: don't swallow Git errors upstream of pipes tests: order arguments to git-rev-list properly rev-list: handle missing tree objects properly revision: mark non-user-given objects instead list-objects-filter: use BUG rather than die list-objects-filter-options: do not over-strbuf_init list-objects-filter: implement filter tree:0 filter-trees: code clean-up of tests list-objects: support for skipping tree traversal Max Kirillov (1): http-backend test: make empty CONTENT_LENGTH test more realistic Michał Górny (6): gpg-interface.c: detect and reject multiple signatures on commits gpg-interface.c: use flags to determine key/signer info presence gpg-interface.c: support getting key fingerprint via %GF format gpg-interface.c: obtain primary key fingerprint as well t/t7510-signed-commit.sh: Add %GP to custom format checks t/t7510-signed-commit.sh: add signing subkey to Eris Discordia key Nguyễn Thái Ngọc Duy (164): clone: report duplicate entries on case-insensitive filesystems trace.h: support nested performance tracing unpack-trees: add performance tracing unpack-trees: optimize walking same trees with cache-tree unpack-trees: reduce malloc in cache-tree walk unpack-trees: reuse (still valid) cache-tree from src_index unpack-trees: add missing cache invalidation cache-tree: verify valid cache-tree in the test suite Document update for nd/unpack-trees-with-cache-tree bisect.c: make show_list() build again t/helper: keep test-tool command list sorted t/helper: merge test-dump-untracked-cache into test-tool t/helper: merge test-pkt-line into test-tool t/helper: merge test-parse-options into test-tool t/helper: merge test-dump-fsmonitor into test-tool Makefile: add a hint about TEST_BUILTINS_OBJS config.txt: follow camelCase naming config.txt: move fetch part out to a separate file config.txt: move format part out to a separate file config.txt: move gitcvs part out to a separate file config.txt: move gui part out to a separate file config.txt: move pull part out to a separate file config.txt: move push part out to a separate file config.txt: move receive part out to a separate file config.txt: move sendemail part out to a separate file config.txt: move sequence.editor out of "core" part config.txt: move submodule part out to a separate file archive.c: remove implicit dependency the_repository status: show progress bar if refreshing the index takes too long completion: support "git fetch --multiple" read-cache.c: remove 'const' from index_has_changes() diff.c: reduce implicit dependency on the_index combine-diff.c: remove implicit dependency on the_index blame.c: rename "repo" argument to "r" diff.c: remove the_index dependency in textconv() functions grep.c: remove implicit dependency on the_index diff.c: remove implicit dependency on the_index read-cache.c: remove implicit dependency on the_index diff-lib.c: remove implicit dependency on the_index ll-merge.c: remove implicit dependency on the_index merge-blobs.c: remove implicit dependency on the_index merge.c: remove implicit dependency on the_index patch-ids.c: remove implicit dependency on the_index sha1-file.c: remove implicit dependency on the_index rerere.c: remove implicit dependency on the_index userdiff.c: remove implicit dependency on the_index line-range.c: remove implicit dependency on the_index submodule.c: remove implicit dependency on the_index tree-diff.c: remove implicit dependency on the_index ws.c: remove implicit dependency on the_index revision.c: remove implicit dependency on the_index revision.c: reduce implicit dependency the_repository read-cache.c: optimize reading index format v4 help -a: improve and make --verbose default refs.c: indent with tabs, not spaces Add a place for (not) sharing stuff between worktrees submodule.c: remove some of the_repository references completion: fix __gitcomp_builtin no longer consider extra options t1300: extract and use test_cmp_config() worktree: add per-worktree config files refs: new ref types to make per-worktree refs visible to all worktrees revision.c: correct a parameter name revision.c: better error reporting on ref from different worktrees fsck: check HEAD and reflog from other worktrees reflog expire: cover reflog from all worktrees Update makefile in preparation for Documentation/config/*.txt config.txt: move advice.* to a separate file config.txt: move core.* to a separate file config.txt: move add.* to a separate file config.txt: move alias.* to a separate file config.txt: move am.* to a separate file config.txt: move apply.* to a separate file config.txt: move blame.* to a separate file config.txt: move branch.* to a separate file config.txt: move browser.* to a separate file config.txt: move checkout.* to a separate file config.txt: move clean.* to a separate file config.txt: move color.* to a separate file config.txt: move column.* to a separate file config.txt: move commit.* to a separate file config.txt: move credential.* to a separate file config.txt: move completion.* to a separate file config.txt: move diff-config.txt to config/ config.txt: move difftool.* to a separate file config.txt: move fastimport.* to a separate file config.txt: move fetch-config.txt to config/ config.txt: move filter.* to a separate file config.txt: move format-config.txt to config/ config.txt: move fmt-merge-msg-config.txt to config/ config.txt: move fsck.* to a separate file config.txt: move gc.* to a separate file config.txt: move gitcvs-config.txt to config/ config.txt: move gitweb.* to a separate file config.txt: move grep.* to a separate file config.txt: move gpg.* to a separate file config.txt: move gui-config.txt to config/ config.txt: move guitool.* to a separate file config.txt: move help.* to a separate file config.txt: move ssh.* to a separate file config.txt: move http.* to a separate file config.txt: move i18n.* to a separate file git-imap-send.txt: move imap.* to a separate file config.txt: move index.* to a separate file config.txt: move init.* to a separate file config.txt: move instaweb.* to a separate file config.txt: move interactive.* to a separate file config.txt: move log.* to a separate file config.txt: move mailinfo.* to a separate file config.txt: move mailmap.* to a separate file config.txt: move man.* to a separate file config.txt: move merge-config.txt to config/ config.txt: move mergetool.* to a separate file config.txt: move notes.* to a separate file config.txt: move pack.* to a separate file config.txt: move pager.* to a separate file config.txt: move pretty.* to a separate file config.txt: move protocol.* to a separate file config.txt: move pull-config.txt to config/ config.txt: move push-config.txt to config/ config.txt: move rebase-config.txt to config/ config.txt: move receive-config.txt to config/ config.txt: move remote.* to a separate file config.txt: move remotes.* to a separate file config.txt: move repack.* to a separate file config.txt: move rerere.* to a separate file config.txt: move reset.* to a separate file config.txt: move sendemail-config.txt to config/ config.txt: move sequencer.* to a separate file config.txt: move showBranch.* to a separate file config.txt: move splitIndex.* to a separate file config.txt: move status.* to a separate file config.txt: move stash.* to a separate file config.txt: move submodule.* to a separate file config.txt: move tag.* to a separate file config.txt: move transfer.* to a separate file config.txt: move uploadarchive.* to a separate file config.txt: move uploadpack.* to a separate file config.txt: move url.* to a separate file config.txt: move user.* to a separate file config.txt: move versionsort.* to a separate file config.txt: move web.* to a separate file config.txt: move worktree.* to a separate file config.txt: remove config/dummy.txt thread-utils: macros to unconditionally compile pthreads API wildmatch: change behavior of "foo**bar" in WM_PATHNAME mode git-worktree.txt: correct linkgit command name sequencer.c: remove a stray semicolon tree-walk.c: fix overoptimistic inclusion in :(exclude) matching run-command.h: include thread-utils.h instead of pthread.h send-pack.c: move async's #ifdef NO_PTHREADS back to run-command.c index-pack: remove #ifdef NO_PTHREADS name-hash.c: remove #ifdef NO_PTHREADS attr.c: remove #ifdef NO_PTHREADS grep: remove #ifdef NO_PTHREADS grep: clean up num_threads handling preload-index.c: remove #ifdef NO_PTHREADS pack-objects: remove #ifdef NO_PTHREADS read-cache.c: remove #ifdef NO_PTHREADS read-cache.c: reduce branching based on HAVE_THREADS read-cache.c: initialize copy_len to shut up gcc 8 Clean up pthread_create() error handling completion: use __gitcomp_builtin for format-patch build: fix broken command-list.h generation with core.autocrlf doc: move extensions.worktreeConfig to the right place Nickolai Belakovski (2): worktree: update documentation for lock_reason and lock_reason_valid worktree: rename is_worktree_locked to worktree_lock_reason Olga Telezhnaya (3): ref-filter: free memory from used_atom ls-remote: release memory instead of UNLEAK ref-filter: free item->value and item->value->s Phillip Wood (11): diff: fix --color-moved-ws=allow-indentation-change diff --color-moved-ws: fix double free crash diff --color-moved-ws: fix out of bounds string access diff --color-moved-ws: fix a memory leak diff --color-moved-ws: fix another memory leak diff --color-moved: fix a memory leak am: don't die in read_author_script() am: improve author-script error reporting am: rename read_author_script() add read_author_script() to libgit sequencer: use read_author_script() Pratik Karki (46): rebase: start implementing it as a builtin rebase: refactor common shell functions into their own file builtin/rebase: support running "git rebase <upstream>" builtin rebase: support --onto builtin rebase: support `git rebase --onto A...B` builtin rebase: handle the pre-rebase hook and --no-verify builtin rebase: support --quiet builtin rebase: support the `verbose` and `diffstat` options builtin rebase: require a clean worktree builtin rebase: try to fast forward when possible builtin rebase: support --force-rebase builtin rebase: start a new rebase only if none is in progress builtin rebase: only store fully-qualified refs in `options.head_name` builtin rebase: support `git rebase <upstream> <switch-to>` builtin rebase: support --continue builtin rebase: support --skip builtin rebase: support --abort builtin rebase: support --quit builtin rebase: support --edit-todo and --show-current-patch builtin rebase: actions require a rebase in progress builtin rebase: stop if `git am` is in progress builtin rebase: allow selecting the rebase "backend" builtin rebase: support --signoff builtin rebase: support --rerere-autoupdate builtin rebase: support --committer-date-is-author-date builtin rebase: support `ignore-whitespace` option builtin rebase: support `ignore-date` option builtin rebase: support `keep-empty` option builtin rebase: support `--autosquash` builtin rebase: support `--gpg-sign` option builtin rebase: support `-C` and `--whitespace=<type>` builtin rebase: support `--autostash` option builtin rebase: support `--exec` builtin rebase: support `--allow-empty-message` option builtin rebase: support --rebase-merges[=[no-]rebase-cousins] merge-base --fork-point: extract libified function builtin rebase: support `fork-point` option builtin rebase: add support for custom merge strategies builtin rebase: support --root builtin rebase: optionally auto-detect the upstream builtin rebase: optionally pass custom reflogs to reset_head() builtin rebase: fast-forward to onto if it is a proper descendant builtin rebase: show progress when connected to a terminal builtin rebase: use no-op editor when interactive is "implied" builtin rebase: error out on incompatible option/mode combinations rebase: default to using the builtin rebase Rafael Ascensão (2): refs: show --exclude failure with --branches/tags/remotes=glob refs: fix some exclude patterns being ignored Ralf Thielow (1): git-rebase.sh: fix typos in error messages Ramsay Jones (12): Makefile: add a hdr-check target json-writer.h: add missing include (hdr-check) ewah/ewok_rlw.h: add missing include (hdr-check) refs/ref-cache.h: add missing declarations (hdr-check) refs/packed-backend.h: add missing declaration (hdr-check) refs/refs-internal.h: add missing declarations (hdr-check) midx.h: add missing forward declarations (hdr-check) delta-islands.h: add missing forward declarations (hdr-check) headers: normalize the spelling of some header guards fetch-object.h: add missing declaration (hdr-check) ewok_rlw.h: add missing 'inline' to function definition commit-reach.h: add missing declarations (hdr-check) Rasmus Villemoes (6): help: redirect to aliased commands for "git cmd --help" git.c: handle_alias: prepend alias info when first argument is -h git-help.txt: document "git help cmd" vs "git cmd --help" for aliases Documentation/git-send-email.txt: style fixes send-email: only consider lines containing @ or <> for automatic Cc'ing send-email: also pick up cc addresses from -by trailers René Scharfe (11): mailinfo: support format=flowed fsck: add a performance test for skipList fsck: use strbuf_getline() to read skiplist file fsck: use oidset instead of oid_array for skipList grep: add -r/--[no-]recursive fetch-pack: factor out is_unmatched_ref() fetch-pack: load tip_oids eagerly iff needed khash: factor out kh_release_* oidset: use khash oidset: uninline oidset_init() commit-reach: fix cast in compare_commits_by_gen() Roger Strain (1): subtree: performance improvement for finding unexpected parent commits SZEDER Gábor (4): t1404: increase core.packedRefsTimeout to avoid occasional test failure object_id.cocci: match only expressions of type 'struct object_id' travis-ci: install packages in 'ci/install-dependencies.sh' ref-filter: don't look for objects when outside of a repository Stefan Beller (21): git-submodule.sh: align error reporting for update mode to use path git-submodule.sh: rename unused variables builtin/submodule--helper: factor out submodule updating builtin/submodule--helper: store update_clone information in a struct builtin/submodule--helper: factor out method to update a single submodule submodule--helper: replace connect-gitdir-workingtree by ensure-core-worktree submodule--helper: introduce new update-module-mode helper test_decode_color: understand FAINT and ITALIC t3206: add color test for range-diff --dual-color diff.c: simplify caller of emit_line_0 diff.c: reorder arguments for emit_line_ws_markup diff.c: add set_sign to emit_line_0 diff: use emit_line_0 once per line diff.c: omit check for line prefix in emit_line_0 diff.c: rewrite emit_line_0 more understandably diff.c: add --output-indicator-{new, old, context} range-diff: make use of different output indicators range-diff: indent special lines as context diff.c: pass sign_index to emit_line_ws_markup submodule helper: convert relative URL to absolute URL if needed builtin/submodule--helper: remove debugging leftover tracing Stephen P. Smith (10): wt-status.c: move has_unmerged earlier in the file wt-status: rename commitable to committable t7501: add test of "commit --dry-run --short" wt-status.c: set the committable flag in the collect phase roll wt_status_state into wt_status and populate in the collect phase t2000: rename and combine checkout clash tests t7509: cleanup description and filename t7502: rename commit test script to comply with naming convention t7500: rename commit tests script to comply with naming convention t7501: rename commit test to comply with naming convention Steve Hoelzer (1): poll: use GetTickCount64() to avoid wrap-around issues Steven Fernandez (1): git-completion.bash: add completion for stash list Strain, Roger L (4): subtree: refactor split of a commit into standalone method subtree: make --ignore-joins pay attention to adds subtree: use commits before rejoins for splits subtree: improve decision on merges kept in split Taylor Blau (4): transport.c: extract 'fill_alternate_refs_command' transport.c: introduce core.alternateRefsCommand transport.c: introduce core.alternateRefsPrefixes Documentation/config.txt: fix typo in core.alternateRefsCommand Thomas Gummerer (13): rerere: unify error messages when read_cache fails rerere: lowercase error messages rerere: wrap paths in output in sq rerere: mark strings for translation rerere: add documentation for conflict normalization rerere: fix crash with files rerere can't handle rerere: only return whether a path has conflicts or not rerere: factor out handle_conflict function rerere: return strbuf from handle path rerere: teach rerere to handle nested conflicts rerere: recalculate conflict ID when unresolved conflict is committed rerere: mention caveat about unmatched conflict markers rerere: add note about files with existing conflict markers Tim Schumacher (3): alias: add support for aliases of an alias alias: show the call history when an alias is looping t0014: introduce an alias testing suite brian m. carlson (26): t: add test functions to translate hash-related values t0000: use hash translation table t0000: update tests for SHA-256 t0002: abstract away SHA-1 specific constants t0064: make hash size independent t1006: make hash size independent t1400: switch hard-coded object ID to variable t1405: make hash size independent t1406: make hash-size independent t1407: make hash size independent editorconfig: provide editor settings for Git developers editorconfig: indicate settings should be kept in sync pack-bitmap-write: use GIT_MAX_RAWSZ for allocation builtin/repack: replace hard-coded constants builtin/mktree: remove hard-coded constant builtin/fetch-pack: remove constants with parse_oid_hex pack-revindex: express constants in terms of the_hash_algo packfile: express constants in terms of the_hash_algo refs/packed-backend: express constants using the_hash_algo upload-pack: express constants in terms of the_hash_algo transport: use parse_oid_hex instead of a constant tag: express constant in terms of the_hash_algo apply: replace hard-coded constants apply: rename new_sha1_prefix and old_sha1_prefix submodule: make zero-oid comparison hash function agnostic rerere: convert to use the_hash_algo Ævar Arnfjörð Bjarmason (31): fetch: change "branch" to "reference" in --force -h output push tests: make use of unused $1 in test description push tests: use spaces in interpolated string fetch tests: add a test for clobbering tag behavior push doc: remove confusing mention of remote merger push doc: move mention of "tag <tag>" later in the prose push doc: correct lies about how push refspecs work fetch: document local ref updates with/without --force fetch: stop clobbering existing tags without --force fsck tests: setup of bogus commit object fsck tests: add a test for no skipList input fsck: document and test sorted skipList input fsck: document and test commented & empty line skipList input fsck: document that skipList input must be unabbreviated fsck: add a performance test fsck: support comments & empty lines in skipList commit-graph write: add progress output commit-graph verify: add progress output config doc: add missing list separator for checkout.optimizeNewBranch push doc: add spacing between two words fetch doc: correct grammar in --force docs gc: fix regression in 7b0f229222 impacting --quiet gc doc: mention the commit-graph in the intro pack-objects test: modernize style pack-objects tests: don't leave test .git corrupt at end index-pack tests: don't leave test repo dirty at end range-diff doc: add a section about output stability range-diff: fix regression in passing along diff options range-diff: make diff option behavior (e.g. --stat) consistent rebase doc: document rebase.useBuiltin tests: add a special setup where rebase.useBuiltin is off Version v2.19.6; changes since v2.19.5: --------------------------------------- Johannes Schindelin (4): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Git 2.19.6 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.19.5; changes since v2.19.4: --------------------------------------- Jeff King (6): t0300: make "quit" helper more realistic t0300: use more realistic inputs credential: parse URL without host as empty host, not unset credential: refuse to operate when missing host or protocol credential: die() when parsing invalid urls Git 2.17.5 Jonathan Nieder (4): fsck: convert gitmodules url to URL passed to curl credential: treat URL without scheme as invalid credential: treat URL with empty scheme as invalid fsck: reject URL with empty host in .gitmodules Version v2.19.4; changes since v2.19.3: --------------------------------------- Jeff King (4): credential: avoid writing values with newlines t/lib-credential: use test_i18ncmp to check stderr credential: detect unrepresentable values when parsing urls fsck: detect gitmodules URLs with embedded newlines Junio C Hamano (1): Git 2.17.4 Version v2.19.3; changes since v2.19.2: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (25): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Git 2.15.4 test-drop-caches: use `has_dos_drive_prefix()` Git 2.16.6 Git 2.17.3 Git 2.18.2 Git 2.19.3 Jonathan Nieder (2): submodule: reject submodule.update = !command in .gitmodules fsck: reject submodule.update = !command in .gitmodules Version v2.19.2; changes since v2.19.1: --------------------------------------- Alexander Pyhalov (1): t7005-editor: quote filename to fix whitespace-issue Andreas Heiduk (6): doc: clarify boundaries of 'git worktree list --porcelain' doc: fix ASCII art tab spacing doc: fix inappropriate monospace formatting doc: fix descripion for 'git tag --format' doc: fix indentation of listing blocks in gitweb.conf.txt doc: fix formatting in git-update-ref Ben Peart (1): git-mv: allow submodules and fsmonitor to work together Brandon Williams (1): config: document value 2 for protocol.version Daniels Umanovskis (3): doc: move git-rev-parse from porcelain to plumbing doc: move git-get-tar-commit-id to plumbing doc: move git-cherry to plumbing David Zych (1): doc: clarify gitcredentials path component matching Derrick Stolee (6): commit-graph: update design document test-repository: properly init repo commit-graph: not compatible with replace objects commit-graph: not compatible with grafts commit-graph: not compatible with uninitialized repo commit-graph: close_commit_graph before shallow walk Elijah Newren (7): Remove superfluous trailing semicolons t4200: demonstrate rerere segfault on specially crafted merge rerere: avoid buffer overrun update-ref: fix type of update_flags variable to match its usage update-ref: allow --no-deref with --stdin sequencer: fix --allow-empty-message behavior, make it smarter commit: fix erroneous BUG, 'multiple renames on the same target? how?' Frederick Eaton (3): git-archimport.1: specify what kind of Arch we're talking about git-column.1: clarify initial description, provide examples git-describe.1: clarify that "human readable" is also git-readable Jeff Hostetler (2): t0051: test GIT_TRACE to a windows named pipe mingw: fix mingw_open_append to work with named pipes Jeff King (16): trailer: use size_t for string offsets trailer: use size_t for iterating trailer list trailer: pass process_trailer_opts to trailer_info_get() interpret-trailers: tighten check for "---" patch boundary interpret-trailers: allow suppressing "---" divider pretty, ref-filter: format %(trailers) with no_divider option sequencer: ignore "---" divider when parsing trailers append_signoff: use size_t for string offsets reopen_tempfile(): truncate opened file config.mak.dev: add -Wformat-security receive-pack: update comment with check_everything_connected run-command: mark path lookup errors with ENOENT upload-pack: fix broken if/else chain in config callback t1450: check large blob in trailing-garbage test check_stream_sha1(): handle input underflow cat-file: handle streaming failures consistently Johannes Schindelin (8): rebase -i --autosquash: demonstrate a problem skipping the last squash rebase -i: be careful to wrap up fixup/squash chains pack-objects: fix typo 'detla' -> 'delta' pack-objects (mingw): demonstrate a segmentation fault with large deltas pack-objects (mingw): initialize `packing_data` mutex in the correct spot repack: point out a bug handling stale shallow info shallow: offer to prune only non-existing entries repack -ad: prune the list of shallow commits Johannes Sixt (2): diff: don't attempt to strip prefix from absolute Windows paths t3404-rebase-interactive: test abbreviated commands Jonathan Nieder (2): mailmap: consistently normalize brian m. carlson's name git doc: direct bug reporters to mailing list archive Jonathan Tan (4): fetch-object: unify fetch_object[s] functions fetch-object: set exact_oid when fetching fetch-pack: avoid object flags if no_dependents fetch-pack: exclude blobs when lazy-fetching trees Junio C Hamano (5): CodingGuidelines: document the API in *.h files receive: denyCurrentBranch=updateinstead should not blindly update cocci: simplify "if (++u > 1)" to "if (u++)" fsck: s/++i > 1/i++/ Git 2.19.2 Martin Ågren (5): git-commit-graph.txt: fix bullet lists git-commit-graph.txt: typeset more in monospace git-commit-graph.txt: refer to "*commit*-graph file" Doc: refer to the "commit-graph file" with dash t1400: drop debug `echo` to actually execute `test` Matthew DeVore (2): Documentation/git-log.txt: do not show --exclude-promisor-objects exclude-promisor-objects: declare when option is allowed Michael Witten (3): docs: typo: s/go/to/ docs: graph: remove unnecessary `graph_update()' call docs: typo: s/isimilar/similar/ Mihir Mehta (1): doc: fix a typo and clarify a sentence Nguyễn Thái Ngọc Duy (2): add: do not accept pathspec magic 'attr' config.txt: correct the note about uploadpack.packObjectsHook Noam Postavsky (1): log: fix coloring of certain octopus merge shapes René Scharfe (1): sequencer: use return value of oidset_insert() SZEDER Gábor (12): Documentation/git.txt: clarify that GIT_TRACE=/path appends t3701-add-interactive: tighten the check of trace output t1700-split-index: drop unnecessary 'grep' t0090: disable GIT_TEST_SPLIT_INDEX for the test checking split index t1700-split-index: document why FSMONITOR is disabled in this test script split-index: add tests to demonstrate the racy split index problem t1700-split-index: date back files to avoid racy situations split-index: count the number of deleted entries split-index: don't compare cached data of entries already marked for split index split-index: smudge and add racily clean cache entries to split index split-index: BUG() when cache entry refers to non-existing shared entry test-lib: introduce the '-V' short option for '--verbose-log' Sam McKelvie (1): rev-parse: --show-superproject-working-tree should work during a merge Saulius Gurklys (1): doc: fix small typo in git show-branch Sebastian Staudt (1): travis-ci: no longer use containers Shulhan (1): builtin/remote: quote remote name on error to display empty name Stefan Beller (4): refs.c: migrate internal ref iteration to pass thru repository argument refs.c: upgrade for_each_replace_ref to be a each_repo_ref_fn callback string-list: remove unused function print_string_list strbuf.h: format according to coding guidelines Tao Qingyun (3): refs: docstring typo builtin/branch.c: remove useless branch_get branch: trivial style fix Thomas Gummerer (4): .gitattributes: add conflict-marker-size for relevant files linear-assignment: fix potential out of bounds memory access t5551: move setup code inside test_expect blocks t5551: compare sorted cookies files Tim Schumacher (1): Documentation/Makefile: make manpage-base-url.xsl generation quieter Torsten Bögershausen (2): Make git_check_attr() a void function path.c: char is not (always) signed Uwe Kleine-König (1): howto/using-merge-subtree: mention --allow-unrelated-histories Version v2.19.1; changes since v2.19.0: --------------------------------------- Jeff King (5): submodule--helper: use "--" to signal end of clone options submodule-config: ban submodule urls that start with dash submodule-config: ban submodule paths that start with a dash fsck: detect submodule urls starting with dash fsck: detect submodule paths starting with dash Junio C Hamano (6): Git 2.14.5 Git 2.15.3 Git 2.16.5 Git 2.17.2 Git 2.18.1 Git 2.19.1 Version v2.19.0; changes since v2.19.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (3958t) Christopher Díaz Riveros (1): l10n: es.po v2.19.0 round 2 Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Jean-Noël Avila (2): l10n: fr.po v2.19.0 rnd 1 l10n: fr.po v2.19.0 rnd 2 Jiang Xin (4): l10n: zh_CN: review for git 2.18.0 l10n: git.pot: v2.19.0 round 1 (382 new, 30 removed) l10n: git.pot: v2.19.0 round 2 (3 new, 5 removed) l10n: zh_CN: for git v2.19.0 l10n round 1 to 2 Jonathan Nieder (1): Revert "Merge branch 'sb/submodule-core-worktree'" Junio C Hamano (1): Git 2.19 Max Kirillov (1): http-backend: allow empty CONTENT_LENGTH Peter Krefting (2): l10n: sv.po: Update Swedish translation(3608t0f0u) l10n: sv.po: Update Swedish translation (3958t0f0u) Ralf Thielow (1): l10n: de.po: translate 108 new messages Raphaël Hertzog (1): l10n: fr: fix a message seen in git bisect Trần Ngọc Quân (1): l10n: vi.po(3958t): updated Vietnamese translation v2.19.0 round 2 Version v2.19.0-rc2; changes since v2.19.0-rc1: ----------------------------------------------- Derrick Stolee (1): commit: don't use generation numbers if not needed Elijah Newren (3): t3401: add another directory rename testcase for rebase and am merge-recursive: add ability to turn off directory rename detection am: avoid directory rename detection when calling recursive merge machinery Eric Sunshine (2): chainlint: match "quoted" here-doc tags config.mak.uname: resolve FreeBSD iconv-related compilation warning Junio C Hamano (1): Git 2.19-rc2 Phillip Wood (2): sequencer: handle errors from read_author_ident() sequencer: fix quoting in write_author_script Ævar Arnfjörð Bjarmason (8): tests: fix and add lint for non-portable head -c N tests: fix and add lint for non-portable seq tests: fix comment syntax in chainlint.sed for AIX sed tests: use shorter labels in chainlint.sed for AIX sed tests: fix version-specific portability issue in Perl JSON tests: fix and add lint for non-portable grep --file tests: fix non-portable "${var:-"str"}" construct tests: fix non-portable iconv invocation Version v2.19.0-rc1; changes since v2.19.0-rc0: ----------------------------------------------- Derrick Stolee (2): commit: use timestamp_t for author_date_slab config: fix commit-graph related config docs Elia Pinto (1): worktree: add --quiet option Jean-Noël Avila (1): i18n: fix mistakes in translated strings Jeff King (2): test-tool.h: include git-compat-util.h hashcmp: assert constant hash size Junio C Hamano (3): config.txt: clarify core.checkStat Getting ready for -rc1 Git 2.19-rc1 Kyle Meyer (1): range-diff: update stale summary of --no-dual-color Nguyễn Thái Ngọc Duy (2): pack-objects: fix performance issues on packing large deltas generate-cmdlist.sh: collect config from all config.txt files René Scharfe (3): checkout-index: improve argument help for --stage remote: improve argument help for add --mirror parseopt: group literal string alternatives in argument help SZEDER Gábor (11): tests: use 'test_must_be_empty' instead of '! test -s' tests: use 'test_must_be_empty' instead of 'test ! -s' tests: use 'test_must_be_empty' instead of 'test_cmp /dev/null <out>' tests: use 'test_must_be_empty' instead of 'test_cmp <empty> <out>' t7501-commit: drop silly command substitution t0020-crlf: check the right file t4051-diff-function-context: read the right file t6018-rev-list-glob: fix 'empty stdin' test t3903-stash: don't try to grep non-existing file t3420-rebase-autostash: don't try to grep non-existing files t/lib-rebase.sh: support explicit 'pick' commands in 'fake_editor.sh' Samuel Maftoul (1): branch: support configuring --sort via .gitconfig Ævar Arnfjörð Bjarmason (1): refactor various if (x) FREE_AND_NULL(x) to just FREE_AND_NULL(x) Version v2.19.0-rc0; changes since v2.18.5: ------------------------------------------- Aaron Schrab (1): sequencer: use configured comment character Alban Gruin (4): rebase: introduce a dedicated backend for --preserve-merges rebase: strip unused code in git-rebase--preserve-merges.sh rebase: use the new git-rebase--preserve-merges.sh rebase: remove -p code from git-rebase--interactive.sh Alejandro R. Sedeño (1): Makefile: tweak sed invocation Aleksandr Makarov (1): for-each-ref: consistently pass WM_IGNORECASE flag Andrei Rybak (2): Documentation: fix --color option formatting t4150: fix broken test for am --scissors Anthony Sottile (1): config.c: fix regression for core.safecrlf false Antonio Ospite (6): config: move config_from_gitmodules to submodule-config.c submodule-config: add helper function to get 'fetch' config from .gitmodules submodule-config: add helper to get 'update-clone' config from .gitmodules submodule-config: make 'config_from_gitmodules' private submodule-config: pass repository as argument to config_from_gitmodules submodule-config: reuse config_from_gitmodules in repo_read_gitmodules Beat Bolli (10): builtin/config: work around an unsized array forward declaration unicode: update the width tables to Unicode 11 connect.h: avoid forward declaration of an enum refs/refs-internal.h: avoid forward declaration of an enum convert.c: replace "\e" escapes with "\033". sequencer.c: avoid empty statements at top level string-list.c: avoid conversion from void * to function pointer utf8.c: avoid char overflow Makefile: add a DEVOPTS flag to get pedantic compilation packfile: ensure that enum object_type is defined Ben Peart (3): convert log_ref_write_fd() to use strbuf handle lower case drive letters on Windows t3507: add a testcase showing failure with sparse checkout Brandon Williams (15): commit: convert commit_graft_pos() to handle arbitrary repositories commit: convert register_commit_graft to handle arbitrary repositories commit: convert read_graft_file to handle arbitrary repositories test-pkt-line: add unpack-sideband subcommand docs: link to gitsubmodules upload-pack: implement ref-in-want upload-pack: test negotiation with changing repository fetch: refactor the population of peer ref OIDs fetch: refactor fetch_refs into two functions fetch: refactor to make function args narrower fetch-pack: put shallow info in output parameter fetch-pack: implement ref-in-want clone: send ref-prefixes when using protocol v2 fetch-pack: mark die strings for translation pack-protocol: mention and point to docs for protocol v2 Chen Bin (1): git-p4: add the `p4-pre-submit` hook Christian Couder (1): t9104: kosherly remove remote refs Derrick Stolee (43): ref-filter: fix outdated comment on in_commit_list commit: add generation number to struct commit commit-graph: compute generation numbers commit: use generations in paint_down_to_common() commit-graph: always load commit-graph information ref-filter: use generation number for --contains commit: use generation numbers for in_merge_bases() commit: add short-circuit to paint_down_to_common() commit: use generation number in remove_redundant() merge: check config before loading commits commit-graph.txt: update design document commit-graph: fix UX issue when .lock file exists ewah/bitmap.c: delete unused 'bitmap_clear()' ewah/bitmap.c: delete unused 'bitmap_each_bit()' ewah_bitmap: delete unused 'ewah_and()' ewah_bitmap: delete unused 'ewah_and_not()' ewah_bitmap: delete unused 'ewah_not()' ewah_bitmap: delete unused 'ewah_or()' ewah_io: delete unused 'ewah_serialize()' t5318-commit-graph.sh: use core.commitGraph commit-graph: UNLEAK before die() commit-graph: fix GRAPH_MIN_SIZE commit-graph: parse commit from chosen graph commit: force commit to parse from object database commit-graph: load a root tree from specific graph commit-graph: add 'verify' subcommand commit-graph: verify catches corrupt signature commit-graph: verify required chunks are present commit-graph: verify corrupt OID fanout and lookup commit-graph: verify objects exist commit-graph: verify root tree OIDs commit-graph: verify parent list commit-graph: verify generation number commit-graph: verify commit date commit-graph: test for corrupted octopus edge commit-graph: verify contents match checksum fsck: verify commit-graph commit-graph: use string-list API for input commit-graph: add '--reachable' option gc: automatically write commit-graph files commit-graph: update design document commit-graph: fix documentation inconsistencies coccinelle: update commit.cocci Elijah Newren (63): t6036, t6042: use test_create_repo to keep tests independent t6036, t6042: use test_line_count instead of wc -l t6036, t6042: prefer test_path_is_file, test_path_is_missing t6036, t6042: prefer test_cmp to sequences of test t6036: prefer test_when_finished to manual cleanup in following test merge-recursive: fix miscellaneous grammar error in comment merge-recursive: fix numerous argument alignment issues merge-recursive: align labels with their respective code blocks merge-recursive: clarify the rename_dir/RENAME_DIR meaning merge-recursive: rename conflict_rename_*() family of functions merge-recursive: add pointer about unduly complex looking code git-rebase.txt: document incompatible options git-rebase.sh: update help messages a bit t3422: new testcases for checking when incompatible options passed git-rebase: error out when incompatible options passed git-rebase.txt: address confusion between --no-ff vs --force-rebase directory-rename-detection.txt: technical docs on abilities and limitations git-rebase.txt: document behavioral differences between modes t3401: add directory rename testcases for rebase and am git-rebase: make --allow-empty-message the default t3418: add testcase showing problems with rebase -i and strategy options Fix use of strategy options with interactive rebases git-rebase--merge: modernize "git-$cmd" to "git $cmd" apply: fix grammar error in comment t5407: fix test to cover intended arguments read-cache.c: move index_has_changes() from merge.c index_has_changes(): avoid assuming operating on the_index t6044: verify that merges expected to abort actually abort t6036: add a failed conflict detection case with symlink modify/modify t6036: add a failed conflict detection case with symlink add/add t6036: add a failed conflict detection case with submodule modify/modify t6036: add a failed conflict detection case with submodule add/add t6036: add a failed conflict detection case with conflicting types t6042: add testcase covering rename/add/delete conflict type t6042: add testcase covering rename/rename(2to1)/delete/delete conflict t6042: add testcase covering long chains of rename conflicts t6036: add lots of detail for directory/file conflicts in recursive case t6036: add a failed conflict detection case: regular files, different modes t6044: add a testcase for index matching head, when head doesn't match HEAD merge-recursive: make sure when we say we abort that we actually abort merge-recursive: fix assumption that head tree being merged is HEAD t6044: add more testcases with staged changes before a merge is invoked merge-recursive: enforce rule that index matches head before merging merge: fix misleading pre-merge check documentation t7405: add a file/submodule conflict t7405: add a directory/submodule conflict t7405: verify 'merge --abort' works after submodule/path conflicts merge-recursive: preserve skip_worktree bit when necessary t1015: demonstrate directory/file conflict recovery failures read-cache: fix directory/file conflict handling in read_index_unmerged() t3031: update test description to mention desired behavior t7406: fix call that was failing for the wrong reason t7406: simplify by using diff --name-only instead of diff --raw t7406: avoid having git commands upstream of a pipe t7406: prefer test_* helper functions to test -[feds] t7406: avoid using test_must_fail for commands other than git git-update-index.txt: reword possibly confusing example Add missing includes and forward declarations alloc: make allocate_alloc_state and clear_alloc_state more consistent Move definition of enum branch_track from cache.h to branch.h urlmatch.h: fix include guard compat/precompose_utf8.h: use more common include guard style Remove forward declaration of an enum Eric Sunshine (53): t: use test_might_fail() instead of manipulating exit code manually t: use test_write_lines() instead of series of 'echo' commands t: use sane_unset() rather than 'unset' with broken &&-chain t: drop unnecessary terminating semicolon in subshell t/lib-submodule-update: fix "absorbing" test t5405: use test_must_fail() instead of checking exit code manually t5406: use write_script() instead of birthing shell script manually t5505: modernize and simplify hard-to-digest test t6036: fix broken "merge fails but has appropriate contents" tests t7201: drop pointless "exit 0" at end of subshell t7400: fix broken "submodule add/reconfigure --force" test t7810: use test_expect_code() instead of hand-rolled comparison t9001: fix broken "invoke hook" test t9814: simplify convoluted check that command correctly errors out t0000-t0999: fix broken &&-chains t1000-t1999: fix broken &&-chains t2000-t2999: fix broken &&-chains t3000-t3999: fix broken &&-chains t3030: fix broken &&-chains t4000-t4999: fix broken &&-chains t5000-t5999: fix broken &&-chains t6000-t6999: fix broken &&-chains t7000-t7999: fix broken &&-chains t9000-t9999: fix broken &&-chains t9119: fix broken &&-chains t6046/t9833: fix use of "VAR=VAL cmd" with a shell function t/check-non-portable-shell: stop being so polite t/check-non-portable-shell: make error messages more compact t/check-non-portable-shell: detect "FOO=bar shell_func" t/test-lib: teach --chain-lint to detect broken &&-chains in subshells t/Makefile: add machinery to check correctness of chainlint.sed t/chainlint: add chainlint "basic" test cases t/chainlint: add chainlint "whitespace" test cases t/chainlint: add chainlint "one-liner" test cases t/chainlint: add chainlint "nested subshell" test cases t/chainlint: add chainlint "loop" and "conditional" test cases t/chainlint: add chainlint "cuddled" test cases t/chainlint: add chainlint "complex" test cases t/chainlint: add chainlint "specialized" test cases diff: --color-moved: rename "dimmed_zebra" to "dimmed-zebra" mw-to-git/t9360: fix broken &&-chain t/chainlint.sed: drop extra spaces from regex character class sequencer: fix "rebase -i --root" corrupting author header sequencer: fix "rebase -i --root" corrupting author header timezone sequencer: fix "rebase -i --root" corrupting author header timestamp sequencer: don't die() on bogus user-edited timestamp color: protect against out-of-bounds reads and writes chainlint: match arbitrary here-docs tags rather than hard-coded names chainlint: match 'quoted' here-doc tags chainlint: recognize multi-line $(...) when command cuddled with "$(" chainlint: let here-doc and multi-line string commence on same line chainlint: recognize multi-line quoted strings more robustly chainlint: add test of pathological case which triggered false positive Han-Wen Nienhuys (2): config: document git config getter return value sideband: highlight keywords in remote sideband output Henning Schild (9): builtin/receive-pack: use check_signature from gpg-interface gpg-interface: make parse_gpg_output static and remove from interface header gpg-interface: add new config to select how to sign a commit t/t7510: check the validation of the new config gpg.format gpg-interface: introduce an abstraction for multiple gpg formats gpg-interface: do not hardcode the key string len anymore gpg-interface: introduce new config to select per gpg format program gpg-interface: introduce new signature format "x509" using gpgsm gpg-interface t: extend the existing GPG tests with GPGSM Isabella Stephens (2): blame: prevent error if range ends past end of file log: prevent error if line range ends past end of file Jameson Miller (8): read-cache: teach refresh_cache_entry to take istate read-cache: teach make_cache_entry to take object_id block alloc: add lifecycle APIs for cache_entry structs mem-pool: only search head block for available space mem-pool: add life cycle management functions mem-pool: fill out functionality block alloc: allocate cache entries from mem_pool block alloc: add validations around cache_entry lifecyle Jeff Hostetler (1): json_writer: new routines to create JSON data Jeff King (48): make show-index a builtin show-index: update documentation for index v2 fetch-pack: don't try to fetch peel values with --all ewah: drop ewah_deserialize function ewah: drop ewah_serialize_native function t3200: unset core.logallrefupdates when testing reflog creation t: switch "branch -l" to "branch --create-reflog" branch: deprecate "-l" option config: turn die_on_error into caller-facing enum config: add CONFIG_ERROR_SILENT handler config: add options parameter to git_config_from_mem fsck: silence stderr when parsing .gitmodules t6300: add a test for --ignore-case ref-filter: avoid backend filtering with --ignore-case t5500: prettify non-commit tag tests sequencer: handle empty-set cases consistently sequencer: don't say BUG on bogus input has_uncommitted_changes(): fall back to empty tree fsck: split ".gitmodules too large" error from parse failure fsck: downgrade gitmodulesParse default to "info" blame: prefer xsnprintf to strcpy for colors check_replace_refs: fix outdated comment check_replace_refs: rename to read_replace_refs add core.usereplacerefs config option reencode_string: use st_add/st_mult helpers reencode_string: use size_t for string lengths strbuf: use size_t for length in intermediate variables strbuf_readlink: use ssize_t pass st.st_size as hint for strbuf_readlink() strbuf_humanise: use unsigned variables automatically ban strcpy() banned.h: mark strcat() as banned banned.h: mark sprintf() as banned banned.h: mark strncpy() as banned score_trees(): fix iteration over trees with missing entries add a script to diff rendered documentation t5552: suppress upload-pack trace output for_each_*_object: store flag definitions in a single location for_each_*_object: take flag arguments as enum for_each_*_object: give more comprehensive docstrings for_each_packed_object: support iterating in pack-order t1006: test cat-file --batch-all-objects with duplicates cat-file: rename batch_{loose,packed}_object callbacks cat-file: support "unordered" output for --batch-all-objects cat-file: use oidset check-and-insert cat-file: split batch "buf" into two variables cat-file: use a single strbuf for all output for_each_*_object: move declarations to object-store.h Johannes Schindelin (41): Makefile: fix the "built from commit" code merge: allow reading the merge commit message from a file rebase --rebase-merges: add support for octopus merges rebase --rebase-merges: adjust man page for octopus support vcbuild/README: update to accommodate for missing common-cmds.h t7406: avoid failures solely due to timing issues contrib: add a script to initialize VS Code configuration vscode: hard-code a couple defines cache.h: extract enum declaration from inside a struct declaration mingw: define WIN32 explicitly vscode: only overwrite C/C++ settings vscode: wrap commit messages at column 72 by default vscode: use 8-space tabs, no trailing ws, etc for Git's source code vscode: add a dictionary for cSpell vscode: let cSpell work on commit messages, too pull --rebase=<type>: allow single-letter abbreviations for the type t3430: demonstrate what -r, --autosquash & --exec should do git-compat-util.h: fix typo remote-curl: remove spurious period rebase --exec: make it work with --rebase-merges linear-assignment: a function to solve least-cost assignment problems Introduce `range-diff` to compare iterations of a topic branch range-diff: first rudimentary implementation range-diff: improve the order of the shown commits range-diff: also show the diff between patches range-diff: right-trim commit messages range-diff: indent the diffs just like tbdiff range-diff: suppress the diff headers range-diff: adjust the output of the commit pairs range-diff: do not show "function names" in hunk headers range-diff: use color for the commit pairs color: add the meta color GIT_COLOR_REVERSE diff: add an internal option to dual-color diffs of diffs range-diff: offer to dual-color the diffs range-diff --dual-color: skip white-space warnings range-diff: populate the man page completion: support `git range-diff` range-diff: left-pad patch numbers range-diff: make --dual-color the default mode range-diff: use dim/bold cues to improve dual color mode chainlint: fix for core.autocrlf=true Johannes Sixt (1): mingw: enable atomic O_APPEND Jonathan Nieder (11): object: add repository argument to grow_object_hash object: move grafts to object parser commit: add repository argument to commit_graft_pos commit: add repository argument to register_commit_graft commit: add repository argument to read_graft_file commit: add repository argument to prepare_commit_graft commit: add repository argument to lookup_commit_graft subtree test: add missing && to &&-chain subtree test: simplify preparation of expected results doc hash-function-transition: pick SHA-256 as NewHash partial-clone: render design doc using asciidoc Jonathan Tan (28): list-objects: check if filter is NULL before using fetch-pack: split up everything_local() fetch-pack: clear marks before re-marking fetch-pack: directly end negotiation if ACK ready fetch-pack: use ref adv. to prune "have" sent fetch-pack: make negotiation-related vars local fetch-pack: move common check and marking together fetch-pack: introduce negotiator API pack-bitmap: remove bitmap_git global variable pack-bitmap: add free function fetch-pack: write shallow, then check connectivity fetch-pack: support negotiation tip whitelist upload-pack: send refs' objects despite "filter" clone: check connectivity even if clone is partial revision: tolerate promised targets of tags tag: don't warn if target is missing but promised negotiator/skipping: skip commits during fetch commit-graph: refactor preparing commit graph object-store: add missing include commit-graph: add missing forward declaration commit-graph: add free_commit_graph commit-graph: store graph in struct object_store commit-graph: add repo arg to graph readers t5702: test fetch with multiple refspecs at a time fetch: send "refs/tags/" prefix upon CLI refspecs fetch-pack: unify ref in and out param repack: refactor setup of pack-objects cmd repack: repack promisor objects if -a or -A is set Josh Steadmon (1): protocol-v2 doc: put HTTP headers after request Jules Maselbas (1): send-email: fix tls AUTH when sending batch Junio C Hamano (18): tests: clean after SANITY tests ewah: delete unused 'rlwit_discharge_empty()' Prepare to start 2.19 cycle First batch for 2.19 cycle Second batch for 2.19 cycle fixup! connect.h: avoid forward declaration of an enum fixup! refs/refs-internal.h: avoid forward declaration of an enum t3404: fix use of "VAR=VAL cmd" with a shell function Third batch for 2.19 cycle Fourth batch for 2.19 cycle remote: make refspec follow the same disambiguation rule as local refs Fifth batch for 2.19 cycle update-index: there no longer is `apply --index-info` gpg-interface: propagate exit status from gpg back to the callers Sixth batch for 2.19 cycle Seventh batch for 2.19 cycle sideband: do not read beyond the end of input Git 2.19-rc0 Kana Natsuno (2): t4018: add missing test cases for PHP userdiff: support new keywords in PHP hunk header Kim Gybels (1): gc --auto: release pack files before auto packing Kirill Smelkov (1): fetch-pack: test explicitly that --all can fetch tag references pointing to non-commits Luis Marsano (2): git-credential-netrc: use in-tree Git.pm for tests git-credential-netrc: fix exit status when tests fail Luke Diamand (6): git-p4: python3: replace <> with != git-p4: python3: replace dict.has_key(k) with "k in dict" git-p4: python3: remove backticks git-p4: python3: basestring workaround git-p4: python3: use print() function git-p4: python3: fix octal constants Marc Strapetz (1): Documentation: declare "core.ignoreCase" as internal variable Martin Ågren (1): refspec: initalize `refspec_item` in `valid_fetch_refspec()` Masaya Suzuki (2): builtin/send-pack: populate the default configs doc: fix want-capability separator Max Kirillov (4): http-backend: cleanup writing to child process http-backend: respect CONTENT_LENGTH as specified by rfc3875 unpack-trees: do not fail reset because of unmerged skipped entry http-backend: respect CONTENT_LENGTH for receive-pack Michael Barabanov (1): filter-branch: skip commits present on --state-branch Mike Hommey (1): fast-import: do not call diff_delta() with empty buffer Nguyễn Thái Ngọc Duy (98): commit-slab.h: code split commit-slab: support shared commit-slab blame: use commit-slab for blame suspects instead of commit->util describe: use commit-slab for commit names instead of commit->util shallow.c: use commit-slab for commit depth instead of commit->util sequencer.c: use commit-slab to mark seen commits sequencer.c: use commit-slab to associate todo items to commits revision.c: use commit-slab for show_source bisect.c: use commit-slab for commit weight instead of commit->util name-rev: use commit-slab for rev-name instead of commit->util show-branch: use commit-slab for commit-name instead of commit->util show-branch: note about its object flags usage log: use commit-slab in prepare_bases() instead of commit->util merge: use commit-slab in merge remote desc instead of commit->util commit.h: delete 'util' field in struct commit diff: ignore --ita-[in]visible-in-index when diffing worktree-to-tree diff: turn --ita-invisible-in-index on by default t2203: add a test about "diff HEAD" case apply: add --intent-to-add parse-options: option to let --git-completion-helper show negative form completion: suppress some -no- options Add and use generic name->id mapping code for color slot parsing grep: keep all colors in an array fsck: factor out msg_id_info[] lazy initialization code help: add --config to list all available config fsck: produce camelCase config key names advice: keep config name in camelCase in advice_config[] am: move advice.amWorkDir parsing back to advice.c completion: drop the hard coded list of config vars completion: keep other config var completion in camelCase completion: support case-insensitive config vars log-tree: allow to customize 'grafted' color completion: complete general config vars in two steps upload-pack: reject shallow requests that would return nothing completion: collapse extra --no-.. options Update messages in preparation for i18n archive-tar.c: mark more strings for translation archive-zip.c: mark more strings for translation builtin/config.c: mark more strings for translation builtin/grep.c: mark strings for translation builtin/pack-objects.c: mark more strings for translation builtin/replace.c: mark more strings for translation commit-graph.c: mark more strings for translation config.c: mark more strings for translation connect.c: mark more strings for translation convert.c: mark more strings for translation dir.c: mark more strings for translation environment.c: mark more strings for translation exec-cmd.c: mark more strings for translation object.c: mark more strings for translation pkt-line.c: mark more strings for translation refs.c: mark more strings for translation refspec.c: mark more strings for translation replace-object.c: mark more strings for translation sequencer.c: mark more strings for translation sha1-file.c: mark more strings for translation transport.c: mark more strings for translation transport-helper.c: mark more strings for translation pack-objects: document about thread synchronization apply.h: drop extern on func declaration attr.h: drop extern from function declaration blame.h: drop extern on func declaration cache-tree.h: drop extern from function declaration convert.h: drop 'extern' from function declaration diffcore.h: drop extern from function declaration diff.h: remove extern from function declaration line-range.h: drop extern from function declaration rerere.h: drop extern from function declaration repository.h: drop extern from function declaration revision.h: drop extern from function declaration submodule.h: drop extern from function declaration config.txt: reorder blame stuff to keep config keys sorted Makefile: add missing dependency for command-list.h diff.c: move read_index() code back to the caller cache-tree: wrap the_index based wrappers with #ifdef attr: remove an implicit dependency on the_index convert.c: remove an implicit dependency on the_index dir.c: remove an implicit dependency on the_index in pathspec code preload-index.c: use the right index instead of the_index ls-files: correct index argument to get_convert_attr_ascii() unpack-trees: remove 'extern' on function declaration unpack-trees: add a note about path invalidation unpack-trees: don't shadow global var the_index unpack-trees: convert clear_ce_flags* to avoid the_index unpack-trees: avoid the_index in verify_absent() pathspec.c: use the right index instead of the_index submodule.c: use the right index instead of the_index entry.c: use the right index instead of the_index attr: remove index from git_attr_set_direction() grep: use the right index instead of the_index archive.c: avoid access to the_index archive-*.c: use the right repository resolve-undo.c: use the right index instead of the_index apply.c: pass struct apply_state to more functions apply.c: make init_apply_state() take a struct repository apply.c: remove implicit dependency on the_index blame.c: remove implicit dependency on the_index cherry-pick: fix --quit not deleting CHERRY_PICK_HEAD Nicholas Guriev (1): mergetool: don't suggest to continue after last file Olga Telezhnaya (5): ref-filter: add info_source to valid_atom ref-filter: fill empty fields with empty values ref-filter: initialize eaten variable ref-filter: merge get_obj and get_object ref-filter: use oid_object_info() to get object Phillip Wood (5): add -p: fix counting empty context lines in edited patches sequencer: do not squash 'reword' commits when we hit conflicts rebase -i: fix numbering in squash message t3430: add conflicting commit rebase -i: fix SIGSEGV when 'merge <branch>' fails Prathamesh Chavan (4): submodule foreach: correct '$path' in nested submodules from a subdirectory submodule foreach: document '$sm_path' instead of '$path' submodule foreach: document variable '$displaypath' submodule: port submodule subcommand 'foreach' from shell to C Ramsay Jones (3): fsck: check skiplist for object in fsck_blob() t6036: fix broken && chain in sub-shell t5562: avoid non-portable "export FOO=bar" construct René Scharfe (7): remote: clear string_list after use in mv() add, update-index: fix --chmod argument help difftool: remove angular brackets from argument help pack-objects: specify --index-version argument help explicitly send-pack: specify --force-with-lease argument help explicitly shortlog: correct option help for -w parse-options: automatically infer PARSE_OPT_LITERAL_ARGHELP SZEDER Gábor (19): update-ref --stdin: use skip_prefix() t7510-signed-commit: use 'test_must_fail' tests: make forging GPG signed commits and tags more robust t5541: clean up truncating access log t/lib-httpd: add the strip_access_log() helper function t/lib-httpd: avoid occasional failures when checking access.log t5608: fix broken &&-chain t9300: wait for background fast-import process to die after killing it travis-ci: run Coccinelle static analysis with two parallel jobs travis-ci: fail if Coccinelle static analysis found something to transform coccinelle: mark the 'coccicheck' make target as .PHONY coccinelle: use $(addsuffix) in 'coccicheck' make target coccinelle: exclude sha1dc source files from static analysis coccinelle: put sane filenames into output patches coccinelle: extract dedicated make target to clean Coccinelle's results travis-ci: include the trash directories of failed tests in the trace log t5318: use 'test_cmp_bin' to compare commit-graph files t5318: avoid unnecessary command substitutions t5310-pack-bitmaps: fix bogus 'pack-objects to file can use bitmap' test Sebastian Kisela (2): git-instaweb: support Fedora/Red Hat apache module path git-instaweb: fix apache2 config with apache >= 2.4 Stefan Beller (87): repository: introduce parsed objects field object: add repository argument to create_object alloc: add repository argument to alloc_blob_node alloc: add repository argument to alloc_tree_node alloc: add repository argument to alloc_commit_node alloc: add repository argument to alloc_tag_node alloc: add repository argument to alloc_object_node alloc: add repository argument to alloc_report alloc: add repository argument to alloc_commit_index object: allow grow_object_hash to handle arbitrary repositories object: allow create_object to handle arbitrary repositories alloc: allow arbitrary repositories for alloc functions object-store: move object access functions to object-store.h shallow: add repository argument to set_alternate_shallow_file shallow: add repository argument to register_shallow shallow: add repository argument to check_shallow_file_for_update shallow: add repository argument to is_repository_shallow cache: convert get_graft_file to handle arbitrary repositories path.c: migrate global git_path_* to take a repository argument shallow: migrate shallow information into the object parser commit: allow prepare_commit_graft to handle arbitrary repositories commit: allow lookup_commit_graft to handle arbitrary repositories refs/packed-backend.c: close fd of empty file submodule--helper: plug mem leak in print_default_remote sequencer.c: plug leaks in do_pick_commit submodule: fix NULL correctness in renamed broken submodules t5526: test recursive submodules when fetching moved submodules submodule: unset core.worktree if no working tree is present submodule: ensure core.worktree is set after update submodule deinit: unset core.worktree submodule.c: report the submodule that an error occurs in sequencer.c: plug mem leak in git_sequencer_config .mailmap: merge different spellings of names object: add repository argument to parse_object object: add repository argument to lookup_object object: add repository argument to parse_object_buffer object: add repository argument to object_as_type blob: add repository argument to lookup_blob tree: add repository argument to lookup_tree commit: add repository argument to lookup_commit_reference_gently commit: add repository argument to lookup_commit_reference commit: add repository argument to lookup_commit commit: add repository argument to parse_commit_buffer commit: add repository argument to set_commit_buffer commit: add repository argument to get_cached_commit_buffer tag: add repository argument to lookup_tag tag: add repository argument to parse_tag_buffer tag: add repository argument to deref_tag object: allow object_as_type to handle arbitrary repositories object: allow lookup_object to handle arbitrary repositories blob: allow lookup_blob to handle arbitrary repositories tree: allow lookup_tree to handle arbitrary repositories commit: allow lookup_commit to handle arbitrary repositories tag: allow lookup_tag to handle arbitrary repositories tag: allow parse_tag_buffer to handle arbitrary repositories commit.c: allow parse_commit_buffer to handle arbitrary repositories commit-slabs: remove realloc counter outside of slab struct commit.c: migrate the commit buffer to the parsed object store commit.c: allow set_commit_buffer to handle arbitrary repositories commit.c: allow get_cached_commit_buffer to handle arbitrary repositories object.c: allow parse_object_buffer to handle arbitrary repositories object.c: allow parse_object to handle arbitrary repositories tag.c: allow deref_tag to handle arbitrary repositories commit.c: allow lookup_commit_reference_gently to handle arbitrary repositories commit.c: allow lookup_commit_reference to handle arbitrary repositories xdiff/xdiff.h: remove unused flags xdiff/xdiffi.c: remove unneeded function declarations t4015: avoid git as a pipe input diff.c: do not pass diff options as keydata to hashmap diff.c: adjust hash function signature to match hashmap expectation diff.c: add a blocks mode for moved code detection diff.c: decouple white space treatment from move detection algorithm diff.c: factor advance_or_nullify out of mark_color_as_moved diff.c: add white space mode to move detection that allows indent changes diff.c: offer config option to control ws handling in move detection xdiff/xhistogram: pass arguments directly to fall_back_to_classic_diff xdiff/xhistogram: factor out memory cleanup into free_index() xdiff/xhistogram: move index allocation into find_lcs Documentation/git-interpret-trailers: explain possible values xdiff/histogram: remove tail recursion t1300: document current behavior of setting options xdiff: reduce indent heuristic overhead config: fix case sensitive subsection names on writing git-config: document accidental multi-line setting in deprecated syntax git-submodule.sh: accept verbose flag in cmd_update to be non-quiet t7410: update to new style builtin/submodule--helper: remove stray new line Taylor Blau (9): Documentation/config.txt: camel-case lineNumber for consistency grep.c: expose {,inverted} match column in match_line() grep.[ch]: extend grep_opt to allow showing matched column grep.c: display column number of first match builtin/grep.c: add '--column' option to 'git-grep(1)' grep.c: add configuration variables to show matched option contrib/git-jump/git-jump: jump to exact location grep.c: extract show_line_header() grep.c: teach 'git grep --only-matching' Thomas Rast (1): range-diff: add tests Tobias Klauser (1): git-rebase--preserve-merges: fix formatting of todo help message Todd Zullinger (4): git-credential-netrc: minor whitespace cleanup in test script git-credential-netrc: make "all" default target of Makefile gitignore.txt: clarify default core.excludesfile path dir.c: fix typos in core.excludesfile comment Ville Skyttä (1): Documentation: spelling and grammar fixes Vladimir Parfinenko (1): rebase: fix documentation formatting William Chargin (2): sha1-name.c: for ":/", find detached HEAD commits t: factor out FUNNYNAMES as shared lazy prereq Xiaolong Ye (1): format-patch: clear UNINTERESTING flag before prepare_bases brian m. carlson (21): send-email: add an auto option for transfer encoding send-email: accept long lines with suitable transfer encoding send-email: automatically determine transfer-encoding docs: correct RFC specifying email line length sequencer: pass absolute GIT_WORK_TREE to exec commands cache: update object ID functions for the_hash_algo tree-walk: replace hard-coded constants with the_hash_algo hex: switch to using the_hash_algo commit: express tree entry constants in terms of the_hash_algo strbuf: allocate space with GIT_MAX_HEXSZ sha1-name: use the_hash_algo when parsing object names refs/files-backend: use the_hash_algo for writing refs builtin/update-index: convert to using the_hash_algo builtin/update-index: simplify parsing of cacheinfo builtin/fmt-merge-msg: make hash independent builtin/merge: switch to use the_hash_algo builtin/merge-recursive: make hash independent diff: switch GIT_SHA1_HEXSZ to use the_hash_algo log-tree: switch GIT_SHA1_HEXSZ to the_hash_algo->hexsz sha1-file: convert constants to uses of the_hash_algo pretty: switch hard-coded constants to the_hash_algo Ævar Arnfjörð Bjarmason (36): checkout tests: index should be clean after dwim checkout checkout.h: wrap the arguments to unique_tracking_name() checkout.c: introduce an *_INIT macro checkout.c: change "unique" member to "num_matches" checkout: pass the "num_matches" up to callers builtin/checkout.c: use "ret" variable for return checkout: add advice for ambiguous "checkout <branch>" checkout & worktree: introduce checkout.defaultRemote refspec: s/refspec_item_init/&_or_die/g refspec: add back a refspec_item_init() function doc hash-function-transition: note the lack of a changelog receive.fsck.<msg-id> tests: remove dead code config doc: don't describe *.fetchObjects twice config doc: unify the description of fsck.* and receive.fsck.* config doc: elaborate on what transfer.fsckObjects does config doc: elaborate on fetch.fsckObjects security transfer.fsckObjects tests: untangle confusing setup fetch: implement fetch.fsck.* fsck: test & document {fetch,receive}.fsck.* config fallback fsck: add stress tests for fsck.skipList fsck: test and document unknown fsck.<msg-id> values tests: make use of the test_must_be_empty function tests: make use of the test_must_be_empty function fetch tests: change "Tag" test tag to "testTag" push tests: remove redundant 'git push' invocation push tests: fix logic error in "push" test assertion push tests: add more testing for forced tag pushing push tests: assert re-pushing annotated tags negotiator: unknown fetch.negotiationAlgorithm should error out fetch doc: cross-link two new negotiation options sha1dc: update from upstream push: use PARSE_OPT_LITERAL_ARGHELP instead of unbalanced brackets fetch tests: correct a comment "remove it" -> "remove them" pull doc: fix a long-standing grammar error submodule: add more exhaustive up-path testing t2024: mark test using "checkout -p" with PERL prerequisite Łukasz Stelmach (1): completion: complete remote names too Version v2.18.5; changes since v2.18.4: --------------------------------------- Johannes Schindelin (3): run-command: invalidate lstat cache after a command finished Git 2.17.6 Git 2.18.5 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.18.4; changes since v2.18.3: --------------------------------------- Jeff King (6): t0300: make "quit" helper more realistic t0300: use more realistic inputs credential: parse URL without host as empty host, not unset credential: refuse to operate when missing host or protocol credential: die() when parsing invalid urls Git 2.17.5 Jonathan Nieder (4): fsck: convert gitmodules url to URL passed to curl credential: treat URL without scheme as invalid credential: treat URL with empty scheme as invalid fsck: reject URL with empty host in .gitmodules Version v2.18.3; changes since v2.18.2: --------------------------------------- Jeff King (4): credential: avoid writing values with newlines t/lib-credential: use test_i18ncmp to check stderr credential: detect unrepresentable values when parsing urls fsck: detect gitmodules URLs with embedded newlines Junio C Hamano (1): Git 2.17.4 Version v2.18.2; changes since v2.18.1: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (24): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Git 2.15.4 test-drop-caches: use `has_dos_drive_prefix()` Git 2.16.6 Git 2.17.3 Git 2.18.2 Jonathan Nieder (2): submodule: reject submodule.update = !command in .gitmodules fsck: reject submodule.update = !command in .gitmodules Version v2.18.1; changes since v2.18.0: --------------------------------------- Jeff King (5): submodule--helper: use "--" to signal end of clone options submodule-config: ban submodule urls that start with dash submodule-config: ban submodule paths that start with a dash fsck: detect submodule urls starting with dash fsck: detect submodule paths starting with dash Junio C Hamano (5): Git 2.14.5 Git 2.15.3 Git 2.16.5 Git 2.17.2 Git 2.18.1 Version v2.18.0; changes since v2.18.0-rc2: ------------------------------------------- Alexander Shopov (2): l10n: bg.po: Updated Bulgarian translation (3608t) l10n: bg.po: Updated Bulgarian translation (3608t) Andre Hinrichs (1): l10n: de.po: fix typos Changwoo Ryu (1): l10n: ko.po: Update Korean translation Christopher Díaz Riveros (3): l10n: es.po: Spanish update for v2.18.0 round 1 l10n: es.po: Spanish update for v2.18.0 round 2 l10n: es.po: Spanish update for v2.18.0 round 3 Eric Sunshine (1): Makefile: make NO_ICONV really mean "no iconv" Jean-Noël Avila (2): l10n: fr.po v2.18 round 1 l10n: fr.po v2.18.0 round 3 Jeff King (2): ewah_read_mmap: bounds-check mmap reads ewah: adjust callers of ewah_read_mmap() Jeremy Linton (1): packfile: correct zlib buffer handling Jiang Xin (4): l10n: git.pot: v2.18.0 round 1 (108 new, 14 removed) l10n: git.pot: v2.18.0 round 2 (144 new, 6 removed) l10n: git.pot: v2.18.0 round 3 (1 new, 1 removed) l10n: zh_CN: for git v2.18.0 l10n round 1 to 3 Johannes Schindelin (1): rebase --root: fix amending root commit messages Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (3): A bunch of micro-fixes before going 2.18 final Almost 2.18 final Git 2.18 Kaartic Sivaraam (1): t3200: clarify description of --set-upstream test Karthikeyan Singaravelan (1): doc: fix typos in documentation and release notes Kyle Meyer (1): gitworkflows: fix grammar in 'Merge upwards' rule Luke Diamand (6): git-p4: disable-rebase: allow setting this via configuration git-p4: add option to disable syncing of p4/master with p4 git-p4: better error reporting when p4 fails git-p4: raise exceptions from p4CmdList based on error from p4 server git-p4: narrow the scope of exceptions caught when parsing an int git-p4: auto-size the block Meng-Sung Wu (1): doc: update the order of the syntax `git merge --continue` Peter Krefting (2): l10n: sv.po: Update Swedish translation (3470t0f0u) l10n: sv.po: Update Swedish translation (3608t0f0u) Ralf Thielow (1): l10n: TEAMS: remove inactive de team members René Scharfe (3): merge-recursive: use xstrdup() instead of fixed buffer blame: release string_list after use in parse_color_fields() merge-recursive: use xstrdup() instead of fixed buffer Robert P. J. Day (3): sha1-file.c: correct $GITDIR to $GIT_DIR in a comment diff-options.txt: fix minor typos, font inconsistencies, in docs Use hyphenated "remote-tracking branch" (docs and comments) Romain Merland (1): git-p4: add options --commit and --disable-rebase SZEDER Gábor (2): t7406-submodule-update: fix broken &&-chains RelNotes 2.18: minor fix to entry about dynamically loading completions Stefan Beller (1): t7400: encapsulate setup code in test_expect_success Todd Zullinger (2): rebase --root: demonstrate a bug while amending root commit messages t3404: check root commit in 'rebase -i --root reword root commit' Trần Ngọc Quân (3): l10n: vi(3470t): Updated Vietnamese translation for v2.18.0 l10n: vi.po(3608t): Update Vietnamese translation for v2.18.0 round2 l10n: vi.po(3608t): Update Vietnamese translation for v2.18.0 round 3 Ævar Arnfjörð Bjarmason (1): git-credential-netrc: remove use of "autodie" Version v2.18.0-rc2; changes since v2.18.0-rc1: ----------------------------------------------- Elijah Newren (1): RelNotes 2.18: clarify where directory rename detection applies Jeff King (4): prepare_commit_graft: treat non-repository as a noop index-pack: handle --strict checks of non-repo packs t7415: don't bother creating commit for symlink test fsck: avoid looking at NULL blob->object Junio C Hamano (3): RelNotes 2.18: typofixes index-pack: correct install_packed_git() args Git 2.18-rc2 Leif Middelschulte (1): merge-submodule: reduce output verbosity SZEDER Gábor (1): completion: correct zsh detection when run from git-completion.zsh Version v2.18.0-rc1; changes since v2.18.0-rc0: ----------------------------------------------- Christian Couder (1): t990X: use '.git/objects' as 'deep inside .git' path David Turner (1): t: make many tests depend less on the refs being files Elijah Newren (2): rev-parse: check lookup'ed commit references for NULL RelNotes: remove duplicate release note Jonathan Nieder (1): fetch: do not pass ref-prefixes for fetch by exact SHA1 Jonathan Tan (1): submodule: do not pass null OID to setup_revisions Junio C Hamano (3): refspec-api: avoid uninitialized field in refspec item A bit more topics before -rc1 Git 2.18-rc1 Luke Diamand (1): git-p4: add unshelve command Nguyễn Thái Ngọc Duy (20): generate-cmds.sh: factor out synopsis extract code generate-cmds.sh: export all commands to command-list.h help: use command-list.h for common command list Remove common-cmds.h git.c: convert --list-* to --list-cmds=* git --list-cmds: collect command list in a string_list completion: implement and use --list-cmds=main,others git: support --list-cmds=list-<category> help: add "-a --verbose" to list all commands with synopsis help: use command-list.txt for the source of guides command-list.txt: documentation and guide line completion: let git provide the completable command list completion: reduce completable command list Move declaration for alias.c to alias.h completion: add and use --list-cmds=nohelpers completion: add and use --list-cmds=alias completion: allow to customize the completable command list Use OPT_SET_INT_F() for cmdline option specification remote.txt: update documentation for 'update' command remote: doc typofix Orgad Shaneh (1): git-rebase--interactive: fix copy-paste mistake Pedro Alvarez Piedehierro (1): import-tars: read overlong names from pax extended header Robert P. J. Day (4): Use proper syntax for replaceables in command docs tag: clarify in the doc that a tag can refer to a non-commit object init: fix grammar in "templates not found" msg p4.txt: Use backquotes for variable names Thomas Gummerer (2): SubmittingPatches: replace numbered attributes with names note git-security@googlegroups.com in more places brian m. carlson (2): sequencer: ensure labels that are object IDs are rewritten t3430: test clean-up Version v2.18.0-rc0; changes since v2.17.6: ------------------------------------------- Anders Kaseorg (1): Documentation/git-bisect.txt: git bisect term → git bisect terms Andreas Heiduk (9): git-svn: search --authors-prog in PATH too git-svn: allow empty email-address using authors-prog and authors-file doc: improve formatting in githooks.txt doc: align 'diff --no-index' in text and synopsis doc: clarify ignore rules for git ls-files doc: add '-d' and '-o' for 'git push' git-svn: remove ''--add-author-from' for 'commit-diff' doc: add note about shell quoting to revision.txt doc: normalize [--options] to [options] in git-diff Antonio Ospite (1): doc: fix config API documentation about config_with_options Beat Bolli (1): git-gui: search for all current SSH key types Ben Peart (7): fsmonitor: fix incorrect buffer size when printing version number fsmonitor: force index write after full scan test-drop-caches: simplify delay loading of NtSetSystemInformation merge: update documentation for {merge,diff}.renameLimit merge: add merge.renames config setting merge: pass aggressive when rename detection is turned off add status config and command line options for rename detection Bill Ritcher (1): mergetools: add support for guiffy Birger Skogeng Pedersen (1): git-gui: bind CTRL/CMD+numpad ENTER to do_commit Brandon Williams (79): pkt-line: introduce packet_read_with_status pkt-line: allow peeking a packet line without consuming it pkt-line: add delim packet support upload-pack: convert to a builtin upload-pack: factor out processing lines transport: use get_refs_via_connect to get refs connect: convert get_remote_heads to use struct packet_reader connect: discover protocol version outside of get_remote_heads transport: store protocol version protocol: introduce enum protocol_version value protocol_v2 test-pkt-line: introduce a packet-line test helper serve: introduce git-serve ls-refs: introduce ls-refs server command connect: request remote refs using v2 transport: convert get_refs_list to take a list of ref prefixes transport: convert transport_get_remote_refs to take a list of ref prefixes ls-remote: pass ref prefixes when requesting a remote's refs fetch: pass ref prefixes when fetching push: pass ref prefixes when pushing upload-pack: introduce fetch server command fetch-pack: perform a fetch using v2 fetch-pack: support shallow requests connect: refactor git_connect to only get the protocol version once connect: don't request v2 when pushing transport-helper: remove name parameter transport-helper: refactor process_connect_service transport-helper: introduce stateless-connect pkt-line: add packet_buf_write_len function remote-curl: create copy of the service name remote-curl: store the protocol version the server responded with http: allow providing extra headers for http requests http: don't always add Git-Protocol header http: eliminate "# service" line when using protocol v2 remote-curl: implement stateless-connect command remote-curl: don't request v2 when pushing commit: allow partial commits with relative paths serve: introduce the server-option capability ls-remote: send server options when using protocol v2 fetch: send server options when using protocol v2 refspec: move refspec parsing logic into its own file refspec: rename struct refspec to struct refspec_item refspec: factor out parsing a single refspec refspec: introduce struct refspec refspec: convert valid_fetch_refspec to use parse_refspec submodule--helper: convert push_check to use struct refspec pull: convert get_tracking_branch to use refspec_item_init transport: convert transport_push to use struct refspec remote: convert check_push_refs to use struct refspec remote: convert match_push_refs to use struct refspec clone: convert cmd_clone to use refspec_item_init fast-export: convert to use struct refspec remote: convert push refspecs to struct refspec remote: convert fetch refspecs to struct refspec remote: remove add_prune_tags_to_fetch_refspec transport-helper: convert to use struct refspec fetch: convert fetch_one to use struct refspec fetch: convert refmap to use struct refspec refspec: remove the deprecated functions fetch: convert do_fetch to take a struct refspec fetch: convert get_ref_map to take a struct refspec fetch: convert prune_refs to take a struct refspec remote: convert get_stale_heads to take a struct refspec remote: convert apply_refspecs to take a struct refspec remote: convert query_refspecs to take a struct refspec remote: convert get_ref_match to take a struct refspec remote: convert match_explicit_refs to take a struct refspec push: check for errors earlier push: convert to use struct refspec transport: convert transport_push to take a struct refspec send-pack: store refspecs in a struct refspec transport: remove transport_verify_remote_names http-push: store refspecs in a struct refspec remote: convert match_push_refs to take a struct refspec remote: convert check_push_refs to take a struct refspec submodule: convert push_unpushed_submodules to take a struct refspec refspec: consolidate ref-prefix generation logic fetch: generate ref-prefixes when using a configured refspec remote-curl: accept all encodings supported by curl remote-curl: accept compressed responses with protocol v2 Casey Fitzpatrick (3): submodule: clean up substitutions in script submodule: add --progress option to add command submodule: add --dissociate option to add/update commands Christian Couder (6): perf/aggregate: add display_dir() perf/aggregate: add --sort-by=regression option perf/run: add --subsection option t/perf: add scripts to bisect performance regressions perf/aggregate: use Getopt::Long for option parsing perf/bisect_run_script: disable codespeed Christian Hesse (2): perl: fix installing modules from contrib Makefile: mark perllibdir as a .PHONY target Clemens Buchacher (2): git-gui: workaround ttk:style theme use completion: improve ls-files filter performance Dan Jacques (3): Makefile: generate Perl header from template file Makefile: add Perl runtime prefix support exec_cmd: RUNTIME_PREFIX on some POSIX systems Derrick Stolee (20): packfile: define and use bsearch_pack() sha1_name: use bsearch_pack() for abbreviations csum-file: rename hashclose() to finalize_hashfile() csum-file: refactor finalize_hashfile() method commit-graph: add format document graph: add commit graph design document commit-graph: create git-commit-graph builtin commit-graph: implement write_commit_graph() commit-graph: implement git-commit-graph write commit-graph: implement git commit-graph read commit-graph: add core.commitGraph setting commit-graph: close under reachability commit: integrate commit graph with commit parsing commit-graph: read only from specific pack-indexes commit-graph: build graph from starting commits commit-graph: implement "--append" option treewide: rename tree to maybe_tree commit: create get_commit_tree() method treewide: replace maybe_tree with accessor methods commit-graph: lazy-load trees for commits Drew DeVault (1): git-send-email: allow re-editing of message Eckhard S. Maaß (1): wt-status: use settings from git_diff_ui_config Elijah Newren (70): directory rename detection: basic testcases directory rename detection: directory splitting testcases directory rename detection: testcases to avoid taking detection too far directory rename detection: partially renamed directory testcase/discussion directory rename detection: files/directories in the way of some renames directory rename detection: testcases checking which side did the rename directory rename detection: more involved edge/corner testcases directory rename detection: testcases exploring possibly suboptimal merges directory rename detection: miscellaneous testcases to complete coverage directory rename detection: tests for handling overwriting untracked files directory rename detection: tests for handling overwriting dirty files merge-recursive: move the get_renames() function merge-recursive: introduce new functions to handle rename logic merge-recursive: fix leaks of allocated renames and diff_filepairs merge-recursive: make !o->detect_rename codepath more obvious merge-recursive: split out code for determining diff_filepairs merge-recursive: make a helper function for cleanup for handle_renames merge-recursive: add get_directory_renames() merge-recursive: check for directory level conflicts merge-recursive: add computation of collisions due to dir rename & merging merge-recursive: check for file level conflicts then get new name merge-recursive: when comparing files, don't include trees merge-recursive: apply necessary modifications for directory renames merge-recursive: avoid clobbering untracked files with directory renames merge-recursive: fix overwriting dirty files involved in renames merge-recursive: fix remaining directory rename + dirty overwrite cases directory rename detection: new testcases showcasing a pair of bugs merge-recursive: avoid spurious rename/rename conflict from dir renames merge-recursive: ensure we write updates for directory-renamed file Documentation: fix several one-character-off spelling errors Documentation: normalize spelling of 'normalised' directory rename detection: basic testcases directory rename detection: directory splitting testcases directory rename detection: testcases to avoid taking detection too far directory rename detection: partially renamed directory testcase/discussion directory rename detection: files/directories in the way of some renames directory rename detection: testcases checking which side did the rename directory rename detection: more involved edge/corner testcases directory rename detection: testcases exploring possibly suboptimal merges directory rename detection: miscellaneous testcases to complete coverage directory rename detection: tests for handling overwriting untracked files directory rename detection: tests for handling overwriting dirty files merge-recursive: move the get_renames() function merge-recursive: introduce new functions to handle rename logic merge-recursive: fix leaks of allocated renames and diff_filepairs merge-recursive: make !o->detect_rename codepath more obvious merge-recursive: split out code for determining diff_filepairs merge-recursive: make a helper function for cleanup for handle_renames Make running git under other debugger-like programs easy unpack_trees: fix breakage when o->src_index != o->dst_index merge-recursive: add get_directory_renames() merge-recursive: check for directory level conflicts merge-recursive: add computation of collisions due to dir rename & merging merge-recursive: check for file level conflicts then get new name merge-recursive: when comparing files, don't include trees merge-recursive: apply necessary modifications for directory renames merge-recursive: avoid clobbering untracked files with directory renames merge-recursive: fix overwriting dirty files involved in renames merge-recursive: fix remaining directory rename + dirty overwrite cases directory rename detection: new testcases showcasing a pair of bugs merge-recursive: avoid spurious rename/rename conflict from dir renames merge-recursive: improve add_cacheinfo error handling merge-recursive: move more is_dirty handling to merge_content merge-recursive: avoid triggering add_cacheinfo error with dirty mod t6046: testcases checking whether updates can be skipped in a merge merge-recursive: fix was_tracked() to quit lying with some renamed paths merge-recursive: fix remainder of was_dirty() to use original index merge-recursive: make "Auto-merging" comment show for other merges merge-recursive: fix check for skipability of working tree updates merge-recursive: provide pair of `unpack_trees_{start,finish}()` Eric Sunshine (5): t3200: verify "branch --list" sanity when rebasing from detached HEAD t2028: tighten grep expression to make "move worktree" test more robust git-worktree.txt: recommend 'git worktree remove' over manual deletion git-worktree.txt: unify command-line prompt in example blocks configure.ac: fix botched FREAD_READS_DIRECTORIES check Erik E Brady (1): credential: ignore SIGPIPE when writing to credential helpers Florian Gamböck (1): completion: load completion file for external subcommand Harald Nordgren (1): ls-remote: create '--sort' option Jameson Miller (3): fast-import: rename mem_pool type to mp_block fast-import: introduce mem_pool type mem-pool: move reusable parts of memory pool into its own file Jeff King (36): diff-highlight: correct test graph diagram diff-highlight: use test_tick in graph test diff-highlight: prefer "echo" to "cat" in tests diff-highlight: test interleaved parallel lines of history diff-highlight: test graphs with --color diff-highlight: use flush() helper consistently diff-highlight: detect --graph by indent set_git_dir: die when setenv() fails add chdir-notify API set_work_tree: use chdir_notify refs: use chdir_notify to update cached relative paths config: move flockfile() closer to unlocked functions t5561: drop curl stderr redirects t5561: skip tests if curl is not available ref-filter: use "struct object_id" consistently ref-filter: make ref_array_item allocation more consistent ref-filter: factor ref_array pushing into its own function t7004: fix mistaken tag name gpg-interface: handle bool user.signingkey gpg-interface: modernize function declarations gpg-interface: use size_t for signature buffer size gpg-interface: fix const-correctness of "eol" pointer gpg-interface: extract gpg line matching helper gpg-interface: find the last gpg signature line apply: clarify "-p" documentation pager: set COLUMNS to term_columns() mark_tree_contents_uninteresting(): drop missing object check mark_parents_uninteresting(): drop missing object check mark_parents_uninteresting(): replace list with stack mark_parents_uninteresting(): avoid most allocation get_main_ref_store: BUG() when outside a repository config: die when --blob is used outside a repository http: use strbufs instead of fixed buffers log_write_email_headers: use strbufs shorten_unambiguous_ref: use xsnprintf fmt_with_err: add a comment that truncation is OK Johannes Schindelin (66): git_config_set: fix off-by-two t1300: rename it to reflect that `repo-config` was deprecated t1300: demonstrate that --replace-all can "invent" newlines config --replace-all: avoid extra line breaks t1300: avoid relying on a bug t1300: remove unreasonable expectation from TODO t5404: relax overzealous test t1300: add a few more hairy examples of sections becoming empty t1300: `--unset-all` can leave an empty section behind (bug) config: introduce an optional event stream while parsing config: avoid using the global variable `store` config_set_store: rename some fields for consistency git_config_set: do not use a state machine git_config_set: make use of the config parser's event stream git config --unset: remove empty sections (in the common case) git_config_set: reuse empty sections exec_cmd: provide a new-style RUNTIME_PREFIX helper for Windows mingw/msvc: use the new-style RUNTIME_PREFIX helper color: introduce support for colorizing stderr push: test to verify that push errors are colored config: document the settings to colorize push errors/hints gettext: avoid initialization if the locale dir is not present git_setup_gettext: plug memory leak sequencer: avoid using errno clobbered by rollback_lock_file() sequencer: make rearrange_squash() a bit more obvious sequencer: refactor how original todo list lines are accessed sequencer: offer helpful advice when a command was rescheduled sequencer: introduce new commands to reset the revision sequencer: introduce the `merge` command sequencer: fast-forward `merge` commands, if possible rebase-helper --make-script: introduce a flag to rebase merges rebase: introduce the --rebase-merges option sequencer: make refs generated by the `label` command worktree-local sequencer: handle post-rewrite for merge commands rebase --rebase-merges: avoid "empty merges" pull: accept --rebase=merges to recreate the branch topology rebase -i: introduce --rebase-merges=[no-]rebase-cousins rebase -i --rebase-merges: add a section to the man page argv_array: offer to split a string by whitespace commit: Let the callback of for_each_mergetag return on error replace: avoid using die() to indicate a bug tests: introduce test_unset_prereq, for debugging replace: "libify" create_graft() and callees replace: prepare create_graft() for converting graft files wholesale replace: introduce --convert-graft-file Add a test for `git replace --convert-graft-file` Deprecate support for .git/info/grafts filter-branch: stop suggesting to use grafts technical/shallow: stop referring to grafts technical/shallow: describe why shallow cannot use replace refs Remove obsolete script to convert grafts to replace refs rebase -i: demonstrate bugs with fixup!/squash! commit messages rebase -i: Handle "combination of <n> commits" with GETTEXT_POISON sequencer: always commit without editing when asked for rebase --skip: clean up commit message after a failed fixup/squash sequencer: extract helper to update active_cache_tree sequencer: learn about the special "fake root commit" handling rebase -i --root: let the sequencer handle even the initial part sequencer: allow introducing new root commits rebase --rebase-merges: a "merge" into a new root is a fast-forward rebase --rebase-merges: root commits can be cousins, too test-tool: help verifying BUG() code paths run-command: use BUG() to report bugs, not die() Replace all die("BUG: ...") calls by BUG() ones Convert remaining die*(BUG) messages config: a user-provided invalid section is not a BUG Johannes Sixt (2): sequencer: reset the committer date before commits git: add -P as a short option for --no-pager Jonathan Nieder (5): sha1_file: allow map_sha1_file_1 to handle arbitrary repositories sha1_file: allow sha1_loose_object_info to handle arbitrary repositories Makefile: remove unused @@PERLLIBDIR@@ substitution variable Makefile: quote $INSTLIBDIR when passing it to sed packfile: add repository argument to packed_object_info Jonathan Tan (4): grep: remove "repo" arg from non-supporting funcs upload-pack: fix error message typo upload-pack: read config when serving protocol v2 {fetch,upload}-pack: support filter in protocol v2 Junio C Hamano (13): stash: fix nonsense pipeline The first batch for 2.18 cycle The second batch for 2.18 The third batch for 2.18 Revert "Merge branch 'en/rename-directory-detection'" gc: do not upcase error message shown with die() parseopt: handle malformed --expire arguments more nicely The fourth batch for 2.18 The fifth batch for 2.18 argv-array: return the pushed string from argv_push*() The sixth batch for 2.18 The seventh batch for 2.18 Git 2.18-rc0 Kaartic Sivaraam (1): branch --list: print useful info whilst interactive rebasing a detached HEAD Lars Schneider (10): strbuf: remove unnecessary NUL assignment in xstrdup_tolower() strbuf: add xstrdup_toupper() strbuf: add a case insensitive starts_with() utf8: teach same_encoding() alternative UTF encoding names utf8: add function to detect prohibited UTF-16/32 BOM utf8: add function to detect a missing UTF-16/32 BOM convert: add 'working-tree-encoding' attribute convert: check for detectable errors in UTF encodings convert: add tracing for 'working-tree-encoding' attribute convert: add round trip check based on 'core.checkRoundtripEncoding' Leif Middelschulte (1): merge-recursive: give notice when submodule commit gets fast-forwarded Loganaden Velvindron (1): http: allow use of TLS 1.3 Lucas Werkmeister (1): daemon.c: fix condition for redirecting stderr Luis Marsano (2): git-credential-netrc: adapt to test framework for git git-credential-netrc: accept gpg option Martin Ågren (24): git-shortlog.txt: reorder usages shortlog: add usage-string for stdin-reading shortlog: disallow left-over arguments outside repo doc: convert \--option to --option doc: convert [\--] to [--] git-[short]log.txt: unify quoted standalone -- git-submodule.txt: quote usage in monospace, drop backslash fast-export: fix regression skipping some merge-commits http-fetch: make `-a` standard behaviour walker: drop fields of `struct walker` which are always 1 t/helper/test-write-cache: clean up lock-handling refs.c: do not die if locking fails in `write_pseudoref()` refs.c: do not die if locking fails in `delete_pseudoref()` lock_file: make function-local locks non-static lock_file: move static locks into functions refs.c: refer to "object ID", not "sha1", in error messages t1400: add tests around adding/deleting pseudorefs refs: handle zero oid for pseudorefs merge: setup `opts` later in `checkout_fast_forward()` config: free resources of `struct config_store_data` config: let `config_store_data_clear()` handle `value_regex` config: let `config_store_data_clear()` handle `key` regex: do not call `regfree()` if compilation fails unpack_trees_options: free messages when done Michal Nazarewicz (1): send-email: simplify Gmail example in the documentation Michele Locati (1): filter-branch: return 2 when nothing to rewrite Nguyễn Thái Ngọc Duy (88): repository: initialize the_repository in main() repository.c: move env-related setup code back to environment.c repository.c: delete dead functions sha1_file.c: move delayed getenv(altdb) back to setup_git_env() repository: delete ignore_env member gc.txt: more details about what gc does worktree: delete dead code worktree prune: improve prune logic when worktree is moved repository.h: add comment and clarify repo_set_gitdir git.c: move cmd_struct declaration up git.c: add hidden option --list-parseopt-builtins completion: mention the oldest version we need to support completion: factor out _git_xxx calling code completion: add --option completion for most builtin commands completion: delete option-only completion commands completion: use __gitcomp_builtin in _git_ls_tree completion: use __gitcomp_builtin in _git_cherry packfile: keep prepare_packed_git() private t/helper: add an empty test-tool program t/helper: merge test-chmtime into test-tool t/helper: merge test-sha1 into test-tool t/helper: merge test-lazy-init-name-hash into test-tool t/helper: merge test-config into test-tool t/helper: merge test-ctype into test-tool t/helper: merge test-date into test-tool t/helper: merge (unused) test-delta into test-tool t/helper: merge test-drop-caches into test-tool t/helper: merge test-dump-cache-tree into test-tool t/helper: merge test-dump-split-index into test-tool t/helper: merge test-example-decorate into test-tool t/helper: merge test-genrandom into test-tool t/helper: merge test-hashmap into test-tool t/helper: merge test-index-version into test-tool t/helper: merge (unused) test-match-trees into test-tool t/helper: merge (unused) test-mergesort into test-tool t/helper: merge test-mktemp into test-tool t/helper: merge test-online-cpus into test-tool t/helper: merge test-path-utils into test-tool t/helper: merge test-prio-queue into test-tool t/helper: merge test-read-cache into test-tool t/helper: merge test-ref-store into test-tool t/helper: merge test-regex into test-tool t/helper: merge test-revision-walking into test-tool t/helper: merge test-run-command into test-tool t/helper: merge test-scrap-cache-tree into test-tool t/helper: merge test-sha1-array into test-tool t/helper: merge test-sigchain into test-tool t/helper: merge test-strcmp-offset into test-tool t/helper: merge test-string-list into test-tool t/helper: merge test-submodule-config into test-tool t/helper: merge test-subprocess into test-tool t/helper: merge test-urlmatch-normalization into test-tool t/helper: merge test-wildmatch into test-tool t/helper: merge test-write-cache into test-tool trace.c: export trace_setup_key read-cache.c: make $GIT_TEST_SPLIT_INDEX boolean pack-objects: a bit of document about struct object_entry pack-objects: turn type and in_pack_type to bitfields pack-objects: use bitfield for object_entry::dfs_state pack-objects: use bitfield for object_entry::depth pack-objects: move in_pack_pos out of struct object_entry pack-objects: move in_pack out of struct object_entry pack-objects: refer to delta objects by index instead of pointer pack-objects: shrink z_delta_size field in struct object_entry pack-objects: don't check size when the object is bad pack-objects: clarify the use of object_entry::size pack-objects: shrink size field in struct object_entry pack-objects: shrink delta_size field in struct object_entry pack-objects: reorder members to shrink struct object_entry ci: exercise the whole test suite with uncommon code in pack-objects t7700: have closing quote of a test at the beginning of line repack: add --keep-pack option gc: add --keep-largest-pack option gc: add gc.bigPackThreshold config gc: handle a corner case in gc.bigPackThreshold gc --auto: exclude base pack if not enough mem to "repack -ad" pack-objects: show some progress when counting kept objects connect.c: mark die_initial_contact() NORETURN Makefile: detect compiler and enable more warnings in DEVELOPER=1 submodule--helper: don't print null in 'submodule status' doc: keep first level section header in upper case pack-objects: validation and documentation about unreachable options completion: fix misspelled config key aliasesfiletype repository: fix free problem with repo_clear(the_repository) pack-format.txt: more details on pack file format column: fix off-by-one default width commit.h: rearrange 'index' to shrink struct commit travis-ci: run gcc-8 on linux-gcc jobs Olga Telezhnaya (6): ref-filter: add shortcut to work with strbufs ref-filter: start adding strbufs with errors ref-filter: add return value && strbuf to handlers ref-filter: change parsing function error handling ref-filter: add return value to parsers ref-filter: libify get_ref_atom_value() Paul-Sebastian Ungureanu (2): parse-options: do not show usage upon invalid option value t/helper: 'test-chmtime (--get|-g)' to print only the mtime Philip Oakley (1): Avoid multiple PREFIX definitions Phillip Wood (7): rebase --root: stop assuming squash_onto is unset rebase -i --keep-empty: don't prune empty commits rebase: respect --no-keep-empty rebase: extend --signoff support rebase -p: error out if --signoff is given rebase --keep-empty: always use interactive rebase rebase --rebase-merges: add test for --keep-empty Pratik Karki (1): test: avoid pipes in git related commands for test Ramsay Jones (1): BUG_exit_code: fix sparse "symbol not declared" warning René Scharfe (8): sha1_name: use bsearch_pack() in unique_in_pack() bisect: use oid_to_hex() for converting object_id hashes to hex strings run-command: use strbuf_addstr() for adding a string to a strbuf submodule: check for NULL return of get_submodule_ref_store() replace_object: use oidmap fast-export: avoid NULL pointer arithmetic t5512: run git fetch inside test fsmonitor: use internal argv_array of struct child_process Ryan Dammrose (1): push: colorize errors SZEDER Gábor (22): test_must_be_empty: simplify file existence check t9902-completion: add tests demonstrating issues with quoted pathnames completion: move __git_complete_index_file() next to its helpers completion: simplify prefix path component handling during path completion completion: support completing non-ASCII pathnames completion: improve handling quoted paths on the command line completion: let 'ls-files' and 'diff-index' filter matching paths completion: use 'awk' to strip trailing path components t9902-completion: ignore COMPREPLY element order in some tests completion: remove repeated dirnames with 'awk' during path completion completion: improve handling quoted paths in 'git ls-files's output completion: fill COMPREPLY directly when completing paths completion: reduce overhead of clearing cached --options docs/git-gc: fix minor rendering issue coccinelle: avoid wrong transformation suggestions from commit.cocci t6050-replace: don't disable stdin for the whole test script t5310-pack-bitmaps: make JGit tests work with GIT_TEST_SPLIT_INDEX t5516-fetch-push: fix 'push with dry-run' test t5516-fetch-push: fix broken &&-chain t7005-editor: get rid of the SPACES_IN_FILENAMES prereq completion: don't return with error from __gitcomp_file_direct() t9902-completion: exercise __git_complete_index_file() directly Sergey Organov (1): glossary: substitute "ancestor" for "direct ancestor" in 'push' description. Stefan Agner (1): send-email: avoid duplicate In-Reply-To/References Stefan Beller (81): repository: introduce raw object store field object-store: migrate alternates struct and functions from cache.h object-store: move alt_odb_list and alt_odb_tail to object store object-store: free alt_odb_list object-store: move packed_git and packed_git_mru to object store object-store: close all packs upon clearing the object store pack: move prepare_packed_git_run_once to object store pack: move approximate object count to object store sha1_file: add raw_object_store argument to alt_odb_usable sha1_file: add repository argument to link_alt_odb_entry sha1_file: add repository argument to read_info_alternates sha1_file: add repository argument to link_alt_odb_entries sha1_file: add repository argument to prepare_alt_odb sha1_file: allow link_alt_odb_entries to handle arbitrary repositories sha1_file: allow prepare_alt_odb to handle arbitrary repositories sha1_file: add repository argument to sha1_file_name sha1_file: add repository argument to stat_sha1_file sha1_file: add repository argument to open_sha1_file sha1_file: add repository argument to map_sha1_file_1 sha1_file: add repository argument to map_sha1_file sha1_file: add repository argument to sha1_loose_object_info sha1_file: allow sha1_file_name to handle arbitrary repositories sha1_file: allow stat_sha1_file to handle arbitrary repositories sha1_file: allow open_sha1_file to handle arbitrary repositories sha1_file: allow map_sha1_file to handle arbitrary repositories packfile: allow prepare_packed_git_mru to handle arbitrary repositories packfile: allow rearrange_packed_git to handle arbitrary repositories packfile: allow install_packed_git to handle arbitrary repositories packfile: add repository argument to prepare_packed_git_one packfile: add repository argument to prepare_packed_git packfile: add repository argument to reprepare_packed_git packfile: allow prepare_packed_git_one to handle arbitrary repositories packfile: allow prepare_packed_git to handle arbitrary repositories packfile: allow reprepare_packed_git to handle arbitrary repositories packfile: add repository argument to find_pack_entry packfile: allow find_pack_entry to handle arbitrary repositories submodule.h: drop declaration of connect_work_tree_and_git_dir submodule-config: allow submodule_free to handle arbitrary repositories submodule-config: add repository argument to submodule_from_{name, path} submodule-config: remove submodule_from_cache submodule: fixup nested submodules after moving the submodule write_or_die.c: rename to use dashes in file name unicode_width.h: rename to use dash in file name exec_cmd: rename to use dash in file name sha1_name.c: rename to use dash in file name sha1_file.c: rename to use dash in file name replace_object.c: rename to use dash in file name replace-object: move replace_map to object store object-store: move lookup_replace_object to replace-object.h replace-object: eliminate replace objects prepared flag replace-object: check_replace_refs is safe in multi repo environment refs: add repository argument to get_main_ref_store refs: add repository argument to for_each_replace_ref replace-object: add repository argument to prepare_replace_object replace-object: add repository argument to do_lookup_replace_object replace-object: add repository argument to lookup_replace_object refs: store the main ref store inside the repository struct refs: allow for_each_replace_ref to handle arbitrary repositories replace-object: allow prepare_replace_object to handle arbitrary repositories replace-object: allow do_lookup_replace_object to handle arbitrary repositories replace-object: allow lookup_replace_object to handle arbitrary repositories worktree: accept -f as short for --force for removal builtin/blame: dim uninteresting metadata lines builtin/blame: highlight recently changed lines builtin/blame: add new coloring scheme config cache.h: add repository argument to oid_object_info_extended cache.h: add repository argument to oid_object_info packfile: add repository argument to retry_bad_packed_offset packfile: add repository argument to packed_to_object_type packfile: add repository argument to read_object packfile: add repository argument to unpack_entry packfile: add repository argument to cache_or_unpack_entry cache.h: allow oid_object_info to handle arbitrary repositories git-rebase--interactive: clarify arguments object.c: free replace map in raw_object_store_clear replace-object.c: remove the_repository from prepare_replace_object grep: handle corrupt index files early git-submodule.sh: try harder to fetch a submodule submodule.c: move submodule merging to merge-recursive.c merge-recursive: i18n submodule merge output and respect verbosity object.c: clear replace map before freeing it Takuto Ikuta (1): fetch-pack.c: use oidset to check existence of loose object Tao Qingyun (1): t1510-repo-setup.sh: remove useless mkdir Taylor Blau (5): builtin/config.c: treat type specifiers singularly builtin/config.c: support `--type=<type>` as preferred alias for `--<type>` builtin/config: introduce `--default` config.c: introduce 'git_config_color' to parse ANSI colors builtin/config: introduce `color` type specifier Thomas Gummerer (10): stash push: avoid printing errors stash push -u: don't create empty stash stash: drop superfluos pathspec parameter SubmittingPatches: mention the git contacts command completion: stop showing 'save' for stash by default completion: make stash -p and alias for stash push -p worktree: remove extra members from struct add_opts worktree: improve message when creating a new worktree worktree: factor out dwim_branch function worktree: teach "add" to check out existing branches Todd Zullinger (1): doc/clone: update caption for GIT URLS cross-reference Torsten Bögershausen (1): test: correct detection of UTF8_NFD_TO_NFC for APFS Wink Saville (8): rebase-interactive: simplify pick_on_preserving_merges rebase: update invocation of rebase dot-sourced scripts rebase: reindent function git_rebase__interactive rebase: extract functions out of git_rebase__interactive rebase: add and use git_rebase__interactive__preserve_merges rebase: remove unused code paths from git_rebase__interactive rebase: remove unused code paths from git_rebase__interactive__preserve_merges rebase: remove merges_option and a blank line Yuki Kokubun (1): filter-branch: fix errors caused by refs that point at non-committish brian m. carlson (121): bulk-checkin: convert index_bulk_checkin to struct object_id builtin/write-tree: convert to struct object_id cache-tree: convert write_*_as_tree to object_id cache-tree: convert remnants to struct object_id resolve-undo: convert struct resolve_undo_info to object_id tree: convert read_tree_recursive to struct object_id ref-filter: convert grab_objectname to struct object_id strbuf: convert strbuf_add_unique_abbrev to use struct object_id wt-status: convert struct wt_status_state to object_id Convert find_unique_abbrev* to struct object_id http-walker: convert struct object_request to use struct object_id send-pack: convert remaining functions to struct object_id replace_object: convert struct replace_object to object_id builtin/mktag: convert to struct object_id archive: convert write_archive_entry_fn_t to object_id archive: convert sha1_file_to_archive to struct object_id builtin/index-pack: convert struct ref_delta_entry to object_id sha1_file: convert read_loose_object to use struct object_id sha1_file: convert check_sha1_signature to struct object_id streaming: convert open_istream to use struct object_id builtin/mktree: convert to struct object_id sha1_file: convert assert_sha1_type to object_id sha1_file: convert retry_bad_packed_offset to struct object_id packfile: convert unpack_entry to struct object_id Convert remaining callers of sha1_object_info_extended to object_id sha1_file: convert sha1_object_info* to object_id builtin/fmt-merge-msg: convert remaining code to object_id builtin/notes: convert static functions to object_id tree-walk: convert get_tree_entry_follow_symlinks internals to object_id streaming: convert istream internals to struct object_id tree-walk: convert tree entry functions to object_id sha1_file: convert read_object_with_reference to object_id sha1_file: convert read_sha1_file to struct object_id Convert lookup_replace_object to struct object_id sha1_file: introduce a constant for max header length convert: convert to struct object_id sha1_name: convert struct min_abbrev_data to object_id t1011: abstract away SHA-1-specific constants t1304: abstract away SHA-1-specific constants t1300: abstract away SHA-1-specific constants t1405: sort reflog entries in a hash-independent way t1411: abstract away SHA-1-specific constants t1507: abstract away SHA-1-specific constants t2020: abstract away SHA-1 specific constants t2101: modernize test style t2101: abstract away SHA-1-specific constants t2107: abstract away SHA-1-specific constants format-patch: make cover letters always text/plain cache: add a function to read an object ID from a buffer server-info: remove unused members from struct pack_info Remove unused member in struct object_context packfile: remove unused member from struct pack_entry packfile: convert has_sha1_pack to object_id sha1-file: convert freshen functions to object_id packfile: convert find_pack_entry to object_id packfile: abstract away hash constant values pack-objects: abstract away hash algorithm pack-redundant: abstract away hash algorithm tree-walk: avoid hard-coded 20 constant tree-walk: convert get_tree_entry_follow_symlinks to object_id fsck: convert static functions to struct object_id submodule-config: convert structures to object_id split-index: convert struct split_index to object_id Update struct index_state to use struct object_id pack-redundant: convert linked lists to use struct object_id index-pack: abstract away hash function constant commit: convert uses of get_sha1_hex to get_oid_hex dir: convert struct untracked_cache_dir to object_id http: eliminate hard-coded constants revision: replace use of hard-coded constants upload-pack: replace use of several hard-coded constants diff: specify abbreviation size in terms of the_hash_algo builtin/receive-pack: avoid hard-coded constants for push certs sha1-file: add functions for hex empty tree and blob OIDs builtin/am: convert uses of EMPTY_TREE_SHA1_BIN to the_hash_algo builtin/merge: switch tree functions to use object_id merge: convert empty tree constant to the_hash_algo sequencer: convert one use of EMPTY_TREE_SHA1_HEX submodule: convert several uses of EMPTY_TREE_SHA1_HEX wt-status: convert two uses of EMPTY_TREE_SHA1_HEX builtin/receive-pack: convert one use of EMPTY_TREE_SHA1_HEX builtin/reset: convert use of EMPTY_TREE_SHA1_BIN sha1_file: convert cached object code to struct object_id cache-tree: use is_empty_tree_oid sequencer: use the_hash_algo for empty tree object ID dir: use the_hash_algo for empty blob object ID sha1_file: only expose empty object constants through git_hash_algo Update shell scripts to compute empty tree object ID add--interactive: compute the empty tree value merge-one-file: compute empty blob object ID Documentation: use 8-space tabs with Asciidoctor Documentation: render revisions correctly under Asciidoctor mailmap: update brian m. carlson's email address t/test-lib: add an SHA1 prerequisite t/test-lib: introduce ZERO_OID t: switch $_z40 to $ZERO_OID t/test-lib: introduce OID_REGEX t: switch $_x40 to $OID_REGEX t0000: annotate with SHA1 prerequisite t1007: annotate with SHA1 prerequisite t1512: skip test if not using SHA-1 t4044: skip test if not using SHA-1 t: skip pack tests if not using SHA-1 t2203: abstract away SHA-1-specific constants t3103: abstract away SHA-1-specific constants t3702: abstract away SHA-1-specific constants t3905: abstract away SHA-1-specific constants t4007: abstract away SHA-1-specific constants t4008: abstract away SHA-1-specific constants t4014: abstract away SHA-1-specific constants t4020: abstract away SHA-1-specific constants t4022: abstract away SHA-1-specific constants t4029: fix test indentation t4029: abstract away SHA-1-specific constants t4030: abstract away SHA-1-specific constants t/lib-diff-alternative: abstract away SHA-1-specific constants t4205: sort log output in a hash-independent way t4042: abstract away SHA-1-specific constants t4045: abstract away SHA-1-specific constants t4208: abstract away SHA-1-specific constants t5300: abstract away SHA-1-specific constants Ævar Arnfjörð Bjarmason (21): configure: fix a regression in PCRE v1 detection configure: detect redundant --with-libpcre & --with-libpcre1 Makefile: make USE_LIBPCRE=YesPlease mean v2, not v1 Makefile: fix broken bindir_relative variable Makefile: add a gitexecdir_relative variable Makefile: optionally symlink libexec/git-core binaries to bin/git Remove contrib/examples/* doc hash-function-transition: clarify how older gits die on NewHash doc hash-function-transition: clarify what SHAttered means git-svn: avoid warning on undef readline() Makefile: add a DEVOPTS to suppress -Werror under DEVELOPER Makefile: add a DEVOPTS to get all of -Wextra git{,-blame}.el: remove old bitrotting Emacs code .gitattributes: add *.pl extension for Perl .gitattributes: use the "perl" differ for Perl .gitattributes: add a diff driver for Python sha1-name.c: remove stray newline sha1-array.h: align function arguments git-p4: change "commitish" typo to "committish" sha1-name.c: move around the collect_ambiguous() function get_short_oid: sort ambiguous objects by type, then SHA-1 Version v2.17.6; changes since v2.17.5: --------------------------------------- Johannes Schindelin (2): run-command: invalidate lstat cache after a command finished Git 2.17.6 Matheus Tavares (2): checkout: fix bug that makes checkout follow symlinks in leading path unpack_trees(): start with a fresh lstat cache Version v2.17.5; changes since v2.17.4: --------------------------------------- Jeff King (6): t0300: make "quit" helper more realistic t0300: use more realistic inputs credential: parse URL without host as empty host, not unset credential: refuse to operate when missing host or protocol credential: die() when parsing invalid urls Git 2.17.5 Jonathan Nieder (4): fsck: convert gitmodules url to URL passed to curl credential: treat URL without scheme as invalid credential: treat URL with empty scheme as invalid fsck: reject URL with empty host in .gitmodules Version v2.17.4; changes since v2.17.3: --------------------------------------- Jeff King (4): credential: avoid writing values with newlines t/lib-credential: use test_i18ncmp to check stderr credential: detect unrepresentable values when parsing urls fsck: detect gitmodules URLs with embedded newlines Junio C Hamano (1): Git 2.17.4 Version v2.17.3; changes since v2.17.2: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (23): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Git 2.15.4 test-drop-caches: use `has_dos_drive_prefix()` Git 2.16.6 Git 2.17.3 Jonathan Nieder (2): submodule: reject submodule.update = !command in .gitmodules fsck: reject submodule.update = !command in .gitmodules Version v2.17.2; changes since v2.17.1: --------------------------------------- Jeff King (5): submodule--helper: use "--" to signal end of clone options submodule-config: ban submodule urls that start with dash submodule-config: ban submodule paths that start with a dash fsck: detect submodule urls starting with dash fsck: detect submodule paths starting with dash Junio C Hamano (4): Git 2.14.5 Git 2.15.3 Git 2.16.5 Git 2.17.2 Version v2.17.1; changes since v2.17.0: --------------------------------------- Jeff King (18): submodule-config: verify submodule names as paths is_ntfs_dotgit: use a size_t for traversing string is_hfs_dotgit: match other .git files skip_prefix: add case-insensitive variant verify_path: drop clever fallthrough verify_dotfile: mention case-insensitivity in comment update-index: stat updated files earlier verify_path: disallow symlinks in .gitmodules index-pack: make fsck error message more specific fsck: simplify ".git" check fsck: actually fsck blob data fsck: detect gitmodules files fsck: handle promisor objects in .gitmodules check fsck: check .gitmodules content fsck: call fsck_finish() after fscking objects unpack-objects: call fsck_finish() after fscking objects index-pack: check .gitmodules files with --strict fsck: complain when .gitmodules is a symlink Johannes Schindelin (2): is_ntfs_dotgit: match other .git files is_{hfs,ntfs}_dotgitmodules: add tests Junio C Hamano (5): Git 2.13.7 Git 2.14.4 Git 2.15.2 Git 2.16.4 Git 2.17.1 Version v2.17.0; changes since v2.17.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (3376t) Changwoo Ryu (1): l10n: ko.po: Update Korean translation Christopher Díaz Riveros (2): l10n: es.po: fixes to Spanish translation l10n: es.po: Update Spanish translation 2.17.0 Jean-Noël Avila (2): l10n: fr.po v2.17.0 round 1 l10n: fr.po: v2.17.0 no fuzzy Jiang Xin (2): l10n: git.pot: v2.17.0 round 1 (132 new, 44 removed) l10n: zh_CN: for git v2.17.0 l10n round 1 Jonathan Nieder (1): upload-pack: disable object filtering when disabled by config Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (1): Git 2.17 Peter Krefting (1): l10n: sv.po: Update Swedish translation (3376t0f0u) Ralf Thielow (1): l10n: de.po: translate 132 new messages Ray Chen (1): l10n: zh_CN: review for git v2.17.0 l10n round 1 René Scharfe (1): unpack-trees: release oid_array after use in check_updates() Trần Ngọc Quân (1): l10n: vi.po(3376t): Updated Vietnamese translation for v2.17 Ævar Arnfjörð Bjarmason (1): add -p: fix 2.17.0-rc* regression due to moved code Version v2.17.0-rc2; changes since v2.17.0-rc1: ----------------------------------------------- Junio C Hamano (3): Git 2.16.3 t9902: disable test on the list of merge-strategies under GETTEXT_POISON Git 2.17-rc2 SZEDER Gábor (1): completion: clear cached --options when sourcing the completion script Stefan Beller (1): submodule deinit: handle non existing pathspecs gracefully Thomas Gummerer (1): git-stash.txt: remove extra square bracket Version v2.17.0-rc1; changes since v2.17.0-rc0: ----------------------------------------------- Ben Peart (1): Fix bugs preventing adding updated cache entries to the name hash David Pursehouse (1): Documentation/merge-strategies: typofix Jeff King (1): doc/gitattributes: mention non-recursive behavior Johannes Schindelin (1): mingw: abort on invalid strftime formats Jonathan Tan (3): sha1_file: restore OBJECT_INFO_QUICK functionality index-pack: support checking objects but not links fetch-pack: do not check links for partial fetch Junio C Hamano (1): Git 2.17-rc1 Kaartic Sivaraam (1): t/t3200: fix a typo in a test description Martin Ågren (4): t7006: add tests for how git config paginates config: respect `pager.config` in list/get-mode only config: change default of `pager.config` to "on" write_locked_index(): add flag to avoid writing unchanged index Michele Locati (1): filter-branch: use printf instead of echo -e Ramsay Jones (3): http: fix an unused variable warning for 'curl_no_proxy' -Wuninitialized: remove some 'init-self' workarounds read-cache: fix an -Wmaybe-uninitialized warning Todd Zullinger (2): RelNotes: add details on Perl module changes completion: complete tags with git tag --delete/--verify Version v2.17.0-rc0; changes since v2.16.6: ------------------------------------------- Adam Borowski (1): hooks/pre-auto-gc-battery: allow gc to run on non-laptops Alban Gruin (1): userdiff: add built-in pattern for golang Alex Bennée (1): send-email: add test for Linux's get_maintainer.pl Alexander Shopov (1): Mark messages for translations Ben Peart (2): dir.c: don't flag the index as dirty for changes to the untracked cache name-hash: properly fold directory names in adjust_dirname_case() Bernhard M. Wiedemann (1): perl: call timegm and timelocal with 4-digit year Brandon Williams (38): object_info: change member name from 'typename' to 'type_name' object: rename function 'typename' to 'type_name' blame: rename 'this' variables pack-objects: rename 'this' variables rev-parse: rename 'this' variable submodule: indicate that 'submodule.recurse' doesn't apply to clone diff: rename 'this' variables apply: rename 'try' variables apply: rename 'new' variables checkout: rename 'new' variables help: rename 'new' variables pack-redundant: rename 'new' variables reflog: rename 'new' variables remote: rename 'new' variables combine-diff: rename 'new' variables commit: rename 'new' variables diff-lib: rename 'new' variable diff: rename 'new' variables diffcore-delta: rename 'new' variables entry: rename 'new' variables http: rename 'new' variables imap-send: rename 'new' variables line-log: rename 'new' variables read-cache: rename 'new' variables ref-filter: rename 'new' variables remote: rename 'new' variables split-index: rename 'new' variables submodule: rename 'new' variables trailer: rename 'new' variables unpack-trees: rename 'new' variables init-db: rename 'template' variables environment: rename 'template' variables diff: rename 'template' variables environment: rename 'namespace' variables wrapper: rename 'template' variables tempfile: rename 'template' variables trailer: rename 'template' variables replace: rename 'new' variables Christian Couder (12): perf/aggregate: fix checking ENV{GIT_PERF_SUBSECTION} perf/aggregate: refactor printing results perf/aggregate: implement codespeed JSON output perf/run: add conf_opts argument to get_var_from_env_or_config() perf/run: learn about perf.codespeedOutput perf/run: learn to send output to codespeed server perf/run: read GIT_PERF_REPO_NAME from perf.repoName sha1_file: remove static strbuf from sha1_file_name() sha1_file: improve sha1_file_name() perfs perf/aggregate: add --subsection option perf/aggregate: add --reponame option perf/aggregate: sort JSON fields in output Christian Ludwig (2): send-email: rename variable for clarity send-email: support separate Reply-To address Derrick Stolee (3): packfile: use get_be64() for large offsets sha1_name: fix uninitialized memory errors revision.c: reduce object database queries Elijah Newren (3): Tighten and correct a few testcases for merging and cherry-picking merge-recursive: fix logic ordering issue merge-recursive: add explanation for src_entry and dst_entry Eric Sunshine (2): worktree: add: fix 'post-checkout' not knowing new worktree location t2028: fix minor error and issues in newly-added "worktree move" tests Gargi Sharma (1): mru: Replace mru.[ch] with list.h implementation Genki Sky (1): rebase: add --allow-empty-message option Gregory Herrero (1): rebase -p: fix incorrect commit message when calling `git merge`. Jeff Hostetler (12): upload-pack: add object filtering for partial clone fetch-pack, index-pack, transport: partial clone fetch-pack: add --no-filter fetch: support filters partial-clone: define partial clone settings in config t5616: end-to-end tests for partial clone fetch: inherit filter-spec from partial clone t5616: test bulk prefetch after partial fetch stat_tracking_info: return +1 when branches not equal status: add --[no-]ahead-behind to status and commit for V2 format. status: update short status to respect --no-ahead-behind status: support --no-ahead-behind in long format Jeff King (20): sq_quote_argv: drop maxlen parameter trace: avoid unnecessary quoting correct error messages for NULL packet_read_line() CodingGuidelines: mention "static" and "extern" t0002: simplify error checking describe: confirm that blobs actually exist test-hashmap: use ALLOC_ARRAY rather than bare malloc test-hashmap: check allocation computation for overflow test-hashmap: use xsnprintf rather than snprintf test-hashmap: use strbuf_getline rather than fgets test-hashmap: simplify alloc_test_entry test-hashmap: use "unsigned int" for hash storage sq_dequote: fix extra consumption of source string t5545: factor out http repository setup remote-curl: unquote incoming push-options t: send verbose test-helper output to fd 4 strbuf_read_file(): preserve errno across close() call smart-http: document flush after "# service" line t3701: add a test for interactive.diffFilter add--interactive: detect bogus diffFilter output Johannes Schindelin (2): sequencer: assign only free()able strings to gpg_sign apply: demonstrate a problem applying svn diffs Jon Simons (1): always check for NULL return from packet_read_line() Jonathan Nieder (1): perl: treat PERLLIB_EXTRA as an extra path again Jonathan Tan (18): extension.partialclone: introduce partial clone extension fsck: introduce partialclone extension fsck: support refs pointing to promisor objects fsck: support referenced promisor objects fsck: support promisor objects as CLI argument index-pack: refactor writing of .keep files introduce fetch-object: fetch one promisor object sha1_file: support lazily fetching missing objects rev-list: support termination at promisor objects gc: do not repack promisor packfiles fetch-pack: test support excluding large blobs fetch: refactor calculation of remote list clone: partial clone unpack-trees: batch fetching of missing blobs fetch-pack: restore save_commit_buffer after use Docs: split out long-running subprocess handshake packfile: remove GIT_DEBUG_LOOKUP log statements packfile: refactor hash search with fanout table Junio C Hamano (14): Start 2.17 cycle First batch after 2.16 blame: tighten command line parser Second batch for 2.17 Third batch for 2.17 merge: allow fast-forward when merging a tracked tag Fourth batch for 2.17 Fifth batch for 2.17 test_must_be_empty: make sure the file exists, not just empty untracked cache: use git_env_bool() not getenv() for customization Sixth batch for 2.17 Seventh batch for 2.17 Eighth batch for 2.17 Git 2.17-rc0 Kim Gybels (1): packed_ref_cache: don't use mmap() for small files Lucas Werkmeister (1): daemon: add --log-destination=(stderr|syslog|none) Martin Ågren (5): sequencer: make lockfiles non-static sequencer: always roll back lock in `do_recursive_merge()` merge-recursive: always roll back lock in `merge_recursive_generic()` merge: always roll back lock in `checkout_fast_forward()` sequencer: do not roll back lockfile unnecessarily Matthieu Moy (2): send-email: add and use a local copy of Mail::Address perl/Git: remove now useless email-address parsing code Michael Haggerty (5): struct snapshot: store `start` rather than `header_len` create_snapshot(): use `xmemdupz()` rather than a strbuf find_reference_location(): make function safe for empty snapshots packed_ref_iterator_begin(): make optimization more general load_contents(): don't try to mmap an empty file Mårten Kongstad (1): docs/pretty-formats: fix typo '% <(<N>)' -> '%<|(<N>)' Nathan Payre (1): send-email: extract email-parsing code into a subroutine Nguyễn Thái Ngọc Duy (72): trace.c: move strbuf_release() out of print_trace_line() run-command.c: introduce trace_run_command() run-command.c: print program 'git' when tracing git_cmd mode run-command.c: print env vars in trace_run_command() run-command.c: print new cwd in trace_run_command() worktree.c: add validate_worktree() dir.c: avoid stat() in valid_cached_dir() dir.c: fix missing dir invalidation in untracked code format-patch: keep cover-letter diffstat wrapped in 72 columns dir.c: stop ignoring opendir() error in open_cached_dir() format-patch: reduce patch diffstat width to 72 trace: measure where the time is spent in the index-heavy operations diff.c: refactor pprint_rename() to use strbuf dir.c: ignore paths containing .git when invalidating untracked cache parse-options: support --git-completion-helper parse-options: add OPT_xxx_F() variants parse-options: let OPT__FORCE take optional flags argument git-completion.bash: introduce __gitcomp_builtin completion: use __gitcomp_builtin in _git_add completion: use __gitcomp_builtin in _git_am completion: use __gitcomp_builtin in _git_apply completion: use __gitcomp_builtin in _git_branch completion: use __gitcomp_builtin in _git_checkout completion: use __gitcomp_builtin in _git_cherry_pick completion: use __gitcomp_builtin in _git_clean completion: use __gitcomp_builtin in _git_clone completion: use __gitcomp_builtin in _git_commit completion: use __gitcomp_builtin in _git_config completion: use __gitcomp_builtin in _git_describe completion: use __gitcomp_builtin in _git_difftool completion: use __gitcomp_builtin in _git_fetch completion: use __gitcomp_builtin in _git_fsck completion: use __gitcomp_builtin in _git_gc completion: use __gitcomp_builtin in _git_grep completion: use __gitcomp_builtin in _git_help completion: use __gitcomp_builtin in _git_init completion: use __gitcomp_builtin in _git_ls_files completion: use __gitcomp_builtin in _git_ls_remote completion: use __gitcomp_builtin in _git_merge completion: use __gitcomp_builtin in _git_merge_base completion: use __gitcomp_builtin in _git_mv completion: use __gitcomp_builtin in _git_name_rev completion: use __gitcomp_builtin in _git_notes completion: use __gitcomp_builtin in _git_pull completion: use __gitcomp_builtin in _git_push completion: use __gitcomp_builtin in _git_remote remote: force completing --mirror= instead of --mirror completion: use __gitcomp_builtin in _git_replace completion: use __gitcomp_builtin in _git_reset completion: use __gitcomp_builtin in _git_revert completion: use __gitcomp_builtin in _git_rm completion: use __gitcomp_builtin in _git_show_branch completion: use __gitcomp_builtin in _git_status completion: use __gitcomp_builtin in _git_tag completion: use __gitcomp_builtin in _git_worktree worktree.c: add update_worktree_location() worktree move: new command worktree move: accept destination as directory worktree move: refuse to move worktrees with submodules worktree remove: new command worktree remove: allow it when $GIT_WORK_TREE is already gone am: add --show-current-patch rebase: add --show-current-patch rebase: introduce and use pseudo-ref REBASE_HEAD am: support --quit diff: add --compact-summary object.h: update flag allocation comment object.h: realign object flag allocation comment completion: don't set PARSE_OPT_NOCOMPLETE on --rerere-autoupdate completion: simplify _git_notes completion: complete --{reuse,reedit}-message= for all notes subcmds completion: more subcommands in _git_notes() Nicolas Morey-Chaisemartin (1): tag: add --edit option Olga Telezhnaya (3): mru: use double-linked list from list.h ref-filter: get rid of duplicate code ref-filter: get rid of goto Patryk Obara (14): clang-format: adjust penalty for return type line break http-push: improve error log sha1_file: convert pretend_sha1_file to object_id dir: convert struct sha1_stat to use object_id sha1_file: convert hash_sha1_file to object_id cache: clear whole hash buffer with oidclr match-trees: convert splice_tree to object_id commit: convert commit_tree* to object_id notes: convert combine_notes_* to object_id notes: convert write_notes_tree to object_id sha1_file: convert write_sha1_file to object_id sha1_file: convert force_object_loose to object_id sha1_file: convert write_loose_object to object_id sha1_file: rename hash_sha1_file_literally Phillip Wood (25): t3404: check intermediate squash messages commit: move empty message checks to libgit Add a function to update HEAD after creating a commit commit: move post-rewrite code to libgit commit: move print_commit_summary() to libgit sequencer: simplify adding Signed-off-by: trailer sequencer: load commit related config sequencer: try to commit without forking 'git commit' t3512/t3513: remove KNOWN_FAILURE_CHERRY_PICK_SEES_EMPTY_COMMIT=1 sequencer: improve config handling t7505: style fixes t7505: add tests for cherry-pick and rebase -i/-p sequencer: run 'prepare-commit-msg' hook add -p: only display help for active keys add -p: only bind search key if there's more than one hunk add -p: improve error messages add -i: add function to format hunk header t3701: indent here documents t3701: use test_write_lines and write_script t3701: don't hard code sha1 hash values t3701: add failing test for pathological context lines add -p: adjust offsets of subsequent hunks when one is skipped add -p: calculate offset delta for edited patches add -p: fix counting when splitting and coalescing add -p: don't rely on apply's '--recount' option Prathamesh Chavan (2): submodule: port submodule subcommand 'sync' from shell to C submodule: port submodule subcommand 'deinit' from shell to C Ramsay Jones (1): t4151: consolidate multiple calls to test_i18ngrep Rasmus Villemoes (2): grep: move grep_source_init outside critical section grep: simplify grep_oid and grep_file René Scharfe (4): cocci: use format keyword instead of a literal string check-ignore: fix mix of directories and other file types sequencer: factor out strbuf_read_file_or_whine() perf: use GIT_PERF_REPEAT_COUNT=3 by default even without config file SZEDER Gábor (22): Use MOVE_ARRAY travis-ci: use 'set -x' for the commands under 'su' in the 32 bit Linux build travis-ci: use 'set -e' in the 32 bit Linux build job travis-ci: don't repeat the path of the cache directory travis-ci: don't run the test suite as root in the 32 bit Linux build travis-ci: don't fail if user already exists on 32 bit Linux build job t6300-for-each-ref: fix "more than one quoting style" tests Makefile: generate Git(3pm) as dependency of the 'doc' and 'man' targets t: prevent '-x' tracing from interfering with test helpers' stderr t: add means to disable '-x' tracing for individual test scripts t1507-rev-parse-upstream: don't check the stderr of a shell function t5536: simplify checking of messages output to stderr t3030-merge-recursive: don't check the stderr of a subshell t5500-fetch-pack: don't check the stderr of a subshell t5526: use $TRASH_DIRECTORY to specify the path of GIT_TRACE log file t5570-git-daemon: don't check the stderr of a subshell t9903-bash-prompt: don't check the stderr of __git_ps1() t1510-repo-setup: mark as untraceable with '-x' t/README: add a note about don't saving stderr of compound commands travis-ci: run tests with '-x' tracing t9400-git-cvsserver-server: don't rely on the output of 'test_cmp' t9402-git-cvsserver-refs: don't check the stderr of a subshell Stefan Beller (9): diff.h: make pickaxe_opts an unsigned bit field diff: migrate diff_flags.pickaxe_ignore_case to a pickaxe_opts bit diff: introduce DIFF_PICKAXE_KINDS_MASK diffcore: add a pickaxe option to find a specific blob diff: properly error out when combining multiple pickaxe options diff: use HAS_MULTI_BITS instead of counting bits manually builtin/pull: respect verbosity settings in submodules send-email: error out when relogin delay is missing color.h: document and modernize header Stephen R Guglielmo (1): subtree: fix add and pull for GPG-signed commits Tatyana Krasnukha (1): apply: handle Subversion diffs with /dev/null gracefully Thomas Gummerer (1): reset --hard: make use of the pretty machinery Thomas Levesque (1): userdiff.c: add C# async keyword in diff pattern Todd Zullinger (2): Makefile: remove *.spec from clean target Makefile: add NO_PERL_CPAN_FALLBACKS knob Torsten Bögershausen (1): convert_to_git(): safe_crlf/checksafe becomes int conv_flags brian m. carlson (13): hash: move SHA-1 macros to hash.h hash: create union for hash context allocation builtin/index-pack: improve hash function abstraction builtin/unpack-objects: switch uses of SHA-1 to the_hash_algo sha1_file: switch uses of SHA-1 to the_hash_algo fast-import: switch various uses of SHA-1 to the_hash_algo pack-check: convert various uses of SHA-1 to abstract forms pack-write: switch various SHA-1 values to abstract forms read-cache: abstract away uses of SHA-1 csum-file: rename sha1file to hashfile csum-file: abstract uses of SHA-1 bulk-checkin: abstract SHA-1 usage hash: update obsolete reference to SHA1_HEADER Ævar Arnfjörð Bjarmason (49): Makefile: don't error out under DC_SHA1_EXTERNAL if DC_SHA1_SUBMODULE=auto Makefile: under "make dist", include the sha1collisiondetection submodule sha1dc_git.h: re-arrange an ifdef chain for a subsequent change Makefile: replace perl/Makefile.PL with simple make rules perl: avoid *.pmc and fix Error.pm further status: add a failing test showing a core.untrackedCache bug wildmatch test: indent with tabs, not spaces wildmatch test: use more standard shell style wildmatch test: don't try to vertically align our output wildmatch test: use a paranoia pattern from nul_match() wildmatch test: remove dead fnmatch() test code wildmatch test: use test_must_fail, not ! for test-wildmatch wildmatch test: perform all tests under all wildmatch() modes wildmatch test: create & test files on disk in addition to in-memory test-lib: add an EXPENSIVE_ON_WINDOWS prerequisite wildmatch test: mark test as EXPENSIVE_ON_WINDOWS fetch: don't redundantly NULL something calloc() gave us fetch: trivially refactor assignment to ref_nr fetch: stop accessing "remote" variable indirectly remote: add a macro for "refs/tags/*:refs/tags/*" fetch tests: refactor in preparation for testing tag pruning fetch tests: re-arrange arguments for future readability fetch tests: add a tag to be deleted to the pruning tests fetch tests: test --prune and refspec interaction fetch tests: double quote a variable for interpolation fetch tests: expand case/esac for later change fetch tests: fetch <url> <spec> as well as fetch [<remote>] git fetch doc: add a new section to explain the ins & outs of pruning git remote doc: correct dangerous lies about what prune does git-fetch & config doc: link to the new PRUNING section fetch tests: add scaffolding for the new fetch.pruneTags fetch: add a --prune-tags option and fetch.pruneTags config fetch: make the --prune-tags work with <url> update-index doc: note a fixed bug in the untracked cache update-index doc: note the caveat with "could not open..." perl: *.pm files should not have the executable bit Git.pm: remove redundant "use strict" from sub-package Git.pm: add the "use warnings" pragma commit: run git gc --auto just before the post-commit hook gitweb: hard-depend on the Digest::MD5 5.8 module Git.pm: hard-depend on the File::{Temp,Spec} modules git-send-email: unconditionally use Net::{SMTP,Domain} perl: update our ancient copy of Error.pm perl: update our copy of Mail::Address perl: move CPAN loader wrappers to another namespace perl: generalize the Git::LoadCPAN facility perl: move the perl/Git/FromCPAN tree to perl/FromCPAN perl Git::LoadCPAN: emit better errors under NO_PERL_CPAN_FALLBACKS git manpage: note git-security@googlegroups.com Version v2.16.6; changes since v2.16.5: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (22): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Git 2.15.4 test-drop-caches: use `has_dos_drive_prefix()` Git 2.16.6 Jonathan Nieder (1): submodule: reject submodule.update = !command in .gitmodules Version v2.16.5; changes since v2.16.4: --------------------------------------- Jeff King (3): submodule--helper: use "--" to signal end of clone options submodule-config: ban submodule urls that start with dash submodule-config: ban submodule paths that start with a dash Junio C Hamano (3): Git 2.14.5 Git 2.15.3 Git 2.16.5 Version v2.16.4; changes since v2.16.3: --------------------------------------- Jeff King (8): submodule-config: verify submodule names as paths is_ntfs_dotgit: use a size_t for traversing string is_hfs_dotgit: match other .git files skip_prefix: add case-insensitive variant verify_path: drop clever fallthrough verify_dotfile: mention case-insensitivity in comment update-index: stat updated files earlier verify_path: disallow symlinks in .gitmodules Johannes Schindelin (2): is_ntfs_dotgit: match other .git files is_{hfs,ntfs}_dotgitmodules: add tests Junio C Hamano (4): Git 2.13.7 Git 2.14.4 Git 2.15.2 Git 2.16.4 Version v2.16.3; changes since v2.16.2: --------------------------------------- Ben Peart (1): fsmonitor: update documentation to remove reference to invalid config settings Brandon Williams (1): oidmap: ensure map is initialized Christian Ludwig (1): t9001: use existing helper in send-email test Eric Sunshine (2): git-worktree.txt: fix missing ")" typo git-worktree.txt: fix indentation of example and text of 'add' command Eric Wong (2): fsck: fix leak when traversing trees git-svn: control destruction order to avoid segfault Genki Sky (1): test-lib.sh: unset XDG_CACHE_HOME Jeff King (10): t5570: use ls-remote instead of clone for interp tests t/lib-git-daemon: record daemon log daemon: fix off-by-one in logging extended attributes daemon: handle NULs in extended attribute string t/lib-git-daemon: add network-protocol helpers daemon: fix length computation in newline stripping t0205: drop redundant test git-sh-i18n: check GETTEXT_POISON before USE_GETTEXT_SCHEME commit: drop uses of get_cached_commit_buffer() revision: drop --show-all option Jonathan Tan (2): http: support cookie redaction when tracing http: support omitting data from traces Juan F. Codagnone (1): mailinfo: avoid segfault when can't open files Junio C Hamano (2): worktree: say that "add" takes an arbitrary commit in short-help Git 2.16.3 Kaartic Sivaraam (2): Doc/gitsubmodules: make some changes to improve readability and syntax Doc/git-submodule: improve readability and grammar of a sentence Mathias Rav (1): files_initial_transaction_commit(): only unlock if locked Motoki Seki (1): Documentation/gitsubmodules.txt: avoid non-ASCII apostrophes Nguyễn Thái Ngọc Duy (12): t2203: test status output with porcelain v2 format Use DIFF_DETECT_RENAME for detect_rename assignments wt-status.c: coding style fix wt-status.c: catch unhandled diff status codes wt-status.c: rename rename-related fields in wt_status_change_data wt-status.c: handle worktree renames read-cache.c: change type of "temp" in write_shared_index() read-cache.c: move tempfile creation/cleanup out of write_shared_index diff.c: flush stdout before printing rename warnings read-cache: don't write index twice if we can't write shared index completion: fix completing merge strategies on non-C locales gitignore.txt: elaborate shell glob syntax Ramsay Jones (2): config.mak.uname: remove SPARSE_FLAGS setting for cygwin Makefile: suppress a sparse warning for pack-revindex.c Randall S. Becker (1): hashmap.h: remove unused variable René Scharfe (2): describe: use strbuf_add_unique_abbrev() for adding short hashes cocci: simplify check for trivial format strings Robert P. J. Day (2): t/: correct obvious typo "detahced" Correct mispellings of ".gitmodule" to ".gitmodules" SZEDER Gábor (11): travis-ci: build Git during the 'script' phase t5541: add 'test_i18ngrep's missing filename parameter t5812: add 'test_i18ngrep's missing filename parameter t6022: don't run 'git merge' upstream of a pipe t4001: don't run 'git status' upstream of a pipe t5510: consolidate 'grep' and 'test_i18ngrep' patterns t5536: let 'test_i18ngrep' read the file without redirection t: move 'test_i18ncmp' and 'test_i18ngrep' to 'test-lib-functions.sh' t: validate 'test_i18ngrep's parameters t: make 'test_i18ngrep' more informative on failure t: document 'test_must_fail ok=<signal-name>' Stefan Beller (5): t/lib-submodule-update.sh: clarify test t/lib-submodule-update.sh: fix test ignoring ignored files in submodules unpack-trees: oneway_merge to update submodules submodule: submodule_move_head omits old argument in forced case Documentation/git-status: clarify status table for porcelain mode Stefan Moch (2): t7001: add test case for --dry-run mv: remove unneeded 'if (!show_only)' Thomas Gummerer (3): read-cache: fix reading the shared index for other repos split-index: don't write cache tree with null oid entries travis: run tests with GIT_TEST_SPLIT_INDEX Todd Zullinger (1): doc: mention 'git show' defaults to HEAD Yasushi SHOJI (1): bisect: debug: convert struct object to object_id brian m. carlson (1): docs/interpret-trailers: fix agreement error Ævar Arnfjörð Bjarmason (2): commit doc: document that -c, -C, -F and --fixup with -m error commit: add support for --fixup <commit> -m"<extra message>" Version v2.16.2; changes since v2.16.1: --------------------------------------- Andreas G. Schacker (1): doc/read-tree: remove obsolete remark Daniel Knittl-Frank (1): describe: prepend "tags/" when describing tags with embedded name Jason Merrill (1): git-svn: fix svn.pushmergeinfo handling of svn+ssh usernames. Jeff King (4): t5600: fix outdated comment about unborn HEAD t5600: modernize style clone: factor out dir_exists() helper clone: do not clean up directories we didn't create Junio C Hamano (2): merge: teach -Xours/-Xtheirs to symbolic link merge Git 2.16.2 Nguyễn Thái Ngọc Duy (1): add--interactive: ignore submodule changes except HEAD René Scharfe (9): commit: avoid allocation in clear_commit_marks_many() commit: use clear_commit_marks_many() in remove_redundant() ref-filter: use clear_commit_marks_many() in do_merge_filter() object: add clear_commit_marks_all() bisect: avoid using the rev_info flag leak_pending bundle: avoid using the rev_info flag leak_pending checkout: avoid using the rev_info flag leak_pending revision: remove the unused flag leak_pending commit: remove unused function clear_commit_marks_for_object_array() Thomas Gummerer (1): stash: don't delete untracked files that match pathspec Ævar Arnfjörð Bjarmason (2): perf: amend the grep tests to test grep.threads cat-file doc: document that -e will return some output Version v2.16.1; changes since v2.16.0: --------------------------------------- Eric Sunshine (1): t5601-clone: test case-conflicting files on case-insensitive filesystem Junio C Hamano (1): Git 2.16.1 brian m. carlson (1): repository: pre-initialize hash algo pointer Version v2.16.0; changes since v2.16.0-rc2: ------------------------------------------- Alexander Shopov (2): l10n: bg.po: Updated Bulgarian translation (3284t) l10n: bg.po: Updated Bulgarian translation (3288t) Changwoo Ryu (2): l10n: ko.po: Update Korean translation l10n: TEAMS: Add ko team members Christopher Díaz Riveros (3): l10n: Update Spanish translation l10n: es.po: Update Spanish Translation v2.16.0 l10n: es.po: Spanish translation 2.16.0 round 2 Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Fangyi Zhou (2): l10n: zh_CN Fix typo l10n: zh_CN translate parameter name Jean-Noël Avila (2): l10n: fr.po v2.16.0 round 1 l10n: fr.po 2.16 round 2 Jiang Xin (4): l10n: git.pot: v2.16.0 round 1 (64 new, 25 removed) l10n: git.pot: v2.16.0 round 2 (8 new, 4 removed) l10n: zh_CN: for git v2.16.0 l10n round 2 l10n: TEAMS: add zh_CN team members Jordi Mas (1): l10n: Fixes to Catalan translation Junio C Hamano (1): Git 2.16 Louis Bettens (1): l10n: fr.po: "worktree list" mistranslated as prune Peter Krefting (2): l10n: sv.po: Update Swedish translation (3284t0f0u) l10n: sv.po: Update Swedish translation (3288t0f0u) Ralf Thielow (2): l10n: de.po: improve messages when a branch starts to track another ref l10n: de.po: translate 72 new messages Robert Abel (1): l10n: fixes to German translation SZEDER Gábor (1): RelNotes: minor typofix Trần Ngọc Quân (1): l10n: vi.po(3288t): Updated Vietnamese translation for v2.16.0 round 2 Version v2.16.0-rc2; changes since v2.16.0-rc1: ----------------------------------------------- Beat Bolli (1): t3900: add some more quotes Jeff King (1): docs/diff-options: clarify scope of diff-filter types Johannes Schindelin (8): Allow the test suite to pass in a directory whose name contains spaces t0302 & t3900: add forgotten quotes rebase -p: fix quoting when calling `git merge` git gui: fix staging a second line to a 1-line file git-gui: avoid exception upon Ctrl+T in an empty list git-gui: fix exception when trying to stage with empty file list git-gui: allow Ctrl+T to toggle multiple paths mingw: handle GITPERLLIB in t0021 in a Windows-compatible way Junio C Hamano (3): merge-recursive: do not look at the index during recursive merge RelNotes update before -rc2 Git 2.16-rc2 Ralf Thielow (1): Documentation/git-worktree.txt: add missing ` SZEDER Gábor (9): travis-ci: fine tune the use of 'set -x' in 'ci/*' scripts travis-ci: don't install default addon packages for the 32 bit Linux build travis-ci: save prove state for the 32 bit Linux build travis-ci: only print test failures if there are test results available travis-ci: print the "tip of branch is exactly at tag" message in color travis-ci: create the cache directory early in the build process travis-ci: record and skip successfully built trees travis-ci: don't store P4 and Git LFS in the working tree travis-ci: check that all build artifacts are .gitignore-d Thomas Gummerer (1): oidset: don't return value from oidset_init Todd Zullinger (2): doc/SubmittingPatches: improve text formatting http: fix v1 protocol tests with apache httpd < 2.4 Ævar Arnfjörð Bjarmason (2): Makefile: NO_OPENSSL=1 should no longer imply BLK_SHA1=1 bisect: fix a regression causing a segfault Version v2.16.0-rc1; changes since v2.16.0-rc0: ----------------------------------------------- Dave Borowitz (1): config.txt: document behavior of backslashes in subsections Elijah Newren (3): t6044: recursive can silently incorporate dirty changes in a merge move index_has_changes() from builtin/am.c to merge.c for reuse merge-recursive: avoid incorporating uncommitted changes in a merge Jeff King (4): test-lib: silence "-x" cleanup under bash t5615: avoid re-using descriptor 4 test-lib: make "-x" work with "--verbose-log" t/Makefile: introduce TEST_SHELL_PATH Johannes Schindelin (5): rebase: do not continue when the todo list generation failed sequencer: strip bogus LF at end of error messages sequencer: remove superfluous conditional sequencer: report when noop has an argument sequencer: do not invent whitespace when transforming OIDs Julien Dusser (1): strbuf: fix urlencode format string on signed char Junio C Hamano (1): Git 2.16-rc1 Luke Diamand (1): git-p4: update multiple shelved change lists René Scharfe (2): http: use internal argv_array of struct child_process send-pack: use internal argv_array of struct child_process Stefan Beller (1): t/helper/test-lazy-name-hash: fix compilation Torsten Bögershausen (1): check-non-portable-shell.pl: `wc -l` may have leading WS Version v2.16.0-rc0; changes since v2.15.4: ------------------------------------------- Albert Astals Cid (1): completion: add --autostash and --no-autostash to pull Alex Vandiver (7): fsmonitor: read entirety of watchman output fsmonitor: set the PWD to the top of the working tree fsmonitor: don't bother pretty-printing JSON from watchman fsmonitor: document GIT_TRACE_FSMONITOR fsmonitor: delay updating state until after split index is merged fsmonitor: read from getcwd(), not the PWD environment variable fsmonitor: store fsmonitor bitmap before splitting index Anders Kaseorg (1): git-gui: sort entries in optimized tclIndex Andrey Okoshkin (1): merge-recursive: check GIT_MERGE_VERBOSITY only once Ann T Ropea (7): Documentation: revisions: fix typo: "three dot" ---> "three-dot" (in line with "two-dot"). Documentation: user-manual: limit usage of ellipsis print_sha1_ellipsis: introduce helper checkout: describe_detached_head: remove ellipsis after committish t4013: prepare for upcoming "diff --raw --abbrev" output format change diff: diff_aligned_abbrev: remove ellipsis after abbreviated SHA-1 value t4013: test new output from diff --abbrev --raw Antoine Beaupré (6): remote-mediawiki: limit filenames to legal remote-mediawiki: show known namespace choices on failure remote-mediawiki: skip virtual namespaces remote-mediawiki: support fetching from (Main) namespace remote-mediawiki: process namespaces in order remote-mediawiki: show progress while fetching namespaces Beat Bolli (1): contrib/git-jump: allow to configure the grep command Ben Peart (16): bswap: add 64 bit endianness helper get_be64 preload-index: add override to enable testing preload-index update-index: add a new --force-write-index option fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files. fsmonitor: add documentation for the fsmonitor extension. ls-files: Add support in ls-files to display the fsmonitor valid bit update-index: add fsmonitor support to update-index fsmonitor: add a test tool to dump the index extension split-index: disable the fsmonitor extension when running the split index test fsmonitor: add test cases for fsmonitor extension fsmonitor: add a sample integration script for Watchman fsmonitor: add a performance test fsmonitor: MINGW support for watchman integration fsmonitor: preserve utf8 filenames in fsmonitor-watchman log read_index_from(): speed index loading by skipping verification of the entry order fsmonitor: simplify determining the git worktree under Windows Brandon Williams (23): pkt-line: add packet_write function protocol: introduce protocol extension mechanisms daemon: recognize hidden request arguments upload-pack, receive-pack: introduce protocol version 1 connect: teach client to recognize v1 server response connect: tell server that the client understands v1 http: tell server that the client understands v1 i5700: add interop test for protocol transition ssh: introduce a 'simple' ssh variant add, reset: use DIFF_OPT_SET macro to set a diff flag diff: convert flags to be stored in bitfields diff: add flag to indicate textconv was set via cmdline diff: remove touched flags diff: remove DIFF_OPT_TST macro diff: remove DIFF_OPT_SET macro diff: remove DIFF_OPT_CLR macro diff: make struct diff_flags members lowercase pathspec: only match across submodule boundaries when requested diff-tree: read the index so attribute checks work in bare repositories submodule: convert stage_updated_gitmodules to take a struct index_state submodule: used correct index in is_staging_gitmodules_ok submodule: convert get_next_submodule to not rely on the_index path: document path functions Christian Couder (24): perf/run: add '--config' option to the 'run' script perf/run: add get_var_from_env_or_config() perf/run: add GIT_PERF_DIRS_OR_REVS perf/run: add calls to get_var_from_env_or_config() perf/run: add get_subsections() perf/run: update get_var_from_env_or_config() for subsections perf/run: add run_subsection() perf/run: show name of rev being built perf: store subsection results in "test-results/$GIT_PERF_SUBSECTION/" t0021/rot13-filter: fix list comparison t0021/rot13-filter: refactor packet reading functions t0021/rot13-filter: improve 'if .. elsif .. else' style t0021/rot13-filter: improve error message t0021/rot13-filter: add packet_initialize() t0021/rot13-filter: refactor checking final lf t0021/rot13-filter: add capability functions Git/Packet.pm: extract parts of t0021/rot13-filter.pl for reuse Git/Packet: clarify that packet_required_key_val_read allows EOF Git/Packet.pm: use 'if' instead of 'unless' list-objects-filter-options: fix 'keword' typo in comment git-compat-util: introduce skip_to_optional_arg() index-pack: use skip_to_optional_arg() diff: use skip_to_optional_arg() diff: use skip_to_optional_arg_default() Damien Marié (1): run-command: add hint when a hook is ignored Daniel Bensoussan (1): doc: reword gitworkflows.txt for neutrality Derrick Stolee (5): p4211-line-log.sh: add log --online --raw --parents perf test sha1_name: unroll len loop in find_unique_abbrev_r() sha1_name: parse less while finding common prefix sha1_name: minimize OID comparisons during disambiguation sha1_file: use strbuf_add() instead of strbuf_addf() Elijah Newren (6): sequencer: warn when internal merge may be suboptimal due to renameLimit progress: fix progress meters when dealing with lots of work diff: remove silent clamp of renameLimit sequencer: show rename progress during cherry picks merge-recursive: ignore_case shouldn't reject intentional removals strbuf: remove unused stripspace function alias Emily Xie (1): pathspec: die on empty strings as pathspec Eric Sunshine (3): worktree: invoke post-checkout hook (unless --no-checkout) clone: support 'clone --shared' from a worktree version --build-options: also report host CPU Eric Wong (1): git-svn: convert CRLF to LF in commit message to SVN Florian Klink (1): git-send-email: honor $PATH for sendmail binary Gennady Kupava (2): trace: remove trace key normalization trace: improve performance while category is disabled Guillaume Castagnino (1): gitweb: use filetest to allow ACLs Haaris Mehmood (1): config: add --expiry-date Hans Jerry Illikainen (2): merge: add config option for verifySignatures t: add tests for pull --verify-signatures Heiko Voigt (3): fetch: add test to make sure we stay backwards compatible implement fetching of moved submodules submodule: simplify decision tree whether to or not to fetch Ingo Ruhnke (1): remote-mediawiki: allow fetching namespaces with spaces J Wyman (1): for-each-ref: let upstream/push report the remote ref name Jacob Keller (1): diff: add tests for --relative without optional prefix value Jameson Miller (4): status: add option to show ignored files differently status: report matching ignored and normal untracked status: document options to show matching ignored files status: test ignored modes Jean-Noël Avila (1): submodule--helper.c: i18n: add a missing space in message Jeff Hostetler (9): dir: allow exclusions from blob in addition to file oidmap: add oidmap iterator methods oidset: add iterator methods to oidset list-objects: filter objects in traverse_commit_list rev-list: add list-objects filtering support pack-objects: add list-objects filtering list-objects-filter-options: support --no-filter rev-list: support --no-filter argument partial-clone: design doc Jeff King (11): revision: quit pruning diff more quickly when possible git-jump: give contact instructions in the README p5550: factor out nonsense-pack creation t/perf/lib-pack: use fast-import checkpoint to create packs p5551: add a script to test fetch pack-dir rescans everything_local: use "quick" object existence check sha1_file: fast-path null sha1 as a missing object git-status.txt: mention --no-optional-locks progress: set default delay threshold to 100%, not 0% docs/pretty-formats: mention commas in %(trailers) syntax cvsimport: apply shell-quoting regex globally Johannes Schindelin (4): for-each-ref: let upstream/push optionally report the remote name for-each-ref: test :remotename and :remoteref hashmap: adjust documentation to reflect reality version --build-options: report commit, too, if possible Jonathan Nieder (10): ssh test: make copy_ssh_wrapper_as clean up after itself connect: move no_fork fallback to git_tcp_connect connect: split git:// setup into a separate function connect: split ssh command line options into separate function connect: split ssh option computation to its own function ssh: 'auto' variant to select between 'ssh' and 'simple' ssh: 'simple' variant does not support -4/-6 ssh: 'simple' variant does not support --port connect: correct style of C-style comment generate-cmdlist: avoid non-deterministic output Jonathan Tan (10): connect: in ref advertisement, shallows are last Documentation: document Extra Parameters Tests: clean up and document submodule helpers Tests: clean up submodule recursive helpers diff: support anchoring line(s) diffcore-rename: make diff-tree -l0 mean -l<large> decorate: clean up and document API transport: remove unused "push" in vtable clone, fetch: remove redundant transport check transport: make transport vtable more private Junio C Hamano (26): t0027: do not use an empty string as a pathspec element describe: do not use cmd_*() as a subroutine merge-ours: do not use cmd_*() as a subroutine branch: streamline "attr_only" handling in validate_new_branchname() branch: split validate_new_branchname() into two xdiff: reassign xpparm_t.flags bits The first batch for 2.16 RelNotes: the second batch post 2.15 comes diff: --ignore-cr-at-eol RelNotes: the third batch for 2.16 branch: correctly reject refs/heads/{-dash,HEAD} RelNotes: the fourth batch for 2.16 RelNotes: the fifth batch for 2.16 hooks doc: clarify when receive-pack invokes its hooks RelNotes: the sixth batch for 2.16 RelNotes: the seventh batch t2020: test variations that matter RelNotes: the eighth batch diff: use skip_to_optional_arg_default() in parsing --relative t4045: reindent to make helpers readable RelNotes: the ninth batch RelNotes: the tenth batch t5573, t7612: clean up after unexpected success of 'pull' and 'merge' sequencer.c: drop 'const' from function return type RelNotes: the eleventh batch Git 2.16-rc0 Kaartic Sivaraam (11): builtin/branch: remove redundant check for HEAD git-rebase: clean up dashed-usages in messages Doc/checkout: checking out using @{-N} can lead to detached state branch: improve documentation and naming of create_branch() parameters branch: group related arguments of create_branch() branch: update warning message shown when copying a misnamed branch builtin/branch: strip refs/heads/ using skip_prefix Doc/check-ref-format: clarify information about @{-N} syntax rebase: consistently use branch_name variable rebase: distinguish user input by quoting it rebase: rebasing can also be done when HEAD is detached Kevin (1): remote-mediawiki: add namespace support Lars Schneider (3): refactor "dumb" terminal determination progress: drop delay-threshold code launch_editor(): indicate that Git waits for user input Liam Beguin (9): Documentation: move rebase.* configs to new file Documentation: use preferred name for the 'todo list' script rebase -i: set commit to null in exec commands rebase -i: refactor transform_todo_ids rebase -i: replace reference to sha1 with oid rebase -i: update functions to use a flags parameter rebase -i -x: add exec commands via the rebase--helper rebase -i: learn to abbreviate command names t3404: add test case for abbreviated commands Marius Paliga (1): builtin/push.c: add push.pushOption config Martin Ågren (15): sha1_file: do not leak `lock_file` treewide: prefer lockfiles on the stack lockfile: fix documentation on `close_lock_file_gently()` tempfile: fix documentation on `delete_tempfile()` checkout-index: simplify locking logic cache-tree: simplify locking logic apply: move lockfile into `apply_state` apply: remove `newfd` from `struct apply_state` cache.h: document `write_locked_index()` read-cache: drop explicit `CLOSE_LOCK`-flag read-cache: leave lock in right state in `write_locked_index()` read_cache: roll back lock in `update_index_if_able()` t7006: add tests for how git branch paginates branch: respect `pager.branch` in list-mode only branch: change default of `pager.branch` to "on" Michael Haggerty (10): t0000: check whether the shell supports the "local" keyword files_transaction_prepare(): don't leak flags to packed transaction prune_ref(): call `ref_transaction_add_update()` directly ref_transaction_update(): die on disallowed flags ref_transaction_add_update(): remove a check refs: tidy up and adjust visibility of the `ref_update` flags refs: rename constant `REF_NODEREF` to `REF_NO_DEREF` refs: rename constant `REF_ISPRUNING` to `REF_IS_PRUNING` write_packed_entry(): take `object_id` arguments refs: update some more docs to use "oid" rather than "sha1" Nicolas Morey-Chaisemartin (1): imap-send: URI encode server folder Olga Telezhnaya (2): format: create pretty.h file format: create docs for pretty.h Phil Hord (2): doc: prefer 'stash push' over 'stash save' stash: learn to parse -m/--message like commit does Pranit Bauva (6): bisect--helper: use OPT_CMDMODE instead of OPT_BOOL bisect--helper: rewrite `check_term_format` shell function in C bisect--helper: `write_terms` shell function in C bisect--helper: `bisect_clean_state` shell function in C t6030: explicitly test for bisection cleanup bisect--helper: `is_expected_rev` & `check_expected_revs` shell function in C Prathamesh Chavan (3): submodule--helper: introduce get_submodule_displaypath() submodule--helper: introduce for_each_listed_submodule() submodule: port submodule subcommand 'status' from shell to C Rafael Ascensão (1): log: add option to choose which refs to decorate Ramsay Jones (1): repository: fix a sparse 'using integer as NULL pointer' warning Randall S. Becker (1): install-doc-quick: allow specifying what ref to install Rasmus Villemoes (2): Documentation/config: add sendemail.tocmd to list preceding "See git-send-email(1)" completion: add git config sendemail.tocmd René Scharfe (14): notes: move hex_to_bytes() to hex.c and export it http-push: use hex_to_bytes() sha1_file: use hex_to_bytes() t4051: add test for comments preceding function lines xdiff: factor out is_func_rec() xdiff: show non-empty lines before functions with -W t7810: improve check of -W with user-defined function lines grep: update boundary variable for pre-context grep: show non-empty lines before functions with -W am: release strbuf after use in split_mail_mbox() fmt-merge-msg: avoid leaking strbuf in shortlog() strbuf: release memory on read error in strbuf_read_once() transport-helper: plug strbuf and string_list leaks p7519: improve check for prerequisite WATCHMAN Robert Abel (2): git-prompt: make __git_eread intended use explicit git-prompt: fix reading files with windows line endings Robert P. J. Day (4): bisect: mention "view" as an alternative to "visualize" doc: add missing "-n" (dry-run) option to reflog man page prune: add "--progress" to man page and usage msg notes: correct 'git notes prune' options to '[-n] [-v]' SZEDER Gábor (5): setup.c: fix comment about order of .git directory discovery travis-ci: introduce a $jobname variable for 'ci/*' scripts travis-ci: move setting environment variables to 'ci/lib-travisci.sh' travis-ci: set GIT_TEST_HTTPD in 'ci/lib-travisci.sh' travis-ci: use 'set -x' in 'ci/*' scripts for extra tracing output Simon Ruderich (1): config: document default value of http.sslVerify Stefan Beller (11): recursive submodules: detach HEAD from new state Documentation/checkout: clarify submodule HEADs to be detached t6120: fix typo in test name list-objects.c: factor out traverse_trees_and_blobs revision.h: introduce blob/tree walking in order of the commits builtin/describe.c: rename `oid` to avoid variable shadowing builtin/describe.c: print debug statements earlier builtin/describe.c: factor out describe_commit Documentation/git-clone: improve description for submodule recursing t/helper: ignore everything but sources builtin/describe.c: describe a blob Steffen Prohaska (1): doc: Mention info/attributes in gitrepository-layout Stephan Beyer (1): bisect run: die if no command is given Thomas Gummerer (11): stash: replace "git stash save" with "git stash push" in the documentation stash: mark "git stash save" deprecated in the man page stash: remove now superfluos help for "stash push" checkout: factor out functions to new lib file worktree: add can be created from any commit-ish worktree: add --[no-]track option to the add subcommand worktree: make add <path> <branch> dwim t/README: remove mention of adding copyright notices t/README: document test_cmp_rev worktree: add --guess-remote flag to add subcommand add worktree.guessRemote config option Todd Zullinger (4): branch doc: remove --set-upstream from synopsis t/lib-git-svn: cleanup inconsistent tab/space usage t/lib-git-svn.sh: improve svnserve tests with parallel make test RelNotes: minor typo fixes in 2.16.0 draft Torsten Bögershausen (3): add: introduce "--renormalize" convert: tighten the safe autocrlf handling t0027: Adapt the new MIX tests to Windows W. Trevor King (1): pull: pass --signoff/--no-signoff to "git merge" Wei Shuyu (1): http: support CURLPROXY_HTTPS brian m. carlson (29): walker: convert to struct object_id refs/files-backend: convert struct ref_to_prune to object_id refs: convert delete_ref and refs_delete_ref to struct object_id refs: convert update_ref and refs_update_ref to use struct object_id refs: prevent accidental NULL dereference in write_pseudoref refs: update ref transactions to use struct object_id Convert check_connected to use struct object_id refs: convert resolve_refdup and refs_resolve_refdup to struct object_id refs: convert read_ref and read_ref_full to object_id refs: convert dwim_ref and expand_ref to struct object_id builtin/reflog: convert remaining unsigned char uses to object_id refs: convert dwim_log to struct object_id pack-bitmap: convert traverse_bitmap_commit_list to object_id builtin/pack-objects: convert to struct object_id refs: convert peel_ref to struct object_id refs: convert read_ref_at to struct object_id refs: convert reflog_expire parameter to struct object_id sha1_file: convert index_path and index_fd to struct object_id Convert remaining callers of resolve_gitlink_ref to object_id refs: convert resolve_gitlink_ref to struct object_id worktree: convert struct worktree to object_id refs: convert resolve_ref_unsafe to struct object_id refs: convert peel_object to struct object_id refs: convert read_raw_ref backends to struct object_id refs/files-backend: convert static functions to object_id setup: expose enumerated repo info Add structure representing hash algorithm Integrate hash algorithm support with repo setup Switch empty tree and blob lookups to use hash abstraction Ævar Arnfjörð Bjarmason (2): test-lib: add LIBPCRE1 & LIBPCRE2 prerequisites grep: fix segfault under -P + PCRE2 <=10.30 + (*NO_JIT) Łukasz Stelmach (1): git-gui: prevent double UTF-8 conversion Version v2.15.4; changes since v2.15.3: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (20): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Git 2.15.4 Jonathan Nieder (1): submodule: reject submodule.update = !command in .gitmodules Version v2.15.3; changes since v2.15.2: --------------------------------------- Jeff King (3): submodule--helper: use "--" to signal end of clone options submodule-config: ban submodule urls that start with dash submodule-config: ban submodule paths that start with a dash Junio C Hamano (2): Git 2.14.5 Git 2.15.3 Version v2.15.2; changes since v2.15.1: --------------------------------------- Elijah Newren (1): merge-recursive: handle addition of submodule on our side of history Eric Wong (1): rebase: use mboxrd format to avoid split errors Jeff King (8): submodule-config: verify submodule names as paths is_ntfs_dotgit: use a size_t for traversing string is_hfs_dotgit: match other .git files skip_prefix: add case-insensitive variant verify_path: drop clever fallthrough verify_dotfile: mention case-insensitivity in comment update-index: stat updated files earlier verify_path: disallow symlinks in .gitmodules Johannes Schindelin (2): is_ntfs_dotgit: match other .git files is_{hfs,ntfs}_dotgitmodules: add tests Junio C Hamano (5): merge-base --fork-point doc: clarify the example and failure modes Prepare for 2.15.2 Git 2.13.7 Git 2.14.4 Git 2.15.2 Michael Haggerty (2): t1409: check that `packed-refs` is not rewritten unnecessarily files-backend: don't rewrite the `packed-refs` file unnecessarily Phillip Wood (2): config: avoid "write_in_full(fd, buf, len) != len" pattern sequencer: reschedule pick if index can't be locked René Scharfe (1): apply: update line lengths for --inaccurate-eof Stefan Beller (1): t/3512: demonstrate unrelated submodule/file conflict as cherry-pick failure Todd Zullinger (4): t/lib-gpg: fix gpgconf stderr redirect to /dev/null rebase: fix stderr redirect in apply_autostash() notes: send "Automatic notes merge failed" messages to stderr completion: add '--copy' option to 'git branch' Wei Shuyu (1): pull: pass -4/-6 option to 'git fetch' brian m. carlson (2): Documentation: enable compat-mode for Asciidoctor Documentation: convert SubmittingPatches to AsciiDoc Version v2.15.1; changes since v2.15.0: --------------------------------------- Adam Dinwoodie (3): t5580: add Cygwin support rebase -i: fix comment typo doc/SubmittingPatches: correct subject guidance Andrey Okoshkin (2): commit: check result of resolve_ref_unsafe diff: fix lstat() error handling in diff_populate_filespec() Brandon Williams (1): wt-status: actually ignore submodules when requested Carlos Martín Nieto (1): diff: --indent-heuristic is no longer experimental Charles Bailey (2): t4201: make use of abbreviation in the test more robust grep: fix NO_LIBPCRE1_JIT to fully disable JIT Dennis Kaarsemaker (1): credential-libsecret: unlock locked secrets Jacob Keller (1): sequencer: pass absolute GIT_DIR to exec commands Jakub Bereżański (2): t0302: check helper can handle empty credentials wincred: handle empty username/password correctly Jean Carlo Machado (1): fix typos in 2.15.0 release notes Jeff King (11): t4015: refactor --color-moved whitespace test t4015: check "negative" case for "-w --color-moved" t4015: test the output of "diff --color-moved -b" diff: fix whitespace-skipping with --color-moved diff: handle NULs in get_string_hash() test-ref-store: avoid passing NULL to printf remote: handle broken symrefs log: handle broken HEAD in decoration check worktree: handle broken symrefs in find_shared_symref() setup: avoid double slashes when looking for HEAD link_alt_odb_entries: make empty input a noop Johannes Schindelin (5): status: do not get confused by submodules in excluded directories mingw: include the full version information in the resources mingw: add experimental feature to redirect standard handles mingw: optionally redirect stderr/stdout via the same handle mingw: document the standard handle redirection Junio C Hamano (9): t5601: rm the target file of cp that could still be executing check-ref-format --branch: do not expand @{...} outside repository check-ref-format --branch: strip refs/heads/ using skip_prefix check-ref-format doc: --branch validates and expands <branch> column: do not include pager.c Start preparation for 2.15.1 Almost ready for 2.15.1 A bit more fixes for 2.15.1 Git 2.15.1 Kaartic Sivaraam (1): mailmap: use Kaartic Sivaraam's new address Kevin Daudt (1): column: show auto columns when pager is active Martin Ågren (7): grep: take the read-lock when adding a submodule bisect: change calling-convention of `find_bisection()` bisect: fix memory leak in `find_bisection()` bisect: fix off-by-one error in `best_bisection_sorted()` bisect: fix memory leak when returning best element builtin/merge-base: free commit lists reduce_heads: fix memory leaks René Scharfe (6): sequencer: factor out rewrite_file() sequencer: use O_TRUNC to truncate files imap-send: handle NULL return of next_arg() imap-send: handle missing response codes gracefully apply: avoid out-of-bounds access in fuzzy_matchlines() config: flip return value of write_section() SZEDER Gábor (2): travis-ci: fix running P4 and Git LFS tests in Linux build jobs travis-ci: don't build Git for the static analysis job Simon Ruderich (2): sequencer.c: check return value of close() in rewrite_file() wrapper.c: consistently quote filenames in error messages Stefan Beller (3): xdiff-interface: export comparing and hashing strings diff.c: get rid of duplicate implementation config: document blame configuration Thomas Braun (1): completion: add remaining flags to checkout Todd Zullinger (3): Replace Free Software Foundation address in license notices Replace Free Software Foundation address in license notices RelNotes: minor typo fixes in 2.15.1 draft Version v2.15.0; changes since v2.15.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (3245t) Andre Hinrichs (1): l10n: de.po: fix typos Andrey Okoshkin (1): path.c: use xmalloc() in add_to_trie() Changwoo Ryu (1): l10n: ko.po: Update Korean translation Christopher Díaz (3): l10n: es.po: initial Spanish version git 2.14.0 l10n: es.po: spanish added to TEAMS l10n: es.po: Update translation v2.15.0 round 1 Christopher Díaz Riveros (1): l10n: es.po: v2.15.0 round 2 Dimitriy Ryazantcev (2): l10n: ru.po: update Russian translation l10n: ru.po: update Russian translation Jean-Noel Avila (1): l10n: fr.po fix some mistakes Jean-Noël Avila (1): l10n: fr.po: v2.15.0 round 2 Jiang Xin (3): l10n: git.pot: v2.15.0 round 1 (68 new, 36 removed) l10n: git.pot: v2.15.0 round 2 (2 new, 2 removed) l10n: zh_CN: for git v2.15.0 l10n round 2 Jordi Mas (2): l10n: Update Catalan translation l10n: Update Catalan translation Junio C Hamano (3): Git 2.14.3 Hopefully final batch before 2.15 Git 2.15 Michael Haggerty (2): t1404: add a bunch of tests of D/F conflicts files_transaction_prepare(): fix handling of ref lock failure Nathan Payre (1): config doc: clarify "git config --path" example Nicolas Cornu (1): l10n: fr.po change translation of "First, rewinding" Peter Krefting (2): l10n: sv.po: Update Swedish translation (3245t0f0u) l10n: sv.po: Update Swedish translation (3245t0f0u) Ralf Thielow (1): l10n: de.po: translate 70 new messages Ray Chen (1): l10n: zh_CN: review for git v2.15.0 l10n round 2 SZEDER Gábor (1): rev-list-options.txt: use correct directional reference Sebastian Schuberth (1): docs: fix formatting of rev-parse's --show-superproject-working-tree Trần Ngọc Quân (2): l10n: vi.po(3245t): Updated Vietnamese translation for v2.15.0 l10n: vi.po(3245t): Updated Vietnamese translation for v2.15.0 round 2 Version v2.15.0-rc2; changes since v2.15.0-rc1: ----------------------------------------------- David Glasser (1): doc: list filter-branch subdirectory-filter first Jeff King (5): diff: fix infinite loop with --color-moved --ignore-space-change Revert "color: make "always" the same as "auto" in config" Revert "t6006: drop "always" color config tests" Revert "color: check color.ui in git_default_config()" tag: respect color.ui config Junio C Hamano (7): checkout doc: clarify command line args for "checkout paths" mode Crawling towards -rc2 fetch doc: src side of refspec could be full SHA-1 Preparing for rc2 continues branch doc: sprinkle a few commas for readability Prepare for 2.14.3 Git 2.15-rc2 Ralf Thielow (2): sequencer.c: fix and unify error messages in rearrange_squash() sequencer.c: unify an error message W. Trevor King (1): Documentation/merge-options.txt: describe -S/--gpg-sign for 'pull' Version v2.15.0-rc1; changes since v2.15.0-rc0: ----------------------------------------------- Derrick Stolee (1): cleanup: fix possible overflow errors in binary search Jean-Noël Avila (1): i18n: add a missing space in message Jeff King (19): test-terminal: set TERM=vt100 t4015: prefer --color to -c color.diff=always t3701: use test-terminal to collect color output t7508: use test_terminal for color output t7502: use diff.noprefix for --verbose test t6006: drop "always" color config tests t3203: drop "always" color test t3205: use --color instead of color.branch=always provide --color option for all ref-filter users color: make "always" the same as "auto" in config t4015: use --color with --color-moved t7301: use test_terminal to check color path.c: fix uninitialized memory access sha1_loose_object_info: handle errors from unpack_sha1_rest t3308: create a real ref directory/file conflict refs_resolve_ref_unsafe: handle d/f conflicts for writes write_entry: fix leak when retrying delayed filter write_entry: avoid reading blobs in CE_RETRY case write_entry: untangle symlink and regular-file cases Johannes Sixt (1): sub-process: use child_process.args instead of child_process.argv Jonathan Nieder (2): technical doc: add a design doc for hash function transition strbuf doc: reuse after strbuf_release is fine Jonathan Tan (1): oidmap: map with OID as key Junio C Hamano (2): Prepare for -rc1 Git 2.15-rc1 Kaartic Sivaraam (2): branch: change the error messages to be more meaningful setup: update error message to be more meaningful Lars Schneider (2): entry.c: update cache entry only for existing files entry.c: check if file exists after checkout Martin Ågren (1): builtin/: add UNLEAKs Randall S. Becker (1): poll.c: always set revents, even if to zero René Scharfe (3): test-stringlist: avoid buffer underrun when sorting nothing fsck: handle NULL return of lookup_blob() and lookup_tree() .mailmap: normalize name for René Scharfe Stefan Beller (2): branch: reset instead of release a strbuf tests: fix diff order arguments in test_cmp Taylor Blau (8): pretty.c: delimit "%(trailers)" arguments with "," t4205: unfold across multiple lines doc: 'trailers' is the preferred way to format trailers doc: use "`<literal>`"-style quoting for literal strings t6300: refactor %(trailers) tests ref-filter.c: use trailer_opts to format trailers ref-filter.c: parse trailers arguments with %(contents) atom ref-filter.c: pass empty-string as NULL to atom parsers Thomas Braun (1): completion: add --broken and --dirty to describe Thomas Gummerer (1): http-push: fix construction of hex value from path Todd Zullinger (1): api-argv-array.txt: remove broken link to string-list API Version v2.15.0-rc0; changes since v2.14.6: ------------------------------------------- Brandon Casey (7): t1502: demonstrate rev-parse --parseopt option mis-parsing rev-parse parseopt: do not search help text for flag chars rev-parse parseopt: interpret any whitespace as start of help text git-rebase: don't ignore unexpected command line arguments t0040,t1502: Demonstrate parse_options bugs parse-options: write blank line to correct output stream parse-options: only insert newline in help text if needed Brandon Williams (27): repo_read_index: don't discard the index repository: have the_repository use the_index cache.h: add GITMODULES_FILE macro config: add config_from_gitmodules submodule: remove submodule.fetchjobs from submodule-config parsing submodule: remove fetch.recursesubmodules from submodule-config parsing submodule: check for unstaged .gitmodules outside of config parsing submodule: check for unmerged .gitmodules outside of config parsing submodule: merge repo_read_gitmodules and gitmodules_config grep: recurse in-process using 'struct repository' t7411: check configuration parsing errors submodule: don't use submodule_from_name add, reset: ensure submodules can be added or reset submodule--helper: don't overlay config in remote_submodule_branch submodule--helper: don't overlay config in update-clone fetch: don't overlay config with submodule-config submodule: don't rely on overlayed config when setting diffopts unpack-trees: don't respect submodule.update submodule: remove submodule_config callback routine diff: stop allowing diff to have submodules configured in .git/config submodule-config: remove support for overlaying repository config submodule-config: move submodule-config functions to submodule-config.c submodule-config: lazy-load a repository's .gitmodules file unpack-trees: improve loading of .gitmodules submodule: remove gitmodules_config clang-format: outline the git project's coding style Makefile: add style build rule Eric Blake (1): git-contacts: also recognise "Reported-by:" Han-Wen Nienhuys (4): submodule.c: describe submodule_to_gitdir() in a new comment real_path: clarify return value ownership read_gitfile_gently: clarify return value ownership. string-list.h: move documentation from Documentation/api/ into header Heiko Voigt (1): add test for bug in git-mv for recursive submodules Ian Campbell (4): filter-branch: reset $GIT_* before cleaning up filter-branch: preserve and restore $GIT_AUTHOR_* and $GIT_COMMITTER_* filter-branch: stash away ref map in a branch filter-branch: use hash-object instead of mktag Jameson Miller (1): Improve performance of git status --ignored Jeff Hostetler (1): hashmap: add API to disable item counting when threaded Jeff King (53): strbuf: use designated initializers in STRBUF_INIT trailer: put process_trailers() options into a struct interpret-trailers: add an option to show only the trailers interpret-trailers: add an option to show only existing trailers interpret-trailers: add an option to unfold values interpret-trailers: add --parse convenience option pretty: move trailer formatting to trailer.c t4205: refactor %(trailers) tests pretty: support normalization options for %(trailers) write_index_as_tree: cleanup tempfile on error setup_temporary_shallow: avoid using inactive tempfile setup_temporary_shallow: move tempfile struct into function verify_signed_buffer: prefer close_tempfile() to close() always check return value of close_tempfile tempfile: do not delete tempfile on failed close lockfile: do not rollback lock on failed close tempfile: prefer is_tempfile_active to bare access tempfile: handle NULL tempfile pointers gracefully tempfile: replace die("BUG") with BUG() tempfile: factor out activation tempfile: factor out deactivation tempfile: robustify cleanup handler tempfile: release deactivated strbufs instead of resetting tempfile: use list.h for linked list tempfile: remove deactivated list entries tempfile: auto-allocate tempfiles on heap lockfile: update lifetime requirements in documentation ref_lock: stop leaking lock_files stop leaking lock structs in some simple cases test-lib: --valgrind should not override --verbose-log test-lib: set LSAN_OPTIONS to abort by default add: free leaked pathspec after add_files_to_cache() update-index: fix cache entry leak in add_one_file() config: plug user_config leak reset: make tree counting less confusing reset: free allocated tree buffers repository: free fields before overwriting them set_git_dir: handle feeding gitdir to itself add UNLEAK annotation for reducing leak false positives shortlog: skip format/parse roundtrip for internal traversal prefix_ref_iterator: break when we leave the prefix revision: replace "struct cmdline_pathspec" with argv_array test-line-buffer: simplify command parsing curl_trace(): eliminate switch fallthrough consistently use "fallthrough" comments in switches files-backend: prefer "0" for write_in_full() error check notes-merge: drop dead zero-write code prefer "!=" when checking read_in_full() result avoid looking at errno for short read_in_full() returns distinguish error versus short read from read_in_full() worktree: use xsize_t to access file size worktree: check the result of read_in_full() git: add --no-optional-locks option Job Snijders (1): gitweb: add 'raw' blob_plain link in history overview Joel Teichroeb (3): stash: add a test for stash create with no files stash: add a test for when apply fails during stash branch stash: add a test for stashing in a detached state Johannes Schindelin (12): t3415: verify that an empty instructionFormat is handled as before rebase -i: generate the script via rebase--helper rebase -i: remove useless indentation rebase -i: do not invent onelines when expanding/collapsing SHA-1s rebase -i: also expand/collapse the SHA-1s via the rebase--helper t3404: relax rebase.missingCommitsCheck tests rebase -i: check for missing commits in the rebase--helper rebase -i: skip unnecessary picks using the rebase--helper t3415: test fixup with wrapped oneline rebase -i: rearrange fixup/squash lines using the rebase--helper Win32: simplify loading of DLL functions clang-format: adjust line break penalties Jonathan Nieder (2): pack: make packed_git_mru global a value instead of a pointer pathspec doc: parse_pathspec does not maintain references to args Jonathan Tan (31): sha1_file: set whence in storage-specific info fn sha1_file: remove read_packed_sha1() diff: avoid redundantly clearing a flag diff: respect MIN_BLOCK_LENGTH for last block diff: define block by number of alphanumeric chars pack: move pack name-related functions pack: move static state variables pack: move pack_report() pack: move open_pack_index(), parse_pack_index() pack: move release_pack_memory() pack: move pack-closing functions pack: move use_pack() pack: move unuse_pack() pack: move add_packed_git() pack: move install_packed_git() pack: move {,re}prepare_packed_git and approximate_object_count pack: move unpack_object_header_buffer() pack: move get_size_from_delta() pack: move unpack_object_header() pack: move clear_delta_base_cache(), packed_object_info(), unpack_entry() pack: move nth_packed_object_{sha1,oid} pack: move check_pack_index_ptr(), nth_packed_object_offset() pack: move find_pack_entry_one(), is_pack_valid() pack: move find_sha1_pack() pack: move find_pack_entry() and make it global pack: move has_sha1_pack() pack: move has_pack_index() pack: move for_each_packed_object() Remove inadvertently added outgoing/packfile.h Add t/helper/test-write-cache to .gitignore git-compat-util: make UNLEAK less error-prone Junio C Hamano (25): t1408: add a test of stale packed refs covered by loose refs clean.c: use designated initializer Start post 2.14 cycle The first batch of topics after the 2.14 cycle diff: retire sane_truncate_fn progress: simplify "delayed" progress API The second batch post 2.14 t4200: give us a clean slate after "rerere gc" tests t4200: make "rerere gc" test more robust t4200: gather "rerere gc" together t4200: parameterize "rerere gc" custom expiry test rerere: represent time duration in timestamp_t internally rerere: allow approxidate in gc.rerereResolved/gc.rerereUnresolved The third batch post 2.14 The fourth batch post 2.14 The fifth batch post 2.14 The sixth batch post 2.14 The seventh batch post 2.14 The eighth batch for 2.15 branch: fix "copy" to never touch HEAD The ninth batch for 2.15 The tenth batch for 2.15 The eleventh batch for 2.15 The twelfth batch for 2.15 Git 2.15-rc0 Kaartic Sivaraam (10): hook: cleanup script hook: name the positional variables hook: add sign-off using "interpret-trailers" hook: add a simple first example hook: use correct logical variable t3200: cleanup cruft of a test builtin/branch: stop supporting the "--set-upstream" option branch: quote branch/ref names to improve readability help: change a message to be more precise commit-template: change a message to be more intuitive Kevin Willford (9): format-patch: have progress option while generating patches rebase: turn on progress option by default for format-patch commit: skip discarding the index if there is no pre-commit hook perf: add test for writing the index read-cache: fix memory leak in do_write_index read-cache: avoid allocating every ondisk entry when writing merge-recursive: fix memory leak merge-recursive: remove return value from get_files_dirs merge-recursive: change current file dir string_lists to hashmap Lars Schneider (1): convert: display progress for filtered objects that have been delayed Martin Koegler (2): diff-delta: fix encoding size that would not fit in "unsigned int" diff-delta: do not allow delta offset truncation Martin Ågren (20): Doc/git-{push,send-pack}: correct --sign= to --signed= t5334: document that git push --signed=1 does not work config: introduce git_parse_maybe_bool_text config: make git_{config,parse}_maybe_bool equivalent treewide: deprecate git_config_maybe_bool, use git_parse_maybe_bool parse_decoration_style: drop unused argument `var` doc/interpret-trailers: fix "the this" typo Documentation/user-manual: update outdated example output treewide: correct several "up-to-date" to "up to date" config: remove git_config_maybe_bool refs/files-backend: add longer-scoped copy of string to list refs/files-backend: fix memory leak in lock_ref_for_update refs/files-backend: correct return value in lock_ref_for_update refs/files-backend: add `refname`, not "HEAD", to list builtin/commit: fix memory leak in `prepare_index()` commit: fix memory leak in `reduce_heads()` leak_pending: use `object_array_clear()`, not `free()` object_array: use `object_array_clear()`, not `free()` object_array: add and use `object_array_pop()` pack-bitmap[-write]: use `object_array_clear()`, don't leak Max Kirillov (1): describe: teach --match to handle branches and remotes Michael Haggerty (76): add_packed_ref(): teach function to overwrite existing refs packed_ref_store: new struct packed_ref_store: move `packed_refs_path` here packed_ref_store: move `packed_refs_lock` member here clear_packed_ref_cache(): take a `packed_ref_store *` parameter validate_packed_ref_cache(): take a `packed_ref_store *` parameter get_packed_ref_cache(): take a `packed_ref_store *` parameter get_packed_refs(): take a `packed_ref_store *` parameter add_packed_ref(): take a `packed_ref_store *` parameter lock_packed_refs(): take a `packed_ref_store *` parameter commit_packed_refs(): take a `packed_ref_store *` parameter rollback_packed_refs(): take a `packed_ref_store *` parameter get_packed_ref(): take a `packed_ref_store *` parameter repack_without_refs(): take a `packed_ref_store *` parameter packed_peel_ref(): new function, extracted from `files_peel_ref()` packed_ref_store: support iteration packed_read_raw_ref(): new function, replacing `resolve_packed_ref()` packed-backend: new module for handling packed references packed_ref_store: make class into a subclass of `ref_store` commit_packed_refs(): report errors rather than dying commit_packed_refs(): use a staging file separate from the lockfile packed_refs_lock(): function renamed from lock_packed_refs() packed_refs_lock(): report errors via a `struct strbuf *err` packed_refs_unlock(), packed_refs_is_locked(): new functions clear_packed_ref_cache(): don't protest if the lock is held commit_packed_refs(): remove call to `packed_refs_unlock()` repack_without_refs(): don't lock or unlock the packed refs t3210: add some tests of bogus packed-refs file contents read_packed_refs(): die if `packed-refs` contains bogus data packed_ref_store: handle a packed-refs file that is a symlink files-backend: cheapen refname_available check when locking refs refs: retry acquiring reference locks for 100ms notes: make GET_NIBBLE macro more robust load_subtree(): remove unnecessary conditional load_subtree(): reduce the scope of some local variables load_subtree(): fix incorrect comment load_subtree(): separate logic for internal vs. terminal entries load_subtree(): check earlier whether an internal node is a tree entry load_subtree(): only consider blobs to be potential notes get_oid_hex_segment(): return 0 on success load_subtree(): combine some common code get_oid_hex_segment(): don't pad the rest of `oid` hex_to_bytes(): simpler replacement for `get_oid_hex_segment()` load_subtree(): declare some variables to be `size_t` load_subtree(): check that `prefix_len` is in the expected range packed-backend: don't adjust the reference count on lock/unlock struct ref_transaction: add a place for backends to store data packed_ref_store: implement reference transactions packed_delete_refs(): implement method files_pack_refs(): use a reference transaction to write packed refs prune_refs(): also free the linked list files_initial_transaction_commit(): use a transaction for packed refs t1404: demonstrate two problems with reference transactions files_ref_store: use a transaction to update packed refs packed-backend: rip out some now-unused code files_transaction_finish(): delete reflogs before references ref_iterator: keep track of whether the iterator output is ordered packed_ref_cache: add a backlink to the associated `packed_ref_store` die_unterminated_line(), die_invalid_line(): new functions read_packed_refs(): use mmap to read the `packed-refs` file read_packed_refs(): only check for a header at the top of the file read_packed_refs(): make parsing of the header line more robust read_packed_refs(): read references with minimal copying packed_ref_cache: remember the file-wide peeling state mmapped_ref_iterator: add iterator over a packed-refs file mmapped_ref_iterator_advance(): no peeled value for broken refs packed-backend.c: reorder some definitions packed_ref_cache: keep the `packed-refs` file mmapped if possible read_packed_refs(): ensure that references are ordered when read packed_ref_iterator_begin(): iterate using `mmapped_ref_iterator` packed_read_raw_ref(): read the reference from the mmapped buffer ref_store: implement `refs_peel_ref()` generically packed_ref_store: get rid of the `ref_cache` entirely ref_cache: remove support for storing peeled values mmapped_ref_iterator: inline into `packed_ref_iterator` packed-backend.c: rename a bunch of things and update comments Michael J Gruber (4): t7004: move limited stack prereq to test-lib t6120: test name-rev --all and --stdin t6120: clean up state after breaking repo t6120: test describe and name-rev with deep repos Nguyễn Thái Ngọc Duy (16): revision.h: new flag in struct rev_info wrt. worktree-related refs refs.c: use is_dir_sep() in resolve_gitlink_ref() revision.c: refactor add_index_objects_to_pending() revision.c: --indexed-objects add objects from all worktrees refs.c: refactor get_submodule_ref_store(), share common free block refs: move submodule slash stripping code to get_submodule_ref_store refs: add refs_head_ref() revision.c: use refs_for_each*() instead of for_each_*_submodule() refs.c: move for_each_remote_ref_submodule() to submodule.c refs: remove dead for_each_*_submodule() revision.c: --all adds HEAD from all worktrees files-backend: make reflog iterator go through per-worktree reflog revision.c: --reflog add HEAD reflog from all worktrees rev-list: expose and document --single-worktree refs.c: remove fallback-to-main-store code get_submodule_ref_store() refs.c: reindent get_submodule_ref_store() Nicolas Morey-Chaisemartin (7): stash: clean untracked files before reset pull: fix cli and config option parsing order pull: honor submodule.recurse config option imap-send: return with error if curl failed imap-send: add wrapper to get server credentials if needed imap_send: setup_curl: retreive credentials if not set in config file imap-send: use curl by default when possible Paolo Bonzini (4): trailers: export action enums and corresponding lookup functions trailers: introduce struct new_trailer_item interpret-trailers: add options for actions interpret-trailers: fix documentation typo Patryk Obara (10): sha1_file: fix definition of null_sha1 commit: replace the raw buffer with strbuf in read_graft_line commit: allocate array using object_id size commit: rewrite read_graft_line builtin/hash-object: convert to struct object_id read-cache: convert to struct object_id sha1_file: convert index_path to struct object_id sha1_file: convert index_fd to struct object_id sha1_file: convert hash_sha1_file_literally to struct object_id sha1_file: convert index_stream to struct object_id Raman Gupta (1): contrib/rerere-train: optionally overwrite existing resolutions Ramsay Jones (3): test-lib: don't use ulimit in test prerequisites on cygwin test-lib: use more compact expression in PIPE prerequisite t9010-*.sh: skip all tests if the PIPE prereq is missing René Scharfe (49): tree-diff: don't access hash of NULL object_id pointer notes: don't access hash of NULL object_id pointer receive-pack: don't access hash of NULL object_id pointer tree-walk: convert fill_tree_descriptor() to object_id apply: check date of potential epoch timestamps first apply: remove epoch date from regex am: release strbufs after use in detect_patch_format() am: release strbuf on error return in hg_patch_to_mail() am: release strbuf after use in safe_to_abort() check-ref-format: release strbuf after use in check_ref_format_branch() clean: release strbuf after use in remove_dirs() clone: release strbuf after use in remove_junk() commit: release strbuf on error return in commit_tree_extended() connect: release strbuf on error return in git_connect() convert: release strbuf on error return in filter_buffer_or_fd() diff: release strbuf after use in diff_summary() diff: release strbuf after use in show_rename_copy() diff: release strbuf after use in show_stats() help: release strbuf on error return in exec_man_konqueror() help: release strbuf on error return in exec_man_man() help: release strbuf on error return in exec_woman_emacs() mailinfo: release strbuf after use in handle_from() mailinfo: release strbuf on error return in handle_boundary() merge: release strbuf after use in save_state() merge: release strbuf after use in write_merge_heads() notes: release strbuf after use in notes_copy_from_stdin() refs: release strbuf on error return in write_pseudoref() remote: release strbuf after use in read_remote_branches() remote: release strbuf after use in migrate_file() remote: release strbuf after use in set_url() send-pack: release strbuf on error return in send_pack() sha1_file: release strbuf on error return in index_path() shortlog: release strbuf after use in insert_one_record() sequencer: release strbuf after use in save_head() transport-helper: release strbuf after use in process_connect_service() userdiff: release strbuf after use in userdiff_get_textconv() utf8: release strbuf on error return in strbuf_utf8_replace() vcs-svn: release strbuf after use in end_revision() wt-status: release strbuf after use in read_rebase_todolist() wt-status: release strbuf after use in wt_longstatus_print_tracking() refs: make sha1 output parameter of refs_resolve_ref_unsafe() optional refs: pass NULL to refs_resolve_ref_unsafe() if hash is not needed refs: pass NULL to resolve_ref_unsafe() if hash is not needed refs: pass NULL to refs_resolve_refdup() if hash is not needed refs: pass NULL to resolve_refdup() if hash is not needed path: use strbuf_add_real_path() use strbuf_addstr() for adding strings to strbufs graph: use strbuf_addchars() to add spaces repository: use FREE_AND_NULL Sahil Dua (2): config: create a function to format section headers branch: add a --copy (-c) option to go with --move (-m) Stefan Beller (46): diff.c: readability fix diff.c: move line ending check into emit_hunk_header diff.c: factor out diff_flush_patch_all_file_pairs diff.c: introduce emit_diff_symbol diff.c: emit_diff_symbol learns DIFF_SYMBOL_CONTEXT_MARKER diff.c: emit_diff_symbol learns DIFF_SYMBOL_CONTEXT_FRAGINFO diff.c: emit_diff_symbol learns DIFF_SYMBOL_NO_LF_EOF diff.c: migrate emit_line_checked to use emit_diff_symbol diff.c: emit_diff_symbol learns DIFF_SYMBOL_WORDS[_PORCELAIN] diff.c: emit_diff_symbol learns DIFF_SYMBOL_CONTEXT_INCOMPLETE diff.c: emit_diff_symbol learns DIFF_SYMBOL_FILEPAIR_{PLUS, MINUS} diff.c: emit_diff_symbol learns DIFF_SYMBOL_HEADER diff.c: emit_diff_symbol learns about DIFF_SYMBOL_BINARY_FILES diff.c: emit_diff_symbol learns DIFF_SYMBOL_REWRITE_DIFF submodule.c: migrate diff output to use emit_diff_symbol diff.c: convert emit_binary_diff_body to use emit_diff_symbol diff.c: convert show_stats to use emit_diff_symbol diff.c: convert word diffing to use emit_diff_symbol diff.c: emit_diff_symbol learns about DIFF_SYMBOL_STAT_SEP diff.c: emit_diff_symbol learns about DIFF_SYMBOL_SUMMARY diff.c: buffer all output if asked to diff.c: color moved lines differently diff.c: color moved lines differently, plain mode diff.c: add dimming to moved line detection diff: document the new --color-moved setting attr.c: drop hashmap_cmp_fn cast builtin/difftool.c: drop hashmap_cmp_fn cast builtin/describe: drop hashmap_cmp_fn cast config.c: drop hashmap_cmp_fn cast convert/sub-process: drop cast to hashmap_cmp_fn patch-ids.c: drop hashmap_cmp_fn cast remote.c: drop hashmap_cmp_fn cast submodule-config.c: drop hashmap_cmp_fn cast name-hash.c: drop hashmap_cmp_fn cast t/helper/test-hashmap: use custom data instead of duplicate cmp functions commit: convert lookup_commit_graft to struct object_id tag: convert gpg_verify_tag to use struct object_id t1200: remove t1200-tutorial.sh builtin/merge: honor commit-msg hook for merges push, fetch: error out for submodule entries not pointing to commits replace-objects: evaluate replacement refs without using the object store Documentation/githooks: mention merge in commit-msg hook Documentation/config: clarify the meaning of submodule.<name>.update t7406: submodule.<name>.update command must not be run from .gitmodules diff: correct newline in summary for renamed files submodule: correct error message for missing commits Stephan Beyer (1): clang-format: add a comment about the meaning/status of the Takashi Iwai (2): sha1dc: build git plumbing code more explicitly sha1dc: allow building with the external sha1dc library Thomas Gummerer (1): read-cache: fix index corruption with index v4 Tom G. Christensen (2): http: fix handling of missing CURLPROTO_* http: use a feature check to enable GSSAPI delegation control William Duclot (1): rebase: make resolve message clearer for inexperienced users brian m. carlson (12): builtin/fsck: convert remaining caller of get_sha1 to object_id builtin/merge-tree: convert remaining caller of get_sha1 to object_id submodule: convert submodule config lookup to use object_id remote: convert struct push_cas to struct object_id sequencer: convert to struct object_id builtin/update_ref: convert to struct object_id bisect: convert bisect_checkout to struct object_id builtin/unpack-file: convert to struct object_id Convert remaining callers of get_sha1 to get_oid. sha1_name: convert get_sha1* to get_oid* sha1_name: convert GET_SHA1* flags to GET_OID* sha1_name: convert uses of 40 to GIT_SHA1_HEXSZ Ævar Arnfjörð Bjarmason (1): branch: add test for -m renaming multiple config sections Øystein Walle (1): rev-parse: rev-parse: add --is-shallow-repository Łukasz Gryglicki (1): merge: add a --signoff flag Version v2.14.6; changes since v2.14.5: --------------------------------------- Garima Singh (2): test-path-utils: offer to run a protectNTFS/protectHFS benchmark tests: add a helper to stress test argument quoting Jeff King (7): t9300: drop some useless uses of cat t9300: create marks files for double-import-marks test fast-import: tighten parsing of boolean command line options fast-import: stop creating leading directories for import-marks fast-import: delay creating leading directories for export-marks fast-import: disallow "feature export-marks" by default fast-import: disallow "feature import-marks" by default Johannes Schindelin (19): clone --recurse-submodules: prevent name squatting on Windows mingw: disallow backslash characters in tree objects' file names path.c: document the purpose of `is_ntfs_dotgit()` is_ntfs_dotgit(): only verify the leading segment path: safeguard `.git` against NTFS Alternate Streams Accesses is_ntfs_dotgit(): speed it up mingw: fix quoting of arguments path: also guard `.gitmodules` against NTFS Alternate Data Streams protect_ntfs: turn on NTFS protection by default Disallow dubiously-nested submodule git directories quote-stress-test: accept arguments to test via the command-line t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials unpack-trees: let merged_entry() pass through do_add_entry()'s errors mingw: refuse to access paths with illegal characters quote-stress-test: offer to test quoting arguments for MSYS2 sh mingw: refuse to access paths with trailing spaces or periods mingw: handle `subst`-ed "DOS drives" Git 2.14.6 Version v2.14.5; changes since v2.14.4: --------------------------------------- Jeff King (3): submodule--helper: use "--" to signal end of clone options submodule-config: ban submodule urls that start with dash submodule-config: ban submodule paths that start with a dash Junio C Hamano (1): Git 2.14.5 Version v2.14.4; changes since v2.14.3: --------------------------------------- Jeff King (8): submodule-config: verify submodule names as paths is_ntfs_dotgit: use a size_t for traversing string is_hfs_dotgit: match other .git files skip_prefix: add case-insensitive variant verify_path: drop clever fallthrough verify_dotfile: mention case-insensitivity in comment update-index: stat updated files earlier verify_path: disallow symlinks in .gitmodules Johannes Schindelin (2): is_ntfs_dotgit: match other .git files is_{hfs,ntfs}_dotgitmodules: add tests Junio C Hamano (2): Git 2.13.7 Git 2.14.4 Version v2.14.3; changes since v2.14.2: --------------------------------------- Adam Dinwoodie (1): doc: correct command formatting Ann T Ropea (1): request-pull: capitalise "Git" to make it a proper noun Ben Boeckel (1): Documentation: mention that `eol` can change the dirty status of paths Christian Couder (1): sha1-lookup: remove sha1_entry_pos() from header file Daniel Watkins (1): diff-highlight: add clean target to Makefile Eric Rannaud (1): fast-import: checkpoint: dump branches/tags/marks even if object_count==0 Evan Zacks (1): doc: fix minor typos (extra/duplicated words) Han-Wen Nienhuys (1): submodule.h: typofix Ilya Kantor (1): userdiff: fix HTML hunk header regexp Jeff King (36): sha1_file: drop experimental GIT_USE_LOOKUP search config: use a static lock_file struct rev-parse: don't trim bisect refnames system_path: move RUNTIME_PREFIX to a sub-function git_extract_argv0_path: do nothing without RUNTIME_PREFIX config: avoid "write_in_full(fd, buf, len) < len" pattern get-tar-commit-id: check write_in_full() return against 0 avoid "write_in_full(fd, buf, len) != len" pattern convert less-trivial versions of "write_in_full() != len" pkt-line: check write_in_full() errors against "< 0" notes-merge: use ssize_t for write_in_full() return value config: flip return value of store_write_*() read_pack_header: handle signed/unsigned comparison in read result read_info_alternates: read contents into strbuf read_info_alternates: warn on non-trivial errors cat-file: handle NULL object_context.path doc: put literal block delimiter around table validate_headref: NUL-terminate HEAD buffer validate_headref: use skip_prefix for symref parsing validate_headref: use get_oid_hex for detached HEADs test-terminal: set TERM=vt100 t4015: prefer --color to -c color.diff=always t3701: use test-terminal to collect color output t7508: use test_terminal for color output t7502: use diff.noprefix for --verbose test t6006: drop "always" color config tests t3203: drop "always" color test t3205: use --color instead of color.branch=always provide --color option for all ref-filter users color: make "always" the same as "auto" in config path.c: fix uninitialized memory access sha1_loose_object_info: handle errors from unpack_sha1_rest Revert "color: make "always" the same as "auto" in config" Revert "t6006: drop "always" color config tests" Revert "color: check color.ui in git_default_config()" tag: respect color.ui config Johannes Sixt (1): sub-process: use child_process.args instead of child_process.argv Jonathan Nieder (1): strbuf doc: reuse after strbuf_release is fine Jonathan Tan (1): fast-export: do not copy from modified file Junio C Hamano (8): travis: dedent a few scripts that are indented overly deeply subprocess: loudly die when subprocess asks for an unsupported capability gc: call fscanf() with %<len>s, not %<len>c, when reading hostname merge-strategies: avoid implying that "-s theirs" exists checkout doc: clarify command line args for "checkout paths" mode fetch doc: src side of refspec could be full SHA-1 Prepare for 2.14.3 Git 2.14.3 Kaartic Sivaraam (2): t/README: fix typo and grammatically improve a sentence doc: camelCase the config variables to improve readability Kevin Daudt (2): doc/for-each-ref: consistently use '=' to between argument names and values doc/for-each-ref: explicitly specify option names Lars Schneider (3): travis-ci: move Travis CI code into dedicated scripts travis-ci: skip a branch build if equal tag is present travis-ci: fix "skip_branch_tip_with_tag()" string comparison Manav Rathi (1): docs: improve discoverability of exclude pathspec Martin Ågren (5): convert: always initialize attr_action in convert_attrs pack-objects: take lock before accessing `remaining` strbuf_setlen: don't write to strbuf_slopbuf ThreadSanitizer: add suppressions pkt-line: re-'static'-ify buffer in packet_write_fmt_1() Matthieu Moy (2): send-email: fix garbage removal after address send-email: don't use Mail::Address, even if available Max Kirillov (1): describe: fix matching to actually match all patterns Michael Haggerty (1): for_each_string_list_item: avoid undefined behavior for empty list Michael J Gruber (1): name-rev: change ULONG_MAX to TIME_MAX Nguyễn Thái Ngọc Duy (1): branch: fix branch renaming not updating HEADs correctly Ramsay Jones (4): git-compat-util.h: xsize_t() - avoid -Wsign-compare warnings commit-slab.h: avoid -Wsign-compare warnings cache.h: hex2chr() - avoid -Wsign-compare warnings ALLOC_GROW: avoid -Wsign-compare warnings Randall S. Becker (1): poll.c: always set revents, even if to zero René Scharfe (9): strbuf: clear errno before calling getdelim(3) archive: don't add empty directories to archives mailinfo: don't decode invalid =XY quoted-printable sequences coccinelle: remove parentheses that become unnecessary tag: avoid NULL pointer arithmetic run-command: use ALLOC_ARRAY test-stringlist: avoid buffer underrun when sorting nothing fsck: handle NULL return of lookup_blob() and lookup_tree() .mailmap: normalize name for René Scharfe Ross Kabus (1): commit-tree: do not complete line in -F input Stefan Beller (1): branch: reset instead of release a strbuf Taylor Blau (1): ref-filter.c: pass empty-string as NULL to atom parsers Thomas Braun (1): completion: add --broken and --dirty to describe Thomas Gummerer (2): refs: strip out not allowed flags from ref_transaction_update http-push: fix construction of hex value from path Torsten Bögershausen (1): test-lint: echo -e (or -E) is not portable Version v2.14.2; changes since v2.14.1: --------------------------------------- Andreas Heiduk (2): doc: add missing values "none" and "default" for diff.wsErrorHighlight doc: clarify "config --bool" behaviour with empty string Anthony Sottile (1): git-grep: correct exit code with --quiet and -L Brandon Williams (2): submodule--helper: teach push-check to handle HEAD clone: teach recursive clones to respect -q Christian Couder (2): refs: use skip_prefix() in ref_is_hidden() sub-process: print the cmd when a capability is unsupported Dimitrios Christidis (1): fmt-merge-msg: fix coding style Heiko Voigt (1): t5526: fix some broken && chains Hielke Christian Braun (1): gitweb: skip unreadable subdirectories Jeff King (32): t1414: document some reflog-walk oddities revision: disallow reflog walking with revs->limited log: clarify comment about reflog cycles log: do not free parents when walking reflog get_revision_1(): replace do-while with an early return rev-list: check reflog_info before showing usage reflog-walk: stop using fake parents reflog-walk: apply --since/--until to reflog dates check return value of verify_ref_format() docs/for-each-ref: update pointer to color syntax t: use test_decode_color rather than literal ANSI codes ref-filter: simplify automatic color reset ref-filter: abstract ref format into its own struct ref-filter: move need_color_reset_at_eol into ref_format ref-filter: provide a function for parsing sort options ref-filter: make parse_ref_filter_atom a private function ref-filter: factor out the parsing of sorting atoms ref-filter: pass ref_format struct to atom parsers color: check color.ui in git_default_config() for-each-ref: load config earlier rev-list: pass diffopt->use_colors through to pretty-print pretty: respect color settings for %C placeholders ref-filter: consult want_color() before emitting colors t6018: flesh out empty input/output rev-list tests revision: add rev_input_given flag rev-list: don't show usage when we see empty ref patterns revision: do not fallback to default when rev_input_given is set hashcmp: use memcmp instead of open-coded loop doc: fix typo in sendemail.identity shell: drop git-cvsserver support by default archimport: use safe_pipe_capture for user input cvsimport: shell-quote variable used in backticks Johannes Schindelin (2): run_processes_parallel: change confusing task_cb convention git-gui (MinGW): make use of MSys2's msgfmt Jonathan Nieder (4): vcs-svn: remove more unused prototypes and declarations vcs-svn: remove custom mode constants vcs-svn: remove repo_delete wrapper function vcs-svn: move remaining repo_tree functions to fast_export.h Jonathan Tan (7): fsck: remove redundant parse_tree() invocation object: remove "used" field from struct object fsck: cleanup unused variable Documentation: migrate sub-process docs to header sub-process: refactor handshake to common function tests: ensure fsck fails on corrupt packfiles Doc: clarify that pack-objects makes packs, plural Junio C Hamano (11): http.c: http.sslcert and http.sslkey are both pathnames perl/Git.pm: typofix in a comment Prepare for 2.14.2 RelNotes: further fixes for 2.14.2 from the master front cvsserver: move safe_pipe_capture() to the main package cvsserver: use safe_pipe_capture for `constant commands` as well Git 2.10.5 Git 2.11.4 Git 2.12.5 Git 2.13.6 Git 2.14.2 Kaartic Sivaraam (1): commit: check for empty message before the check for untouched template Kevin Daudt (1): stash: prevent warning about null bytes in input Lars Schneider (7): t0021: keep filter log files on comparison t0021: make debug log file name configurable t0021: write "OUT <size>" only on success convert: put the flags field before the flag itself for consistent style convert: move multiple file filter error handling to separate function convert: refactor capabilities negotiation convert: add "status=delayed" to filter process protocol Martin Ågren (7): builtin.h: take over documentation from api-builtin.txt git.c: let builtins opt for handling `pager.foo` themselves git.c: provide setup_auto_pager() t7006: add tests for how git tag paginates tag: respect `pager.tag` in list-mode only tag: change default of `pager.tag` to "on" git.c: ignore pager.* when launching builtin as dashed external Michael Forney (1): scripts: use "git foo" not "git-foo" Michael J Gruber (6): Documentation: use proper wording for ref format strings Documentation/git-for-each-ref: clarify peeling of tags for --format Documentation/git-merge: explain --continue merge: clarify call chain merge: split write_merge_state in two merge: save merge state earlier Philip Oakley (4): git-gui: remove duplicate entries from .gitconfig's gui.recentrepo git gui: cope with duplicates in _get_recentrepo git gui: de-dup selected repo from recentrepo history git gui: allow for a long recentrepo list Phillip Wood (7): am: remember --rerere-autoupdate setting rebase: honor --rerere-autoupdate rebase -i: honor --rerere-autoupdate t3504: use test_commit cherry-pick/revert: remember --rerere-autoupdate cherry-pick/revert: reject --rerere-autoupdate when continuing am: fix signoff when other trailers are present Ramsay Jones (2): credential-cache: interpret an ECONNRESET as an EOF builtin/add: add detail to a 'cannot chmod' error message René Scharfe (23): bswap: convert to unsigned before shifting in get_be32 bswap: convert get_be16, get_be32 and put_be32 to inline functions add MOVE_ARRAY use MOVE_ARRAY apply: use COPY_ARRAY and MOVE_ARRAY in update_image() ls-files: don't try to prune an empty index dir: support platforms that require aligned reads pack-objects: remove unnecessary NULL check t0001: skip test with restrictive permissions if getpwd(3) respects them test-path-utils: handle const parameter of basename and dirname t3700: fix broken test under !POSIXPERM t4062: use less than 256 repetitions in regex sha1_file: avoid comparison if no packed hash matches the first byte apply: remove prefix_length member from apply_state merge: use skip_prefix() win32: plug memory leak on realloc() failure in syslog() fsck: free buffers on error in fsck_obj() sha1_file: release delta_stack on error in unpack_entry() t1002: stop using sum(1) t5001: add tests for export-ignore attributes and exclude pathspecs archive: factor out helper functions for handling attributes archive: don't queue excluded directories commit: remove unused inline function single_parent() Santiago Torres (1): t: lib-gpg: flush gpg agent on startup Stefan Beller (3): t8008: rely on rev-parse'd HEAD instead of sha1 value sha1_file: make read_info_alternates static submodule.sh: remove unused variable Torsten Bögershausen (2): convert: add SAFE_CRLF_KEEP_CRLF apply: file commited with CRLF should roundtrip diff and apply Urs Thuermann (1): git svn fetch: Create correct commit timestamp when using --localtime brian m. carlson (2): vcs-svn: remove unused prototypes vcs-svn: rename repo functions to "svn_repo" joernchen (1): cvsserver: use safe_pipe_capture instead of backticks Ævar Arnfjörð Bjarmason (1): tests: don't give unportable ">" to "test" built-in, use -gt Version v2.14.1; changes since v2.14.0: --------------------------------------- Jeff King (5): t/lib-proto-disable: restore protocol.allow after config tests t5813: add test for hostname starting with dash connect: factor out "looks like command line option" check connect: reject dashed arguments for proxy commands connect: reject paths that look like command line options Junio C Hamano (9): connect: reject ssh hostname that begins with a dash Git 2.7.6 Git 2.8.6 Git 2.9.5 Git 2.10.4 Git 2.11.3 Git 2.12.4 Git 2.13.5 Git 2.14.1 Version v2.14.0; changes since v2.14.0-rc1: ------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (3213t) Andreas Heiduk (1): doc: remove unsupported parameter from patch-id Anthony Sottile (1): diff-options doc: grammar fix Changwoo Ryu (1): l10n: ko.po: Update Korean translation Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Hartmut Henkel (1): l10n: de.po: various fixes in German translation Hugues Peccatte (1): l10n: fr.po Fix some translations Jean-Noel Avila (1): l10n: fr.po v2.14.0 rnd 2 Jiang Xin (2): l10n: zh_CN: for git v2.14.0 l10n round 2 l10n: zh_CN: review for git v2.14.0 l10n Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (3): Preparation for 2.13.4 continues Git 2.13.4 Git 2.14 Louis (1): l10n: fr.po Fix typo Ralf Thielow (1): l10n: de.po: update German translation SZEDER Gábor (1): blame: fix memory corruption scrambling revision name in error message Sylvestre Ledru (1): l10n: fr.po Fix some french typos Trần Ngọc Quân (1): l10n: vi.po (3213t): Updated 9 new strings Version v2.14.0-rc1; changes since v2.14.0-rc0: ----------------------------------------------- Alexander Shopov (1): l10n: bg.po: Updated Bulgarian translation (3206t) Changwoo Ryu (1): l10n: ko.po: Update Korean translation Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Eric Wong (1): set FD_CLOEXEC properly when O_CLOEXEC is not supported Jeff King (2): gc: run pre-detach operations under lock t: handle EOF in test_copy_bytes() Jiang Xin (2): l10n: git.pot: v2.14.0 round 1 (34 new, 23 removed) l10n: git.pot: v2.14.0 round 2 (9 new, 2 removed) Johannes Schindelin (2): t1300: demonstrate that CamelCased aliases regressed alias: compare alias name *case-insensitively* Jonathan Nieder (1): pre-rebase hook: capture documentation in a <<here document Jordi Mas (2): l10n: Fixes to Catalan translation l10n: Update Catalan translation Junio C Hamano (6): A few more topics before 2.14-rc1 Makefile: help gettext tools to cope with our custom PRItime format A few more topics while waiting for the po/PRItime resolution Hopefully the final last-minute fix before -rc1 fixes from 'master' for 2.13.4 Git 2.14-rc1 Kaartic Sivaraam (2): doc: camelCase the i18n config variables to improve readability doc: reformat the paragraph containing the 'cut-line' Miguel Torroja (3): git-p4: git-p4 tests with p4 triggers git-p4: parse marshal output "p4 -G" in p4 changes git-p4: filter for {'code':'info'} in p4CmdList Peter Krefting (1): l10n: sv.po: Update Swedish translation (3206t0f0u) Ramsay Jones (1): config.mak.uname: set FREAD_READS_DIRECTORIES for cygwin René Scharfe (2): progress: show overall rate in last update Makefile: allow combining UBSan with other sanitizers Torsten Bögershausen (1): cygwin: allow pushing to UNC paths Trần Ngọc Quân (1): l10n: vi.po(3206t): Update Vietnamese translation Ævar Arnfjörð Bjarmason (3): RelNotes: mention "log: add -P as a synonym for --perl-regexp" RelNotes: mention "log: make --regexp-ignore-case work with --perl-regexp" RelNotes: mention "sha1dc: optionally use sha1collisiondetection as a submodule" Version v2.14.0-rc0; changes since v2.13.7: ------------------------------------------- Andreas Heiduk (4): doc: describe git svn init --ignore-refs filter-branch: add `--setup` step filter-branch: add [--] to usage git-svn: document special options for commit-diff Ben Peart (10): convert: remove erroneous tests for errno == EPIPE pkt-line: fix packet_read_line() to handle len < 0 errors pkt-line: add packet_read_line_gently() convert: move packet_write_line() into pkt-line as packet_writel() convert: split start_multi_file_filter() into two separate functions convert: separate generic structures and variables from the filter specific ones convert: update generic functions to only use generic data structures convert: rename reusable sub-process functions sub-process: move sub-process functions into separate files convert: update subprocess_read_status() to not die on EOF Brandon Williams (95): submodule: rename add_sha1_to_array() submodule: rename free_submodules_sha1s() submodule: remove add_oid_to_argv() submodule: change string_list changed_submodule_paths submodule: improve submodule_has_commits() submodule: refactor logic to determine changed submodules dir: stop using the index compatibility macros dir: convert read_skip_worktree_file_from_index to take an index dir: convert directory_exists_in_index to take index dir: convert get_dtype to take index dir: convert dir_add* to take an index dir: convert last_exclude_matching_from_list to take an index dir: convert is_excluded_from_list to take an index dir: convert add_excludes to take an index dir: convert prep_exclude to take an index dir: convert is_excluded to take an index dir: convert open_cached_dir to take an index dir: convert read_directory_recursive to take an index dir: convert read_directory to take an index dir: convert fill_directory to take an index pathspec: provide a more descriptive die message submodule: add die_in_unpopulated_submodule function pathspec: remove PATHSPEC_STRIP_SUBMODULE_SLASH_EXPENSIVE flag ls-files: prevent prune_cache from overeagerly pruning submodules pathspec: remove PATHSPEC_STRIP_SUBMODULE_SLASH_CHEAP pathspec: convert find_pathspecs_matching_against_index to take an index grep: convert to struct object_id diff: convert get_stat_data to struct object_id diff: convert diff_index_show_file to struct object_id diff: convert diff_addremove to struct object_id diff: convert run_diff_files to struct object_id diff: convert diff_change to struct object_id diff: convert fill_filespec to struct object_id diff: convert reuse_worktree_file to struct object_id diff: finish conversion for prepare_temp_file to struct object_id patch-ids: convert to struct object_id diff: convert diff_flush_patch_id to struct object_id combine-diff: convert diff_tree_combined to struct object_id combine-diff: convert find_paths_* to struct object_id tree-diff: convert diff_root_tree_sha1 to struct object_id notes-merge: convert notes_merge* to struct object_id notes-merge: convert merge_from_diffs to struct object_id notes-merge: convert find_notes_merge_pair_ps to struct object_id notes-merge: convert verify_notes_filepair to struct object_id notes-merge: convert write_note_to_worktree to struct object_id diff-tree: convert diff_tree_sha1 to struct object_id builtin/diff-tree: cleanup references to sha1 tree-diff: convert try_to_follow_renames to struct object_id tree-diff: convert diff_tree_paths to struct object_id tree-diff: convert path_appendnew to object_id diffcore-rename: use is_empty_blob_oid diff: rename diff_fill_sha1_info to diff_fill_oid_info convert: convert get_cached_convert_stats_ascii to take an index convert: convert crlf_to_git to take an index convert: convert convert_to_git_filter_fd to take an index convert: convert convert_to_git to take an index convert: convert renormalize_buffer to take an index tree: convert read_tree to take an index parameter ls-files: convert overlay_tree_on_cache to take an index ls-files: convert write_eolinfo to take an index ls-files: convert show_killed_files to take an index ls-files: convert show_other_files to take an index ls-files: convert show_ru_info to take an index ls-files: convert ce_excluded to take an index ls-files: convert prune_cache to take an index ls-files: convert show_ce_entry to take an index ls-files: convert show_files to take an index ls-files: factor out debug info into a function ls-files: factor out tag calculation config: create config.h config: remove git_config_iter config: don't include config.h by default setup: teach discover_git_directory to respect the commondir config: respect commondir config: don't implicitly use gitdir or commondir setup: don't perform lazy initialization of repository state setup: add comment indicating a hack environment: remove namespace_len variable repository: introduce the repository object environment: place key repository state in the_repository environment: store worktree in the_repository path: create path.h path: always pass in commondir to update_common_dir path: convert strbuf_git_common_path to take a 'struct repository' path: convert do_git_path to take a 'struct repository' path: worktree_git_path() should not use file relocation path: add repo_git_path and strbuf_repo_git_path path: add repo_worktree_path and strbuf_repo_worktree_path config: read config from a repository object repository: add index_state to struct repo submodule-config: store the_submodule_cache in the_repository submodule: add repo_read_gitmodules submodule: convert is_submodule_initialized to work on a repository repository: enable initialization of submodules ls-files: use repository object Christian Couder (2): p3400: add perf tests for rebasing many changes sub-process: correct path to API docs in a comment David Turner (2): Increase core.packedGitLimit unpack-trees: preserve index extensions Jeff King (29): cache-tree: reject entries with null sha1 status: fix missing newline when comment chars are disabled add--interactive: drop diff.indentHeuristic handling pkt-line: annotate packet_writel with LAST_ARG_MUST_BE_NULL ref-filter: limit traversal to prefix t4208: add check for ":/" without matching file check_filename(): refactor ":/" handling check_filename(): use skip_prefix check_filename(): handle ":^" path magic verify_filename(): treat ":(magic)" as a pathspec verify_filename(): flip order of checks credential: handle invalid arguments earlier upload-archive: handle "-h" option early remote-{ext,fd}: print usage message on invalid arguments submodule--helper: show usage for "-h" version: convert to parse-options git: add hidden --list-builtins option t0012: test "-h" with builtins add: warn when adding an embedded repository t: move "git add submodule" into test blocks configure.ac: loosen FREAD_READS_DIRECTORIES test program t0006: check --date=format zone offsets date: use localtime() for "-local" time formats docs: update 64-bit core.packedGitLimit default test-lib: set ASAN_OPTIONS variable before we run git test-lib: turn on ASan abort_on_error by default Makefile: add helper for compiling with -fsanitize Makefile: turn off -fomit-frame-pointer with sanitizers Makefile: disable unaligned loads with UBSan Jeff Smith (29): blame: remove unneeded dependency on blob.h blame: move textconv_object with related functions blame: remove unused parameters blame: rename origin structure to blame_origin blame: rename scoreboard structure to blame_scoreboard blame: rename origin-related functions blame: rename coalesce function blame: rename ent_score function blame: rename nth_line function blame: move stat counters to scoreboard blame: move copy/move thresholds to scoreboard blame: move contents_from to scoreboard blame: move reverse flag to scoreboard blame: move show_root flag to scoreboard blame: move xdl_opts flags to scoreboard blame: move no_whole_file_rename flag to scoreboard blame: make sanity_check use a callback in scoreboard blame: move progress updates to a scoreboard callback blame: wrap blame_sort and compare_blame_final blame: rework methods that determine 'final' commit blame: create scoreboard init function blame: create scoreboard setup function blame: create entry prepend function blame: move core structures to header blame: move origin-related methods to libgit blame: move fake-commit-related methods to libgit blame: move scoreboard-related methods to libgit blame: move scoreboard setup to libgit blame: move entry prepend to libgit Johannes Schindelin (9): ref-filter: avoid using `unsigned long` for catch-all data type t0006 & t5000: prepare for 64-bit timestamps t0006 & t5000: skip "far in the future" test when time_t is too limited parse_timestamp(): specify explicitly where we parse timestamps PRItime: introduce a new "printf format" for timestamps timestamp_t: a new data type for timestamps date.c: abort if the system time cannot handle one of our timestamps use uintmax_t for timestamps mingw: verify that paths are not mistaken for remote nicknames Johannes Sixt (1): mingw_fopen: report ENOENT for invalid file names Jonathan Tan (11): fetch-pack: always allow fetching of literal SHA1s send-email: support validate hook send-email: check for repo before invoking hook sha1_file: teach packed_object_info about typename sha1_file: rename LOOKUP_UNKNOWN_OBJECT sha1_file: rename LOOKUP_REPLACE_OBJECT sha1_file: move delta base cache code up sha1_file: refactor read_object sha1_file: teach sha1_object_info_extended more flags sha1_file: do not access pack if unneeded sha1_file: refactor has_sha1_file_with_flags Junio C Hamano (28): test-lib.sh: do not barf under --debug at the end of the test test-lib: retire $remove_trash variable repack: accept --threads=<n> and pass it down to pack-objects Start post 2.13 cycle name-rev: change a "long" variable to timestamp_t Second batch for 2.14 config.mak.uname: set FREAD_READS_DIRECTORIES for Darwin, too Third batch for 2.14 compat-util: is_missing_file_error() treewide: use is_missing_file_error() where ENOENT and ENOTDIR are checked Fourth batch for 2.14 Fifth batch for 2.14 Sixth batch for 2.14 Seventh batch for 2.14 diff- and log- family: handle "git cmd -h" early Eighth batch for 2.14 Ninth batch for 2.14 Tenth batch for 2.14 Revert "split-index: add and use unshare_split_index()" Eleventh batch for 2.14 Twelfth batch for 2.14 Thirteenth batch for 2.14 sha1collisiondetection: automatically enable when submodule is populated Fourteenth batch for 2.14 Fifteenth batch for 2.14 Sixteenth batch for 2.14 Hopefully the last batch before -rc0 Git 2.14-rc0 Kaartic Sivaraam (4): status: contextually notify user about an initial commit Documentation/git-submodule: cleanup "add" section commit-template: remove outdated notice about explicit paths commit-template: distinguish status information unconditionally Lars Schneider (2): travis-ci: handle Git for Windows CI status "failed" explicitly travis-ci: retry if Git for Windows CI returns HTTP error 502 or 503 Liam Beguin (3): stash: update documentation to use 'stash entry' status: add optional stash count information glossary: define 'stash entry' Marc Branchaud (2): diff: make the indent heuristic part of diff's basic configuration diff: have the diff-* builtins configure diff before initializing revisions Michael Haggerty (26): t3600: clean up permissions test properly refs.h: clarify docstring for the ref_transaction_update()-related fns ref_iterator_begin_fn(): fix docstring files-backend: use `die("BUG: ...")`, not `die("internal error: ...")` prefix_ref_iterator: don't trim too much refs_ref_iterator_begin(): don't check prefixes redundantly refs: use `size_t` indexes when iterating over ref transaction updates ref_store: take a `msg` parameter when deleting references lockfile: add a new method, is_lock_file_locked() files-backend: move `lock` member to `files_ref_store` files_ref_store: put the packed files lock directly in this struct files_transaction_cleanup(): new helper function ref_transaction_commit(): check for valid `transaction->state` ref_transaction_prepare(): new optional step for reference updates ref_update_reject_duplicates(): expose function to whole refs module ref_update_reject_duplicates(): use `size_t` rather than `int` ref_update_reject_duplicates(): add a sanity check should_pack_ref(): new function, extracted from `files_pack_refs()` get_packed_ref_cache(): assume "packed-refs" won't change while locked read_packed_refs(): do more of the work of reading packed refs read_packed_refs(): report unexpected fopen() failures refs_ref_iterator_begin(): handle `GIT_REF_PARANOIA` create_ref_entry(): remove `check_name` option cache_ref_iterator_begin(): avoid priming unneeded directories lock_packed_refs(): fix cache validity check for_each_bisect_ref(): don't trim refnames Mike Hommey (1): fast-import: increase the default pack depth to 50 Nguyễn Thái Ngọc Duy (16): environment.c: fix potential segfault by get_git_common_dir() refs.c: make submodule ref store hashmap generic refs: add REFS_STORE_ALL_CAPS refs: introduce get_worktree_ref_store() worktree.c: kill parse_ref() in favor of refs_resolve_ref_unsafe() refs: kill set_worktree_head_symref() split-index: add and use unshare_split_index() use xfopen() in more places clone: use xfopen() instead of fopen() config.mak.uname: set FREAD_READS_DIRECTORIES for Linux and FreeBSD wrapper.c: add and use warn_on_fopen_errors() wrapper.c: add and use fopen_or_warn() wrapper.c: make warn_on_inaccessible() static print errno when reporting a system call error rerere.c: move error_errno() closer to the source system call log: fix memory leak in open_next_file() Prathamesh Chavan (1): dir: create function count_slashes() Ramsay Jones (2): archive-tar: fix a sparse 'constant too large' warning git_fopen: fix a sparse 'not declared' warning René Scharfe (17): archive-zip: add tests for big ZIP archives archive-zip: use strbuf for ZIP directory archive-zip: write ZIP dir entry directly to strbuf archive-zip: support archives bigger than 4GB archive-zip: support files bigger than 4GB archive-zip: set version field for big files correctly t5004: require 64-bit support for big ZIP tests mingw: simplify PATH handling strbuf: let strbuf_addftime handle %z and %Z itself sha1_name: cache readdir(3) results in find_short_object_filename() p4205: add perf test script for pretty log formats sha1_file: let for_each_file_in_obj_subdir() handle subdir names sha1_file: guard against invalid loose subdirectory numbers coccinelle: polish FREE_AND_NULL rules urlmatch: use hex2chr() in append_normalized_escapes() wt-status: use separate variable for result of shorten_unambiguous_ref use DIV_ROUND_UP Rikard Falkeborn (6): completion: add git config gc completions completion: add git config core completions completion: add git config am.threeWay completion completion: add git config advice completions completion: add git config credential completions completion: add git config credentialCache.ignoreSIGHUP SZEDER Gábor (1): test-lib: abort when can't remove trash directory Stefan Beller (22): entry.c: submodule recursing: respect force flag correctly submodule.c: uninitialized submodules are ignored in recursive commands submodule.c: submodule_move_head works with broken submodules builtin/reset: add --recurse-submodules switch diff: recurse into nested submodules for inline diff diff: enable indent heuristic by default submodule recursing: do not write a config variable twice submodule test invocation: only pass additional arguments reset/checkout/read-tree: unify config callback for submodule recursion submodule loading: separate code path for .gitmodules and config overlay Introduce 'submodule.recurse' option for worktree manipulators builtin/grep.c: respect 'submodule.recurse' option builtin/push.c: respect 'submodule.recurse' option builtin/fetch.c: respect 'submodule.recurse' option submodules: overhaul documentation builtin/fetch: factor submodule recurse parsing out to submodule config builtin/fetch: parse recurse-submodules-default at default options parsing pull: optionally rebase submodules (remote submodule changes only) builtin/fetch cleanup: always set default value for submodule recursing hashmap.h: compare function has access to a data field patch-ids.c: use hashmap correctly hashmap: migrate documentation from Documentation/technical into header Stephen Kent (1): status: add color config slots for branch info in "--short --branch" Ville Skyttä (1): Spelling fixes brian m. carlson (60): fetch-pack: convert to struct object_id Clean up outstanding object_id transforms. Convert struct cache_tree to use struct object_id builtin/name-rev: convert to struct object_id builtin/prune: convert to struct object_id bundle: convert to struct object_id branch: convert to struct object_id builtin/blame: convert static function to struct object_id builtin/rev-parse: convert to struct object_id fast-import: convert internal structs to struct object_id fast-import: convert to struct object_id submodule: convert merge_submodule to use struct object_id notes-cache: convert to struct object_id parse-options-cb: convert to struct object_id reflog_expire: convert to struct object_id builtin/verify-commit: convert to struct object_id tag: convert parse_tag_buffer to struct object_id http-push: convert some static functions to struct object_id notes-utils: convert internals to struct object_id revision: convert prepare_show_merge to struct object_id shallow: convert shallow registration functions to object_id sequencer: convert some functions to struct object_id builtin/tag: convert to struct object_id Convert remaining callers of lookup_commit_reference* to object_id Convert lookup_commit* to struct object_id pack: convert struct pack_idx_entry to struct object_id builtin/unpack-objects: convert to struct object_id Convert remaining callers of lookup_blob to object_id Convert lookup_blob to struct object_id tree: convert read_tree_1 to use struct object_id internally builtin/reflog: convert tree_is_complete to take struct object_id Convert lookup_tree to struct object_id log-tree: convert to struct object_id Convert lookup_tag to struct object_id Convert the verify_pack callback to struct object_id Convert struct ref_array_item to struct object_id ref-filter: convert some static functions to struct object_id refs: convert struct ref_update to use struct object_id refs/files-backend: convert many internals to struct object_id http-push: convert process_ls_object and descendants to object_id revision: rename add_pending_sha1 to add_pending_oid revision: convert remaining parse_object callers to object_id upload-pack: convert remaining parse_object callers to object_id sha1_name: convert internals of peel_onion to object_id builtin/read-tree: convert to struct object_id builtin/ls-files: convert overlay_tree_on_cache to object_id sequencer: convert fast_forward_to to struct object_id merge: convert checkout_fast_forward to struct object_id builtin/ls-tree: convert to struct object_id diff-lib: convert do_diff_cache to struct object_id sequencer: convert do_recursive_merge to struct object_id tree: convert parse_tree_indirect to struct object_id object: convert parse_object* to take struct object_id notes: convert internal structures to struct object_id notes: convert internal parts to struct object_id notes: convert for_each_note to struct object_id notes: make get_note return pointer to struct object_id notes: convert format_display_notes to struct object_id builtin/notes: convert to struct object_id notes: convert some accessor functions to struct object_id xiaoqiang zhao (1): send-email: --batch-size to work around some SMTP server limit Ævar Arnfjörð Bjarmason (65): tests: change "cd ... && git fetch" to "cd &&\n\tgit fetch" clone: add a --no-tags option to clone without tags tests: rename a test having to do with shallow submodules perf: add function to setup a fresh test repo perf: add test showing exponential growth in path globbing config: match both symlink & realpath versions in IncludeIf.gitdir:* Makefile & configure: reword inaccurate comment about PCRE grep & rev-list doc: stop promising libpcre for --perl-regexp test-lib: rename the LIBPCRE prerequisite to PCRE log: add exhaustive tests for pattern style options & config log: make --regexp-ignore-case work with --perl-regexp grep: add a test asserting that --perl-regexp dies when !PCRE grep: add a test for backreferences in PCRE patterns grep: change non-ASCII -i test to stop using --debug grep: add tests for --threads=N and grep.threads grep: amend submodule recursion test for regex engine testing grep: add tests for grep pattern types being passed to submodules grep: add a test helper function for less verbose -f \0 tests grep: prepare for testing binary regexes containing rx metacharacters grep: add tests to fix blind spots with \0 patterns perf: add a GIT_PERF_MAKE_COMMAND for when *_MAKE_OPTS won't do perf: emit progress output when unpacking & building perf: add a comparison test of grep regex engines perf: add a comparison test of grep regex engines with -F perf: add a comparison test of log --grep regex engines perf: add a comparison test of log --grep regex engines with -F grep: catch a missing enum in switch statement grep: remove redundant regflags assignments grep: factor test for \0 in grep patterns into a function grep: change the internal PCRE macro names to be PCRE1 grep: change internal *pcre* variable & function names to be *pcre1* grep: move is_fixed() earlier to avoid forward declaration test-lib: add a PTHREADS prerequisite pack-objects & index-pack: add test for --threads warning pack-objects: fix buggy warning about threads grep: given --threads with NO_PTHREADS=YesPlease, warn grep: assert that threading is enabled when calling grep_{lock,unlock} grep: don't redundantly compile throwaway patterns under threading grep: skip pthreads overhead when using one thread log: add -P as a synonym for --perl-regexp grep: add support for the PCRE v1 JIT API grep: un-break building with PCRE < 8.32 grep: un-break building with PCRE < 8.20 grep: un-break building with PCRE >= 8.32 without --enable-jit grep: add support for PCRE v2 perf: work around the tested repo having an index.lock git-compat-util: add a FREE_AND_NULL() wrapper around free(ptr); ptr = NULL wildmatch test: cover a blind spot in "/" matching coccinelle: add a rule to make "type" code use FREE_AND_NULL() coccinelle: make use of the "type" FREE_AND_NULL() rule coccinelle: add a rule to make "expression" code use FREE_AND_NULL() coccinelle: make use of the "expression" FREE_AND_NULL() rule *.[ch] refactoring: make use of the FREE_AND_NULL() macro grep: fix erroneously copy/pasted variable in check/assert pattern die(): stop hiding errors due to overzealous recursion guard wildmatch: remove unused wildopts parameter strbuf.h comment: discuss strbuf_addftime() arguments in order grep: remove redundant double assignment to 0 grep: adjust a redundant grep pattern type assignment grep: remove redundant "fixed" field re-assignment to 0 grep: remove redundant and verbose re-assignments to 0 grep: remove regflags from the public grep_opt API grep: remove redundant REG_NEWLINE when compiling fixed regex strbuf: change an always NULL/"" strbuf_addftime() param to bool sha1dc: optionally use sha1collisiondetection as a submodule Version v2.13.7; changes since v2.13.6: --------------------------------------- Jeff King (8): submodule-config: verify submodule names as paths is_ntfs_dotgit: use a size_t for traversing string is_hfs_dotgit: match other .git files skip_prefix: add case-insensitive variant verify_path: drop clever fallthrough verify_dotfile: mention case-insensitivity in comment update-index: stat updated files earlier verify_path: disallow symlinks in .gitmodules Johannes Schindelin (2): is_ntfs_dotgit: match other .git files is_{hfs,ntfs}_dotgitmodules: add tests Junio C Hamano (1): Git 2.13.7 Version v2.13.6; changes since v2.13.5: --------------------------------------- Jeff King (3): shell: drop git-cvsserver support by default archimport: use safe_pipe_capture for user input cvsimport: shell-quote variable used in backticks Junio C Hamano (6): cvsserver: move safe_pipe_capture() to the main package cvsserver: use safe_pipe_capture for `constant commands` as well Git 2.10.5 Git 2.11.4 Git 2.12.5 Git 2.13.6 joernchen (1): cvsserver: use safe_pipe_capture instead of backticks Version v2.13.5; changes since v2.13.4: --------------------------------------- Jeff King (5): t/lib-proto-disable: restore protocol.allow after config tests t5813: add test for hostname starting with dash connect: factor out "looks like command line option" check connect: reject dashed arguments for proxy commands connect: reject paths that look like command line options Junio C Hamano (8): connect: reject ssh hostname that begins with a dash Git 2.7.6 Git 2.8.6 Git 2.9.5 Git 2.10.4 Git 2.11.3 Git 2.12.4 Git 2.13.5 Version v2.13.4; changes since v2.13.3: --------------------------------------- Beat Bolli (1): unicode: update the width tables to Unicode 10 Eric Wong (1): set FD_CLOEXEC properly when O_CLOEXEC is not supported Jeff King (2): gc: run pre-detach operations under lock t: handle EOF in test_copy_bytes() Johannes Schindelin (2): t1300: demonstrate that CamelCased aliases regressed alias: compare alias name *case-insensitively* Jonathan Nieder (1): pre-rebase hook: capture documentation in a <<here document Junio C Hamano (3): fixes from 'master' for 2.13.4 Preparation for 2.13.4 continues Git 2.13.4 Kaartic Sivaraam (3): doc: correct a mistake in an illustration doc: camelCase the i18n config variables to improve readability doc: reformat the paragraph containing the 'cut-line' Phillip Wood (4): add -i: move unquote_path() to Git.pm Git::unquote_path(): handle '\a' Git::unquote_path(): throw an exception on bad path t9700: add tests for Git::unquote_path() René Scharfe (3): apply: use starts_with() in gitdiff_verify_name() apply: use strcmp(3) for comparing strings in gitdiff_verify_name() progress: show overall rate in last update Torsten Bögershausen (1): cygwin: allow pushing to UNC paths Version v2.13.3; changes since v2.13.2: --------------------------------------- A. Wilcox (1): subtree: honour USE_ASCIIDOCTOR when set Alejandro R. Sedeño (1): ref-filter.c: drop return from void function Andreas Heiduk (2): doc: do not use `rm .git/index` when normalizing line endings doc: clarify syntax for %C(auto,...) in pretty formats Christian Couder (3): read-cache: use shared perms when writing shared index t1301: move modebits() to test-lib-functions.sh t1700: make sure split-index respects core.sharedrepository David Aguilar (1): mergetools/meld: improve compatibiilty with Meld on macOS X James Clarke (1): pack-bitmap: don't perform unaligned memory access Jeff King (10): diff-highlight: split code into module add--interactive: handle EOF in prompt_yesno add--interactive: quote commentChar regex reflog-walk: skip over double-null oid due to HEAD rename reflog-walk: duplicate strings in complete_reflogs list reflog-walk: don't free reflogs added to cache reflog-walk: include all fields when freeing complete_reflogs branch: only perform HEAD check for local branches branch: use BRANCH_COLOR_LOCAL in ref-filter format branch: set remote color in ref-filter branch immediately Johannes Schindelin (8): discover_git_directory(): avoid setting invalid git_dir config: report correct line number upon error help: use early config when autocorrecting aliases t1308: relax the test verifying that empty alias values are disallowed t7006: demonstrate a problem with aliases in subdirectories alias: use the early config machinery to expand aliases sequencer: print autostash messages to stderr t5534: fix misleading grep invocation Junio C Hamano (5): t3420: fix under GETTEXT_POISON build t1450: use egrep for regexp "alternation" submodule--helper: do not call utf8_fprintf() unnecessarily Prepare for 2.13.3 Git 2.13.3 Kaartic Sivaraam (2): t7508: fix a broken indentation builtin/commit.c: fix a typo in the comment Marc Branchaud (1): auto-correct: tweak phrasing Phillip Wood (3): rebase -i: add test for reflog message rebase: add regression tests for console output rebase: add more regression tests for console output Ralf Thielow (1): l10n: de.po: fix typo René Scharfe (4): pretty: recalculate duplicate short hashes apply: check git diffs for missing old filenames apply: check git diffs for invalid file modes apply: check git diffs for mutually exclusive header lines Stefan Beller (2): t4005: modernize style and drop hard coded sha1 merge-recursive: use DIFF_XDL_SET macro Ævar Arnfjörð Bjarmason (1): sha1dc: update from upstream Version v2.13.2; changes since v2.13.1: --------------------------------------- Adam Dinwoodie (1): docs: fix formatting and grammar Brandon Williams (12): t5550: use write_script to generate post-update hook t0061: run_command executes scripts without a #! line run-command: prepare command before forking run-command: use the async-signal-safe execv instead of execvp string-list: add string_list_remove function run-command: prepare child environment before forking run-command: don't die in child when duping /dev/null run-command: eliminate calls to error handling functions in child run-command: handle dup2 and close errors in child run-command: add note about forking and threading run-command: expose is_executable function run-command: restrict PATH search to executable files Dennis Kaarsemaker (1): send-email: Net::SMTP::SSL is obsolete, use only when necessary Eric Wong (1): run-command: block signals between fork and execve Jeff Hostetler (1): read-cache: close index.lock in do_write_index Jeff King (23): usage.c: add BUG() function setup_git_env: convert die("BUG") to BUG() config: complain about --local outside of a git repo usage.c: drop set_error_handle() handle_revision_arg: reset "dotdot" consistently handle_revision_arg: simplify commit reference lookups handle_revision_arg: stop using "dotdot" as a generic pointer handle_revision_arg: hoist ".." check out of range parsing handle_revision_arg: add handle_dotdot() helper sha1_name: consistently refer to object_context as "oc" get_sha1_with_context: always initialize oc->symlink_path get_sha1_with_context: dynamically allocate oc->path t4063: add tests of direct blob diffs handle_revision_arg: record modes for "a..b" endpoints handle_revision_arg: record paths for pending objects diff: pass whole pending entry in blobinfo diff: use the word "path" instead of "name" for blobs diff: use pending "path" if it is available diff: use blob path for blob/file diffs connect.c: fix leak in parse_one_symref_info() remote: drop free_refspecs() function t5313: make extended-table test more deterministic sha1dc: ignore indent-with-non-tab whitespace violations Jonathan Nieder (1): send-email: Net::SMTP::starttls was introduced in v2.34 Junio C Hamano (6): name-rev: refactor logic to see if a new candidate is a better name name-rev: favor describing with tags and use committer date to tiebreak test: allow skipping the remainder diff-tree: update stale in-code comments Prepare for 2.13.2 Git 2.13.2 Kyle J. McKay (1): t5100: add some more mailinfo tests Lars Schneider (1): Configure Git contribution guidelines for github.com Patrick Steinhardt (1): git-stash: fix pushing stash with pathspec from subdir Ramsay Jones (1): usage: add NORETURN to BUG() function definitions René Scharfe (5): p0004: simplify calls of test-lazy-init-name-hash p0004: avoid using pipes p0004: use test_perf p0004: don't abort if multi-threaded is too slow p0004: don't error out if test repo is too small Rikard Falkeborn (1): completion: add completions for git config commit SZEDER Gábor (6): revision.h: turn rev_info.early_output back into an unsigned int revision.c: stricter parsing of '--no-{min,max}-parents' revision.c: stricter parsing of '--early-output' revision.c: use skip_prefix() in handle_revision_opt() revision.c: use skip_prefix() in handle_revision_pseudo_opt() docs/pretty-formats: stress that %- removes all preceding line-feeds Sahil Dua (1): t3200: add test for single parameter passed to -m option Samuel Lijin (6): t7300: clean -d should skip dirs with ignored files t7061: status --ignored should search untracked dirs dir: recurse into untracked dirs for ignored files dir: hide untracked contents of untracked dirs dir: expose cmp_name() and check_contains() clean: teach clean -d to preserve ignored paths Stefan Beller (5): submodule_move_head: reuse child_process structure for futher commands submodule: avoid auto-discovery in new working tree manipulator code submodule: properly recurse for read-tree and checkout t5545: enhance test coverage when no http server is installed Documentation/git-rm: correct submodule description Tyler Brazier (1): pull: ff --rebase --autostash works in dirty repo Ævar Arnfjörð Bjarmason (2): wildmatch test: remove redundant duplicate test sha1dc: update from upstream Štěpán Němec (1): doc: git-reset: fix a trivial typo Version v2.13.1; changes since v2.13.0: --------------------------------------- Andreas Heiduk (4): Documentation: fix reference to ifExists for interpret-trailers Documentation: fix formatting typo in pretty-formats.txt doc: filter-branch does not require re-export of vars doc: rewrite description for rev-parse --short Brian Malehorn (1): interpret-trailers: honor the cut line Jean-Noël Avila (3): usability: don't ask questions if no reply is required read-tree -m: make error message for merging 0 trees less smart aleck git-filter-branch: be more direct in an error message Jeff King (14): am: fix commit buffer leak in get_commit_info() am: simplify allocations in get_commit_info() am: shorten ident_split variable name in get_commit_info() pack-objects: disable pack reuse for object-selection options t5310: fix "; do" style docs/config: clarify include/includeIf relationship docs/config: give a relative includeIf example docs/config: avoid the term "expand" for includes docs/config: consistify include.path examples t5400: avoid concurrent writes into a trace file ref-filter: resolve HEAD when parsing %(HEAD) atom revision.c: ignore broken tags with ignore_missing_links am: handle "-h" argument earlier docs/config: mention protocol implications of url.insteadOf Johannes Schindelin (31): mingw: avoid memory leak when splitting PATH winansi: avoid use of uninitialized value winansi: avoid buffer overrun add_commit_patch_id(): avoid allocating memory unnecessarily git_config_rename_section_in_file(): avoid resource leak get_mail_commit_oid(): avoid resource leak difftool: address a couple of resource/memory leaks status: close file descriptor after reading git-rebase-todo mailinfo & mailsplit: check for EOF while parsing cat-file: fix memory leak checkout: fix memory leak split_commit_in_progress(): simplify & fix memory leak setup_bare_git_dir(): help static analysis setup_discovered_git_dir(): plug memory leak pack-redundant: plug memory leak mktree: plug memory leaks reported by Coverity fast-export: avoid leaking memory in handle_tag() receive-pack: plug memory leak in update() line-log: avoid memory leak shallow: avoid memory leak add_reflog_for_walk: avoid memory leak remote: plug memory leak in match_explicit() name-rev: avoid leaking memory in the `deref` case show_worktree(): plug memory leak submodule_uses_worktrees(): plug memory leak Fix build with core.autocrlf=true git-new-workdir: mark script as LF-only completion: mark bash script as LF-only t3901: move supporting files into t/t3901/ Fix the remaining tests that failed with core.autocrlf=true t4051: mark supporting files as requiring LF-only line endings Johannes Sixt (2): mingw.h: permit arguments with side effects for is_dir_sep Windows: do not treat a path with backslashes as a remote's nick name Jonathan Nieder (2): credential doc: make multiple-helper behavior more prominent clone: handle empty config values in -c Jonathan Tan (3): sequencer: add newline before adding footers docs: correct receive.advertisePushOptions default receive-pack: verify push options in cert Junio C Hamano (6): apply.c: fix whitespace-only mismerge checkout: fix memory leak doc: replace more gmane links read-tree: "read-tree -m --empty" does not make sense Prepare for 2.13.1; more topics to follow Git 2.13.1 Kyle Meyer (1): config.txt: add an entry for log.showSignature Lars Schneider (6): travis-ci: build documentation with AsciiDoc and Asciidoctor travis-ci: parallelize documentation build travis-ci: unset compiler for jobs that do not need one travis-ci: check AsciiDoc/AsciiDoctor stderr output travis-ci: setup "prove cache" in "script" step travis-ci: add job to run tests with GETTEXT_POISON Phillip Wood (3): rebase -i: fix reflog message rebase -i: silence stash apply rebase -i: add missing newline to end of message Ramsay Jones (1): t7400: add !CYGWIN prerequisite to 'add with \\ in path' René Scharfe (2): checkout: check return value of resolve_refdup before using hash am: check return value of resolve_refdup before using hash SZEDER Gábor (1): docs/config.txt: fix indefinite article in core.fileMode description Sahil Dua (1): branch test: fix invalid config key access Stefan Beller (1): t5531: fix test description Sven Strickroth (1): doc: use https links to Wikipedia to avoid http redirects Thomas Gummerer (1): completion: add git stash push Torsten Bögershausen (1): t0027: tests are not expensive; remove t0025 brian m. carlson (1): builtin/log: honor log.decorate Ævar Arnfjörð Bjarmason (6): config.mak.uname: set NO_REGEX=NeedsStartEnd on AIX doc: replace a couple of broken gmane links tests: fix tests broken under GETTEXT_POISON=YesPlease sha1dc: update from upstream tag: duplicate mention of --contains should mention --no-contains C style: use standard style for "TRANSLATORS" comments Version v2.13.0; changes since v2.13.0-rc2: ------------------------------------------- Alexander Shopov (2): l10n: bg.po: Updated Bulgarian translation (3201t) l10n: bg.po: Updated Bulgarian translation (3195t) Jean-Noël Avila (2): l10n: fr.po v2.13 round 1 l10n: fr.po v2.13 rnd 2 Jeff Hostetler (1): t1450: avoid use of "sed" on the index, which is a binary file Jeff King (1): shell: disallow repo names beginning with dash Jiang Xin (4): l10n: git.pot: v2.13.0 round 1 (96 new, 37 removed) l10n: zh_CN: for git v2.13.0 l10n round 1 l10n: git.pot: v2.13.0 round 2 (4 new, 7 removed) l10n: zh_CN: for git v2.13.0 l10n round 2 Jordi Mas (1): l10n: Update Catalan translation Junio C Hamano (10): Git 2.4.12 Git 2.5.6 Git 2.6.7 Git 2.7.5 Git 2.8.5 Git 2.9.4 Git 2.10.3 Git 2.11.2 Git 2.12.3 Git 2.13 Michael J Gruber (1): l10n: de.po: lower case after semi-colon Peter Krefting (2): l10n: sv.po: Update Swedish translation (3199t0f0u) l10n: sv.po: Update Swedish translation (3195t0f0u) Ralf Thielow (2): l10n: de.po: update German translation l10n: de.po: translate 4 new messages Ray Chen (1): l10n: zh_CN: review for git v2.13.0 l10n round 1 Trần Ngọc Quân (2): l10n: vi.po(3198t): Updated Vietnamese translation for v2.13.0-rc0 l10n: vi.po(3195t): Update translation for v2.13.0 round 2 Vasco Almeida (1): l10n: pt_PT: update Portuguese translation Version v2.13.0-rc2; changes since v2.13.0-rc1: ----------------------------------------------- Jean-Noël Avila (1): i18n: remove i18n from tag reflog message Jeff King (3): completion: optionally disable checkout DWIM submodule_init: die cleanly on submodules without url defined prio_queue_reverse: don't swap elements with themselves Junio C Hamano (2): Merging a handful of topics before -rc2 Git 2.13-rc2 Lars Schneider (2): travis-ci: printf $STATUS as string travis-ci: set DEVELOPER knob for Linux32 build Peter Krefting (1): i18n: read-cache: typofix René Genz (3): doc: update SubmittingPatches fix minor typos doc: git-pull.txt use US spelling, fix minor typo Simon Ruderich (1): githooks.txt: clarify push hooks are always executed in $GIT_DIR Stephen Hicks (1): rebase -i: reread the todo list if `exec` touched it Ævar Arnfjörð Bjarmason (1): t/perf: correctly align non-ASCII descriptions in output Version v2.13.0-rc1; changes since v2.13.0-rc0: ----------------------------------------------- Brandon Williams (1): submodule: prevent backslash expantion in submodule names Christian Couder (1): read-cache: avoid using git_path() in freshen_shared_index() David Turner (2): http.postbuffer: allow full range of ssize_t values xgethostname: handle long hostnames Giuseppe Bilotta (4): builtin/am: honor --signoff also when --rebasing builtin/am: fold am_signoff() into am_append_signoff() doc: trivial typo in git-format-patch.txt rebase: pass --[no-]signoff option to git am Jacob Keller (2): ls-files: fix recurse-submodules with nested submodules ls-files: fix path used when recursing into submodules Jeff Hostetler (8): read-cache: force_verify_index_checksum string-list: use ALLOC_GROW macro when reallocing string_list read-cache: add strcmp_offset function unpack-trees: avoid duplicate ODB lookups during checkout p0006-read-tree-checkout: perf test to time read-tree read-cache: speed up add_index_entry during checkout read-cache: speed up has_dir_name (part 1) read-cache: speed up has_dir_name (part 2) Jeff King (16): receive-pack: drop tmp_objdir_env from run_update_hook receive-pack: document user-visible quarantine effects refs: reject ref updates while GIT_QUARANTINE_PATH is set bisect: add git_path_bisect_terms helper branch: add edit_description() helper use git_path_* helper functions replace xstrdup(git_path(...)) with git_pathdup(...) replace strbuf_addstr(git_path()) with git_path_buf() am: drop "dir" parameter from am_state_init connect.c: fix leak in handle_ssh_variant doc: use https links to avoid http redirect doc: replace or.cz gitwiki link with git.wiki.kernel.org gitcore-tutorial: update broken link docs/archimport: quote sourcecontrol.net reference docs/bisect-lk2009: update nist report link docs/bisect-lk2009: update java code conventions link Jonathan Tan (1): fetch-pack: show clearer error message upon ERR Junio C Hamano (3): replace: plug a memory leak Getting ready for -rc1 Git 2.13-rc1 Kyle Meyer (1): t1400: use consistent style for test_expect_success calls Lars Schneider (1): travis-ci: add static analysis build job to run coccicheck Michael Haggerty (20): get_ref_dir(): don't call read_loose_refs() for "refs/bisect" refs_read_raw_ref(): new function refs_ref_iterator_begin(): new function refs_verify_refname_available(): implement once for all backends refs_verify_refname_available(): use function in more places ref-cache: rename `add_ref()` to `add_ref_entry()` ref-cache: rename `find_ref()` to `find_ref_entry()` ref-cache: rename `remove_entry()` to `remove_entry_from_dir()` refs: split `ref_cache` code into separate files ref-cache: introduce a new type, ref_cache refs: record the ref_store in ref_cache, not ref_dir ref-cache: use a callback function to fill the cache refs: handle "refs/bisect/" in `loose_fill_ref_dir()` do_for_each_entry_in_dir(): eliminate `offset` argument get_loose_ref_dir(): function renamed from get_loose_refs() get_loose_ref_cache(): new function cache_ref_iterator_begin(): make function smarter commit_packed_refs(): use reference iteration files_pack_refs(): use reference iteration do_for_each_entry_in_dir(): delete function Nguyễn Thái Ngọc Duy (6): path.c: and an option to call real_path() in expand_user_path() config: resolve symlinks in conditional include's patterns config: prepare to pass more info in git_config_with_options() config: handle conditional include when $GIT_DIR is not set up config: correct file reading order in read_early_config() worktree add: add --lock option Patrick Steinhardt (1): pathspec: honor `PATHSPEC_PREFIX_ORIGIN` with empty prefix Prathamesh Chavan (1): t2027: avoid using pipes René Scharfe (4): am: close stream on error, but not stdin files_for_each_reflog_ent_reverse(): close stream and free strbuf on error server-info: avoid calling fclose(3) twice in update_info_file() use HOST_NAME_MAX to size buffers for gethostname(2) Sebastian Schuberth (4): sha1_file: remove an used fd variable submodule: remove a superfluous second check for the "new" variable gitmodules: clarify what history depth a shallow clone has gitmodules: clarify the ignore option values Sergey Ryazanov (2): http: honor empty http.proxy option to bypass proxy http: fix the silent ignoring of proxy misconfiguraion Torsten Bögershausen (1): gitattributes.txt: document how to normalize the line endings Ævar Arnfjörð Bjarmason (2): push: document & test --force-with-lease with multiple remotes completion: expand "push --delete <remote> <ref>" for refs on that <remote> Version v2.13.0-rc0; changes since v2.12.5: ------------------------------------------- Alex Henrie (1): log: if --decorate is not given, default to --decorate=auto Andreas Heiduk (2): Documentation: improve description for core.quotePath diff-files: document --ours etc. Brandon Williams (36): attr: pass struct attr_check to collect_some_attrs attr: use hashmap for attribute dictionary attr: eliminate global check_all_attr array attr: remove maybe-real, maybe-macro from git_attr attr: tighten const correctness with git_attr and match_attr attr: store attribute stack in attr_check structure attr: push the bare repo check into read_attr() attr: reformat git_attr_set_direction() function pathspec: allow querying for attributes pathspec: allow escaped query values submodule--helper: add is-active subcommand submodule status: use submodule--helper is-active submodule sync: skip work for inactive submodules submodule sync: use submodule--helper is-active submodule--helper clone: check for configured submodules using helper grep: fix help text typo setup: allow for prefix to be passed to git commands grep: fix bug when recursing with relative pathspec ls-files: fix typo in variable name ls-files: fix bug when recursing with relative pathspec grep: set default output method submodule: decouple url and submodule interest submodule init: initialize active submodules clone: teach --recurse-submodules to optionally take a pathspec submodule--helper init: set submodule.<name>.active submodule add: respect submodule.active and submodule.<name>.active grep: fix builds with with no thread support send-pack: send push options correctly in stateless-rpc case remote-curl: allow push options sequencer: fix missing newline push: unmark a local variable as static push: propagate push-options with --recurse-submodules remote: expose parse_push_refspec function submodule--helper: add push-check subcommand push: propagate remote and refspec with --recurse-submodules pathspec: fix segfault in clear_pathspec Christian Couder (24): config: mark an error message up for translation t1700: change here document style config: add git_config_get_split_index() split-index: add {add,remove}_split_index() functions read-cache: add and then use tweak_split_index() update-index: warn in case of split-index incoherency t1700: add tests for core.splitIndex Documentation/config: add information for core.splitIndex Documentation/git-update-index: talk about core.splitIndex config var config: add git_config_get_max_percent_split_change() read-cache: regenerate shared index if necessary t1700: add tests for splitIndex.maxPercentChange Documentation/config: add splitIndex.maxPercentChange sha1_file: make check_and_freshen_file() non static read-cache: touch shared index files when used config: add git_config_get_expiry() from gc.c read-cache: unlink old sharedindex files t1700: test shared index file expiration read-cache: refactor read_index_from() read-cache: use freshen_shared_index() in read_index_from() Documentation/config: add splitIndex.sharedIndexExpire Documentation/git-update-index: explain splitIndex.* update-index: fix xgetcwd() related memory leak p0004: make perf test executable Cornelius Weig (1): tag: generate useful reflog message David Aguilar (3): t7800: remove whitespace before redirect t7800: cleanup cruft left behind by tests difftool: handle modified symlinks in dir-diff mode Devin Lehmacher (3): path.c: add xdg_cache_home credential-cache: use XDG_CACHE_HOME for socket credential-cache: add tests for XDG functionality Hiroshi Shirosaki (1): git svn: fix authentication with 'branch' Jacob Keller (5): doc: add documentation for OPT_STRING_LIST name-rev: extend --refs to accept multiple patterns name-rev: add support to exclude refs by pattern match describe: teach --match to accept multiple patterns describe: teach describe negative pattern matches Jeff Hostetler (9): preload-index: avoid lstat for skip-worktree items name-hash: specify initial size for istate.dir_hash table hashmap: allow memihash computation to be continued hashmap: add disallow_rehash setting hashmap: document memihash_cont, hashmap_disallow_rehash api name-hash: perf improvement for lazy_init_name_hash name-hash: add test-lazy-init-name-hash name-hash: add perf test for lazy_init_name_hash test-online-cpus: helper to return cpu count Jeff King (58): setup_git_env: avoid blind fall-back to ".git" for_each_alternate_ref: handle failure from real_pathdup() for_each_alternate_ref: stop trimming trailing slashes for_each_alternate_ref: use strbuf for path allocation for_each_alternate_ref: pass name/oid instead of ref struct for_each_alternate_ref: replace transport code with for-each-ref fetch-pack: cache results of for_each_alternate_ref add oidset API receive-pack: use oidset to de-duplicate .have lines receive-pack: fix misleading namespace/.have comment receive-pack: treat namespace .have lines like alternates receive-pack: avoid duplicates between our refs and alternates ref-filter: move ref_cbdata definition into ref-filter.c ref-filter: use contains_result enum consistently ref-filter: die on parse_commit errors ref-filter: use separate cache for contains_tag_algo add--interactive: do not expand pathspecs with ls-files cherry-pick: detect bogus arguments to --mainline sha1dc: add collision-detecting sha1 implementation sha1dc: adjust header includes for git sha1dc: disable safe_hash feature sequencer: drop "warning:" when stopping for edit Makefile: add DC_SHA1 knob t0013: add a basic sha1 collision detection test hash-object: fix buffer reuse with --path in a subdirectory prefix_filename: move docstring to header file prefix_filename: drop length parameter prefix_filename: return newly allocated string prefix_filename: simplify windows #ifdef bundle: use prefix_filename with bundle path pager_in_use: use git_env_bool() fast-import: use xsnprintf for writing sha1s fast-import: use xsnprintf for formatting headers encode_in_pack_object_header: respect output buffer length pack.h: define largest possible encoded object size do not check odb_mkstemp return value for errors odb_mkstemp: write filename into strbuf odb_mkstemp: use git_path_buf Makefile: detect errors in running spatch difftool: avoid strcpy diff: avoid fixed-size buffer for patch-ids tag: use strbuf to format tag header fetch: use heap buffer to format reflog avoid using fixed PATH_MAX buffers for refs avoid using mksnpath for refs create_branch: move msg setup closer to point of use create_branch: use xstrfmt for reflog message name-rev: replace static buffer with strbuf receive-pack: print --pack-header directly into argv array replace unchecked snprintf calls with heap buffers combine-diff: replace malloc/snprintf with xstrfmt convert unchecked snprintf into xsnprintf transport-helper: replace checked snprintf with xsnprintf gc: replace local buffer with git_path daemon: use an argv_array to exec children sha1_loose_object_info: return error for corrupted objects index-pack: detect local corruption in collision check connect.c: handle errors from split_cmdline Johannes Schindelin (20): git_connect(): factor out SSH variant handling rebase--helper: add a builtin helper for interactive rebases rebase -i: use the rebase--helper builtin rev-parse: fix several options when running in a subdirectory t7006: replace dubious test setup_git_directory(): use is_dir_sep() helper setup: prepare setup_discovered_git_dir() for the root directory setup_git_directory_1(): avoid changing global state setup: introduce the discover_git_directory() function setup: make read_early_config() reusable read_early_config(): avoid .git/config hack when unneeded read_early_config(): really discover .git/ t1309: test read_early_config() setup_git_directory_gently_1(): avoid die()ing t1309: document cases where we would want early config not to die() setup.c: mention unresolved problems t7504: document regression: reword no longer calls commit-msg sequencer: make commit options more extensible sequencer: allow the commit-msg hooks to run during a `reword` difftool: fix use-after-free Jonathan Nieder (1): has_sha1_file: don't bother if we are not in a repository Junio C Hamano (41): merge: drop 'git merge <message> HEAD <commit>' syntax connect: rename tortoiseplink and putty variables commit.c: use strchrnul() to scan for one line attr.c: use strchrnul() to scan for one line attr.c: update a stale comment on "struct match_attr" attr.c: explain the lack of attr-name syntax check in parse_attr() attr.c: complete a sentence in a comment attr.c: mark where #if DEBUG ends more clearly attr.c: simplify macroexpand_one() attr.c: tighten constness around "git_attr" structure attr.c: plug small leak in parse_attr_line() attr.c: add push_stack() helper attr.c: outline the future plans by heavily commenting attr: rename function and struct related to checking attributes attr: (re)introduce git_check_attr() and struct attr_check attr: convert git_all_attrs() to use "struct attr_check" attr: convert git_check_attrs() callers to use the new API attr: retire git_check_attrs() API attr: change validity check for attribute names to use positive logic ref-filter: resurrect "strip" as a synonym to "lstrip" connect.c: stop conflating ssh command names and overrides First batch after 2.12 branch: honor --abbrev/--no-abbrev in --list mode Second batch after 2.12 Third batch after 2.12 Fourth batch after 2.12 Makefile: make DC_SHA1 the default Fifth batch for 2.13 Sixth batch for 2.13 tests: lint for run-away here-doc branch doc: update description for `--list` Seventh batch for 2.13 sha1dc: avoid CPP macro collisions Eighth batch for 2.13 Ninth batch for 2.13 Tenth batch for 2.13 remote.[ch]: parse_push_cas_option() can be static contrib/git-resurrect.sh: do not write \t for HT in sed scripts Eleventh batch for 2.13 Twelfth batch for 2.13 Git 2.13-rc0 Karthik Nayak (20): ref-filter: implement %(if), %(then), and %(else) atoms ref-filter: include reference to 'used_atom' within 'atom_value' ref-filter: implement %(if:equals=<string>) and %(if:notequals=<string>) ref-filter: modify "%(objectname:short)" to take length ref-filter: move get_head_description() from branch.c ref-filter: introduce format_ref_array_item() ref-filter: make %(upstream:track) prints "[gone]" for invalid upstreams ref-filter: add support for %(upstream:track,nobracket) ref-filter: make "%(symref)" atom work with the ':short' modifier ref-filter: introduce refname_atom_parser_internal() ref-filter: introduce refname_atom_parser() ref-filter: make remote_ref_atom_parser() use refname_atom_parser_internal() ref-filter: rename the 'strip' option to 'lstrip' ref-filter: Do not abruptly die when using the 'lstrip=<N>' option ref-filter: modify the 'lstrip=<N>' option to work with negative '<N>' ref-filter: add an 'rstrip=<N>' option to atoms which deal with refnames ref-filter: allow porcelain to translate messages in the output branch, tag: use porcelain output branch: use ref-filter printing APIs branch: implement '--format' option Kevin Willford (2): name-hash: fix buffer overrun t3008: skip lazy-init test on a single-core box Kyle Meyer (10): delete_ref: accept a reflog message argument update-ref: pass reflog message to delete_ref() rename_ref: replace empty message in HEAD's log branch: record creation of renamed branch in HEAD's log t1400: rename test descriptions to be unique t1400: set core.logAllRefUpdates in "logged by touch" tests t1400: use test_path_is_* helpers t1400: remove a set of unused output files t1400: use test_when_finished for cleanup doc/revisions: remove brackets from rev^-n shorthand Lars Schneider (1): travis-ci: build and test Git on Windows Linus Torvalds (3): pathspec magic: add '^' as alias for '!' pathspec: don't error out on all-exclusionary pathspec patterns mailinfo: fix in-body header continuations Luke Diamand (3): git-p4: add failing test for name-rev rather than symbolic-ref git-p4: add read_pipe_text() internal function git-p4: don't use name-rev to get current branch Matt McCutchen (1): merge-recursive: make "CONFLICT (rename/delete)" message show both paths Michael Haggerty (32): files_rename_ref(): tidy up whitespace refname_is_safe(): correct docstring t5505: use "for-each-ref" to test for the non-existence of references safe_create_leading_directories_const(): preserve errno safe_create_leading_directories(): set errno on SCLD_EXISTS raceproof_create_file(): new function lock_ref_sha1_basic(): inline constant lock_ref_sha1_basic(): use raceproof_create_file() rename_tmp_log(): use raceproof_create_file() rename_tmp_log(): improve error reporting log_ref_write(): inline function log_ref_setup(): separate code for create vs non-create log_ref_setup(): improve robustness against races log_ref_setup(): pass the open file descriptor back to the caller log_ref_write_1(): don't depend on logfile argument log_ref_setup(): manage the name of the reflog file internally log_ref_write_1(): inline function delete_ref_loose(): derive loose reference path from lock delete_ref_loose(): inline function try_remove_empty_parents(): rename parameter "name" -> "refname" try_remove_empty_parents(): don't trash argument contents try_remove_empty_parents(): teach to remove parents of reflogs, too files_transaction_commit(): clean up empty directories refs: reorder some function definitions refs: make some ref_store lookup functions private refs: remove some unnecessary handling of submodule == "" register_ref_store(): new function refs: store submodule ref stores in a hashmap refs: push the submodule attribute down base_ref_store_init(): remove submodule argument files_ref_store::submodule: use NULL for the main repository read_loose_refs(): read refs using resolve_ref_recursively() Michael J Gruber (3): git-prompt: add a describe style for any tags describe: localize debug output fully l10n: de: translate describe debug terms Michael Rappazzo (1): rev-parse tests: add tests executed from a subdirectory Mike Hommey (1): notes: do not break note_tree structure in note_tree_consolidate() Mostyn Bramley-Moore (1): Documentation: document elements in "ls-files -s" output in order Nguyễn Thái Ngọc Duy (33): attr: support quoting pathname patterns in C style clean: use warning_errno() when appropriate config.txt: clarify multiple key values in include.path config.txt: reflow the second include.path paragraph config: add conditional include refs.h: add forward declaration for structs used in this file files-backend: make files_log_ref_write() static files-backend.c: delete dead code in files_ref_iterator_begin() files-backend: delete dead code in files_init_db() files-backend: add and use files_packed_refs_path() files-backend: make sure files_rename_ref() always reach the end files-backend: convert git_path() to strbuf_git_path() files-backend: move "logs/" out of TMP_RENAMED_LOG files-backend: add and use files_reflog_path() files-backend: add and use files_ref_path() files-backend: remove the use of git_path() refs.c: introduce get_main_ref_store() refs: rename lookup_ref_store() to lookup_submodule_ref_store() refs.c: flatten get_ref_store() a bit refs.c: kill register_ref_store(), add register_submodule_ref_store() refs.c: make get_main_ref_store() public and use it path.c: move some code out of strbuf_git_path_submodule() refs: move submodule code out of files-backend.c files-backend: replace submodule_allowed check in files_downcast() refs: rename get_ref_store() to get_submodule_ref_store() and make it public refs: add new ref-store api refs: new transaction related ref-store api files-backend: avoid ref api targeting main ref store refs: delete pack_refs() in favor of refs_pack_refs() t/helper: add test-ref-store to test ref-store functions t1405: some basic tests on main ref store t1406: new tests for submodule ref store refs.h: add a note about sorting order of for_each_ref_* Patrick Steinhardt (5): mailmap: add Patrick Steinhardt's work address urlmatch: enable normalization of URLs with globs urlmatch: split host and port fields in `struct url_info` urlmatch: include host in urlmatch ranking urlmatch: allow globbing for the URL host part Quentin Pradet (1): git-bisect.txt: add missing word Ralf Thielow (2): submodule.c: add missing ' in error messages git-add--interactive.perl: add missing dot in a message Ramsay Jones (1): name-hash: add test-lazy-init-name-hash to .gitignore René Scharfe (4): log-tree: factor out fmt_output_email_subject() pretty: use fmt_output_email_subject() strbuf: support long paths w/o read rights in strbuf_getcwd() on FreeBSD test-read-cache: setup git dir SZEDER Gábor (41): completion: improve __git_refs()'s in-code documentation completion tests: don't add test cruft to the test repository completion tests: make the $cur variable local to the test helper functions completion tests: consolidate getting path of current working directory completion tests: check __gitdir()'s output in the error cases completion tests: add tests for the __git_refs() helper function completion: ensure that the repository path given on the command line exists completion: fix most spots not respecting 'git --git-dir=<path>' completion: respect 'git --git-dir=<path>' when listing remote refs completion: list refs from remote when remote's name matches a directory completion: don't list 'HEAD' when trying refs completion outside of a repo completion: list short refs from a remote given as a URL completion: don't offer commands when 'git --opt' needs an argument completion: fix completion after 'git -C <path>' rev-parse: add '--absolute-git-dir' option completion: respect 'git -C <path>' completion: don't use __gitdir() for git commands completion: consolidate silencing errors from git commands completion: don't guard git executions with __gitdir() completion: extract repository discovery from __gitdir() completion: cache the path to the repository completion: restore removed line continuating backslash completion: remove redundant __gitcomp_nl() options from _git_commit() completion: wrap __git_refs() for better option parsing completion: support completing full refs after '--option=refs/<TAB>' completion: support completing fully qualified non-fast-forward refspecs completion: support excluding full refs completion: don't disambiguate tags and branches completion: don't disambiguate short refs completion: let 'for-each-ref' and 'ls-remote' filter matching refs completion: let 'for-each-ref' strip the remote name from remote branches completion: let 'for-each-ref' filter remote branches for 'checkout' DWIMery completion: let 'for-each-ref' sort remote branches for 'checkout' DWIMery completion: fill COMPREPLY directly when completing refs completion: fill COMPREPLY directly when completing fetch refspecs completion: speed up branch and tag completion refs.c: use skip_prefix() in prettify_refname() completion: put matching ctags symbol names directly into COMPREPLY completion: extract completing ctags symbol names into helper function completion: offer ctags symbol names for 'git log -S', '-G' and '-L:' t6500: wait for detached auto gc at the end of the test script Segev Finer (2): connect: handle putty/plink also in GIT_SSH_COMMAND connect: Add the envvar GIT_SSH_VARIANT and ssh.variant config Stefan Beller (32): Documentation: fix a typo submodule init: warn about falling back to a local path rev-parse: add --show-superproject-working-tree connect_work_tree_and_git_dir: safely create leading directories lib-submodule-update.sh: reorder create_lib_submodule_repo lib-submodule-update.sh: do not use ./. as submodule remote lib-submodule-update: teach test_submodule_content the -C <dir> flag lib-submodule-update.sh: replace sha1 by hash lib-submodule-update.sh: define tests for recursing into submodules make is_submodule_populated gently update submodules: add submodule config parsing update submodules: add a config option to determine if submodules are updated submodules: introduce check to see whether to touch a submodule update submodules: move up prepare_submodule_repo_env submodule.c: get_super_prefix_or_empty update submodules: add submodule_move_head unpack-trees: pass old oid to verify_clean_submodule unpack-trees: check if we can perform the operation for submodules entry.c: create submodules when interesting builtin/checkout: add --recurse-submodules switch builtin/read-tree: add --recurse-submodules switch builtin/describe: introduce --broken flag submodule.c: use argv_array in is_submodule_modified submodule.c: factor out early loop termination in is_submodule_modified submodule.c: convert is_submodule_modified to use strbuf_getwholeline submodule.c: port is_submodule_modified to use porcelain 2 submodule.c: stricter checking for submodules in is_submodule_modified short status: improve reporting for submodule changes unpack-trees.c: align submodule error message to the other error messages submodule.c: correctly handle nested submodules in is_submodule_modified diff: submodule inline diff to initialize env array. submodule--helper: fix typo in is_active error message Thomas Gummerer (9): stash: introduce push verb stash: add test for the create command line arguments stash: refactor stash_create stash: teach 'push' (and 'create_stash') to honor pathspec stash: use stash_push for no verb form stash: allow pathspecs in the no verb form stash: don't show internal implementation details stash: pass the pathspec argument to git reset stash: keep untracked files intact in stash -k Valery Tolstov (1): submodule--helper.c: remove duplicate code Vegard Nossum (1): xdiff -W: relax end-of-file function detection brian m. carlson (41): hex: introduce parse_oid_hex builtin/commit: convert to struct object_id builtin/diff-tree: convert to struct object_id builtin/describe: convert to struct object_id builtin/fast-export: convert to struct object_id builtin/fmt-merge-message: convert to struct object_id builtin/grep: convert to struct object_id builtin/branch: convert to struct object_id builtin/clone: convert to struct object_id builtin/merge: convert to struct object_id Convert remaining callers of resolve_refdup to object_id builtin/replace: convert to struct object_id reflog-walk: convert struct reflog_info to struct object_id refs: convert each_reflog_ent_fn to struct object_id refs: simplify parsing of reflog entries sha1_file: introduce an nth_packed_object_oid function Convert object iteration callbacks to struct object_id builtin/merge-base: convert to struct object_id wt-status: convert to struct object_id hash.h: move SHA-1 implementation selection into a header file Define new hash-size constants for allocating memory Convert GIT_SHA1_HEXSZ used for allocation to GIT_MAX_HEXSZ Convert GIT_SHA1_RAWSZ used for allocation to GIT_MAX_RAWSZ builtin/diff: convert to struct object_id builtin/pull: convert portions to struct object_id builtin/receive-pack: fix incorrect pointer arithmetic builtin/receive-pack: convert portions to struct object_id fsck: convert init_skiplist to struct object_id parse-options-cb: convert sha1_array_append caller to struct object_id test-sha1-array: convert most code to struct object_id sha1_name: convert struct disambiguate_state to object_id sha1_name: convert disambiguate_hint_fn to take object_id submodule: convert check_for_new_submodule_commits to object_id builtin/pull: convert to struct object_id sha1-array: convert internal storage for struct sha1_array to object_id Make sha1_array_append take a struct object_id * Convert remaining callers of sha1_array_lookup to object_id Convert sha1_array_lookup to take struct object_id Convert sha1_array_for_each_unique and for_each_abbrev to object_id Rename sha1_array to oid_array Documentation: update and rename api-sha1-array.txt Ævar Arnfjörð Bjarmason (25): tag doc: move the description of --[no-]merged earlier tag doc: split up the --[no-]merged documentation tag doc: reword --[no-]merged to talk about commits, not tips ref-filter: make combining --merged & --no-merged an error doc/SubmittingPatches: clarify the casing convention for "area: change..." t/README: link to metacpan.org, not search.cpan.org t/README: change "Inside <X> part" to "Inside the <X> part" ref-filter: add test for --contains on a non-commit tag: remove a TODO item from the test suite tag tests: fix a typo in a test description for-each-ref: partly change <object> to <commit> in help branch doc: change `git branch <pattern>` to use `<branchname>` tag: add more incompatibles mode tests parse-options: add OPT_NONEG to the "contains" option tag: change misleading --list <pattern> documentation tag: implicitly supply --list given another list-like option tag: change --point-at to default to HEAD ref-filter: add --no-contains option to tag/branch/for-each-ref ref-filter: reflow recently changed branch/tag/for-each-ref docs tag: add tests for --with and --without t/README: clarify the test_have_prereq documentation doc/SubmittingPatches: show how to get a CLI commit summary rev-parse: match @{upstream}, @{u} and @{push} case-insensitively perl: regenerate perl.mak if perl -V changes grep: plug a trivial memory leak Version v2.12.5; changes since v2.12.4: --------------------------------------- Jeff King (3): shell: drop git-cvsserver support by default archimport: use safe_pipe_capture for user input cvsimport: shell-quote variable used in backticks Junio C Hamano (5): cvsserver: move safe_pipe_capture() to the main package cvsserver: use safe_pipe_capture for `constant commands` as well Git 2.10.5 Git 2.11.4 Git 2.12.5 joernchen (1): cvsserver: use safe_pipe_capture instead of backticks Version v2.12.4; changes since v2.12.3: --------------------------------------- Jeff King (5): t/lib-proto-disable: restore protocol.allow after config tests t5813: add test for hostname starting with dash connect: factor out "looks like command line option" check connect: reject dashed arguments for proxy commands connect: reject paths that look like command line options Junio C Hamano (7): connect: reject ssh hostname that begins with a dash Git 2.7.6 Git 2.8.6 Git 2.9.5 Git 2.10.4 Git 2.11.3 Git 2.12.4 Version v2.12.3; changes since v2.12.2: --------------------------------------- Devin J. Pohly (4): t7003: ensure --prune-empty can prune root commit t7003: ensure --prune-empty removes entire branch when applicable filter-branch: fix --prune-empty on parentless commits p7000: add test for filter-branch with --prune-empty Eric Wong (2): http: inform about alternates-as-redirects behavior http: release strbuf on disabled alternates Jeff King (32): pack-objects: enforce --depth limit in reused deltas pack-objects: convert recursion to iteration in break_delta_chain() ident: mark error messages for translation ident: handle NULL email when complaining of empty name ident: reject all-crud ident name ident: do not ignore empty config name/email parse_config_key: use skip_prefix instead of starts_with parse_config_key: allow matching single-level config parse_hide_refs_config: tell parse_config_key we don't want a subsection interpret_branch_name(): handle auto-namelen for @{-1} interpret_branch_name: move docstring to header file strbuf_branchname: drop return value strbuf_branchname: add docstring interpret_branch_name: allow callers to restrict expansions t3204: test git-branch @-expansion corner cases branch: restrict @-expansions when deleting strbuf_check_ref_format(): expand only local branches checkout: restrict @-expansions when finding branch t/perf: use $MODERN_GIT for all repo-copying steps t/perf: add fallback for pre-bin-wrappers versions of git t: add an interoperability test harness t/interop: add test of old clients against modern git-daemon rev-parse: use skip_prefix when parsing options rev-parse: add helper for parsing "--foo/--foo=" rev-parse: simplify parsing of ref options move odb_* declarations out of git-compat-util.h sha1_file.c: make pack-name helper globally accessible odb_pack_keep(): stop generating keepfile name replace snprintf with odb_pack_name() index-pack: make pointer-alias fallbacks safer run-command: fix segfault when cleaning forked async process shell: disallow repo names beginning with dash Jonathan Tan (1): t/perf: export variable used in other blocks Junio C Hamano (12): t5615: fix a here-doc syntax error t7406: correct test case for submodule-update initial population Prepare for 2.12.3 Git 2.4.12 Git 2.5.6 Git 2.6.7 Git 2.7.5 Git 2.8.5 Git 2.9.4 Git 2.10.3 Git 2.11.2 Git 2.12.3 Kyle Meyer (1): doc/config: grammar fixes for core.{editor,commentChar} Matt McCutchen (3): fetch-pack: move code to report unmatched refs to a function fetch_refs_via_pack: call report_unmatched_refs fetch-pack: add specific error for fetching an unadvertised object René Scharfe (7): cocci: use ALLOC_ARRAY strbuf: add strbuf_add_real_path() blame: move blame_entry duplication to add_blame_entry() receive-pack: simplify run_update_post_hook() http-push: don't check return value of lookup_unknown_object() revision: remove declaration of path_name() shortlog: don't set after_subject to an empty string SZEDER Gábor (3): tests: create an interactive gdb session with the 'debug' helper tests: make the 'test_pause' helper work in non-verbose mode pickaxe: fix segfault with '-S<...> --pickaxe-regex' Santiago Torres (1): t7004, t7030: fix here-doc syntax errors Stefan Beller (3): refs: parse_hide_refs_config to use parse_config_key wt-status: simplify by using for_each_string_list_item t3600: rename test to describe its functionality Ævar Arnfjörð Bjarmason (3): cvs tests: skip tests that call "cvs commit" when running as root gitweb tests: change confusing "skip_all" phrasing gitweb tests: skip tests when we don't have Time::HiRes Version v2.12.2; changes since v2.12.1: --------------------------------------- David Turner (1): gc: ignore old gc.log files Eric Wong (1): README: create HTTP/HTTPS links from URLs in Markdown Jeff King (20): grep: move thread initialization a little lower grep: re-order rev-parsing loop grep: fix "--" rev/pathspec disambiguation grep: avoid resolving revision names in --no-index case grep: do not diagnose misspelt revs with --no-index show-branch: drop head_len variable show-branch: store resolved head in heap buffer remote: avoid reading $GIT_DIR config in non-repo grep: treat revs the same for --untracked as for --no-index show-branch: use skip_prefix to drop magic numbers tempfile: set errno to a known value before calling ferror() t6300: avoid creating refs/heads/HEAD ewah: fix eword_t/uint64_t confusion receive-pack: fix deadlock when we cannot create tmpdir send-pack: extract parsing of "unpack" response send-pack: use skip_prefix for parsing unpack status send-pack: improve unpack-status error messages send-pack: read "unpack" status even on pack-objects failure send-pack: report signal death of pack-objects http-walker: fix buffer underflow processing remote alternates Johan Hovold (1): send-email: only allow one address per body tag Jonathan Nieder (1): remote helpers: avoid blind fall-back to ".git" when setting GIT_DIR Jonathan Tan (2): grep: do not unnecessarily query repo for "--" upload-pack: report "not our ref" to client Junio C Hamano (5): config: move a few helper functions up config: use git_config_parse_key() in git_config_parse_parameter() diff: do not short-cut CHECK_SIZE_ONLY check in diff_populate_filespec() Prepare for 2.12.2 Git 2.12.2 Michael J Gruber (2): git-status: make porcelain more robust mailmap: use Michael J Gruber's new address Nguyễn Thái Ngọc Duy (1): git-commit.txt: list post-rewrite in HOOKS section Patrick Steinhardt (2): docs/diffcore: fix grammar in diffcore-rename header docs/diffcore: unquote "Complete Rewrites" in headers Ramsay Jones (2): wrapper.c: remove unused git_mkstemp() function wrapper.c: remove unused gitmkstemps() function René Scharfe (3): sha1_file: release fallback base's memory in unpack_entry() commit: be more precise when searching for headers commit: don't check for space twice when looking for header Ross Lagerwall (1): remote: ignore failure to remove missing branch.<name>.merge Sebastian Schuberth (1): contrib: git-remote-{bzr,hg} placeholders don't need Python Stefan Beller (1): submodule-config: correct error reporting for invalid ignore value Ævar Arnfjörð Bjarmason (2): doc: change erroneous --[no]-whatever into --[no-]whatever push: mention "push.default=tracking" in the documentation Version v2.12.1; changes since v2.12.0: --------------------------------------- Allan Xavier (1): line-log.c: prevent crash during union of too many ranges Jeff Hostetler (1): mingw: use OpenSSL's SHA-1 routines Jeff King (3): http: restrict auth methods to what the server advertises http: add an "auto" mode for http.emptyauth add--interactive: fix missing file prompt for patch mode with "-i" Johannes Schindelin (3): Travis: also test on 32-bit Linux t1501: demonstrate NULL pointer access with invalid GIT_WORK_TREE real_pathdup(): fix callsites that wanted it to die on error Jonathan Tan (1): http: attempt updating base URL only if no error Junio C Hamano (2): Preparing for 2.12.1 Git 2.12.1 Maxim Moseychuk (2): stop_progress_msg: convert xsnprintf to xstrfmt bisect_next_all: convert xsnprintf to xstrfmt Vegard Nossum (1): line-log: use COPY_ARRAY to fix mis-sized memcpy Version v2.12.0; changes since v2.12.0-rc2: ------------------------------------------- Alexander Shopov (1): l10n: bg: Updated Bulgarian translation (2913t+0f+0u) Anthony Ramine (1): l10n: fr.po: Fix a typo in the French translation Changwoo Ryu (2): l10n: ko.po: Update Korean translation l10n: ko.po: Update Korean translation Damien Regad (1): git-check-ref-format: clarify documentation for --normalize Eric Wong (1): git-svn: escape backslashes in refnames Grégoire Paris (1): init: document dotfiles exclusion on template copy Jean-Noël Avila (2): l10n: fr.po: v2.11-rc0 first round l10n: fr.po: v2.12.0 round 2 3139t Jiang Xin (3): l10n: git.pot: v2.12.0 round 1 (239 new, 15 removed) l10n: git.pot: v2.12.0 round 2 (2 new) l10n: zh_CN: for git v2.12.0 l10n round 2 Joachim Jablon (2): l10n: fr.po: Fix typos l10n: fr.po: Remove gender specific adjectives Jordi Mas (4): l10n: New Catalan translation maintainer l10n: fixes to Catalan translation l10n: update Catalan translation l10n: Update Catalan translation Junio C Hamano (1): Git 2.12 Patrick Steinhardt (1): docs/git-gc: fix default value for `--aggressiveDepth` Peter Krefting (2): l10n: sv.po: Update Swedish translation (3137t0f0u) l10n: sv.po: Update Swedish translation (3139t0f0u) Ralf Thielow (2): l10n: de.po: translate 241 messages git add -i: replace \t with blanks in the help message Ray Chen (1): l10n: zh_CN: review for git v2.11.0 l10n Trần Ngọc Quân (2): l10n: vi.po: Updated Vietnamese translation (3137t) l10n: vi.po (3139t): Updated 2 new messages for rc1 Vasco Almeida (1): l10n: pt_PT: update Portuguese tranlation brian m. carlson (2): Documentation: correctly spell git worktree --detach Documentation: use brackets for optional arguments Version v2.12.0-rc2; changes since v2.12.0-rc1: ----------------------------------------------- Cornelius Weig (7): completion: teach submodule subcommands to complete options completion: add subcommand completion for rerere completion: improve bash completion for git-add completion: teach ls-remote to complete options completion: teach replace to complete options completion: teach remote subcommands to complete options completion: recognize more long-options David Pursehouse (1): config.txt: fix formatting of submodule.alternateErrorStrategy section Jacob Keller (1): reset: add an example of how to split a commit into two Jeff King (3): docs/gitremote-helpers: fix unbalanced quotes docs/git-submodule: fix unbalanced quote tempfile: avoid "ferror | fclose" trick Johannes Schindelin (1): mingw: make stderr unbuffered again Junio C Hamano (4): A bit more for -rc2 Revert "reset: add an example of how to split a commit into two" Hopefully the final batch of mini-topics before the final Git 2.12-rc2 Lars Schneider (1): git-p4: fix git-p4.pathEncoding for removed files René Scharfe (9): add SWAP macro apply: use SWAP macro use SWAP macro diff: use SWAP macro graph: use SWAP macro cocci: detect useless free(3) calls ls-files: pass prefix length explicitly to prune_cache() ls-files: move only kept cache entries in prune_cache() rm: reuse strbuf for all remove_dir_recursively() calls, again Stefan Beller (4): submodule documentation: add options to the subcommand submodule update documentation: don't repeat ourselves push options: pass push options to the transport helper Documentation: unify bottom "part of git suite" lines Thomas Gummerer (1): Documentation/stash: remove mention of git reset --hard Version v2.12.0-rc1; changes since v2.12.0-rc0: ----------------------------------------------- Cornelius Weig (2): doc: add doc for git-push --recurse-submodules=only completion: add completion for --recurse-submodules=only David Aguilar (3): difftool: fix bug when printing usage t7800: simplify basic usage test t7800: replace "wc -l" with test_line_count Denton Liu (1): Document the --no-gui option in difftool Eric Wong (1): completion: fix git svn authorship switches Jacob Keller (1): reset: add an example of how to split a commit into two Jeff King (1): diff: print line prefix for --name-only output Junio C Hamano (1): Git 2.12-rc1 Nguyễn Thái Ngọc Duy (1): rev-list-options.txt: update --all about HEAD Patrick Steinhardt (1): worktree: fix option descriptions for `prune` René Scharfe (2): p5302: create repositories for index-pack results explicitly dir: avoid allocation in fill_directory() Version v2.12.0-rc0; changes since v2.11.4: ------------------------------------------- Alex Henrie (3): bisect: improve English grammar of not-ancestors message receive-pack: improve English grammar of denyCurrentBranch message clone,fetch: explain the shallow-clone option a little more clearly Brandon Williams (38): real_path: resolve symlinks by hand real_path: convert real_path_internal to strbuf_realpath real_path: create real_pathdup real_path: have callers use real_pathdup and strbuf_realpath lib-proto-disable: variable name fix http: always warn if libcurl version is too old transport: add protocol policy config option http: create function to get curl allowed protocols transport: add from_user parameter to is_transport_allowed transport: reformat flag #defines to be more readable submodules: add RECURSE_SUBMODULES_ONLY value push: add option to push only submodules submodules: add helper to determine if a submodule is populated submodules: add helper to determine if a submodule is initialized submodules: load gitmodules file from commit sha1 grep: add submodules as a grep source type grep: optionally recurse into submodules grep: enable recurse-submodules to work on <tree> objects grep: search history of moved submodules mv: remove use of deprecated 'get_pathspec()' dir: remove struct path_simplify dir: convert fill_directory to use the pathspec struct interface ls-tree: convert show_recursive to use the pathspec struct interface pathspec: remove the deprecated get_pathspec function pathspec: copy and free owned memory pathspec: remove unused variable from unsupported_magic pathspec: always show mnemonic and name in unsupported_magic pathspec: simpler logic to prefix original pathspec elements pathspec: factor global magic into its own function pathspec: create parse_short_magic function pathspec: create parse_long_magic function pathspec: create parse_element_magic helper pathspec: create strip submodule slash helpers pathspec: small readability changes pathspec: rename prefix_pathspec to init_pathspec_item real_path: prevent redefinition of MAXSYMLINKS real_path: set errno when max number of symlinks is exceeded index: improve constness for reading blob data Chris Packham (3): merge: add '--continue' option as a synonym for 'git commit' completion: add --continue option for merge merge: ensure '--abort' option takes no arguments Cornelius Weig (5): doc: clarify distinction between sign-off and pgp-signing config: add markup to core.logAllRefUpdates doc refs: add option core.logAllRefUpdates = always update-ref: add test cases for bare repository doc: add note about ignoring '--no-create-reflog' David Aguilar (1): gitk: Remove translated message from comments Dimitriy Ryazantcev (1): gitk: ru.po: Update Russian translation Elia Pinto (2): builtin/commit.c: remove the PATH_MAX limitation via dynamic allocation builtin/commit.c: switch to strbuf, instead of snprintf() George Vanburgh (1): git-p4: fix git-p4.mapUser on Windows Heiko Voigt (1): help: improve is_executable() on Windows Igor Kushnir (1): git-p4: do not pass '-r 0' to p4 commands Jacob Keller (2): pretty: add %(trailers) format for displaying trailers of a commit message ref-filter: add support to display trailers as part of contents Jeff King (25): xdiff: drop XDL_FAST_HASH http: respect protocol.*.allow=user for http-alternates merge: mark usage error strings for translation shortlog: test and document --committer option Revert "vreportf: avoid intermediate buffer" vreport: sanitize ASCII control chars t1450: refactor loose-object removal sha1_file: fix error message for alternate objects t1450: test fsck of packed objects sha1_file: add read_loose_object() function fsck: parse loose object paths directly fsck: detect trailing garbage in all object types t1450: clean up sub-objects in duplicate-entry test fsck: report trees as dangling fsck: prepare dummy objects for --connectivity-check fsck: tighten error-checks of "git fsck <head>" fsck: do not fallback "git fsck <bogus>" to "git fsck" fsck: check HAS_OBJ more consistently clear_delta_base_cache(): don't modify hashmap while iterating t1450: use "mv -f" within loose object directory difftool: hack around -Wzero-length-format warning fsck: move typename() printing to its own function fsck: lazily load types under --connectivity-only color_parse_mem: allow empty color spec document behavior of empty color name Johannes Schindelin (50): mingw: add a regression test for pushing to UNC paths giteveryday: unbreak rendering with AsciiDoctor sequencer: avoid unnecessary curly braces sequencer: move "else" keyword onto the same line as preceding brace sequencer: use a helper to find the commit message sequencer: support a new action: 'interactive rebase' sequencer (rebase -i): implement the 'noop' command sequencer (rebase -i): implement the 'edit' command sequencer (rebase -i): implement the 'exec' command sequencer (rebase -i): learn about the 'verbose' mode sequencer (rebase -i): write the 'done' file sequencer (rebase -i): add support for the 'fixup' and 'squash' commands sequencer (rebase -i): implement the short commands sequencer (rebase -i): write an author-script file sequencer (rebase -i): allow continuing with staged changes sequencer (rebase -i): remove CHERRY_PICK_HEAD when no longer needed sequencer (rebase -i): skip some revert/cherry-pick specific code path sequencer (rebase -i): the todo can be empty when continuing sequencer (rebase -i): update refs after a successful rebase sequencer (rebase -i): leave a patch upon error sequencer (rebase -i): implement the 'reword' command sequencer (rebase -i): allow fast-forwarding for edit/reword sequencer (rebase -i): refactor setting the reflog message sequencer (rebase -i): set the reflog message consistently sequencer (rebase -i): copy commit notes at end sequencer (rebase -i): record interrupted commits in rewritten, too sequencer (rebase -i): run the post-rewrite hook, if needed sequencer (rebase -i): respect the rebase.autostash setting sequencer (rebase -i): respect strategy/strategy_opts settings sequencer (rebase -i): allow rescheduling commands sequencer (rebase -i): implement the 'drop' command sequencer (rebase -i): differentiate between comments and 'noop' difftool: add a skeleton for the upcoming builtin sequencer: update reading author-script sequencer: use run_command() directly sequencer (rebase -i): show only failed `git commit`'s output sequencer (rebase -i): show only failed cherry-picks' output sequencer (rebase -i): suggest --edit-todo upon unknown command sequencer (rebase -i): show the progress sequencer (rebase -i): write the progress into files sequencer (rebase -i): write out the final message difftool: implement the functionality in the builtin difftool: retire the scripted version remote rename: demonstrate a bogus "remote exists" bug remote rename: more carefully determine whether a remote is configured relink: retire the command status: be prepared for not-yet-started interactive rebase t/Makefile: add a rule to re-run previously-failed tests test-lib: on FreeBSD, look for unzip(1) in /usr/local/bin/ mingw: allow hooks to be .exe files Johannes Sixt (1): real_path: canonicalize directory separators in root parts Jonathan Tan (5): trailer: be stricter in parsing separators commit: make ignore_non_trailer take buf/len trailer: avoid unnecessary splitting on lines trailer: have function to describe trailer layout sequencer: use trailer's trailer layout Junio C Hamano (25): git_open(): untangle possible NOATIME and CLOEXEC interactions git_open_cloexec(): use fcntl(2) w/ FD_CLOEXEC fallback sha1_file: stop opening files with O_NOATIME Start post 2.11 cycle wt-status: implement opportunisitc index update correctly hold_locked_index(): align error handling with hold_lockfile_for_update() lockfile: LOCK_REPORT_ON_ERROR Early fixes for 2.11.x series First batch for 2.12 Second batch for 2.12 i18n: fix misconversion in shell scripts t4201: make tests work with and without the MINGW prerequiste Third batch for 2.12 diff: retire "compaction" heuristics lockfile: move REPORT_ON_ERROR bit elsewhere Fourth batch for 2.12 Fifth batch 2.12 RelNotes: drop merge-later comments for maint Sixth batch for 2.12 Seventh batch for 2.12 show-ref: remove a stale comment relink: really remove the command Eighth batch for 2.12 Ninth batch for 2.12; almost ready for -rc0 Git 2.12-rc0 Lars Schneider (2): git-p4: add config to retry p4 commands; retry 3 times by default git-p4: add diff/merge properties to .gitattributes for GitLFS files Linus Torvalds (1): shortlog: group by committer information Lukas Puehringer (3): gpg-interface, tag: add GPG_VERIFY_OMIT_STATUS flag ref-filter: add function to print single ref_array_item builtin/tag: add --format argument for tag -v Luke Diamand (2): git-p4: support updating an existing shelved changelist git-p4: support git worktrees Markus Hitter (3): gitk: Turn off undo manager in the text widget gitk: Remove closed file descriptors from $blobdifffd gitk: Clear array 'commitinfo' on reload Matt McCutchen (1): t0001: don't let a default ACL interfere with the umask test Nguyễn Thái Ngọc Duy (5): tag, branch, for-each-ref: add --ignore-case for sorting and filtering rebase: add --quit to cleanup rebase, leave everything else untouched color.c: fix color_parse_mem() with value_len == 0 color.c: trim leading spaces in color_parse_mem() log --graph: customize the graph lines with config log.graphColors Paul Mackerras (2): gitk: Use explicit RGB green instead of "lime" gitk: Update copyright notice to 2016 Peter Law (1): Completion: Add support for --submodule=diff Philip Oakley (3): doc: gitk: remove gitview reference doc: gitk: add the upstream repo location doc: git-gui browser does not default to HEAD Pranit Bauva (2): don't use test_must_fail with grep t9813: avoid using pipes Ramsay Jones (1): GIT-VERSION-GEN: do not force abbreviation length used by 'describe' René Scharfe (11): compat: add qsort_s() add QSORT_S perf: add basic sort performance test string-list: use QSORT_S in string_list_sort() ref-filter: use QSORT_S in ref_array_sort() abspath: add absolute_pathdup() use absolute_pathdup() use oid_to_hex_r() for converting struct object_id hashes to hex strings use oidcpy() for copying hashes between instances of struct object_id checkout: convert post_checkout_hook() to struct object_id receive-pack: call string_list_clear() unconditionally Richard Hansen (16): .mailmap: record canonical email for Richard Hansen rev-parse doc: pass "--" to rev-parse in the --prefix example t7610: update branch names to match test number t7610: move setup code to the 'setup' test case t7610: use test_when_finished for cleanup tasks t7610: don't rely on state from previous test t7610: run 'git reset --hard' after each test to clean up t7610: delete some now-unnecessary 'git reset --hard' lines t7610: always work on a test-specific branch t7610: don't assume the checked-out commit t7610: spell 'git reset --hard' consistently t7610: add test case for rerere+mergetool+subdir bug mergetool: take the "-O" out of $orderfile mergetool: fix running in subdir when rerere enabled diff: document behavior of relative diff.orderFile diff: document the format of the -O (diff.orderFile) file Rogier Goossens (3): gitk: Add a 'rename' option to the branch context menu gitk: Allow checking out a remote branch gitk: Include commit title in branch dialog SZEDER Gábor (9): t7004-tag: delete unnecessary tags with test_when_finished t7004-tag: use test_config helper t7004-tag: add version sort tests to show prerelease reordering issues versioncmp: pass full tagnames to swap_prereleases() versioncmp: cope with common part overlapping with prerelease suffix versioncmp: use earliest-longest contained suffix to determine sorting order versioncmp: factor out helper for suffix matching versioncmp: generalize version sort suffix reordering .mailmap: update Gábor Szeder's email address Santiago Torres (3): builtin/verify-tag: add --format to verify-tag t/t7030-verify-tag: Add --format specifier tests t/t7004-tag: Add --format specifier tests Satoshi Yasushima (1): gitk: Fix Japanese translation for "marked commit" Stefan Beller (35): submodule config: inline config_from_{name, path} submodule-config: rename commit_sha1 to treeish_name submodule-config: clarify parsing of null_sha1 element submodule add: extend force flag to add existing repos submodule: use absolute path for computing relative path connecting submodule helper: support super prefix test-lib-functions.sh: teach test_commit -C <dir> worktree: check if a submodule uses worktrees move connect_work_tree_and_git_dir to dir.h submodule: add absorb-git-dir function worktree: initialize return value for submodule_uses_worktrees submodule.h: add extern keyword to functions submodule: modernize ok_to_remove_submodule to use argv_array submodule: rename and add flags to ok_to_remove_submodule rm: absorb a submodules git dir before deletion submodule.c: use GIT_DIR_ENVIRONMENT consistently contrib: remove gitview pathspec: give better message for submodule related pathspec error unpack-trees: move checkout state into check_updates unpack-trees: remove unneeded continue unpack-trees: factor progress setup out of check_updates read-tree: use OPT_BOOL instead of OPT_SET_INT t1000: modernize style t1001: modernize style submodule absorbgitdirs: mention in docstring help t7411: quote URLs t7411: test lookup of uninitialized submodules submodule update --init: display correct path from submodule lib-submodule-update.sh: reduce use of subshell by using "git -C" contrib: remove git-convert-objects unpack-trees: support super-prefix option setup: add gentle version of resolve_git_dir cache.h: expose the dying procedure for reading gitlinks submodule absorbing: fix worktree/gitdir pointers recursively for non-moves submodule update: run custom update script for initial populating as well Stefan Dotterweich (1): gitk: Fix missing commits when using -S or -G Steven Penny (2): Makefile: POSIX windres Makefile: put LIBS after LDFLAGS for imap-send Vasco Almeida (18): gitk: Makefile: create install bin directory gitk: Add Portuguese translation Git.pm: add subroutines for commenting lines i18n: add--interactive: mark strings for translation i18n: add--interactive: mark simple here-documents for translation i18n: add--interactive: mark strings with interpolation for translation i18n: clean.c: match string with git-add--interactive.perl i18n: add--interactive: mark plural strings i18n: add--interactive: mark patch prompt for translation i18n: add--interactive: i18n of help_patch_cmd i18n: add--interactive: mark edit_hunk_manually message for translation i18n: add--interactive: remove %patch_modes entries i18n: add--interactive: mark status words for translation i18n: send-email: mark strings for translation i18n: send-email: mark warnings and errors for translation i18n: send-email: mark string with interpolation for translation i18n: send-email: mark composing message for translation i18n: difftool: mark warnings for translation Vegard Nossum (1): diff: add interhunk context config option Vinicius Kursancew (1): git-p4: allow submit to create shelved changelists. Vitaly "_Vi" Shukela (1): submodule--helper: set alternateLocation for cloned submodules Vladimir Panteleev (5): show-ref: accept HEAD with --verify show-ref: allow -d to work with --verify show-ref: move --quiet handling into show_one() show-ref: detect dangling refs under --verify as well show-ref: remove dead `if (verify)' check brian m. carlson (8): Documentation: fix warning in cat-texi.perl Documentation: modernize cat-texi.perl Documentation: remove unneeded argument in cat-texi.perl Documentation: sort sources for gitman.texi Documentation: add XSLT to fix DocBook for Texinfo Documentation: move dblatex arguments into variable Makefile: add a knob to enable the use of Asciidoctor Documentation: implement linkgit macro for Asciidoctor 마누엘 (1): asciidoctor: fix user-manual to be built by `asciidoctor` Version v2.11.4; changes since v2.11.3: --------------------------------------- Jeff King (3): shell: drop git-cvsserver support by default archimport: use safe_pipe_capture for user input cvsimport: shell-quote variable used in backticks Junio C Hamano (4): cvsserver: move safe_pipe_capture() to the main package cvsserver: use safe_pipe_capture for `constant commands` as well Git 2.10.5 Git 2.11.4 joernchen (1): cvsserver: use safe_pipe_capture instead of backticks Version v2.11.3; changes since v2.11.2: --------------------------------------- Jeff King (4): t5813: add test for hostname starting with dash connect: factor out "looks like command line option" check connect: reject dashed arguments for proxy commands connect: reject paths that look like command line options Junio C Hamano (6): connect: reject ssh hostname that begins with a dash Git 2.7.6 Git 2.8.6 Git 2.9.5 Git 2.10.4 Git 2.11.3 Version v2.11.2; changes since v2.11.1: --------------------------------------- Jeff King (1): shell: disallow repo names beginning with dash Junio C Hamano (8): Git 2.4.12 Git 2.5.6 Git 2.6.7 Git 2.7.5 Git 2.8.5 Git 2.9.4 Git 2.10.3 Git 2.11.2 Version v2.11.1; changes since v2.11.0: --------------------------------------- Alan Davies (1): mingw: fix colourization on Cygwin pseudo terminals Andreas Krey (2): commit: make --only --allow-empty work without paths commit: remove 'Clever' message for --only --amend Beat Bolli (6): update_unicode.sh: move it into contrib/update-unicode update_unicode.sh: remove an unnecessary subshell level update_unicode.sh: pin the uniset repo to a known good commit update_unicode.sh: automatically download newer definition files update_unicode.sh: remove the plane filter unicode_width.h: update the width tables to Unicode 9.0 Brandon Williams (2): push: --dry-run updates submodules when --recurse-submodules=on-demand push: fix --dry-run to not push submodules Christian Couder (1): Documentation/bisect: improve on (bad|new) and (good|bad) David Aguilar (8): mergetool: honor mergetool.$tool.trustExitCode for built-in tools mergetools/vimdiff: trust Vim's exit code difftool: fix dir-diff index creation when in a subdirectory difftool: fix dir-diff index creation when in a subdirectory difftool: sanitize $workdir as early as possible difftool: chdir as early as possible difftool: rename variables for consistency mergetools: fix xxdiff hotkeys David Turner (5): submodules: allow empty working-tree dirs in merge/cherry-pick remote-curl: don't hang when a server dies before any output upload-pack: optionally allow fetching any sha1 auto gc: don't write bitmaps for incremental repacks repack: die on incremental + write-bitmap-index Dennis Kaarsemaker (1): push: test pushing ambiguously named branches Eric Wong (2): git-svn: allow "0" in SVN path components git-svn: document useLogAuthor and addAuthorFrom config keys George Vanburgh (1): git-p4: fix multi-path changelist empty commits Heiko Voigt (4): serialize collection of changed submodules serialize collection of refs that contain submodule changes batch check whether submodule needs pushing into one call submodule_needs_pushing(): explain the behaviour when we cannot answer Jack Bates (1): diff: handle --no-abbrev in no-index case Jeff Hostetler (1): mingw: replace isatty() hack Jeff King (32): rev-parse: fix parent shorthands with --symbolic t7610: clean up foo.XXXXXX tmpdir http: simplify update_url_from_redirect http: always update the base URL for redirects remote-curl: rename shadowed options variable http: make redirects more obvious http: treat http-alternates like redirects http-walker: complain about non-404 loose object errors stash: prefer plumbing over git-diff alternates: accept double-quoted paths tmp-objdir: quote paths we add to alternates Makefile: reformat FIND_SOURCE_FILES Makefile: exclude test cruft from FIND_SOURCE_FILES Makefile: match shell scripts in FIND_SOURCE_FILES Makefile: exclude contrib from FIND_SOURCE_FILES parse-options: print "fatal:" before usage_msg_opt() README: replace gmane link with public-inbox t5000: extract nongit function to test-lib-functions.sh index-pack: complain when --stdin is used outside of a repo t: use nongit() function where applicable index-pack: skip collision check when not in repository archive-zip: load userdiff config rebase--interactive: count squash commits above 10 correctly blame: fix alignment with --abbrev=40 blame: handle --no-abbrev blame: output porcelain "previous" header for each file git_exec_path: do not return the result of getenv() execv_dashed_external: use child_process struct execv_dashed_external: stop exiting with negative code execv_dashed_external: wait for child on signal death t7810: avoid assumption about invalid regex syntax CodingGuidelines: clarify multi-line brace style Johannes Schindelin (6): cherry-pick: demonstrate a segmentation fault merge-recursive: handle NULL in add_cacheinfo() correctly mingw: intercept isatty() to handle /dev/null as Git expects it mingw: adjust is_console() to work with stdin git_exec_path: avoid Coverity warning about unfree()d result mingw: follow-up to "replace isatty() hack" Johannes Sixt (3): t5547-push-quarantine: run the path separator test on Windows, too normalize_path_copy(): fix pushing to //server/share/dir on Windows t5615-alternate-env: double-quotes in file names do not work on Windows Jonathan Tan (1): fetch: do not redundantly calculate tag refmap Junio C Hamano (11): utf8: refactor code to decide fallback encoding utf8: accept "latin-1" as ISO-8859-1 push: do not use potentially ambiguous default refspec compression: unify pack.compression configuration parsing pull: fast-forward "pull --rebase=true" preparing for 2.10.3 Revert "sequencer: remove useless get_dir() function" config.abbrev: document the new default that auto-scales Almost ready for 2.11.1 Ready for 2.11.1 Git 2.11.1 Kristoffer Haugsbakk (4): doc: add articles (grammar) doc: add verb in front of command to run doc: make the intent of sentence clearer doc: omit needless "for" Kyle J. McKay (1): mailinfo.c: move side-effects outside of assert Kyle Meyer (1): branch_get_push: do not segfault when HEAD is detached Lars Schneider (6): travis-ci: update P4 to 16.2 and GitLFS to 1.5.2 in Linux build git-p4: fix empty file processing for large file system backend GitLFS t0021: minor filter process test cleanup docs: warn about possible '=' in clean/smudge filter process values t0021: fix flaky test travis-ci: fix Perforce install on macOS Luis Ressel (1): date-formats.txt: Typo fix Luke Diamand (1): git-p4: avoid crash adding symlinked directory Matt McCutchen (2): doc: mention transfer data leaks in more places git-gc.txt: expand discussion of races with other processes Max Kirillov (1): mingw: consider that UNICODE_STRING::Length counts bytes Mike Hommey (1): fast-import: properly fanout notes when tree is imported Nguyễn Thái Ngọc Duy (13): worktree.c: zero new 'struct worktree' on allocation worktree: reorder an if statement get_worktrees() must return main worktree as first item even on error worktree.c: get_worktrees() takes a new flag argument worktree list: keep the list sorted merge-recursive.c: use string_list_sort instead of qsort shallow.c: rename fields in paint_info to better express their purposes shallow.c: stop abusing COMMIT_SLAB_SIZE for paint_info's memory pools shallow.c: make paint_alloc slightly more robust shallow.c: remove useless code config.c: handle error case for fstat() calls config.c: rename label unlock_and_out config.c: handle lock file in error case in git_config_rename_... Rasmus Villemoes (2): shallow.c: avoid theoretical pointer wrap-around shallow.c: bit manipulation tweaks Stefan Beller (7): unpack-trees: fix grammar for untracked files in directories t3600: remove useless redirect t3600: slightly modernize style cache.h: document index_name_pos cache.h: document remove_index_entry_at cache.h: document add_[file_]to_index documentation: retire unfinished documentation Stephan Beyer (5): am: fix filename in safe_to_abort() error message am: change safe_to_abort()'s not rewinding error into a warning t3510: test that cherry-pick --abort does not unsafely change HEAD sequencer: make sequencer abort safer sequencer: remove useless get_dir() function Torsten Bögershausen (1): convert: git cherry-pick -Xrenormalize did not work Wolfram Sang (1): request-pull: drop old USAGE stuff Version v2.11.0; changes since v2.11.0-rc3: ------------------------------------------- Alex Henrie (1): l10n: ca.po: update translation Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Jeff King (1): common-main: stop munging argv[0] path Jiang Xin (1): l10n: fix unmatched single quote in error message Junio C Hamano (1): Git 2.11 Marc Branchaud (1): RelNotes: spelling and phrasing fixups Ralf Thielow (1): l10n: de.po: translate 210 new messages Version v2.11.0-rc3; changes since v2.11.0-rc2: ----------------------------------------------- Changwoo Ryu (1): l10n: ko.po: Update Korean translation Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Jean-Noël Avila (1): l10n: fr.po v2.11.0_rnd1 Jiang Xin (5): l10n: git.pot: v2.11.0 round 1 (209 new, 53 removed) l10n: zh_CN: for git v2.11.0 l10n round 1 i18n: fix unmatched single quote in error message l10n: git.pot: v2.11.0 round 2 (1 new, 1 removed) l10n: Fixed typo of git fetch-pack command Johannes Schindelin (3): rebase -i: highlight problems with core.commentchar stripspace: respect repository config rebase -i: handle core.commentChar=auto Jonathan Tan (1): doc: mention user-configured trailers Junio C Hamano (4): for-each-ref: do not segv with %(HEAD) on an unborn branch mailinfo: read local configuration archive: read local configuration Git 2.11-rc3 Peter Krefting (1): l10n: sv.po: Update Swedish translation (2913t0f0u) Trần Ngọc Quân (1): l10n: vi.po: Updated translation to v2.11.0 (2913t) Vasco Almeida (1): l10n: pt_PT: update Portuguese translation jfbu (1): l10n: fr.po fix grammar mistakes Version v2.11.0-rc2; changes since v2.11.0-rc1: ----------------------------------------------- Ben North (1): git-worktree.txt: fix typo "to"/"two", and add comma Jeff King (1): create_branch: drop unused "head" parameter Junio C Hamano (1): Git 2.11-rc2 Tobias Klauser (1): diffcore-delta: remove unused parameter to diffcore_count_changes() Version v2.11.0-rc1; changes since v2.11.0-rc0: ----------------------------------------------- Andreas Schwab (2): t6026-merge-attr: don't fail if sleep exits early t6026-merge-attr: ensure that the merge driver was called Christian Couder (1): split-index: s/eith/with/ typo fix Jeff King (6): t0021: use write_script to create rot13 shell script t0021: put $TEST_ROOT in $PATH t0021: use $PERL_PATH for rot13-filter.pl t0021: fix filehandle usage on older perl alternates: re-allow relative paths from environment sequencer: silence -Wtautological-constant-out-of-range-compare Johannes Schindelin (1): t6026: ensure that long-running script really is Johannes Sixt (4): t0021: expect more variations in the output of uniq -c t0021: compute file size with a single process instead of a pipeline t0021, t5615: use $PWD instead of $(pwd) in PATH-like shell variables t6026: clarify the point of "kill $(cat sleep.pid)" Junio C Hamano (5): A bit of updates post -rc0 Revert "t6026-merge-attr: ensure that the merge driver was called" Revert "t6026-merge-attr: don't fail if sleep exits early" t0021: remove debugging cruft Git 2.11.0-rc1 Lars Schneider (2): Makefile: set NO_OPENSSL on macOS by default travis-ci: disable GIT_TEST_HTTPD for macOS Patrick Steinhardt (1): doc: fix location of 'info/' with $GIT_COMMON_DIR Ralf Thielow (1): fetch-pack.c: correct command at the beginning of an error message René Scharfe (2): sha1_name: make wraparound of the index into ring-buffer explicit cocci: avoid self-references in object_id transformations Version v2.11.0-rc0; changes since v2.10.5: ------------------------------------------- Aaron M Watson (1): stash: allow stashes to be referenced by index only Alex Riesen (2): git-gui: support for $FILENAMES in tool definitions git-gui: ensure the file in the diff pane is in the list of selected files Alexander Shopov (2): git-gui i18n: Updated Bulgarian translation (565,0f,0u) git-gui: Mark 'All' in remote.tcl for translation Brandon Williams (4): git: make super-prefix option ls-files: optionally recurse into submodules ls-files: pass through safe options for --recurse-submodules ls-files: add pathspec matching for submodules Christian Couder (42): apply: make some names more specific apply: move 'struct apply_state' to apply.h builtin/apply: make apply_patch() return -1 or -128 instead of die()ing builtin/apply: read_patch_file() return -1 instead of die()ing builtin/apply: make find_header() return -128 instead of die()ing builtin/apply: make parse_chunk() return a negative integer on error builtin/apply: make parse_single_patch() return -1 on error builtin/apply: make parse_whitespace_option() return -1 instead of die()ing builtin/apply: make parse_ignorewhitespace_option() return -1 instead of die()ing builtin/apply: move init_apply_state() to apply.c apply: make init_apply_state() return -1 instead of exit()ing builtin/apply: make check_apply_state() return -1 instead of die()ing builtin/apply: move check_apply_state() to apply.c builtin/apply: make apply_all_patches() return 128 or 1 on error builtin/apply: make parse_traditional_patch() return -1 on error builtin/apply: make gitdiff_*() return 1 at end of header builtin/apply: make gitdiff_*() return -1 on error builtin/apply: change die_on_unsafe_path() to check_unsafe_path() builtin/apply: make build_fake_ancestor() return -1 on error builtin/apply: make remove_file() return -1 on error builtin/apply: make add_conflicted_stages_file() return -1 on error builtin/apply: make add_index_file() return -1 on error builtin/apply: make create_file() return -1 on error builtin/apply: make write_out_one_result() return -1 on error builtin/apply: make write_out_results() return -1 on error unpack-objects: add --max-input-size=<size> option builtin/apply: make try_create_file() return -1 on error builtin/apply: make create_one_file() return -1 on error builtin/apply: rename option parsing functions apply: rename and move opt constants to apply.h apply: move libified code from builtin/apply.c to apply.{c,h} apply: make some parsing functions static again apply: use error_errno() where possible apply: make it possible to silently apply apply: don't print on stdout in verbosity_silent mode usage: add set_warn_routine() usage: add get_error_routine() and get_warn_routine() apply: change error_routine when silent apply: refactor `git apply` option parsing apply: pass apply state to build_fake_ancestor() apply: learn to use a different index file builtin/am: use apply API in run_apply() David Aguilar (4): mergetool: add copyright mergetool: move main program flow into a main() function mergetool: honor diff.orderFile mergetool: honor -O<orderfile> David Turner (9): rename_ref_available(): add docstring refs: add methods for reflog refs: add method for initial ref transaction commit refs: make delete_refs() virtual refs: add methods to init refs db refs: add method to rename refs refs: make lock generic refs: implement iteration over only per-worktree refs fsck: handle bad trees like other errors Dimitriy Ryazantcev (1): git-gui: Update Russian translation Elia Pinto (1): git-gui/po/glossary/txt-to-pot.sh: use the $( ... ) construct for command substitution Emily Xie (1): pathspec: warn on empty strings as pathspec Eric Wong (2): git-svn: reduce scope of input record separator change git-svn: "git worktree" awareness Gavin Lambert (1): git-svn: do not reuse caches memoized for a different architecture Ian Kelling (2): gitweb: remove unused guess_file_syntax() parameter gitweb: use highlight's shebang detection Jacob Keller (9): format-patch: show 0/1 and 1/1 for singleton patch with cover letter cache: add empty_tree_oid object and helper function graph: add support for --line-prefix on all graph-aware output diff: prepare for additional submodule formats allow do_submodule_path to work even if submodule isn't checked out submodule: convert show_submodule_summary to use struct object_id * submodule: refactor show_submodule_summary with helper function diff: teach diff to display submodule difference with an inline diff rev-list: use hdr_termination instead of a always using a newline Jean-Noël Avila (1): i18n: i18n: diff: mark die messages for translation Jeff Hostetler (9): status: rename long-format print routines status: cleanup API to wt_status_print status: support --porcelain[=<version>] status: collect per-file data for --porcelain=v2 status: print per-file porcelain v2 status data status: print branch info with --porcelain=v2 --branch git-status.txt: describe --porcelain=v2 format test-lib-functions.sh: add lf_to_nul helper status: unit tests for --porcelain=v2 Jeff King (75): provide an initializer for "struct object_info" sha1_file: make packed_object_info public pack-objects: break delta cycles before delta-search phase pack-objects: use mru list when iterating over packs cache_or_unpack_entry: drop keep_cache parameter clear_delta_base_cache_entry: use a more descriptive name release_delta_base_cache: reuse existing detach function delta_base_cache: use list.h for LRU delta_base_cache: drop special treatment of blobs delta_base_cache: use hashmap.h t/perf: add basic perf tests for delta base cache index-pack: add --max-input-size=<size> option receive-pack: allow a maximum input size to be specified add_delta_base_cache: use list_for_each_safe hash-object: always try to set up the git repository patch-id: use RUN_SETUP_GENTLY diff: skip implicit no-index check when given --no-index diff: handle --no-index prefixes consistently diff: always try to set up the repository pager: remove obsolete comment pager: stop loading git_default_config() pager: make pager_program a file-local static pager: use callbacks instead of configset pager: handle early config t1302: use "git -C" test-config: setup git directory config: only read .git/config from configured repos init: expand comments explaining config trickery init: reset cached config when entering new repo t1007: factor out repeated setup clone: pass --progress decision to recursive submodules get_sha1: detect buggy calls with multiple disambiguators get_sha1: avoid repeating ourselves via ONLY_TO_DIE get_sha1: propagate flags to child functions get_short_sha1: parse tags when looking for treeish get_short_sha1: refactor init of disambiguation code get_short_sha1: NUL-terminate hex prefix get_short_sha1: mark ambiguity error for translation sha1_array: let callbacks interrupt iteration for_each_abbrev: drop duplicate objects get_short_sha1: list ambiguous objects on error xdiff: rename "struct group" to "struct xdlgroup" get_short_sha1: make default disambiguation configurable tree-walk: be more specific about corrupt tree errors t5613: drop reachable_via function t5613: drop test_valid_repo function t5613: use test_must_fail t5613: whitespace/style cleanups t5613: do not chdir in main process find_unique_abbrev: move logic out of get_short_sha1() t5613: clarify "too deep" recursion tests link_alt_odb_entry: handle normalize_path errors link_alt_odb_entry: refactor string handling alternates: provide helper for adding to alternates list alternates: provide helper for allocating alternate alternates: encapsulate alt->base munging alternates: use a separate scratch space fill_sha1_file: write "boring" characters alternates: store scratch buffer as strbuf fill_sha1_file: write into a strbuf count-objects: report alternates via verbose mode sha1_file: always allow relative paths to alternates alternates: use fspathcmp to detect duplicates check_connected: accept an env argument tmp-objdir: introduce API for temporary object directories receive-pack: quarantine objects until pre-receive accepts tmp-objdir: put quarantine information in the environment tmp-objdir: do not migrate files starting with '.' upload-pack: use priority queue in reachable() check read info/{attributes,exclude} only when in repository test-*-cache-tree: setup git dir find_unique_abbrev: use 4-buffer ring diff_unique_abbrev: rename to diff_aligned_abbrev diff_aligned_abbrev: use "struct oid" diff: handle sha1 abbreviations outside of repository Johannes Schindelin (54): cat-file: fix a grammo in the man page sequencer: lib'ify sequencer_pick_revisions() sequencer: do not die() in do_pick_commit() sequencer: lib'ify write_message() sequencer: lib'ify do_recursive_merge() sequencer: lib'ify do_pick_commit() sequencer: lib'ify walk_revs_populate_todo() sequencer: lib'ify prepare_revs() sequencer: lib'ify read_and_refresh_cache() sequencer: lib'ify read_populate_todo() sequencer: lib'ify read_populate_opts() sequencer: lib'ify create_seq_dir() sequencer: lib'ify save_head() sequencer: lib'ify save_todo() sequencer: lib'ify save_opts() sequencer: lib'ify fast_forward_to() sequencer: lib'ify checkout_fast_forward() sequencer: ensure to release the lock when we could not read the index cat-file: introduce the --filters option cat-file --textconv/--filters: allow specifying the path separately cat-file: support --textconv/--filters in batch mode pull: drop confusing prefix parameter of die_on_unclean_work_tree() pull: make code more similar to the shell script again wt-status: make the require_clean_work_tree() function reusable wt-status: export also the has_un{staged,committed}_changes() functions wt-status: teach has_{unstaged,uncommitted}_changes() about submodules wt-status: begin error messages with lower-case sequencer: use static initializers for replay_opts sequencer: use memoized sequencer directory path sequencer: avoid unnecessary indirection sequencer: future-proof remove_sequencer_state() sequencer: plug memory leaks for the option values sequencer: future-proof read_populate_todo() sequencer: refactor the code to obtain a short commit name sequencer: completely revamp the "todo" script parsing sequencer: strip CR from the todo script sequencer: avoid completely different messages for different actions sequencer: get rid of the subcommand field sequencer: remember the onelines when parsing the todo file sequencer: prepare for rebase -i's commit functionality sequencer: introduce a helper to read files written by scripts sequencer: allow editing the commit message on a case-by-case basis sequencer: support amending commits sequencer: support cleaning up commit messages sequencer: left-trim lines read from the script sequencer: stop releasing the strbuf in write_message() sequencer: roll back lock file if write_message() failed sequencer: refactor write_message() to take a pointer/length sequencer: teach write_message() to append an optional LF sequencer: remove overzealous assumption in rebase -i mode sequencer: mark action_name() for translation sequencer: quote filenames in error messages sequencer: start error messages consistently with lower case sequencer: mark all error messages for translation Johannes Sixt (1): t0060: sidestep surprising path mangling results on Windows Jonathan Nieder (1): connect: tighten check for unexpected early hang up Jonathan Tan (13): tests: move test_lazy_prereq JGIT to test-lib.sh connect: advertized capability is not a ref mailinfo: separate in-body header processing mailinfo: make is_scissors_line take plain char * mailinfo: handle in-body header continuations trailer: improve const correctness trailer: use list.h for doubly-linked list trailer: streamline trailer item create and add trailer: make args have their own struct trailer: clarify failure modes in parse_trailer trailer: allow non-trailers in trailer block trailer: forbid leading whitespace in trailers trailer: support values folded to multiple lines Josh Triplett (1): format-patch: add "--rfc" for the common case of [RFC PATCH] Junio C Hamano (27): blame: improve diagnosis for "--reverse NEW" blame: dwim "blame --reverse OLD" as "blame --reverse OLD.." diff.c: remove output_prefix_length field Start the 2.11 cycle First batch for 2.11 Second batch for 2.11 Third batch for 2.11 Fourth batch for 2.11 Fifth batch for 2.11 Sixth batch for 2.11 abbrev: add FALLBACK_DEFAULT_ABBREV to prepare for auto sizing abbrev: prepare for new world order Seventh batch for 2.11 t4015: split out the "setup" part of ws-error-highlight test diff.c: refactor parse_ws_error_highlight() diff.c: move ws-error-highlight parsing helpers up diff: introduce diff.wsErrorHighlight option Eighth batch for 2.11 Ninth batch for 2.11 Tenth batch for 2.11 transport: pass summary_width down the callchain fetch: pass summary_width down the callchain transport: allow summary-width to be computed dynamically transport: compute summary-width dynamically Eleventh batch for 2.11 Getting ready for 2.11-rc0 Git 2.11-rc0 Karsten Blees (2): git-gui: unicode file name support on windows git-gui: handle the encoding of Git's output correctly Kirill Smelkov (2): pack-objects: respect --local/--honor-pack-keep/--incremental when bitmap is in use pack-objects: use reachability bitmap index when generating non-stdout pack Lars Schneider (17): convert: quote filter names in error messages convert: modernize tests run-command: move check_pipe() from write_or_die to run_command run-command: add clean_on_exit_handler pkt-line: rename packet_write() to packet_write_fmt() pkt-line: extract set_packet_header() pkt-line: add packet_write_fmt_gently() pkt-line: add packet_flush_gently() pkt-line: add packet_write_gently() pkt-line: add functions to read/write flush terminated packet streams convert: make apply_filter() adhere to standard Git error handling convert: prepare filter.<driver>.process option convert: add filter.<driver>.process option contrib/long-running-filter: add long running filter example sha1_file: rename git_open_noatime() to git_open() sha1_file: open window into packfiles with O_CLOEXEC read-cache: make sure file handles are not inherited by child processes Linus Torvalds (1): abbrev: auto size the default abbreviation Mantas Mikulėnas (1): contrib: add credential helper for libsecret Michael Haggerty (36): xdl_change_compact(): fix compaction heuristic to adjust ixo xdl_change_compact(): only use heuristic if group can't be matched is_blank_line(): take a single xrecord_t as argument recs_match(): take two xrecord_t pointers as arguments xdl_change_compact(): introduce the concept of a change group resolve_gitlink_ref(): eliminate temporary variable refs: rename struct ref_cache to files_ref_store refs: create a base class "ref_store" for files_ref_store add_packed_ref(): add a files_ref_store argument get_packed_ref(): add a files_ref_store argument resolve_missing_loose_ref(): add a files_ref_store argument {lock,commit,rollback}_packed_refs(): add files_ref_store arguments refs: reorder definitions resolve_packed_ref(): rename function from resolve_missing_loose_ref() resolve_gitlink_packed_ref(): remove function read_raw_ref(): take a (struct ref_store *) argument resolve_ref_recursively(): new function resolve_gitlink_ref(): implement using resolve_ref_recursively() resolve_gitlink_ref(): avoid memory allocation in many cases resolve_gitlink_ref(): rename path parameter to submodule refs: make read_raw_ref() virtual refs: make verify_refname_available() virtual refs: make pack_refs() virtual refs: make create_symref() virtual refs: make peel_ref() virtual repack_without_refs(): add a files_ref_store argument lock_raw_ref(): add a files_ref_store argument commit_ref_update(): add a files_ref_store argument lock_ref_for_update(): add a files_ref_store argument lock_ref_sha1_basic(): add a files_ref_store argument split_symref_update(): add a files_ref_store argument files_ref_iterator_begin(): take a ref_store argument refs: add method iterator_begin diff: improve positioning of add/delete blocks in diffs parse-options: add parse_opt_unknown_cb() blame: honor the diff heuristic options and config Michael J Gruber (1): gpg-interface: use more status letters Nguyễn Thái Ngọc Duy (36): remote-curl.c: convert fetch_git() to use argv_array transport-helper.c: refactor set_helper_option() upload-pack: move shallow deepen code out of receive_needs() upload-pack: move "shallow" sending code out of deepen() upload-pack: remove unused variable "backup" upload-pack: move "unshallow" sending code out of deepen() upload-pack: use skip_prefix() instead of starts_with() upload-pack: tighten number parsing at "deepen" lines upload-pack: make check_non_tip() clean things up on error upload-pack: move rev-list code out of check_non_tip() fetch-pack: use skip_prefix() instead of starts_with() fetch-pack: use a common function for verbose printing fetch-pack.c: mark strings for translating fetch-pack: use a separate flag for fetch in deepening mode shallow.c: implement a generic shallow boundary finder based on rev-list upload-pack: add deepen-since to cut shallow repos based on time fetch: define shallow boundary with --shallow-since clone: define shallow clone boundary based on time with --shallow-since t5500, t5539: tests for shallow depth since a specific date refs: add expand_ref() upload-pack: support define shallow boundary by excluding revisions fetch: define shallow boundary with --shallow-exclude clone: define shallow clone boundary with --shallow-exclude t5500, t5539: tests for shallow depth excluding a ref upload-pack: split check_unreachable() in two, prep for get_reachable_list() upload-pack: add get_reachable_list() fetch, upload-pack: --deepen=N extends shallow boundary by N commits init: correct re-initialization from a linked worktree init: call set_git_dir_init() from within init_db() init: kill set_git_dir_init() init: do not set unnecessary core.worktree init: kill git_link variable diff-lib: allow ita entries treated as "not yet exist in index" diff: add --ita-[in]visible-in-index commit: fix empty commit creation when there's no changes but ita entries commit: don't be fooled by ita entries when creating initial commit Olaf Hering (1): git-gui: sort entries in tclIndex Orgad Shaneh (1): git-gui: Do not reset author details on amend Pat Thoyts (7): Allow keyboard control to work in the staging widgets. Amend tab ordering and text widget border and highlighting. git-gui: fix detection of Cygwin git-gui (Windows): use git-gui.exe in `Create Desktop Shortcut` git-gui: maintain backwards compatibility for merge syntax git-gui: avoid persisting modified author identity git-gui: set version 0.21 Petr Stodulka (1): http: control GSSAPI credential delegation Ralf Thielow (2): help: introduce option --exclude-guides help: make option --help open man pages only for Git commands René Scharfe (8): sha1_file: use llist_mergesort() for sorting packs introduce CHECKOUT_INIT add QSORT use QSORT remove unnecessary check before QSORT coccicheck: use --all-includes by default use QSORT, part 2 show-branch: use QSORT Ronnie Sahlberg (2): refs: add a backend method structure refs: add a transaction_commit() method Stefan Beller (10): t7408: modernize style t7408: merge short tests, factor out testing method submodule--helper module-clone: allow multiple references submodule--helper update-clone: allow multiple references clone: factor out checking for an alternate path clone: clarify option_reference as required clone: implement optional references clone: recursive and reference option triggers submodule alternates submodule: ignore trailing slash on superproject URL submodule: ignore trailing slash in relative url Vasco Almeida (30): i18n: blame: mark error messages for translation i18n: branch: mark option description for translation i18n: config: mark error message for translation i18n: merge-recursive: mark error messages for translation i18n: merge-recursive: mark verbose message for translation i18n: notes: mark error messages for translation notes: spell first word of error messages in lowercase i18n: receive-pack: mark messages for translation i18n: show-branch: mark error messages for translation i18n: show-branch: mark plural strings for translation i18n: update-index: mark warnings for translation i18n: commit: mark message for translation i18n: connect: mark die messages for translation i18n: ident: mark hint for translation i18n: notes-merge: mark die messages for translation i18n: stash: mark messages for translation git-gui i18n: mark strings for translation git-gui: l10n: add Portuguese translation git-gui i18n: internationalize use of colon punctuation git-gui i18n: mark "usage:" strings for translation git-gui: fix incorrect use of Tcl append command git-gui i18n: mark string in lib/error.tcl for translation t1512: become resilient to GETTEXT_POISON build i18n: apply: mark plural string for translation i18n: apply: mark info messages for translation i18n: apply: mark error messages for translation i18n: apply: mark error message for translation i18n: convert mark error messages for translation i18n: credential-cache--daemon: mark advice for translation i18n: diff: mark warnings for translation Vegard Nossum (1): revision: new rev^-n shorthand for rev^n..rev brian m. carlson (20): cache: convert struct cache_entry to use struct object_id builtin/apply: convert static functions to struct object_id builtin/blame: convert struct origin to use struct object_id builtin/log: convert some static functions to use struct object_id builtin/cat-file: convert struct expand_data to use struct object_id builtin/cat-file: convert some static functions to struct object_id builtin: convert textconv_object to use struct object_id streaming: make stream_blob_to_fd take struct object_id builtin/checkout: convert some static functions to struct object_id notes-merge: convert struct notes_merge_pair to struct object_id Convert read_mmblob to take struct object_id. builtin/blame: convert file to use struct object_id builtin/rm: convert to use struct object_id notes: convert init_notes to use struct object_id builtin/update-index: convert file to struct object_id sha1_name: convert get_sha1_mb to struct object_id refs: add an update_ref_oid function. builtin/am: convert to struct object_id builtin/commit-tree: convert to struct object_id builtin/reset: convert to use struct object_id yaras (1): git-gui: fix initial git gui message encoding Ævar Arnfjörð Bjarmason (3): gitweb: fix a typo in a comment gitweb: link to 7-char+ SHA-1s, not only 8-char+ gitweb: link to "git describe"'d commits in log messages Version v2.10.5; changes since v2.10.4: --------------------------------------- Jeff King (3): shell: drop git-cvsserver support by default archimport: use safe_pipe_capture for user input cvsimport: shell-quote variable used in backticks Junio C Hamano (3): cvsserver: move safe_pipe_capture() to the main package cvsserver: use safe_pipe_capture for `constant commands` as well Git 2.10.5 joernchen (1): cvsserver: use safe_pipe_capture instead of backticks Version v2.10.4; changes since v2.10.3: --------------------------------------- Jeff King (4): t5813: add test for hostname starting with dash connect: factor out "looks like command line option" check connect: reject dashed arguments for proxy commands connect: reject paths that look like command line options Junio C Hamano (5): connect: reject ssh hostname that begins with a dash Git 2.7.6 Git 2.8.6 Git 2.9.5 Git 2.10.4 Version v2.10.3; changes since v2.10.2: --------------------------------------- Anders Kaseorg (2): pre-receive.sample: mark it executable git-sh-setup: be explicit where to dot-source git-sh-i18n from. Andreas Schwab (2): t6026-merge-attr: don't fail if sleep exits early t6026-merge-attr: ensure that the merge driver was called Ben North (1): git-worktree.txt: fix typo "to"/"two", and add comma Chris Packham (1): completion: support excluding refs Jeff King (6): daemon: detect and reject too-long paths git-compat-util: move content inside ifdef/endif guards doc: fix missing "::" in config list create_branch: drop unused "head" parameter common-main: stop munging argv[0] path shell: disallow repo names beginning with dash Johannes Schindelin (1): t6026: ensure that long-running script really is Johannes Sixt (1): t6026: clarify the point of "kill $(cat sleep.pid)" Junio C Hamano (11): am: refactor read_author_script() Revert "t6026-merge-attr: ensure that the merge driver was called" Revert "t6026-merge-attr: don't fail if sleep exits early" preparing for 2.10.3 Git 2.4.12 Git 2.5.6 Git 2.6.7 Git 2.7.5 Git 2.8.5 Git 2.9.4 Git 2.10.3 Lars Schneider (2): Makefile: set NO_OPENSSL on macOS by default travis-ci: disable GIT_TEST_HTTPD for macOS Matthieu Moy (3): parse_mailboxes: accept extra text after <...> address t9000-addresses: update expected results after fix Git.pm: add comment pointing to t9000 Patrick Steinhardt (1): doc: fix location of 'info/' with $GIT_COMMON_DIR René Scharfe (4): hex: make wraparound of the index into ring-buffer explicit valgrind: support test helpers commit: simplify building parents list cocci: avoid self-references in object_id transformations Stefan Christ (1): Documentation/fmt-merge-msg: fix markup in example Tobias Klauser (1): diffcore-delta: remove unused parameter to diffcore_count_changes() Version v2.10.2; changes since v2.10.1: --------------------------------------- Anders Kaseorg (1): imap-send: Tell cURL to use imap:// or imaps:// Brandon Williams (1): submodules doc: update documentation for "." used for submodule branches David Turner (2): add David Turner's Two Sigma address http: http.emptyauth should allow empty (not just NULL) usernames Dennis Kaarsemaker (1): worktree: allow the main brach of a bare repository to be checked out Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Jakub Narębski (1): configure.ac: improve description of NO_REGEX test Jeff King (11): verify_packfile: check pack validity before accessing data graph: fix extra spaces in graph_padding_line clone: detect errors in normalize_path_copy files_read_raw_ref: avoid infinite loop on broken symlinks files_read_raw_ref: prevent infinite retry loops in general merge-base: handle --fork-point without reflog fetch: use "quick" has_sha1_file for tag following test-lib: handle TEST_OUTPUT_DIRECTORY with spaces test-lib: add --verbose-log option travis: use --verbose-log test option test-lib: bail out when "-v" used under "prove" Johannes Schindelin (1): reset: fix usage Jonathan Tan (1): fetch-pack: do not reset in_vain on non-novel acks Junio C Hamano (9): streaming: make sure to notice corrupt object unpack_sha1_header(): detect malformed object header worktree: honor configuration variables blame: use DEFAULT_ABBREV macro diff_unique_abbrev(): document its assumption and limitation Start preparing for 2.10.2 cocci: refactor common patterns to use xstrdup_or_null() t3700: fix broken test under !SANITY Git 2.10.2 Kevin Daudt (2): t5100-mailinfo: replace common path prefix with variable mailinfo: unescape quoted-pair in header fields Nguyễn Thái Ngọc Duy (1): git-commit.txt: clarify --patch mode with pathspec Philip Oakley (2): doc: fix merge-base ASCII art tab spacing doc: fix the 'revert a faulty merge' ASCII art tab spacing Pranit Bauva (2): rev-list-options: clarify the usage of --reverse t0040: convert all possible tests to use `test-parse-options --expect` Ralf Thielow (2): l10n: de.po: fix translation of autostash l10n: de.po: translate 260 new messages René Scharfe (17): contrib/coccinelle: fix semantic patch for oid_to_hex_r() add coccicheck make target use strbuf_addstr() for adding constant strings to a strbuf, part 2 pretty: let %C(auto) reset all attributes add COPY_ARRAY use COPY_ARRAY git-gui: stop using deprecated merge syntax gitignore: ignore output files of coccicheck make target use strbuf_addstr() instead of strbuf_addf() with "%s", part 2 use strbuf_add_unique_abbrev() for adding short hashes, part 2 pretty: avoid adding reset for %C(auto) if output is empty coccicheck: make transformation for strbuf_addf(sb, "...") more precise remove unnecessary NULL check before free(3) use strbuf_add_unique_abbrev() for adding short hashes, part 3 pretty: fix document link for color specification avoid pointer arithmetic involving NULL in FLEX_ALLOC_MEM inline xalloc_flex() into FLEXPTR_ALLOC_MEM SZEDER Gábor (1): ref-filter: strip format option after a field name only once while parsing Stefan Beller (1): documentation: improve submodule.<name>.{url, path} description Younes Khoudli (1): doc: remove reference to the traditional layout in git-tag.txt Дилян Палаузов (1): ./configure.ac: detect SSL in libcurl using curl-config Version v2.10.1; changes since v2.10.0: --------------------------------------- Alex Henrie (5): am: put spaces around pipe in usage string cat-file: put spaces around pipes in usage string git-rebase--interactive: fix English grammar git-merge-octopus: do not capitalize "octopus" unpack-trees: do not capitalize "working" Beat Bolli (1): SubmittingPatches: use gitk's "Copy commit summary" format Brandon Williams (1): pathspec: remove unnecessary function prototypes Brian Henderson (3): diff-highlight: add some tests diff-highlight: add failing test for handling --graph output diff-highlight: add support for --graph output Elia Pinto (5): t5541-http-push-smart.sh: use the GIT_TRACE_CURL environment var test-lib.sh: preserve GIT_TRACE_CURL from the environment t5550-http-fetch-dumb.sh: use the GIT_TRACE_CURL environment var t5551-http-fetch-smart.sh: use the GIT_TRACE_CURL environment var git-check-ref-format.txt: fixup documentation Eric Wong (3): http: warn on curl_multi_add_handle failures http: consolidate #ifdefs for curl_multi_remove_handle http: always remove curl easy from curlm session on release Jeff King (20): rebase-interactive: drop early check for valid ident gc: default aggressive depth to 50 test-lib: drop PID from test-results/*.count diff-highlight: ignore test cruft diff-highlight: add multi-byte tests diff-highlight: avoid highlighting combined diffs error_errno: use constant return similar to error() color_parse_mem: initialize "struct color" temporary t5305: move cleanup into test block t5305: drop "dry-run" of unpack-objects t5305: use "git -C" t5305: simplify packname handling pack-objects: walk tag chains for --include-tag remote-curl: handle URLs without protocol patch-ids: turn off rename detection patch-ids: refuse to compute patch-id for merge commit docs/cvsimport: prefer cvs-fast-export to parsecvs docs/cvs-migration: update link to cvsps homepage docs/cvs-migration: mention cvsimport caveats ident: handle NULL ai_canonname Jiang Xin (1): l10n: zh_CN: fixed some typos for git 2.10.0 Johannes Schindelin (4): git-gui: respect commit.gpgsign again regex: -G<pattern> feeds a non NUL-terminated string to regexec() and fails regex: add regexec_buf() that can work on a non NUL-terminated string regex: use regexec_buf() Johannes Sixt (4): t9903: fix broken && chain t6026-merge-attr: clean up background process at end of test case t3700-add: create subdirectory gently t3700-add: do not check working tree file mode without POSIXPERM Josh Triplett (1): format-patch: show base info before email signature Junio C Hamano (6): submodule: avoid auto-discovery in prepare_submodule_repo_env() symbolic-ref -d: do not allow removal of HEAD Prepare for 2.9.4 Start preparing for 2.10.1 Prepare for 2.10.1 Git 2.10.1 Kirill Smelkov (1): t/perf/run: copy config.mak.autogen & friends to build area Lars Schneider (1): travis-ci: ask homebrew for its path instead of hardcoding it Matthieu Moy (1): Documentation/config: default for color.* is color.ui Mike Ralphson (1): vcs-svn/fast_export: fix timestamp fmt specifiers Nguyễn Thái Ngọc Duy (3): checkout: add some spaces between code and comment checkout.txt: document a common case that ignores ambiguation rules checkout: fix ambiguity check in subdir Philip Oakley (12): doc: use 'symmetric difference' consistently doc: revisions - name the left and right sides doc: show the actual left, right, and boundary marks doc: revisions: give headings for the two and three dot notations doc: revisions: extra clarification of <rev>^! notation effects doc: revisions: single vs multi-parent notation comparison doc: gitrevisions - use 'reachable' in page description doc: gitrevisions - clarify 'latter case' is revision walk doc: revisions - define `reachable` doc: revisions - clarify reachability examples doc: revisions: show revision expansion in examples doc: revisions: sort examples and fix alignment of the unchanged Ralf Thielow (1): rebase -i: improve advice on bad instruction lines Ray Chen (1): l10n: zh_CN: review for git v2.10.0 l10n René Scharfe (6): compat: move strdup(3) replacement to its own file introduce hex2chr() for converting two hexadecimal digits to a character strbuf: use valid pointer in strbuf_remove() checkout: constify parameters of checkout_stage() and checkout_merged() unpack-trees: pass checkout state explicitly to check_updates() xdiff: fix merging of hunks with -W context and -u context Satoshi Yasushima (6): git-gui: consistently use the same word for "remote" in Japanese git-gui: consistently use the same word for "blame" in Japanese git-gui: apply po template to Japanese translation git-gui: add Japanese language code git-gui: update Japanese translation git-gui: update Japanese information Stefan Beller (5): xdiff: remove unneeded declarations transport: report missing submodule pushes consistently on stderr diff.c: use diff_options directly diff: omit found pointer from emit_callback diff: remove dead code Thomas Gummerer (4): add: document the chmod option update-index: add test for chmod flags read-cache: introduce chmod_index_entry add: modify already added files when --chmod is given Vasco Almeida (2): l10n: pt_PT: update Portuguese translation l10n: pt_PT: update Portuguese repository info Version v2.10.0; changes since v2.10.0-rc2: ------------------------------------------- Alex Henrie (1): l10n: ca.po: update translation Changwoo Ryu (1): l10n: ko.po: Update Korean translation Jean-Noël Avila (1): l10n: fr.po v2.10.0-rc2 Jiang Xin (3): l10n: git.pot: v2.10.0 round 1 (248 new, 56 removed) l10n: git.pot: v2.10.0 round 2 (12 new, 44 removed) l10n: zh_CN: for git v2.10.0 l10n round 2 Junio C Hamano (2): A few more fixes before the final 2.10 Git 2.10 Lars Schneider (1): pack-protocol: fix maximum pkt-line size Peter Krefting (1): l10n: sv.po: Update Swedish translation (2757t0f0u) René Scharfe (1): p3400: make test script executable Thomas Gummerer (1): blame: fix segfault on untracked files Trần Ngọc Quân (2): l10n: Updated Vietnamese translation for v2.10.0 (2789t) l10n: Updated Vietnamese translation for v2.10.0-rc2 (2757t) Vasco Almeida (2): l10n: pt_PT: merge git.pot l10n: pt_PT: update Portuguese translation Version v2.10.0-rc2; changes since v2.10.0-rc1: ----------------------------------------------- Ben Wijen (2): t6026-merge-attr: child processes must not inherit index.lock handles mingw: ensure temporary file handles are not inherited by child processes David Glasser (1): doc: mention `git -c` in git-config(1) Heiko Voigt (1): SubmittingPatches: document how to reference previous commits Jean-Noël Avila (3): i18n: fix typos for translation i18n: fix git rebase interactive commit messages i18n: simplify numeric error reporting Johannes Schindelin (1): Revert "display HTML in default browser using Windows' shell API" Junio C Hamano (2): Prepare for 2.10.0-rc2 Git 2.10-rc2 Torsten Bögershausen (2): git ls-files: text=auto eol=lf is supported in Git 2.10 gitattributes: Document the unified "auto" handling Version v2.10.0-rc1; changes since v2.10.0-rc0: ----------------------------------------------- Johannes Schindelin (2): t/Makefile: ensure that paths are valid on platforms we care rev-parse: respect core.hooksPath in --git-path John Keeping (1): difftool: always honor fatal error exit codes Junio C Hamano (4): Relnotes: decribe the updates to the "text=auto" attribute relnotes: redo the description of text=auto fix RelNotes: final batch of topics before -rc1 Git 2.10-rc1 Linus Torvalds (1): gpg-interface: prefer "long" key format output when verifying pgp signatures Matthieu Moy (1): git-multimail: update to release 1.4.0 René Scharfe (7): correct FLEXPTR_* example in comment mailinfo: recycle strbuf in check_header() commit: use xstrdup() in get_merge_parent() commit: factor out set_merge_remote_desc() merge-recursive: fix verbose output for multiple base trees commit: use FLEX_ARRAY in struct merge_remote_desc receive-pack: use FLEX_ALLOC_MEM in queue_command() SZEDER Gábor (1): t1410: remove superfluous 'git reflog' from the 'walk past root' test Stefan Beller (1): checkout: do not mention detach advice for explicit --detach option Torsten Bögershausen (1): convert: Correct NNO tests and missing `LF will be replaced by CRLF` Vasco Almeida (3): t3404: become resilient to GETTEXT_POISON t5520: become resilient to GETTEXT_POISON t7411: become resilient to GETTEXT_POISON Version v2.10.0-rc0; changes since v2.9.5: ------------------------------------------ Alexander Hirsch (1): pull: warn on --verify-signatures with --rebase Antoine Queru (1): upload-pack.c: use parse-options API Christian Couder (50): builtin/apply: make gitdiff_verify_name() return void builtin/apply: avoid parameter shadowing 'p_value' global builtin/apply: avoid parameter shadowing 'linenr' global builtin/apply: avoid local variable shadowing 'len' parameter builtin/apply: extract line_by_line_fuzzy_match() from match_fragment() builtin/apply: move 'options' variable into cmd_apply() builtin/apply: move 'read_stdin' global into cmd_apply() builtin/apply: introduce 'struct apply_state' to start libifying builtin/apply: move 'state' init into init_apply_state() builtin/apply: move 'unidiff_zero' global into 'struct apply_state' builtin/apply: move 'check' global into 'struct apply_state' builtin/apply: move 'check_index' global into 'struct apply_state' builtin/apply: move 'apply_in_reverse' global into 'struct apply_state' builtin/apply: move 'apply_with_reject' global into 'struct apply_state' builtin/apply: move 'apply_verbosely' global into 'struct apply_state' builtin/apply: move 'update_index' global into 'struct apply_state' builtin/apply: move 'allow_overlap' global into 'struct apply_state' builtin/apply: move 'cached' global into 'struct apply_state' builtin/apply: move 'diffstat' global into 'struct apply_state' builtin/apply: move 'numstat' global into 'struct apply_state' builtin/apply: move 'summary' global into 'struct apply_state' builtin/apply: move 'threeway' global into 'struct apply_state' builtin/apply: move 'no_add' global into 'struct apply_state' builtin/apply: move 'unsafe_paths' global into 'struct apply_state' builtin/apply: move 'line_termination' global into 'struct apply_state' builtin/apply: move 'fake_ancestor' global into 'struct apply_state' builtin/apply: move 'p_context' global into 'struct apply_state' builtin/apply: move 'apply' global into 'struct apply_state' builtin/apply: move 'patch_input_file' global into 'struct apply_state' builtin/apply: move 'limit_by_name' global into 'struct apply_state' builtin/apply: move 'has_include' global into 'struct apply_state' builtin/apply: move 'p_value' global into 'struct apply_state' builtin/apply: move 'p_value_known' global into 'struct apply_state' builtin/apply: move 'root' global into 'struct apply_state' builtin/apply: move 'whitespace_error' global into 'struct apply_state' builtin/apply: move 'whitespace_option' into 'struct apply_state' builtin/apply: remove whitespace_option arg from set_default_whitespace_mode() builtin/apply: move 'squelch_whitespace_errors' into 'struct apply_state' builtin/apply: move 'applied_after_fixing_ws' into 'struct apply_state' builtin/apply: move 'ws_error_action' into 'struct apply_state' builtin/apply: move 'ws_ignore_action' into 'struct apply_state' builtin/apply: move 'max_change' and 'max_len' into 'struct apply_state' builtin/apply: move 'state_linenr' global into 'struct apply_state' builtin/apply: move 'fn_table' global into 'struct apply_state' builtin/apply: move 'symlink_changes' global into 'struct apply_state' builtin/apply: move 'state' check into check_apply_state() builtin/apply: move applying patches into apply_all_patches() builtin/apply: add 'lock_file' pointer into 'struct apply_state' builtin/apply: move 'newfd' global into 'struct apply_state' .mailmap: use Christian Couder's Tuxfamily address Christopher Layne (1): git-svn: clone: Fail on missing url argument David Aguilar (2): subtree: adjust style to match CodingGuidelines subtree: adjust function definitions to match CodingGuidelines David Turner (2): refs: allow log-only updates refs: don't dereference on rename Elia Pinto (2): http.c: implement the GIT_TRACE_CURL environment variable imap-send.c: introduce the GIT_TRACE_CURL enviroment variable Eric Sunshine (1): blame: drop strdup of string literal Eric Wong (17): fast-import: implement unpack limit fast-import: invalidate pack_id references after loosening pretty: support "mboxrd" output format mailsplit: support unescaping mboxrd messages am: support --patch-format=mboxrd git-svn: skip mergeinfo handling with --no-follow-parent git-svn: warn instead of dying when commit data is missing config.mak.uname: define NEEDS_LIBRT under Linux, for now http-walker: remove unused parameter from fetch_object http: avoid disconnecting on 404s for loose objects http-walker: reduce O(n) ops with doubly-linked list list: avoid incompatibility with *BSD sys/queue.h git-svn: document svn.authorsProg in config git-svn: allow --version to work anywhere git svn: migrate tests to use lib-httpd pager: move pager-specific setup into the build http-backend: buffer headers before sending Ingo Brückl (3): t3700: remove unwanted leftover files before running new tests t3700: merge two tests into one t3700: add a test_mode_in_index helper function Jacob Keller (1): completion: add completion for --submodule=* diff option Jeff King (72): git_config_with_options: drop "found" counting git_config_parse_parameter: refactor cleanup code config: set up config_source for command-line config config: return configset value for current_config_ functions config: add a notion of "scope" upload-pack: provide a hook for running pack-objects parse_opt_string_list: stop allocating new strings interpret-trailers: don't duplicate option strings blame,shortlog: don't make local option variables static use string_list initializer consistently repack: document --unpack-unreachable option repack: add --keep-unreachable option repack: extend --keep-unreachable to loose objects gpg-interface: use child_process.args verify_signed_buffer: drop pbuf variable verify_signed_buffer: use tempfile object run-command: add pipe_command helper verify_signed_buffer: use pipe_command sign_buffer: use pipe_command t/perf: fix regression in testing older versions of git p4211: explicitly disable renames in no-rename test color: fix max-size comment doc: refactor description of color format add skip_prefix_mem helper color: refactor parse_attr color: allow "no-" for negating attributes color: support "italic" attribute color: support strike-through attribute t9300: factor out portable "head -c" replacement t5000: test tar files that overflow ustar headers archive-tar: write extended headers for file sizes >= 8GB archive-tar: write extended headers for far-future mtime archive-tar: drop return value config: fix bogus fd check when setting up default config branch: use non-gentle write_file for branch description write_file: drop "gently" form write_file: use xopen write_file: add pointer+len variant write_file: add format attribute use write_file_buf where applicable branch: use write_file_buf instead of write_file walker: let walker_say take arbitrary formats avoid using sha1_to_hex output as printf format check_everything_connected: always pass --quiet to rev-list rev-list: add optional progress reporting check_everything_connected: convert to argv_array check_everything_connected: use a struct with named options check_connected: relay errors to alternate descriptor check_connected: add progress flag clone: use a real progress meter for connectivity check index-pack: add flag for showing delta-resolution progress receive-pack: turn on index-pack resolving progress receive-pack: relay connectivity errors to sideband receive-pack: turn on connectivity progress receive-pack: send keepalives during quiet periods contrib/git-jump: fix greedy regex when matching hunks contrib/git-jump: add whitespace-checking mode contrib/git-jump: fix typo in README t/perf: add tests for many-pack scenarios sha1_file: drop free_pack_by_name add generic most-recently-used list find_pack_entry: replace last_found_pack with MRU cache pack-objects: break out of want_object loop early pack-objects: compute local/ignore_pack_keep early trace: handle NULL argument in trace_disable() trace: stop using write_or_whine_pipe() trace: use warning() for printing trace errors trace: cosmetic fixes for error messages trace: correct variable name in write() error message trace: disable key after write error write_or_die: drop write_or_whine_pipe() trace: do not fall back to stderr Johannes Schindelin (36): log: prepare log/log-tree to reuse the diffopt.close_file attribute log-tree: respect diffopt's configured output file stream line-log: respect diffopt's configured output file stream graph: respect the diffopt.file setting shortlog: support outputting to streams other than stdout format-patch: explicitly switch off color when writing to files format-patch: avoid freopen() format-patch: use stdout directly shortlog: respect the --output=<file> setting t4211: ensure that log respects --output=<file> diff: do not color output when --color=auto and --output=<file> is given t3404: add a test for the --gpg-sign option rebase -i: demonstrate a bug with --autosquash rebase -i: we allow extra spaces after fixup!/squash! mingw: fix the shortlog --output=<file> test mingw: fix regression in t1308-config-set fsck: refactor how to describe objects fsck_walk(): optionally name objects on the go fsck: give the error function a chance to see the fsck_options fsck: optionally show more helpful info for broken links t5520: verify that `pull --rebase` shows the helpful advice when failing die("bug"): report bugs consistently die(_("BUG")): avoid translating bug messages merge-recursive: clarify code in was_tracked() prepare the builtins for a libified merge_recursive() merge_recursive: abort properly upon errors merge-recursive: avoid returning a wholesale struct merge-recursive: allow write_tree_from_memory() to error out merge-recursive: handle return values indicating errors merge-recursive: switch to returning errors instead of dying am -3: use merge_recursive() directly again merge-recursive: flush output buffer before printing error messages merge-recursive: write the commit title in one go merge-recursive: offer an option to retain the output in 'obuf' merge_trees(): ensure that the callers release output buffer merge-recursive: flush output buffer even when erroring out Johannes Sixt (5): git-submodule: forward exit code of git-submodule--helper more faithfully submodule-helper: fix indexing in clone retry error reporting path rebase-interactive: trim leading whitespace from progress count config.c: avoid duplicated global static variables commit-slab.h: avoid duplicated global static variables Jonathan Tan (1): fetch-pack: grow stateless RPC windows exponentially Jordan DE GEA (1): worktree: allow "-" short-hand for @{-1} in add command Josh Triplett (1): format-patch: format.from gives the default for --from Junio C Hamano (21): send-email: detect and offer to skip backup files pathspec: rename free_pathspec() to clear_pathspec() t1308: do not get fooled by symbolic links to the source tree builtin/apply: remove misleading comment on lock_file field Start the post-2.9 cycle Second batch of topics for 2.10 Third batch of topics for 2.10 commit.c: remove print_commit_list() Fourth batch of topics for 2.10 Fifth batch of topics for 2.10 archive-tar: huge offset and future timestamps would not work on 32-bit Sixth batch of topics for 2.10 Seventh batch of topics for 2.10 t9100: portability fix Eighth batch of topics for 2.10 Ninth batch of topics for 2.10 Tenth batch for 2.10 Eleventh batch for 2.10 Twelfth batch for 2.10 Final batch before 2.10-rc0 Git 2.10-rc0 Kevin Willford (4): patch-ids: stop using a hand-rolled hashmap implementation patch-ids: replace the seen indicator with a commit pointer patch-ids: add flag to create the diff patch id using header only data rebase: avoid computing unnecessary patch IDs Lars Schneider (1): git-p4: place temporary refs used for branch import under refs/git-p4-tmp Lukas Fleischer (1): receive-pack: send auto-gc output over sideband 2 Mehul Jain (3): t4202: refactor test log: add "--no-show-signature" command line option log: add log.showSignature configuration variable Michael Haggerty (50): t1404: demonstrate a bug resolving references commit_ref(): if there is an empty dir in the way, delete it read_raw_ref(): don't get confused by an empty directory safe_create_leading_directories(): improve docstring remove_dir_recursively(): add docstring refname_is_safe(): use skip_prefix() refname_is_safe(): don't allow the empty string refname_is_safe(): insist that the refname already be normalized commit_ref_update(): write error message to *err, not stderr rename_ref(): remove unneeded local variable ref_transaction_commit(): remove local variables n and updates read_raw_ref(): rename flags argument to type read_raw_ref(): clear *type at start of function read_raw_ref(): rename symref argument to referent read_raw_ref(): improve docstring read_raw_ref(): move docstring to header file lock_ref_sha1_basic(): remove unneeded local variable refs: make error messages more consistent ref_transaction_create(): disallow recursive pruning ref_transaction_commit(): correctly report close_ref() failure delete_branches(): use resolve_refdup() verify_refname_available(): adjust constness in declaration add_update(): initialize the whole ref_update lock_ref_for_update(): new function unlock_ref(): move definition higher in the file ref_transaction_update(): check refname_is_safe() at a minimum refs: resolve symbolic refs first lock_ref_for_update(): don't re-read non-symbolic references lock_ref_for_update(): don't resolve symrefs commit_ref_update(): remove the flags parameter lock_ref_sha1_basic(): only handle REF_NODEREF mode refs: remove unnecessary "extern" keywords do_for_each_ref(): move docstring to the header file refs: use name "prefix" consistently delete_refs(): add a flags argument remote rm: handle symbolic refs correctly get_ref_cache(): only create an instance if there is a submodule entry_resolves_to_object(): rename function from ref_resolves_to_object() ref_resolves_to_object(): new function refs: introduce an iterator interface do_for_each_ref(): reimplement using reference iteration for_each_reflog(): don't abort for bad references dir_iterator: new API for iterating over a directory tree for_each_reflog(): reimplement using iterators t1404: rename file to t1404-update-ref-errors.sh t1404: remove "prefix" argument to test_update_rejected t1404: document function test_update_rejected t1404: add more tests of update-ref error handling lock_ref_for_update(): make error handling more uniform lock_ref_for_update(): avoid a symref resolution Michael J Gruber (2): gpg-interface: check gpg signature creation status t/t91*: do not say how to avoid the tests Nguyễn Thái Ngọc Duy (20): completion: support git-worktree worktree.c: rewrite mark_current_worktree() to avoid strbuf git-worktree.txt: keep subcommand listing in alphabetical order worktree.c: use is_dot_or_dotdot() worktree: avoid 0{40}, too many zeroes, hard to read worktree: simplify prefixing paths worktree.c: add find_worktree() worktree.c: add is_main_worktree() lib-httpd.sh: print error.log on error worktree.c: add is_worktree_locked() git-fetch.txt: document fetch output fetch: refactor ref update status formatting code fetch: change flag code for displaying tag update and deleted ref fetch: align all "remote -> local" output fetch: reduce duplicate in ref update status lines with placeholder connect: read $GIT_SSH_COMMAND from config file worktree: add "lock" command worktree: add "unlock" command worktree.c: find_worktree() search by path suffix log: decorate HEAD -> branch with the same color for arrow and HEAD René Scharfe (4): am: ignore return value of write_file() pass constants as first argument to st_mult() use CHILD_PROCESS_INIT to initialize automatic variables archive-tar: make write_extended_header() void Ronald Wampler (1): Makefile: add NEEDS_LIBRT to optionally link with librt Stefan Beller (19): submodule update: make use of the existing fetch_in_submodule function submodule-config: keep shallow recommendation around submodule update: learn `--[no-]recommend-shallow` option submodule--helper: initial clone learns retry logic submodule update: continue when a clone fails push options: {pre,post}-receive hook learns about push options receive-pack: implement advertising and receiving push options push: accept push options add a test for push options t7406: future proof tests with hard coded depth submodule update: respect depth in subsequent fetches submodule update: narrow scope of local variable submodule--helper: fix usage string for relative-path submodule-config: keep configured branch around gitmodules: document shallow recommendation submodule--helper: add remote-branch helper submodule update: allow '.' for branch value submodule--helper: use parallel processor correctly t7406: fix breakage on OSX Thomas Braun (3): completion: factor out untracked file modes into a variable completion: add __git_get_option_value helper completion: add git status Vasco Almeida (44): i18n: builtin/remote.c: fix mark for translation i18n: advice: mark string about detached head for translation i18n: advice: internationalize message for conflicts i18n: transport: mark strings for translation i18n: sequencer: mark entire sentences for translation i18n: rebase-interactive: mark here-doc strings for translation i18n: sequencer: mark string for translation i18n: rebase-interactive: mark comments of squash for translation i18n: merge-octopus: mark messages for translation i18n: setup: mark strings for translation merge-octopus: use die shell function from git-sh-setup.sh tests: use test_i18n* functions to suppress false positives i18n: rebase: fix marked string to use eval_gettext variant tests: unpack-trees: update to use test_i18n* functions i18n: rebase: mark placeholder for translation t9003: become resilient to GETTEXT_POISON i18n: bisect: simplify error message for i18n t4153: fix negated test_i18ngrep call t6030: update to use test_i18ncmp t5523: use test_i18ngrep for negation i18n: git-sh-setup.sh: mark strings for translation i18n: bisect: mark strings for translation i18n: rebase-interactive: mark strings for translation i18n: transport-helper.c: change N_() call to _() i18n: notes: mark strings for translation i18n: notes: mark options for translation i18n: merge: mark messages for translation i18n: merge: change command option help to lowercase i18n: sequencer: add period to error message i18n: standardise messages i18n: remote: mark URL fallback text for translation i18n: remote: allow translations to reorder message i18n: init-db: join message pieces i18n: submodule: join strings marked for translation i18n: submodule: escape shell variables inside eval_gettext i18n: unmark die messages for translation i18n: branch: mark comment when editing branch description for translation t5541: become resilient to GETTEXT_POISON t5510: skip tests under GETTEXT_POISON build i18n: notes: mark comment for translation i18n: config: unfold error messages marked for translation i18n: setup: mark error messages for translation i18n: archive: mark errors for translation i18n: git-stash: mark messages for translation Ville Skyttä (2): completion: complete --delete, --move, and --remotes for git branch Spelling fixes William Duclot (1): userdiff: add built-in pattern for CSS brian m. carlson (11): hex: add oid_to_hex_r() contrib/coccinelle: add basic Coccinelle transforms coccinelle: convert hashcpy() with null_sha1 to hashclr() coccinelle: apply object_id Coccinelle transformations diff: convert struct diff_filespec to struct object_id diff: rename struct diff_filespec's sha1_valid member merge-recursive: convert struct stage_data to use object_id merge-recursive: convert struct merge_file_info to object_id merge-recursive: convert leaf functions to use struct object_id merge-recursive: convert merge_recursive_generic() to object_id diff: convert prep_temp_blob() to struct object_id Version v2.9.5; changes since v2.9.4: ------------------------------------- Jeff King (4): t5813: add test for hostname starting with dash connect: factor out "looks like command line option" check connect: reject dashed arguments for proxy commands connect: reject paths that look like command line options Junio C Hamano (4): connect: reject ssh hostname that begins with a dash Git 2.7.6 Git 2.8.6 Git 2.9.5 Version v2.9.4; changes since v2.9.3: ------------------------------------- Beat Bolli (1): SubmittingPatches: use gitk's "Copy commit summary" format Ben Wijen (2): t6026-merge-attr: child processes must not inherit index.lock handles mingw: ensure temporary file handles are not inherited by child processes David Glasser (1): doc: mention `git -c` in git-config(1) Heiko Voigt (1): SubmittingPatches: document how to reference previous commits Jeff King (12): add an extra level of indirection to main() common-main: call git_extract_argv0_path() common-main: call sanitize_stdfds() common-main: call restore_sigpipe_to_default() common-main: call git_setup_gettext() doc/rev-list-options: clarify "commit@{Nth}" for "-g" option doc/rev-list-options: explain "-g" output formats doc/pretty-formats: describe index/time formats for %gd doc/pretty-formats: explain shortening of %gd date: document and test "raw-local" mode date: add "unix" format shell: disallow repo names beginning with dash Johannes Schindelin (6): mingw: declare main()'s argv as const import-tars: support hard links t5533: make it pass on case-sensitive filesystems git mv: do not keep slash in `git mv dir non-existing-dir/` t/Makefile: ensure that paths are valid on platforms we care Revert "display HTML in default browser using Windows' shell API" John Keeping (4): Documentation/git-push: fix placeholder formatting push: add shorthand for --force-with-lease branch creation push: allow pushing new branches with --force-with-lease difftool: always honor fatal error exit codes Junio C Hamano (9): merge: avoid "safer crlf" during recording of merge results date: clarify --date=raw description Prepare for 2.9.4 Git 2.4.12 Git 2.5.6 Git 2.6.7 Git 2.7.5 Git 2.8.5 Git 2.9.4 Lars Schneider (1): pack-protocol: fix maximum pkt-line size Michael Stahl (1): document git-repack interaction of pack.threads and pack.windowMemory René Scharfe (10): merge-recursive: use STRING_LIST_INIT_NODUP merge: use string_list_split() in add_strategies() use strbuf_add_unique_abbrev() for adding short hashes correct FLEXPTR_* example in comment mailinfo: recycle strbuf in check_header() commit: use xstrdup() in get_merge_parent() commit: factor out set_merge_remote_desc() merge-recursive: fix verbose output for multiple base trees commit: use FLEX_ARRAY in struct merge_remote_desc receive-pack: use FLEX_ALLOC_MEM in queue_command() SZEDER Gábor (1): t1410: remove superfluous 'git reflog' from the 'walk past root' test Stefan Beller (1): checkout: do not mention detach advice for explicit --detach option Torsten Bögershausen (1): convert: unify the "auto" handling of CRLF Version v2.9.3; changes since v2.9.2: ------------------------------------- Alex Henrie (1): unpack-trees: fix English grammar in do-this-before-that messages Andreas Brauchli (1): gitweb: escape link body in format_ref_marker Armin Kunaschik (1): t7610: test for mktemp before test execution Charles Bailey (3): t7810-grep.sh: fix duplicated test name t7810-grep.sh: fix a whitespace inconsistency grep: fix grepping for "intent to add" files Chris Packham (1): completion: add option '--recurse-submodules' to 'git clone' David A. Greene (1): contrib/subtree: Add a test for subtree rebase that loses commits David Aguilar (4): t7900-subtree.sh: fix quoting and broken && chains subtree: fix "git subtree split --rejoin" difftool: avoid $GIT_DIR and $GIT_WORK_TREE difftool: use Git::* functions instead of passing around state David Kastrup (1): blame: require 0 context lines while finding moved lines with -M Eric Wong (6): gc: fix off-by-one error with gc.autoPackLimit xread: retry after poll on EAGAIN/EWOULDBLOCK xwrite: poll on non-blocking FDs hoist out handle_nonblock function for xread and xwrite daemon: ignore ENOTSOCK from setsockopt configure.ac: stronger test for pthread linkage Heiko Voigt (3): submodule-config: passing name reference for .gitmodule blobs submodule-config: combine early return code into one goto submodule-config: fix test binary crashing when no arguments given Jeff King (14): send-pack: use buffered I/O to talk to pack-objects tests: factor portable signal check out of t0005 t0005: use test_match_signal as appropriate test_must_fail: use test_match_signal t/lib-git-daemon: use test_match_signal parse_options: allocate a new array when concatenating Makefile: drop extra dependencies for test helpers Makefile: use VCSSVN_LIB to refer to svn library push: anonymize URL in status output t5541: fix url scrubbing test when GPG is not set diff: do not reuse worktree files that need "clean" conversion t4205: drop top-level &&-chaining t4205: indent here documents am: reset cached ident date for each patch Joey Hess (1): clarify %f documentation Johannes Schindelin (13): pretty: make the skip_blank_lines() function public commit.c: make find_commit_subject() more robust color.h: remove obsolete comment about limitations on Windows t3404: fix a grammo (commands are ran -> commands are run) commit -C: skip blank lines at the beginning of the message sequencer: use skip_blank_lines() to find the commit subject reset --hard: skip blank lines when reporting the commit subject commit -S: avoid invalid pointer with empty message am: counteract gender bias diff: demonstrate a bug with --patience and --ignore-space-at-eol diff: fix a double off-by-one with --ignore-space-at-eol t/test-lib.sh: fix running tests with --valgrind nedmalloc: fix misleading indentation Johannes Sixt (2): Windows: add missing definition of ENOTSOCK t4130: work around Windows limitation John Keeping (1): difftool: fix argument handling in subdirs Junio C Hamano (7): diff: document diff-filter exclusion grep: further simplify setting the pattern type Some fixes for 2.9.3 hashmap: clarify that hashmap_entry can safely be discarded Hopefully final batch for 2.9.3 Yet another batch for 2.9.3 Git 2.9.3 Lars Schneider (1): travis-ci: enable web server tests t55xx on Linux Lukas Fleischer (3): sideband.c: make send_sideband() return void upload-pack.c: make send_client_data() return void sideband.c: refactor recv_sideband() Matthieu Moy (8): Documentation/git-mv.txt: fix whitespace indentation doc: typeset short command-line options as literal doc: typeset long command-line options as literal doc: typeset '--' as literal doc: typeset long options with argument as literal CodingGuidelines: formatting HEAD in documentation doc: typeset HEAD and variants as literal status: suggest 'git merge --abort' when appropriate Mike Hommey (2): blame: allow to blame paths freshly added to the index t/t8003-blame-corner-cases.sh: Use here documents Nguyễn Thái Ngọc Duy (26): new-command.txt: correct the command description file grep: break down an "if" stmt in preparation for next changes test-regex: isolate the bug test code test-regex: expose full regcomp() to the command line grep/icase: avoid kwsset on literal non-ascii strings grep/icase: avoid kwsset when -F is specified grep: rewrite an if/else condition to avoid duplicate expression grep/pcre: prepare locale-dependent tables for icase matching gettext: add is_utf8_locale() grep/pcre: support utf-8 diffcore-pickaxe: Add regcomp_or_die() diffcore-pickaxe: support case insensitive match on non-ascii grep.c: reuse "icase" variable pack-objects: pass length to check_pack_crc() without truncation sha1_file.c: use type off_t* for object_info->disk_sizep index-pack: correct "len" type in unpack_data() index-pack: report correct bad object offsets even if they are large index-pack: correct "offset" type in unpack_entry_data() pack-objects: do not truncate result in-pack object size on 32-bit systems fsck: use streaming interface for large blobs in pack test-lib.sh: introduce and use $EMPTY_TREE test-lib.sh: introduce and use $EMPTY_BLOB cache-tree.c: fix i-t-a entry skipping directory updates sometimes cache-tree: do not generate empty trees as a result of all i-t-a subentries config.mak.uname: correct perl path on FreeBSD t7063: work around FreeBSD's lazy mtime update feature Nicolas Pitre (1): sideband.c: small optimization of strbuf usage Orgad Shaneh (1): commit: describe that --no-verify skips the commit-msg hook in the help text Parker Moore (2): contrib/persistent-https: update ldflags syntax for Go 1.7+ contrib/persistent-https: use Git version for build label Patrick Steinhardt (1): rebase -i: restore autostash on abort Pranit Bauva (1): builtin/commit.c: memoize git-path for COMMIT_EDITMSG Ramsay Jones (1): write_or_die: remove the unused write_or_whine() function René Scharfe (10): .gitattributes: set file type for C files notes-merge: use O_EXCL to avoid overwriting existing files rm: reuse strbuf for all remove_dir_recursively() calls worktree: use strbuf_add_absolute_path() directly use strbuf_addbuf() for appending a strbuf to another submodule-config: use explicit empty string instead of strbuf in config_from() strbuf: avoid calling strbuf_grow() twice in strbuf_addbuf() use strbuf_addstr() for adding constant strings to a strbuf use strbuf_addstr() instead of strbuf_addf() with "%s" nedmalloc: work around overzealous GCC 6 warning Stefan Beller (2): Documentation: pack-protocol correct NAK response submodule deinit: remove outdated comment Version v2.9.2; changes since v2.9.1: ------------------------------------- Jeff King (1): t0006: skip "far in the future" test when unsigned long is not long enough Junio C Hamano (1): Git 2.9.2 Version v2.9.1; changes since v2.9.0: ------------------------------------- Alfred Perlstein (1): git-svn: document the 'git svn propset' command Andrew Oakley (1): git-p4: correct hasBranchPrefix verbose output Armin Kunaschik (1): t7800: readlink may not be available Charles Bailey (1): t7810: fix duplicated test title Dave Nicolson (1): Documentation: GPG capitalization David Turner (1): mailmap: use main email address for dturner Ed Maste (1): rebase: update comment about FreeBSD /bin/sh Edward Thomson (2): format_commit_message: honor `color=auto` for `%C(auto)` add: add --chmod=+x / --chmod=-x options Eric Wong (1): daemon: enable SO_KEEPALIVE for all sockets Heiko Becker (1): gnome-keyring: Don't hard-code pkg-config executable Jeff King (9): rev-list: "adjust" results of "--count --use-bitmap-index -n" rev-list: disable bitmaps when "-n" is used with listing objects tree-diff: avoid alloca for large allocations fetch: document that pruning happens before fetching add--interactive: respect diff.compactionHeuristic bisect: always call setup_revisions after init_revisions t0006: rename test-date's "show" to "relative" t0006: test various date formats local_tzoffset: detect errors from tm_to_time_t Johannes Schindelin (3): mingw: let the build succeed with DEVELOPER=1 perf: accommodate for MacOSX t2300: "git --exec-path" is not usable in $PATH on Windows as-is Jonathan Nieder (1): doc: git-htmldocs.googlecode.com is no more Josef Kufner (1): pretty: pass graph width to pretty formatting for use in '%>|(N)' Junio C Hamano (5): blame, line-log: do not loop around deref_tag() clone: do not let --depth imply --shallow-submodules Start preparing for 2.9.1 More fixes for 2.9.1 Git 2.9.1 Keith McGuigan (1): builtin/fetch.c: don't free remote->name after fetch LE Manh Cuong (1): sh-setup: enclose setting of ${VAR=default} in double-quotes Lars Vogel (1): Use "working tree" instead of "working directory" for git status Michael J Gruber (5): cherry-pick: allow to pick to unborn branches Documentation/technical: describe signature formats Documentation/technical: signed tag format Documentation/technical: signed commit format Documentation/technical: signed merge tag format Nguyễn Thái Ngọc Duy (1): pretty.c: support <direction>|(<negative number>) forms Peter Colberg (2): refs.h: fix misspelt "occurred" in a comment config.c: fix misspelt "occurred" in an error message Pranit Bauva (1): strbuf: describe the return value of strbuf_read_file Ramsay Jones (1): regex: fix a SIZE_MAX macro redefinition warning René Scharfe (9): t4051: rewrite, add more tests xdiff: factor out match_func_rec() xdiff: handle appended chunks better with -W xdiff: ignore empty lines before added functions with -W xdiff: -W: don't include common trailing empty lines in context xdiff: don't trim common tail with -W t7810: add test for grep -W and trailing empty context lines grep: -W: don't extend context to trailing empty lines xdiff: fix merging of appended hunk with -W SZEDER Gábor (1): reflog: continue walking the reflog past root commits Stefan Beller (1): t5614: don't use subshells Tom Russello (4): doc: clearer rule about formatting literals doc: change environment variables format doc: more consistency in environment variables format doc: change configuration variables format Ville Skyttä (1): git-prompt.sh: Don't error on null ${ZSH,BASH}_VERSION, $short_sha Version v2.9.0; changes since v2.9.0-rc2: ----------------------------------------- Alexander Shopov (1): l10n: Updated Bulgarian translation of git (2597t,0f,0u) Antonin (1): l10n: fr.po Fixed grammar mistake Changwoo Ryu (1): l10n: ko.po: Update Korean translation Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Jean-Noël Avila (1): l10n: fr.po v2.9.0rnd1 Jeff King (1): test-lib: add in-shell "env" replacement Jiang Xin (2): l10n: git.pot: v2.9.0 round 1 (104 new, 37 removed) l10n: zh_CN: for git v2.9.0 l10n round 1 Junio C Hamano (5): t5500 & t7403: lose bash-ism "local" t2300: run git-sh-setup in an environment that better mimics the real life diff: disable compaction heuristic for now Hopefully the final last-minute update before 2.9 final Git 2.9 Peter Krefting (1): l10n: sv.po: Update Swedish translation (2597t0f0u) Ralf Thielow (1): l10n: de.po: translate 104 new messages Ray Chen (1): l10n: zh_CN: review for git v2.9.0 l10n round 1 Trần Ngọc Quân (1): l10n: Updated Vietnamese translation (2597t) Vasco Almeida (3): l10n: pt_PT: merge git.pot file l10n: pt_PT: update according to git-gui glossary l10n: pt_PT: update Portuguese translation Version v2.9.0-rc2; changes since v2.9.0-rc1: --------------------------------------------- Benjamin Dopplinger (1): README.md: format CLI commands with code syntax Erwan Mathoniere (1): Documentation: bold literals in man Johannes Sixt (1): rebase -i: remove an unnecessary 'rerere' invocation Junio C Hamano (3): Almost ready for 2.9-rc2 Git 2.8.4 Git 2.9-rc2 Matthieu Moy (2): Makefile: move 'ifdef DEVELOPER' after config.mak* inclusion Makefile: add $(DEVELOPER_CFLAGS) variable Pablo Santiago Blum de Aguiar (1): git-cherry-pick.txt: correct a small typo René Scharfe (3): apply: remove unused parameters from name_terminate() patch-id: use starts_with() and skip_prefix() perf: make the tests work without a worktree SZEDER Gábor (1): Documentation/git-send-email: fix typo in gmail 2FA section Stefan Beller (2): submodule--helper: offer a consistent API submodule: remove bashism from shell script Version v2.9.0-rc1; changes since v2.9.0-rc0: --------------------------------------------- Armin Kunaschik (1): t0008: 4 tests fail with ksh88 Eric Sunshine (5): t1500: be considerate to future potential tests t1500: test_rev_parse: facilitate future test enhancements t1500: avoid changing working directory outside of tests t1500: avoid setting configuration options outside of tests t1500: avoid setting environment variables outside of tests Felipe Contreras (1): fast-import: do not truncate exported marks file Jeff King (3): cat-file: avoid noop calls to sha1_object_info_extended cat-file: default to --buffer when --batch-all-objects is used archive-tar: convert snprintf to xsnprintf Johannes Sixt (1): t6044: replace seq by test_seq Junio C Hamano (5): t4204: do not let $name variable clobbered Start preparing for 2.8.4 Final batch before 2.9-rc1 More topics for 2.8.4 Git 2.9-rc1 Karsten Blees (1): mingw: make isatty() recognize MSYS2's pseudo terminals (/dev/pty*) Michael Rappazzo (1): Documentation: add instructions to help setup gmail 2FA Ramsay Jones (1): log: document the --decorate=auto option Version v2.9.0-rc0; changes since v2.8.6: ----------------------------------------- Ben Woosley (1): git-rebase--merge: don't include absent parent as a base Christian Couder (1): Git/SVN: die when there is no commit metadata David Turner (5): refs: move head_ref{,_submodule} to the common code refs: move for_each_*ref* functions into common code files-backend: break out ref reading refs: move resolve_ref_unsafe into common code refs: on symref reflog expire, lock symref not referrent Dennis Kaarsemaker (1): Makefile: remove dependency on git.spec Elijah Newren (6): merge-recursive: remove duplicate code merge-recursive: do not check working copy when creating a virtual merge base t7605: add a testcase demonstrating a bug with trivial merges builtin/merge.c: fix a bug with trivial merges t6044: new merge testcases for when index doesn't match HEAD merge-octopus: abort if index does not match HEAD Eric Sunshine (4): lib-gpg: drop unnecessary "missing GPG" warning t6302: normalize names and descriptions of signed tags t6302: also test annotated in addition to signed tags t6302: skip only signed tags rather than all tests when GPG is missing Jacob Keller (7): submodule: don't pass empty string arguments to submodule--helper clone submodule: check argc count for git submodule--helper clone submodule: fix submodule--helper clone usage submodule: fix segmentation fault in submodule--helper clone quote: implement sq_quotef() git: submodule honor -c credential.* from command line xdiff: add recs_match helper function Jacob Nisnevich (2): mergetools: create mergetool_find_win32_cmd() helper function for winmerge mergetools: add support for ExamDiff Jan Durovec (2): git-p4: clean-up code style in tests git-p4: add P4 jobs to git commit message Jeff King (16): credential: let empty credential specs reset helper list add--interactive: allow custom diff highlighting programs git_config_push_parameter: handle empty GIT_CONFIG_PARAMETERS t5550: fix typo in $HTTPD_URL t5550: break submodule config test into multiple sub-tests submodule: export sanitized GIT_CONFIG_PARAMETERS submodule--helper: move config-sanitizing to submodule.c submodule: use prepare_submodule_repo_env consistently submodule: stop sanitizing config options t6302: simplify non-gpg cases t/lib-git-svn: drop $remote_git_svn and $git_svn_id t9100,t3419: enclose all test code in single-quotes t9107: use "return 1" instead of "exit 1" t9107: switch inverted single/double quotes in test t9103: modernize test style always quote shell arguments to test -z/-n Johannes Schindelin (8): http: support sending custom HTTP headers tests: adjust the configuration for Apache 2.2 t5551: make the test for extra HTTP headers more robust t3404: fix typo submodule: ensure that -c http.extraheader is heeded perf: let's disable symlinks when they are not available perf: make the tests work in worktrees perf: run "rebase -i" under perf Junio C Hamano (45): rerere: split conflict ID further rerere: scan $GIT_DIR/rr-cache/$ID when instantiating a rerere_id rerere: handle leftover rr-cache/$ID directory and postimage files rerere: delay the recording of preimage rerere: allow multiple variants to exist t4200: rerere a merge with two identical conflicts rerere: do use multiple variants merge: refuse to create too cool a merge by default pretty: enable --expand-tabs by default for selected pretty formats pretty: allow tweaking tabwidth in --expand-tabs First batch for post 2.8 cycle pretty: test --expand-tabs Second batch for post 2.8 cycle Makefile: stop pretending to support rpmbuild rerere: gc and clear rerere: move code related to "forget" together rerere: split code to call ll_merge() further rerere: adjust 'forget' to multi-variant world order Third batch for post 2.8 cycle Fourth batch for post 2.8 cycle ll-merge: fix typo in comment Makefile: clean *.o files we create Fifth batch for post 2.8 cycle t3033: avoid 'ambiguous refs' warning pull: pass --allow-unrelated-histories to "git merge" Sixth batch for post 2.8 cycle Seventh batch for post 2.8 cycle Eighth batch for 2.9 diff: undocument the compaction heuristic knobs for experimentation commit-tree: do not pay attention to commit.gpgsign Ninth batch for 2.9 Tenth batch for 2.9 ll-merge: use a longer conflict marker for internal merge t6036: remove pointless test that expects failure ci: validate "linkgit:" in documentation test-parse-options: fix output when callback option fails test-parse-options: --expect=<string> option to simplify tests t0040: remove unused test helpers t0040: convert a few tests to use test-parse-options --expect Eleventh batch for 2.9 rerere: plug memory leaks upon "rerere forget" failure Twelfth batch for 2.9 Thirteenth batch for 2.9 rerere: remove an null statement Git 2.9-rc0 Lars Schneider (2): git-p4: map a P4 user to Git author name and email address travis-ci: enable Git SVN tests t91xx on Linux Laurent Arnoud (1): tag: add the option to force signing of annotated tags Linus Torvalds (1): pretty: expand tabs in indented logs to make things line up properly Matthieu Moy (7): Documentation/diff-config: fix description of diff.renames t4001-diff-rename: wrap file creations in a test t: add tests for diff.renames (true/false/unset) log: introduce init_log_defaults() diff: activate diff.renames by default README.md: don't take 'commandname' literally git-multimail: update to release 1.3.1 Mehul Jain (9): git-pull.c: introduce git_pull_config() pull --rebase: add --[no-]autostash flag t5520: use consistent capitalization in test titles t5520: ensure consistent test conditions t5520: use better test to check stderr output t5520: factor out common "successful autostash" code t5520: factor out common "failing autostash" code t5520: reduce commom lines of code t5520: test --[no-]autostash with pull.rebase=true Michael Haggerty (19): t1430: test the output and error of some commands more carefully t1430: clean up broken refs/tags/shadow t1430: don't rely on symbolic-ref for creating broken symrefs t1430: test for-each-ref in the presence of badly-named refs t1430: improve test coverage of deletion of badly-named refs resolve_missing_loose_ref(): simplify semantics resolve_ref_unsafe(): use for loop to count up to MAXDEPTH resolve_ref_unsafe(): ensure flags is always set resolve_ref_1(): eliminate local variable resolve_ref_1(): reorder code resolve_ref_1(): eliminate local variable "bad_name" read_raw_ref(): manage own scratch space files-backend: inline resolve_ref_1() into resolve_ref_unsafe() read_raw_ref(): change flags parameter to unsigned int fsck_head_link(): remove unneeded flag variable cmd_merge(): remove unneeded flag variable checkout_paths(): remove unneeded flag variable check_aliased_update(): check that dst_name is non-NULL show_head_ref(): check the result of resolve_ref_namespace() Michael J Gruber (1): completion: complete --cherry-mark for git log Nguyễn Thái Ngọc Duy (57): apply: report patch skipping in verbose mode test helpers: move test-* to t/helper/ subdirectory dir.c: rename str(n)cmp_icase to fspath(n)cmp path.c: add git_common_path() and strbuf_git_common_path() worktree.c: store "id" instead of "git_dir" worktree.c: make find_shared_symref() return struct worktree * worktree.c: mark current worktree path.c: refactor and add worktree_git_path() wt-status.c: split rebase detection out of wt_status_get_state() wt-status.c: make wt_status_check_rebase() work on any worktree worktree.c: avoid referencing to worktrees[i] multiple times worktree.c: check whether branch is rebased in another worktree wt-status.c: split bisect detection out of wt_status_get_state() worktree.c: check whether branch is bisected in another worktree branch: do not rename a branch under bisect or rebase usage.c: move format processing out of die_errno() usage.c: add warning_errno() and error_errno() bisect.c: use die_errno() and warning_errno() builtin/am.c: use error_errno() builtin/branch.c: use error_errno() builtin/fetch.c: use error_errno() builtin/help.c: use warning_errno() builtin/mailsplit.c: use error_errno() builtin/merge-file.c: use error_errno() builtin/pack-objects.c: use die_errno() and warning_errno() builtin/rm.c: use warning_errno() builtin/update-index.c: prefer "err" to "errno" in process_lstat_error builtin/upload-archive.c: use error_errno() builtin/worktree.c: use error_errno() check-racy.c: use error_errno() combine-diff.c: use error_errno() compat/win32/syslog.c: use warning_errno() config.c: use error_errno() connected.c: use error_errno() copy.c: use error_errno() credential-cache--daemon.c: use warning_errno() diff-no-index.c: use error_errno() editor.c: use error_errno() entry.c: use error_errno() fast-import.c: use error_errno() gpg-interface.c: use error_errno() grep.c: use error_errno() http.c: use error_errno() and warning_errno() ident.c: use warning_errno() mailmap.c: use error_errno() reachable.c: use error_errno() rerere.c: use error_errno() and warning_errno() run-command.c: use error_errno() sequencer.c: use error_errno() server-info.c: use error_errno() sha1_file.c: use {error,die,warning}_errno() transport-helper.c: use error_errno() unpack-trees.c: use error_errno() upload-pack.c: use error_errno() vcs-svn: use error_errno() wrapper.c: use warning_errno() wrap-for-bin.sh: regenerate bin-wrappers when switching branches Pranit Bauva (7): t0040-test-parse-options.sh: fix style issues test-parse-options: print quiet as integer t0040-parse-options: improve test coverage t/t7507: improve test coverage parse-options.c: make OPTION_COUNTUP respect "unspecified" values t7507-commit-verbose: improve test coverage by testing number of diffs commit: add a commit.verbose config variable Ralf Thielow (3): completion: add option '--guides' to 'git help' completion: add 'revisions' and 'everyday' to 'git help' rebase-i: print an abbreviated hash when stop for editing Ray Zhang (1): worktree: add: introduce --checkout option Santiago Torres (6): builtin/verify-tag.c: ignore SIGPIPE in gpg-interface t7030: test verifying multiple tags verify-tag: update variable name and type verify-tag: prepare verify_tag for libification verify-tag: move tag verification code to tag.c tag -v: verify directly rather than exec-ing verify-tag Sidhant Sharma (1): builtin/receive-pack.c: use parse_options API Stefan Beller (20): submodule-config: keep update strategy around submodule-config: drop check against NULL fetching submodules: respect `submodule.fetchJobs` config option submodule update: direct error message to stderr run_processes_parallel: treat output of children as byte array run_processes_parallel: rename parameters for the callbacks git submodule update: have a dedicated helper for cloning submodule helper: remove double 'fatal: ' prefix submodule update: expose parallelism to the user clone: allow an explicit argument for parallel submodule clones rebase: decouple --exec from --interactive t3404: cleanup double empty lines between tests submodule: port resolve_relative_url from shell to C submodule: port init from shell to C xdiff: implement empty line chunk heuristic clone: add `--shallow-submodules` flag submodule init: fail gracefully with a missing .gitmodules file submodule--helper update-clone: abort gracefully on missing .gitmodules submodule deinit test: fix broken && chain in subshell submodule init: redirect stdout to stderr Stephen P. Smith (1): wt-status.c: set commitable bit if there is a meaningful merge. Xiaolong Ye (4): patch-ids: make commit_patch_id() a public helper function format-patch: add '--base' option to record base tree info format-patch: introduce --base=auto option format-patch: introduce format.useAutoBase configuration brian m. carlson (6): sha1-name: introduce a get_oid() function test-match-trees: convert to use struct object_id match-trees: convert shift_tree() and shift_tree_by() to use object_id struct name_entry: use struct object_id instead of unsigned char sha1[20] tree-walk: convert tree_entry_extract() to use struct object_id match-trees: convert several leaf functions to use struct object_id Ævar Arnfjörð Bjarmason (4): githooks.txt: improve the intro section githooks.txt: amend dangerous advice about 'update' hook ACL githooks.txt: minor improvements to the grammar & phrasing hooks: allow customizing where the hook directory is Version v2.8.6; changes since v2.8.5: ------------------------------------- Jeff King (4): t5813: add test for hostname starting with dash connect: factor out "looks like command line option" check connect: reject dashed arguments for proxy commands connect: reject paths that look like command line options Junio C Hamano (3): connect: reject ssh hostname that begins with a dash Git 2.7.6 Git 2.8.6 Version v2.8.5; changes since v2.8.4: ------------------------------------- Jeff King (1): shell: disallow repo names beginning with dash Junio C Hamano (5): Git 2.4.12 Git 2.5.6 Git 2.6.7 Git 2.7.5 Git 2.8.5 Version v2.8.4; changes since v2.8.3: ------------------------------------- Alexander Rinass (1): diff: run arguments through precompose_argv Armin Kunaschik (1): t4151: make sure argument to 'test -z' is given Brian Norris (3): Documentation: config: improve word ordering for http.cookieFile http: expand http.cookieFile as a path config: consistently format $variables in monospaced font David Aguilar (2): difftool: initialize variables for readability difftool: handle unmerged files in dir-diff mode Jeff King (3): rebase--interactive: avoid empty list in shell for-loop test-lib: set BASH_XTRACEFD automatically archive-tar: convert snprintf to xsnprintf Johannes Schindelin (3): name-rev: include taggerdate in considering the best name mingw: introduce the 'core.hideDotFiles' setting mingw: remove unnecessary definition Junio C Hamano (9): fsck_commit_buffer(): do not special case the last validation config: describe 'pathname' value type test-lib-functions.sh: remove misleading comment on test_seq test-lib-functions.sh: rewrite test_seq without Perl Documentation: fix linkgit references fsck: detect and warn a commit with embedded NUL Start preparing for 2.8.4 More topics for 2.8.4 Git 2.8.4 Karsten Blees (1): mingw: make isatty() recognize MSYS2's pseudo terminals (/dev/pty*) Keller Fuchs (1): Documentation: clarify signature verification Lars Schneider (1): travis-ci: build documentation Li Peng (1): typofix: assorted typofixes in comments, documentation and messages Nguyễn Thái Ngọc Duy (1): remote.c: specify correct plural form in "commit diverge" message Stefan Beller (3): submodule deinit: require '--all' instead of '.' for all submodules t3513: do not compress backup tar file t6041: do not compress backup tar file Torsten Bögershausen (5): t0027: make commit_chk_wrnNNO() reliable convert: allow core.autocrlf=input and core.eol=crlf t0027: test cases for combined attributes convert.c: ident + core.autocrlf didn't work t5601: Remove trailing space in sed expression Vasco Almeida (12): i18n: index-pack: use plural string instead of normal one i18n: builtin/branch.c: mark option for translation i18n: unpack-trees: mark strings for translation i18n: builtin/rm.c: remove a comma ',' from string i18n: branch: unmark string for translation i18n: branch: move comment for translators i18n: git-parse-remote.sh: mark strings for translation i18n: builtin/pull.c: mark placeholders for translation i18n: builtin/pull.c: split strings marked for translation i18n: remote: add comment for translators Documentation/git-mailinfo: fix typo i18n: unpack-trees: avoid substituting only a verb in sentences Version v2.8.3; changes since v2.8.2: ------------------------------------- Adam Dinwoodie (2): config.mak.uname: Cygwin needs OBJECT_CREATION_USES_RENAMES commit: --amend -m '' silently fails to wipe message Christian Couder (3): builtin/apply: get rid of useless 'name' variable builtin/apply: handle parse_binary() failure builtin/apply: free patch when parse_chunk() fails Eric Sunshine (1): git-format-patch.txt: don't show -s as shorthand for multiple options Eric Wong (4): send-email: more meaningful Message-ID send-email: do not load Data::Dumper pack-objects: warn on split packs disabling bitmaps .mailmap: update to my shorter email address Jeff King (22): setup: document check_repository_format() wrap shared_repository global in get/set accessors lazily load core.sharedrepository check_repository_format_gently: stop using git_config_early config: drop git_config_early setup: refactor repo format reading and verification init: use setup.c's repo version verification setup: unify repository version callbacks setup: drop repository_format_version global verify_repository_format: mark messages for translation branch: fix shortening of non-remote symrefs commit: do not ignore an empty message given by -m '' config: lower-case first word of error strings git_config_set_multivar_in_file: all non-zero returns are errors git_config_set_multivar_in_file: handle "unset" errors t5532: use write_script send-pack: close demux pipe before finishing async process run-command: teach async threads to ignore SIGPIPE send-pack: isolate sigpipe in demuxer thread fetch-pack: isolate sigpipe in demuxer thread t5504: drop sigpipe=ok from push tests remote.c: spell __attribute__ correctly Johannes Schindelin (5): replace --edit: respect core.editor win32mmap: set errno appropriately mmap(win32): avoid copy-on-write when it is unnecessary mmap(win32): avoid expensive fstat() call Windows: only add a no-op pthread_sigmask() when needed Johannes Sixt (1): Windows: add pthread_sigmask() that does nothing Junio C Hamano (10): apply: remove unused call to free() in gitdiff_{old,new}name() submodule--helper: do not borrow absolute_path() result for too long setup.c: do not feed NULL to "%.*s" even with precision 0 http: differentiate socks5:// and socks5h:// t1020: do not overuse printf and use write_script t3404: use write_script send-email: fix grammo in the prompt that asks e-mail recipients Start preparing for 2.8.3 Almost ready for 2.8.3 Git 2.8.3 Kazuki Yamaguchi (10): branch -d: refuse deleting a branch which is currently checked out refs: add a new function set_worktree_head_symref branch -m: update all per-worktree HEADs set_worktree_head_symref(): fix error message imap-send: use HMAC() function provided by OpenSSL imap-send: check NULL return of SSL_CTX_new() imap-send: avoid deprecated TLSv1_method() configure: remove checking for HMAC_CTX_cleanup imap-send: check for NOLOGIN capability only when using LOGIN command imap-send: fix CRAM-MD5 response calculation Lars Schneider (5): travis-ci: update Git-LFS and P4 to the latest version travis-ci: express Linux/OS X dependency versions more clearly git-p4: fix Git LFS pointer parsing t9824: fix wrong reference value Documentation: add setup instructions for Travis CI Luke Diamand (3): git-p4 tests: cd to / before running python git-p4 tests: work with python3 as well as python2 git-p4 tests: time_in_seconds should use $PYTHON_PATH Marios Titas (2): ident: check for useConfigOnly before auto-detection of name/email ident: give "please tell me" message upon useConfigOnly error Matthieu Moy (1): git-multimail: update to release 1.3.0 Nguyễn Thái Ngọc Duy (2): dir.c: remove dead function fnmatch_icase() wrapper.c: delete dead function git_mkstemps() Nikola Forró (1): difftool/mergetool: make the form of yes/no questions consistent Ralf Thielow (1): string_list: use string-list API in unsorted_string_list_lookup() René Nyffenegger (1): Documentation: fix typo 'In such these cases' SZEDER Gábor (4): for-each-ref: fix description of '--contains' in manpage test-lib: simplify '--option=value' parsing t9824: fix broken &&-chain in a subshell t5510: run auto-gc in the foreground Shin Kojima (1): gitweb: apply fallback encoding before highlight Stefan Beller (20): submodule foreach: correct path display in recursive submodules submodule update --init: correct path handling in recursive submodules submodule status: correct path handling in recursive submodules submodule update: align reporting path for custom command execution submodule update: test recursive path reporting from subdirectory t7407: make expectation as clear as possible recursive submodules: test for relative paths submodule--helper: fix potential NULL-dereference submodule--helper clone: create the submodule path just once notes: don't leak memory in git_config_get_notes_strategy abbrev_sha1_in_line: don't leak memory bundle: don't leak an fd in case of early return credential-cache, send_request: close fd when done submodule--helper, module_clone: always operate on absolute paths submodule--helper, module_clone: catch fprintf failure mv: allow moving nested submodules config doc: improve exit code listing config.c: drop local variable submodule-config: don't shadow `cache` t7300: mark test with SANITY Version v2.8.2; changes since v2.8.1: ------------------------------------- Alexander Kuleshov (1): submodule-config: use hashmap_iter_first() Christian Couder (1): Documentation: talk about pager in api-trace.txt David Aguilar (2): mergetool: support delete/delete conflicts mergetool: honor tempfile configuration when resolving delete conflicts Elia Pinto (1): api-trace.txt: fix typo Gabriel Souza Franco (2): fetch-pack: fix object_id of exact sha1 fetch-pack: update the documentation for "<refs>..." arguments Jeff King (12): t1515: add tests for rev-parse out-of-repo helpers rev-parse: let some options run outside repository strbuf_getwholeline: NUL-terminate getdelim buffer on error setup: make startup_info available everywhere setup: set startup_info->have_repository more reliably remote: don't resolve HEAD in non-repository mailmap: do not resolve blobs in a non-repository grep: turn off gitlink detection for --no-index use setup_git_directory() in test-* programs send-email: ignore trailing whitespace in mailrc alias file credential-cache--daemon: clarify "exit" action semantics t/lib-httpd: pass through GIT_CONFIG_NOSYSTEM env Johannes Sixt (1): Windows: shorten code by re-using convert_slashes() John Keeping (3): config: fail if --get-urlmatch finds no value Documentation/git-config: use bulleted list for exit codes Documentation/git-config: fix --get-all description Junio C Hamano (7): index-pack: correct --keep[=<msg>] index-pack: add a helper function to derive .idx/.keep filename merge: fix NULL pointer dereference when merging nothing into void Makefile: fix misdirected redirections Start preparing for 2.8.2 Prepare for 2.8.2 Git 2.8.2 Matthieu Moy (2): lockfile: mark strings for translation lockfile: improve error message when lockfile exists Michael Procter (1): upload-pack: use argv_array for pack_objects Nguyễn Thái Ngọc Duy (2): git-apply.txt: remove a space git-apply.txt: mention the behavior inside a subdir Ori Avtalion (1): Documentation: git diff --check detects conflict markers Pranit Bauva (2): t/t7502 : drop duplicate test api-parse-options.txt: document OPT_CMDMODE() Ramsay Jones (2): xdiff/xprepare: use the XDF_DIFF_ALG() macro to access flag bits xdiff/xprepare: fix a memory leak SZEDER Gábor (1): diffcore: fix iteration order of identical files during rename detection Saurav Sachidanand (1): dir: store EXC_FLAG_* values in unsigned integers Stanislav Kolotinskiy (1): git-send-pack: fix --all option when used with directory Stefan Beller (1): clone tests: rename t57* => t56* Sven Strickroth (3): commit: do not lose SQUASH_MSG contents MSVC: vsnprintf in Visual Studio 2015 doesn't need SNPRINTF_SIZE_CORR any more MSVC: use shipped headers instead of fallback definitions Torsten Bögershausen (1): correct blame for files commited with CRLF Vasco Almeida (4): l10n: fr: fix transcation of "dir" l10n: fr: fix wrongly translated option name l10n: fr: change "id de clé" to match "id-clé" l10n: fr: don't translate "merge" as a parameter Version v2.8.1; changes since v2.8.0: ------------------------------------- Junio C Hamano (1): Git 2.8.1 Matthieu Moy (1): git.spec.in: use README.md, not README Version v2.8.0; changes since v2.8.0-rc4: ----------------------------------------- Alex Henrie (1): l10n: ca.po: update translation Johannes Schindelin (4): config --show-origin: report paths with forward slashes t1300-repo-config: make it resilient to being run via 'sh -x' t1300: fix the new --show-origin tests on Windows mingw: skip some tests in t9115 due to file name issues Junio C Hamano (1): Git 2.8 Lars Schneider (2): Documentation: use ASCII quotation marks in git-p4 Documentation: fix git-p4 AsciiDoc formatting Stefan Beller (1): submodule: fix regression for deinit without submodules Trần Ngọc Quân (1): l10n: vi.po (2530t): Update translation Vasco Almeida (1): l10n: pt_PT: Update and add new translations Version v2.8.0-rc4; changes since v2.8.0-rc3: --------------------------------------------- Alexander Shopov (1): gitk: Update Bulgarian translation (311t) Changwoo Ryu (1): l10n: ko.po: Update Korean translation Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Eric Sunshine (2): git-compat-util: st_add4: work around gcc 4.2.x compiler crash Revert "config.mak.uname: use clang for Mac OS X 10.6" Guillermo S. Romero (1): gitk: Follow themed bgcolor in help dialogs Jean-Noël Avila (3): l10n: fr.po v2.8.0 round 3 gitk: Update French translation (311t) gitk: fr.po: Sync translations with git Junio C Hamano (8): Git 2.4.11 Git 2.5.5 Git 2.6.6 Git 2.7.4 Revert "Merge branch 'jc/exclusion-doc'" Revert "Merge branch 'nd/exclusion-regression-fix'" RelNotes: remove the mention of !reinclusion Git 2.8-rc4 Matthieu Moy (1): Documentation: fix broken linkgit to git-config Peter Krefting (1): l10n: sv.po: Update Swedish translation (2530t0f0u) Ralf Thielow (3): l10n: de.po: translate 22 new messages l10n: de.po: add missing newlines gitk: Update German translation Ray Chen (1): l10n: zh_CN: review for git v2.8.0 l10n round 2 Version v2.8.0-rc3; changes since v2.8.0-rc2: --------------------------------------------- Adam Dinwoodie (1): t9117: test specifying full url to git svn init -T Audric Schiltknecht (1): l10n: fr.po: Correct case in sentence Carlos Martín Nieto (1): Disown ssh+git and git+ssh Changwoo Ryu (2): l10n: ko.po: Update Korean translation l10n: ko: Update Korean translation Christoph Hoopmann (1): l10n: de.po: fix typo Dimitriy Ryazantcev (2): l10n: ru.po: update Russian translation l10n: ru.po: update Russian translation Eric Wong (2): git-svn: shorten glob error message git-svn: fix URL canonicalization during init w/ SVN 1.7+ Jean-Noël Avila (2): l10n: fr.po v2.8.0 round 1 2509t l10n: fr.po v2.8.0 round 2 Jeff King (7): add helpers for detecting size_t overflow tree-diff: catch integer overflow in combine_diff_path allocation http-push: stop using name_path show_object_with_name: simplify by using path_name() list-objects: convert name_path to a strbuf list-objects: drop name_path entirely list-objects: pass full pathname to callbacks Jiang Xin (6): l10n: git.pot: v2.8.0 round 1 (48 new, 16 removed) l10n: zh_CN: for git v2.8.0 l10n round 1 l10n: git.pot: v2.8.0 round 2 (21 new, 1 removed) l10n: zh_CN: for git v2.8.0 l10n round 2 l10n: git.pot: Add one new message for Git 2.8.0 l10n: zh_CN: for git v2.8.0 l10n round 3 Junio C Hamano (4): sane_grep: pass "-a" if grep accepts it rebase-i: clarify "is this commit relevant?" test RelNotes for 2.8.0: typofix Git 2.8-rc3 Michael J Gruber (1): wt-status: allow "ahead " to be picked up by l10n Peter Krefting (2): l10n: sv.po: Fix inconsistent translation of "progress meter" l10n: sv.po: Update Swedish translation (2509t0f0u) Ralf Thielow (5): l10n: TEAMS: update Ralf Thielow's email address l10n: de.po: add space to abbreviation "z. B." l10n: de.po: fix interactive rebase message l10n: de.po: translate "command" as "Befehl" l10n: de.po: translate 48 new messages Trần Ngọc Quân (1): l10n: vi.po (2509t): Updated Vietnamese translation Victor Leschuk (1): git-svn: loosen config globs limitations Version v2.8.0-rc2; changes since v2.8.0-rc1: --------------------------------------------- Jiang Xin (1): http: honor no_http env variable to bypass proxy Junio C Hamano (3): gitignore: document that unignoring a directory unignores everything in it Git 2.7.3 Git 2.8-rc2 Michael J Gruber (1): t5510: do not leave changed cwd Stefan Beller (1): Documentation: reword rebase summary Version v2.8.0-rc1; changes since v2.8.0-rc0: --------------------------------------------- Jeff King (5): t5313: test bounds-checks of corrupted/malicious pack/idx files nth_packed_object_offset: bounds-check extended offset use_pack: handle signed off_t overflow compat/mingw: brown paper bag fix for 50a6c8e t9700: fix test for perl older than 5.14 Johannes Schindelin (1): Mark win32's pthread_exit() as NORETURN Johannes Sixt (1): t0001: fix GIT_* environment variable check under --valgrind Junio C Hamano (1): Git 2.8-rc1 Michael J Gruber (1): t/lib-httpd: load mod_unixd Nguyễn Thái Ngọc Duy (5): sha1_file.c: mark strings for translation builtin/checkout.c: mark strings for translation builtin/clone.c: mark strings for translation ref-filter.c: mark strings for translation trailer.c: mark strings for translation Stefan Beller (1): run-command: do not pass child process data into callbacks Thomas Ackermann (1): documentation: fix some typos Torsten Bögershausen (1): config.mak.uname: use clang for Mac OS X 10.6 Version v2.8.0-rc0; changes since v2.7.6: ----------------------------------------- Alexander Kuleshov (1): format-patch: introduce format.outputDirectory configuration Christian Couder (11): dir: free untracked cache when removing it update-index: use enum for untracked cache options update-index: add --test-untracked-cache update-index: add untracked cache notifications update-index: move 'uc' var declaration dir: add {new,add}_untracked_cache() dir: add remove_untracked_cache() dir: simplify untracked cache "ident" field config: add core.untrackedCache test-dump-untracked-cache: don't modify the untracked cache t7063: add tests for core.untrackedCache Christoph Egger (1): http: implement public key pinning Dan Aloni (1): ident: add user.useConfigOnly boolean for when ident shouldn't be guessed David A. Greene (1): contrib/subtree: Make testing easier David Turner (2): do_compare_entry: use already-computed path unpack-trees: fix accidentally quadratic behavior Edmundo Carmona Antoranz (1): blame: add support for --[no-]progress option Elia Pinto (92): Makefile: add missing phony target contrib/examples/git-commit.sh: use the $( ... ) construct for command substitution contrib/examples/git-fetch.sh: use the $( ... ) construct for command substitution contrib/examples/git-merge.sh: use the $( ... ) construct for command substitution contrib/examples/git-repack.sh: use the $( ... ) construct for command substitution contrib/examples/git-revert.sh: use the $( ... ) construct for command substitution contrib/thunderbird-patch-inline/appp.sh: use the $( ... ) construct for command substitution git-gui/po/glossary/txt-to-pot.sh: use the $( ... ) construct for command substitution t/lib-httpd.sh: use the $( ... ) construct for command substitution test-sha1.sh: use the $( ... ) construct for command substitution unimplemented.sh: use the $( ... ) construct for command substitution t/t1100-commit-tree-options.sh: use the $( ... ) construct for command substitution t/t1401-symbolic-ref.sh: use the $( ... ) construct for command substitution t/t1410-reflog.sh: use the $( ... ) construct for command substitution t/t1511-rev-parse-caret.sh: use the $( ... ) construct for command substitution t/t1512-rev-parse-disambiguation.sh: use the $( ... ) construct for command substitution t/t1700-split-index.sh: use the $( ... ) construct for command substitution t/t2025-worktree-add.sh: use the $( ... ) construct for command substitution t/t2102-update-index-symlinks.sh: use the $( ... ) construct for command substitution t/t3030-merge-recursive.sh: use the $( ... ) construct for command substitution t/t3100-ls-tree-restrict.sh: use the $( ... ) construct for command substitution t/t3101-ls-tree-dirname.sh: use the $( ... ) construct for command substitution t/t3210-pack-refs.sh: use the $( ... ) construct for command substitution t/t3403-rebase-skip.sh: use the $( ... ) construct for command substitution t/t3511-cherry-pick-x.sh: use the $( ... ) construct for command substitution t/t3600-rm.sh: use the $( ... ) construct for command substitution t/t3700-add.sh: use the $( ... ) construct for command substitution t/t5100-mailinfo.sh: use the $( ... ) construct for command substitution t/t5300-pack-object.sh: use the $( ... ) construct for command substitution t/t5301-sliding-window.sh: use the $( ... ) construct for command substitution t/t5302-pack-index.sh: use the $( ... ) construct for command substitution t/t5303-pack-corruption-resilience.sh: use the $( ... ) construct for command substitution t/t5304-prune.sh: use the $( ... ) construct for command substitution t/t5305-include-tag.sh: use the $( ... ) construct for command substitution t/t5500-fetch-pack.sh: use the $( ... ) construct for command substitution t/t5505-remote.sh: use the $( ... ) construct for command substitution t/t5506-remote-groups.sh: use the $( ... ) construct for command substitution t/t5510-fetch.sh: use the $( ... ) construct for command substitution t/t5515-fetch-merge-logic.sh: use the $( ... ) construct for command substitution t/t5516-fetch-push.sh: use the $( ... ) construct for command substitution t/t5517-push-mirror.sh: use the $( ... ) construct for command substitution t/t5522-pull-symlink.sh: use the $( ... ) construct for command substitution t/t5530-upload-pack-error.sh: use the $( ... ) construct for command substitution t/t5532-fetch-proxy.sh: use the $( ... ) construct for command substitution t/t5537-fetch-shallow.sh: use the $( ... ) construct for command substitution t/t5538-push-shallow.sh: use the $( ... ) construct for command substitution t/t5550-http-fetch-dumb.sh: use the $( ... ) construct for command substitution t/t5570-git-daemon.sh: use the $( ... ) construct for command substitution t/t5601-clone.sh: use the $( ... ) construct for command substitution t/t5700-clone-reference.sh: use the $( ... ) construct for command substitution t/t5710-info-alternate.sh: use the $( ... ) construct for command substitution t/t5900-repo-selection.sh: use the $( ... ) construct for command substitution t/t6001-rev-list-graft.sh: use the $( ... ) construct for command substitution t/t6002-rev-list-bisect.sh: use the $( ... ) construct for command substitution t/t6015-rev-list-show-all-parents.sh: use the $( ... ) construct for command substitution t/t6032-merge-large-rename.sh: use the $( ... ) construct for command substitution t/t6132-pathspec-exclude.sh: use the $( ... ) construct for command substitution t/t7001-mv.sh: use the $( ... ) construct for command substitution t/t7003-filter-branch.sh: use the $( ... ) construct for command substitution t/t7004-tag.sh: use the $( ... ) construct for command substitution t/t7006-pager.sh: use the $( ... ) construct for command substitution t/t7103-reset-bare.sh: use the $( ... ) construct for command substitution t/t7406-submodule-update.sh: use the $( ... ) construct for command substitution t/t7408-submodule-reference.sh: use the $( ... ) construct for command substitution t/t7504-commit-msg-hook.sh: use the $( ... ) construct for command substitution t/t7505-prepare-commit-msg-hook.sh: use the $( ... ) construct for command substitution t/t7602-merge-octopus-many.sh: use the $( ... ) construct for command substitution t/t7700-repack.sh: use the $( ... ) construct for command substitution t/t8003-blame-corner-cases.sh: use the $( ... ) construct for command substitution t/t9001-send-email.sh: use the $( ... ) construct for command substitution t9100-git-svn-basic.sh: use the $( ... ) construct for command substitution t9101-git-svn-props.sh: use the $( ... ) construct for command substitution t9104-git-svn-follow-parent.sh: use the $( ... ) construct for command substitution t9105-git-svn-commit-diff.sh: use the $( ... ) construct for command substitution t9107-git-svn-migrate.sh: use the $( ... ) construct for command substitution t9108-git-svn-glob.sh: use the $( ... ) construct for command substitution t9109-git-svn-multi-glob.sh: use the $( ... ) construct for command substitution t9110-git-svn-use-svm-props.sh: use the $( ... ) construct for command substitution t9114-git-svn-dcommit-merge.sh: use the $( ... ) construct for command substitution t9118-git-svn-funky-branch-names.sh: use the $( ... ) construct for command substitution t9119-git-svn-info.sh: use the $( ... ) construct for command substitution t9129-git-svn-i18n-commitencoding.sh: use the $( ... ) construct for command substitution t9130-git-svn-authors-file.sh: use the $( ... ) construct for command substitution t9132-git-svn-broken-symlink.sh: use the $( ... ) construct for command substitution t9137-git-svn-dcommit-clobber-series.sh: use the $( ... ) construct for command substitution t9138-git-svn-authors-prog.sh: use the $( ... ) construct for command substitution t9145-git-svn-master-branch.sh: use the $( ... ) construct for command substitution t9150-svk-mergetickets.sh: use the $( ... ) construct for command substitution t9300-fast-import.sh: use the $( ... ) construct for command substitution t9350-fast-export.sh: use the $( ... ) construct for command substitution t9501-gitweb-standalone-http-status.sh: use the $( ... ) construct for command substitution t9901-git-web--browse.sh: use the $( ... ) construct for command substitution Eric Wong (5): pass transport verbosity down to git_connect connect & http: support -4 and -6 switches for remote operations t5570: add tests for "git {clone,fetch,pull} -v" git-svn: hoist out utf8 prep from t9129 to lib-git-svn tests: remove no-op full-svn-test target Felipe Gonçalves Assis (7): merge-recursive: option to disable renames merge-recursive: more consistent interface merge-strategies.txt: fix typo merge-recursive: find-renames resets threshold t3034: add rename threshold tests t3034: test option to disable renames t3034: test deprecated interface Jacob Keller (1): notes: allow merging from arbitrary references Jeff King (33): pack-revindex: drop hash table pack-revindex: store entries directly in packed_git create_symref: modernize variable names create_symref: use existing ref-lock code create_symref: write reflog while holding lock run-command: don't warn on SIGPIPE deaths checkout,clone: check return value of create_symref lock_ref_sha1_basic: always fill old_oid while holding lock lock_ref_sha1_basic: handle REF_NODEREF with invalid refs shortlog: match both "Author:" and "author" on stdin shortlog: use strbufs to read from stdin shortlog: replace hand-parsing of author with pretty-printer shortlog: optimize "--summary" mode shortlog: optimize out useless "<none>" normalization shortlog: optimize out useless string list shortlog: don't warn on empty author transport: drop support for git-over-rsync give "nbuf" strbuf a more meaningful name checkout-index: simplify "-z" option parsing checkout-index: handle "--no-prefix" option checkout-index: handle "--no-index" option checkout-index: disallow "--no-stage" option apply, ls-files: simplify "-z" parsing fmt_ident: refactor strictness checks test-path-utils: use xsnprintf in favor of strcpy rerere: replace strcpy with xsnprintf http-push: stop using name_path show_object_with_name: simplify by using path_name() list-objects: convert name_path to a strbuf list-objects: drop name_path entirely list-objects: pass full pathname to callbacks git-config: better document default behavior for `--include` ref-filter: use string_list_split over strbuf_split Johannes Schindelin (31): config.mak.uname: support MSys2 config.mak.uname: supporting 64-bit MSys2 pull: allow interactive rebase with --rebase=interactive remote: handle the config setting branch.*.rebase=interactive completion: add missing branch.*.rebase values nedmalloc: allow compiling with MSys2's compiler compat/mingw: support MSys2-based MinGW build compat/winansi: support compiling with MSys2 mingw: avoid redefining S_* constants mingw: avoid warnings when casting HANDLEs to int mingw: squash another warning about a cast mingw: uglify (a, 0) definitions to shut up warnings mingw: let's use gettext with MSYS2 mingw: do not trust MSYS2's MinGW gettext.sh Git.pm: stop assuming that absolute paths start with a slash mingw: prepare the TMPDIR environment variable for shell scripts mingw: let lstat() fail with errno == ENOTDIR when appropriate mingw: fix t5601-clone.sh mingw: accomodate t0060-path-utils for MSYS2 mingw: disable mkfifo-based tests tests: turn off git-daemon tests if FIFOs are not available mingw: skip test in t1508 that fails due to path conversion mingw: fix t9700's assumption about directory separators mingw: work around pwd issues in the tests mingw: mark t9100's test cases with appropriate prereqs mingw: avoid illegal filename in t9118 mingw: handle the missing POSIXPERM prereq in t9124 mingw: skip a test in t9130 that cannot pass on Windows mingw: do not bother to test funny file names gitignore: ignore generated test-fake-ssh executable t5505: 'remote add x y' should work when url.y.insteadOf = x Johannes Sixt (1): t/t5100: no need to use 'echo' command substitutions for globbing Jon Griffiths (3): credential-cache--daemon: refactor check_socket_directory credential-cache--daemon: disallow relative socket path credential-cache--daemon: change to the socket dir on startup Jonathan Nieder (1): submodule.c: write "Fetching submodule <foo>" to stderr Junio C Hamano (35): First batch for post 2.7 cycle strbuf: miniscule style fix strbuf: make strbuf_getline_crlf() global strbuf: introduce strbuf_getline_{lf,nul}() mktree: there are only two possible line terminations check-attr: there are only two possible line terminations check-ignore: there are only two possible line terminations update-index: there are only two possible line terminations checkout-index: there are only two possible line terminations strbuf: give strbuf_getline() to the "most text friendly" variant hash-object: read --stdin-paths with strbuf_getline() revision: read --stdin with strbuf_getline() rev-parse: read parseopt spec with strbuf_getline() ident.c: read /etc/mailname with strbuf_getline() remote.c: read $GIT_DIR/remotes/* with strbuf_getline() clone/sha1_file: read info/alternates with strbuf_getline() transport-helper: read helper response with strbuf_getline() cat-file: read batch stream with strbuf_getline() column: read lines with strbuf_getline() send-pack: read list of refs with strbuf_getline() grep: read -f file with strbuf_getline() test-sha1-array: read command stream with strbuf_getline() Second batch for 2.8 cycle Third batch for 2.8 cycle git: remove an early return from save_env_before_alias() git: protect against unbalanced calls to {save,restore}_env() git: simplify environment save/restore logic Fourth batch for 2.8.cycle Getting closer to 2.7.1 restore_env(): free the saved environment variable once we are done Fifth batch for 2.8 cycle Sixth batch for the 2.8 cycle Seventh batch for the 2.8 cycle Eighth batch for 2.8 Git 2.8-rc0 Karsten Blees (1): mingw: factor out Windows specific environment setup Karthik Nayak (10): ref-filter: bump 'used_atom' and related code to the top ref-filter: introduce struct used_atom ref-filter: introduce parsing functions for each valid atom ref-filter: introduce color_atom_parser() ref-filter: introduce parse_align_position() ref-filter: introduce align_atom_parser() ref-filter: align: introduce long-form syntax ref-filter: introduce remote_ref_atom_parser() ref-filter: introduce contents_atom_parser() ref-filter: introduce objectname_atom_parser() Kazutoshi Satoda (2): git-svn: enable "svn.pathnameencoding" on dcommit git-svn: apply "svn.pathnameencoding" before URL encoding Knut Franke (2): http: allow selection of proxy authentication method http: use credential API to handle proxy authentication Lars Schneider (8): travis-ci: run previously failed tests first, then slowest to fastest travis-ci: explicity use container-based infrastructure convert: treat an empty string for clean/smudge filters as "cat" t: do not hide Git's exit code in tests using 'nul_to_q' rename git_config_from_buf to git_config_from_mem config: add 'origin_type' to config_source struct config: add '--show-origin' option to print the origin of a config value add DEVELOPER makefile knob to check for acknowledged warnings Matthew Kraai (1): Documentation: remove unnecessary backslashes Matthieu Moy (6): README: use markdown syntax README.md: add hyperlinks on filenames README.md: move the link to git-scm.com up README.md: don't call git stupid in the title README.md: move down historical explanation about the name push: remove "push.default is unset" warning message Michael J Gruber (1): t9100: fix breakage when SHELL_PATH is not /bin/sh Mike Hommey (1): notes: allow treeish expressions as notes ref Nguyễn Thái Ngọc Duy (9): git.c: make it clear save_env() is for alias handling only setup.c: re-fix d95138e (setup: set env $GIT_WORK_TREE when .. git.c: make sure we do not leak GIT_* to alias scripts dir.c: fix match_pathname() dir.c: support tracing exclude dir.c: support marking some patterns already matched dir.c: don't exclude whole dir prematurely worktree: fix "add -B" worktree add -B: do the checkout test before update branch Pat Thoyts (1): t0008: avoid absolute path Patrick Steinhardt (2): push: add '--delete' flag to synopsis push: add '-d' as shorthand for '--delete' Rob Mayoff (1): contrib/subtree: unwrap tag refs Romain Picard (1): git-p4.py: add support for filetype change Stefan Beller (7): xread: poll on non blocking fds strbuf: add strbuf_read_once to read without blocking sigchain: add command to pop all common signals run-command: add an asynchronous parallel child processor fetch_populated_submodules: use new parallel job processing submodules: allow parallel fetching, add tests and documentation submodule: try harder to fetch needed sha1 by direct fetching sha1 Thomas Gummerer (11): t7810: correct --no-index test builtin/grep: add grep.fallbackToNoIndex config ls-remote: document --quiet option ls-remote: document --refs option ls-remote: fix synopsis ls-remote: use parse-options api ls-remote: add support for showing symrefs remote: use parse_config_key remote: simplify remote_is_configured() remote: actually check if remote exits remote: use remote_is_configured() for add and rename Tobias Klauser (2): trailer: allow to write to files other than stdout interpret-trailers: add option for in-place editing Torsten Bögershausen (8): ls-files: add eol diagnostics t0027: add tests for get_stream_filter() convert.c: remove unused parameter 'path' convert.c: remove input_crlf_action() convert.c: use text_eol_is_crlf() convert.c: refactor crlf_action convert.c: simplify text_stat convert.c: correct attr_action() Victor Leschuk (3): grep: allow threading even on a single-core machine grep: slight refactoring to the code that disables threading grep: add --threads=<num> option and grep.threads configuration Will Palmer (2): test for '!' handling in rev-parse's named commits object name: introduce '^{/!-<negative pattern>}' notation brian m. carlson (1): http: add option to try authentication without username 마누엘 (1): mingw: try to delete target directory before renaming Version v2.7.6; changes since v2.7.5: ------------------------------------- Jeff King (4): t5813: add test for hostname starting with dash connect: factor out "looks like command line option" check connect: reject dashed arguments for proxy commands connect: reject paths that look like command line options Junio C Hamano (2): connect: reject ssh hostname that begins with a dash Git 2.7.6 Version v2.7.5; changes since v2.7.4: ------------------------------------- Eric Sunshine (1): git-compat-util: st_add4: work around gcc 4.2.x compiler crash Jeff King (2): archive-tar: convert snprintf to xsnprintf shell: disallow repo names beginning with dash Junio C Hamano (4): Git 2.4.12 Git 2.5.6 Git 2.6.7 Git 2.7.5 Matthieu Moy (1): Documentation: fix broken linkgit to git-config Version v2.7.4; changes since v2.7.3: ------------------------------------- Jeff King (7): add helpers for detecting size_t overflow tree-diff: catch integer overflow in combine_diff_path allocation http-push: stop using name_path show_object_with_name: simplify by using path_name() list-objects: convert name_path to a strbuf list-objects: drop name_path entirely list-objects: pass full pathname to callbacks Junio C Hamano (4): Git 2.4.11 Git 2.5.5 Git 2.6.6 Git 2.7.4 Version v2.7.3; changes since v2.7.2: ------------------------------------- Alexander Kuleshov (2): exec_cmd.c: use find_last_dir_sep() for code simplification git.c: simplify stripping extension of a file in handle_builtin() David Turner (1): refs: document transaction semantics Jeff King (37): checkout: reorder check_filename conditional check_filename: tighten dwim-wildcard ambiguity get_sha1: don't die() on bogus search strings reflog_expire_cfg: NUL-terminate pattern field add helpers for detecting size_t overflow tree-diff: catch integer overflow in combine_diff_path allocation diff: clarify textconv interface harden REALLOC_ARRAY and xcalloc against size_t overflow add helpers for allocating flex-array structs argv-array: add detach function convert manual allocations to argv_array convert trivial cases to ALLOC_ARRAY use xmallocz to avoid size arithmetic convert trivial cases to FLEX_ARRAY macros use st_add and st_mult for allocation size computation prepare_{git,shell}_cmd: use argv_array write_untracked_extension: use FLEX_ALLOC helper fast-import: simplify allocation in start_packfile fetch-pack: simplify add_sought_entry test-path-utils: fix normalize_path_copy output buffer size sequencer: simplify memory allocation of get_message git-compat-util: drop mempcpy compat code transport_anonymize_url: use xstrfmt diff_populate_gitlink: use a strbuf convert ewah/bitmap code to use xmalloc ewah: convert to REALLOC_ARRAY, etc merge-one-file: use empty blob for add/add base merge-tree: drop generate_common strategy xdiff: drop XDL_EMIT_COMMON t5313: test bounds-checks of corrupted/malicious pack/idx files nth_packed_object_offset: bounds-check extended offset use_pack: handle signed off_t overflow write_or_die: handle EPIPE in async threads fetch-pack: ignore SIGPIPE in sideband demuxer test_must_fail: report number of unexpected signal t5504: handle expected output from SIGPIPE death compat/mingw: brown paper bag fix for 50a6c8e Johannes Schindelin (1): git config: report when trying to modify a non-existing repo config John Keeping (2): t8005: avoid grep on non-ASCII data t9200: avoid grep on non-ASCII data Junio C Hamano (4): pager: lose a separate argv[] pager: factor out a helper to prepare a child process to run the pager am -i: fix "v"iew Git 2.7.3 Martin Amdisen (1): templates/hooks: fix minor typo in the sample update-hook Matthieu Moy (1): Documentation/git-push: document that 'simple' is the default Michael J Gruber (1): tests: rename work-tree tests to *work-tree* Nguyễn Thái Ngọc Duy (2): rev-parse: take prefix into account in --git-common-dir sha1_file.c: mark strings for translation Patrick Steinhardt (16): config: introduce set_or_die wrappers branch: report errors in tracking branch setup branch: die on config error when unsetting upstream branch: die on config error when editing branch description submodule: die on config error when linking modules submodule--helper: die on config error when cloning module remote: die on config error when setting URL remote: die on config error when setting/adding branches remote: die on config error when manipulating remotes clone: die on config error in cmd_clone init-db: die on config errors when initializing empty repo sequencer: die on config error when saving replay opts compat: die when unable to set core.precomposeunicode config: rename git_config_set to git_config_set_gently config: rename git_config_set_or_die to git_config_set xdiff/xmerge: fix memory leak in xdl_merge Shawn O. Pearce (1): remote-curl: include curl_errorstr on SSL setup failures Stefan Beller (1): submodule helper list: respect correct path prefix Version v2.7.2; changes since v2.7.1: ------------------------------------- Alex Henrie (1): stripspace: call U+0020 a "space" instead of a "blank" Andrew Wheeler (1): push: fix ref status reporting for --force-with-lease Dickson Wong (1): mergetool: reorder vim/gvim buffers in three-way diffs GyuYong Jung (1): git-cvsserver.perl: fix typo Johannes Schindelin (3): merge-file: let conflict markers match end-of-line style of the context merge-file: ensure that conflict sections match eol style test-lib: limit the output of the yes utility Junio C Hamano (2): Start preparing for 2.7.2 Git 2.7.2 Matt McCutchen (1): Documentation/git-clean.txt: don't mention deletion of .git/modules/* Nguyễn Thái Ngọc Duy (5): blame: remove obsolete comment add and use a convenience macro ce_intent_to_add() grep: make it clear i-t-a entries are ignored worktree.c: fix indentation worktree: stop supporting moving worktrees manually SZEDER Gábor (1): completion: fix mis-indentation in _git_stash() Version v2.7.1; changes since v2.7.0: ------------------------------------- Changwoo Ryu (1): l10n: ko.po: Add Korean translation Dave Ware (1): contrib/subtree: fix "subtree split" skipped-merge bug David A. Wheeler (1): Expand documentation describing --signoff Dennis Kaarsemaker (1): reflog-walk: don't segfault on non-commit sha1's in the reflog Eric Wong (3): git-send-email: do not double-escape quotes from mutt for-each-ref: document `creatordate` and `creator` fields git-svn: fix auth parameter handling on SVN 1.9.0+ Jeff King (8): avoid shifting signed integers 31 bits bswap: add NO_UNALIGNED_LOADS define rebase: ignore failures from "gc --auto" filter-branch: resolve $commit^{tree} in no-index case clean: make is_git_repository a public function resolve_gitlink_ref: ignore non-repository paths t6300: use test_atom for some un-modern tests tag: do not show ambiguous tag names as "tags/foo" Johannes Schindelin (11): commit: allow editing the commit message even in shared repos Handle more file writes correctly in shared repos Refactor skipping DOS drive prefixes compat/basename: make basename() conform to POSIX compat/basename.c: provide a dirname() compatibility function t0060: verify that basename() and dirname() work as expected fetch: release pack files before garbage-collecting am: release pack files before garbage-collecting merge: release pack files before garbage-collecting receive-pack: release pack files before garbage-collecting t0060: loosen overly strict expectations Johannes Sixt (1): mingw: avoid linking to the C library's isalpha() John Keeping (1): completion: add missing git-rebase options Junio C Hamano (2): test-lib: clarify and tighten SANITY Git 2.7.1 Lars Vogel (1): git-add doc: do not say working directory when you mean working tree Nguyễn Thái Ngọc Duy (5): Revert "setup: set env $GIT_WORK_TREE when work tree is set, like $GIT_DIR" dir.c: clean the entire struct in clear_exclude_list() Revert "dir.c: don't exclude whole dir prematurely if neg pattern may match" diff-no-index: do not take a redundant prefix argument diff: make -O and --output work in subdirectory Paul Wagland (2): completion: complete show-branch "--date-order" completion: update completion arguments for stash SZEDER Gábor (1): t6050-replace: make failing editor test more robust Sebastian Schuberth (3): docs: clarify that passing --depth to git-clone implies --single-branch docs: say "commits" in the --depth option wording for git-clone docs: clarify that --depth for git-fetch works with newly initialized repos Stephen P. Smith (4): user-manual: remove temporary branch entry from todo list glossary: define the term shallow clone user-manual: add section documenting shallow clones user-manual: add addition gitweb information Thomas Braun (1): completion: complete "diff --word-diff-regex=" Øyvind A. Holm (1): gitweb: squelch "uninitialized value" warning Version v2.7.0; changes since v2.7.0-rc3: ----------------------------------------- Junio C Hamano (2): Git 2.6.5 Git 2.7 Ralf Thielow (2): l10n: de.po: improve some translations l10n: de.po: translate 68 new messages Version v2.7.0-rc3; changes since v2.7.0-rc2: --------------------------------------------- Alex Henrie (2): l10n: ca.po: update translation l10n: ca.po: update translation Alexander Shopov (2): l10n: Updated Bulgarian translation of git (2477t,0f,0u) l10n: Updated Bulgarian translation of git (2477t,0f,0u) Audric Schiltknecht (1): l10n: fr.po: Fix typo Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Jean-Noël Avila (2): l10n: fr v2.7.0 round 1 (2477t) l10n: fr.po v2.7.0 round 2 (2477t) Jeff King (3): revision.c: propagate tag names from pending array symbolic-ref: propagate error code from create_symref() t1401: test reflog creation for git-symbolic-ref Jiang Xin (4): l10n: git.pot: v2.7.0 round 1 (66 new, 29 removed) l10n: zh_CN: for git v2.7.0 l10n round 1 l10n: git.pot: v2.7.0 round 2 (2 new, 2 removed) l10n: zh_CN: for git v2.7.0 l10n round 2 Junio C Hamano (1): Git 2.7-rc3 Luke Diamand (1): git-p4: failing test case for skipping changes with multiple depots Peter Krefting (3): l10n: sv.po: Update Swedish translation (2477t0f0u) l10n: sv: Fix bad translation l10n: sv.po: Update Swedish translation (2477t0f0u) Sam Hocevar (2): git-p4: support multiple depot paths in p4 submit git-p4: reduce number of server queries for fetches Trần Ngọc Quân (1): l10n: vi.po: Updated translation (2477t) Élie Bouttier (1): l10n: fr.po: Fix typo Version v2.7.0-rc2; changes since v2.7.0-rc1: --------------------------------------------- Fabian Ruch (1): rebase -i: remember merge options beyond continue actions Giuseppe Bilotta (2): gitk: Match ttk fonts to gitk fonts gitk: Let .bleft.mid widgets 'breathe' Jeff King (3): ident: make xgetpwuid_self() a static local helper ident: keep a flag for bogus default_email ident: loosen getpwuid error in non-strict mode Johannes Schindelin (1): mingw: emulate write(2) that fails with a EPIPE John Keeping (1): send-email: enable SSL level 1 debug output Junio C Hamano (2): Update release notes to 2.7 Git 2.7-rc2 Mike Crowe (3): push: add recurseSubmodules config option push: test that --recurse-submodules on command line overrides config push: follow the "last one wins" convention for --recurse-submodules Peter Krefting (1): gitk: sv.po: Update Swedish translation (311t) Ralf Thielow (1): push: don't mark options of recurse-submodules for translation SZEDER Gábor (2): completion: remove 'git column' from porcelain commands credential-store: don't pass strerror to die_errno() YOKOTA Hiroshi (16): gitk: Color name update gitk: Re-sync line number in Japanese message catalogue gitk: Update Japanese message catalog gitk: Translate more to Japanese catalog gitk: Translate Japanese catalog gitk: Fix wrong translation gitk: Update Japanese translation gitk: Fix translation around copyright sign gitk: Update Japanese translation gitk: Update fuzzy messages gitk: Change last translator line gitk: Update year gitk: Remove unused line gitk: Improve translation message gitk: Update "Language:" header gitk: Update revision date in Japanese PO file brian m. carlson (3): sha1_file.c: introduce a null_oid constant format-patch: add an option to suppress commit hash format-patch: check that header line has expected format Version v2.7.0-rc1; changes since v2.7.0-rc0: --------------------------------------------- Charles Bailey (1): t3404: fix quoting of redirect for some versions of bash Jeff King (1): ident: fix undefined variable when NO_IPV6 is set Johannes Sixt (1): prune: close directory earlier during loose-object directory traversal Junio C Hamano (4): Prepare for 2.6.5 Update release notes to 2.7 Update draft release notes to 2.6.5 Git 2.7-rc1 Lars Schneider (1): git-p4: add option to keep empty commits SZEDER Gábor (2): Make error message after failing commit_lock_file() less confusing completion: fix completing unstuck email alias arguments Stefan Beller (1): document submodule sync --recursive Stefan Naewe (1): revision.c: fix possible null pointer arithmetic Version v2.7.0-rc0; changes since v2.6.7: ----------------------------------------- Alex Henrie (1): gitk: l10n: Update Catalan translation Alex Riesen (1): clone: allow "--dissociate" without reference Antoine Delaite (1): bisect: add the terms old/new Beat Bolli (1): gitk: Add missing accelerators Ben Boeckel (1): remote: add get-url subcommand Dair Grant (1): git-svn: improve rebase/mkdirs performance David Turner (8): refs: clean up common_list path: optimize common dir checking refs: make refs/bisect/* per-worktree http.c: use CURLOPT_RANGE for range requests copy_msg(): rename to copy_reflog_msg() initdb: make safe_create_dir public files_log_ref_write: new function refs: break out ref conflict checks Dennis Kaarsemaker (1): git-p4: import the ctypes module Dimitriy Ryazantcev (1): gitk: Update Russian translation Edmundo Carmona Antoranz (1): checkout: add --progress option Fabio Porcedda (1): contrib/subtree: remove "push" command from the "todo" file Gabor Bernat (1): filter-branch: add passed/remaining seconds on progress Jacob Keller (2): sendemail: teach git-send-email to dump alias names completion: add support for completing email aliases Jeff King (77): run-command: provide in_async query function pkt-line: show packets in async processes as "sideband" fast-import: switch crash-report date to iso8601 date: make "local" orthogonal to date format show-branch: avoid segfault with --reflog of unborn branch mailsplit: fix FILE* leak in split_maildir archive-tar: fix minor indentation violation fsck: don't fsck alternates for connectivity-only check add xsnprintf helper function add git_path_buf helper function strbuf: make strbuf_complete_line more generic add reentrant variants of sha1_to_hex and find_unique_abbrev fsck: use strbuf to generate alternate directories mailsplit: make PATH_MAX buffers dynamic trace: use strbuf for quote_crnl output progress: store throughput display in a strbuf test-dump-cache-tree: avoid overflow of cache-tree name compat/inet_ntop: fix off-by-one in inet_ntop4 convert trivial sprintf / strcpy calls to xsnprintf archive-tar: use xsnprintf for trivial formatting use xsnprintf for generating git object headers find_short_object_filename: convert sprintf to xsnprintf stop_progress_msg: convert sprintf to xsnprintf compat/hstrerror: convert sprintf to snprintf grep: use xsnprintf to format failure message entry.c: convert strcpy to xsnprintf add_packed_git: convert strcpy into xsnprintf http-push: replace strcat with xsnprintf receive-pack: convert strncpy to xsnprintf replace trivial malloc + sprintf / strcpy calls with xstrfmt config: use xstrfmt in normalize_value fetch: replace static buffer with xstrfmt use strip_suffix and xstrfmt to replace suffix ref-filter: drop sprintf and strcpy calls help: drop prepend function in favor of xstrfmt mailmap: replace strcpy with xstrdup read_branches_file: simplify string handling read_remotes_file: simplify string handling resolve_ref: use strbufs for internal buffers upload-archive: convert sprintf to strbuf remote-ext: simplify git pkt-line generation http-push: use strbuf instead of fwrite_buffer http-walker: store url in a strbuf sha1_get_pack_name: use a strbuf precompose_utf8: drop unused variable probe_utf8_pathname_composition: use internal strbuf init: use strbufs to store paths apply: convert root string to strbuf transport: use strbufs for status table "quickref" strings merge-recursive: convert malloc / strcpy to strbuf enter_repo: convert fixed-size buffers to strbufs remove_leading_path: use a strbuf for internal storage write_loose_object: convert to strbuf diagnose_invalid_index_path: use strbuf to avoid strcpy/strcat fetch-pack: use argv_array for index-pack / unpack-objects http-push: use an argv_array for setup_revisions stat_tracking_info: convert to argv_array daemon: use cld->env_array when re-spawning use sha1_to_hex_r() instead of strcpy drop strcpy in favor of raw sha1_to_hex color: add overflow checks for parsing colors use alloc_ref rather than hand-allocating "struct ref" avoid sprintf and strcpy with flex arrays receive-pack: simplify keep_arg computation help: clean up kfmclient munging prefer memcpy to strcpy color: add color_set helper for copying raw colors notes: document length of fanout path with a constant convert strncpy to memcpy fsck: drop inode-sorting code Makefile: drop D_INO_IN_DIRENT build knob fsck: use for_each_loose_file_in_objdir use strbuf_complete to conditionally append slash name-rev: use strip_suffix to avoid magic numbers http: use off_t to store partial file size filter-branch: skip index read/write when possible blame: fix object casting regression Johannes Schindelin (1): test: facilitate debugging Git executables in tests with gdb Johannes Sixt (9): read_branches_file: plug a FILE* leak compat/mingw.c: remove printf format warning modernize t9300: single-quote placement and indentation modernize t9300: use test_must_fail modernize t9300: use test_must_be_empty modernize t9300: wrap lines after && modernize t9300: use test_when_finished for clean-up modernize t9300: mark here-doc words to ignore tab indentation modernize t9300: move test preparations into test_expect_success John Keeping (11): Documentation/blame-options: don't list date formats Documentation/config: don't list date formats Documentation/git-for-each-ref: don't list date formats Documentation/rev-list: don't list date formats t6300: introduce test_date() helper t6300: add test for "raw" date format date: check for "local" before anything else t6300: make UTC and local dates different t6300: add tests for "-local" date formats send-email: expand path in sendemail.smtpsslcertpath config send-email: die if CA path doesn't exist Juerg Haefliger (1): git-quiltimport: add commandline option --series <file> Junio C Hamano (71): rerere: fix an off-by-one non-bug rerere: handle conflicts with multiple stage #1 entries rerere: plug conflict ID leaks rerere: lift PATH_MAX limitation rerere: write out each record of MERGE_RR in one go rerere: report autoupdated paths only after actually updating them rerere: drop want_sp parameter from is_cmarker() rerere: stop looping unnecessarily rerere: do not leak mmfile[] for a path with multiple stage #1 entries rerere: explain the rerere I/O abstraction rerere: fix benign off-by-one non-bug and clarify code rerere: explain MERGE_RR management helpers rerere: explain the primary codepath rerere: explain "rerere forget" codepath rerere: explain the remainder rerere: refactor "replay" part of do_plain_rerere() rerere: further de-dent do_plain_rerere() rerere: further clarify do_rerere_one_path() rerere: call conflict-ids IDs rerere: use "struct rerere_id" instead of "char *" for conflict ID rerere: un-nest merge() further filter-branch: make report-progress more readable Start cycle toward 2.7 Second batch for 2.7 Third batch for 2.7 Fourth batch for 2.7 Fifth batch for 2.7 mailinfo: remove a no-op call convert_to_utf8(it, "") mailinfo: fold decode_header_bq() into decode_header() mailinfo: fix an off-by-one error in the boundary stack mailinfo: explicitly close file handle to the patch output Sixth batch for 2.7 mailinfo: plug strbuf leak during continuation line handling mailinfo: move handle_boundary() lower mailinfo: move read_one_header_line() closer to its callers mailinfo: move check_header() after the helpers it uses mailinfo: move cleanup_space() before its users mailinfo: move definition of MAX_HDR_PARSED closer to its use mailinfo: get rid of function-local static states mailinfo: do not let handle_body() touch global "line" directly mailinfo: do not let handle_boundary() touch global "line" directly mailinfo: do not let find_boundary() touch global "line" directly mailinfo: move global "line" into mailinfo() function mailinfo: introduce "struct mailinfo" to hold globals mailinfo: move keep_subject & keep_non_patch_bracket to struct mailinfo mailinfo: move global "FILE *fin, *fout" to struct mailinfo mailinfo: move filter/header stage to struct mailinfo mailinfo: move patch_lines to struct mailinfo mailinfo: move add_message_id and message_id to struct mailinfo mailinfo: move use_scissors and use_inbody_headers to struct mailinfo mailinfo: move metainfo_charset to struct mailinfo mailinfo: move check for metainfo_charset to convert_to_utf8() mailinfo: move transfer_encoding to struct mailinfo mailinfo: move charset to struct mailinfo mailinfo: move cmitmsg and patchfile to struct mailinfo mailinfo: move [ps]_hdr_data to struct mailinfo mailinfo: move content/content_top to struct mailinfo mailinfo: handle_commit_msg() shouldn't be called after finding patchbreak mailinfo: keep the parsed log message in a strbuf mailinfo: libify mailinfo: handle charset conversion errors in the caller am: make direct call to mailinfo mailinfo: remove calls to exit() and die() deep in the callchain Seventh batch for 2.7 Eighth batch for 2.7 Ninth batch for 2.7 Tenth batch for 2.7 Eleventh batch for 2.7 RelNotes update for 2.7 Update release notes to 2.7 Git 2.7-rc0 Karthik Nayak (35): t6302: for-each-ref tests for ref-filter APIs tag: libify parse_opt_points_at() ref-filter: implement '--points-at' option for-each-ref: add '--points-at' option ref-filter: add parse_opt_merge_filter() ref-filter: implement '--merged' and '--no-merged' options for-each-ref: add '--merged' and '--no-merged' options parse-option: rename parse_opt_with_commit() parse-options.h: add macros for '--contains' option ref-filter: implement '--contains' option for-each-ref: add '--contains' option ref-filter: move `struct atom_value` to ref-filter.c ref-filter: introduce ref_formatting_state and ref_formatting_stack utf8: add function to align a string into given strbuf ref-filter: introduce handler function for each atom ref-filter: introduce match_atom_name() ref-filter: implement an `align` atom ref-filter: add option to filter out tags, branches and remotes ref-filter: add support for %(contents:lines=X) ref-filter: add support to sort by version ref-filter: add option to match literal pattern tag.c: use 'ref-filter' data structures tag.c: use 'ref-filter' APIs tag.c: implement '--format' option tag.c: implement '--merged' and '--no-merged' options branch: refactor width computation branch: bump get_head_description() to the top branch: roll show_detached HEAD into regular ref_list branch: move 'current' check down to the presentation layer branch: drop non-commit error reporting branch.c: use 'ref-filter' data structures branch.c: use 'ref-filter' APIs branch: add '--points-at' option tag.c: use the correct algorithm for the '--contains' option ref-filter: fallback on alphabetical comparison Lars Schneider (18): git-p4: add config git-p4.pathEncoding git-p4: improve path encoding verbose output git-p4: use replacement character for non UTF-8 characters in paths git-p4: add optional type specifier to gitConfig reader git-p4: add gitConfigInt reader git-p4: return an empty list if a list config has no values git-p4: add file streaming progress in verbose mode git-p4: check free space during streaming git-p4: add support for large file systems git-p4: add Git LFS backend for large file system git-p4: avoid "stat" command in t9815 git-p4-submit-fail git-p4: skip t9819 test case on case insensitive file systems git-p4: retry kill/cleanup operations in tests with timeout git-p4: add p4d timeout in tests git-p4: add trap to kill p4d on test exit implement test_might_fail using a refactored test_must_fail add "ok=sigpipe" to test_must_fail and use it to fix flaky tests Add Travis CI support Lukas Fleischer (4): config.txt: document the semantics of hideRefs with namespaces upload-pack: strip refs before calling ref_is_hidden() hideRefs: add support for matching full refs t5509: add basic tests for hideRefs Matthieu Moy (5): bisect: sanity check on terms bisect: add 'git bisect terms' to view the current terms bisect: allow setting any user-specified in 'git bisect start' strtoul_ui: reject negative values git-multimail: update to release 1.2.0 Max Kirillov (3): blame: test to describe use of blame --reverse --first-parent blame: extract find_single_final blame: allow blame --reverse --first-parent when it makes sense Michael Haggerty (4): pack_if_possible_fn(): use ref_type() instead of is_per_worktree_ref() refname_is_safe(): improve docstring refs/refs-internal.h: new header file refs: split filesystem-based refs code into a new file Michael Rappazzo (5): worktree: add top-level worktree.c worktree: refactor find_linked_symref function worktree: add a function to get worktree details worktree: add details to the worktree struct worktree: add 'list' command Namhyung Kim (1): stash: allow "stash show" diff output configurable Nguyễn Thái Ngọc Duy (3): dir.c: make last_exclude_matching_from_list() run til the end dir.c: don't exclude whole dir prematurely if neg pattern may match mailinfo: fix passing wrong address to git_mailinfo_config Noam Postavsky (1): credential-cache: new option to ignore sighup Ramsay Jones (1): http: fix some printf format warnings René Scharfe (7): parse-options: deduplicate parse_options_usage() calls parse-options: inline parse_options_usage() at its only remaining caller parse-options: allow -h as a short option t1450: add tests for NUL in headers of commits and tags grep: stop using PARSE_OPT_NO_INTERNAL_HELP fsck: treat a NUL in a tag header as an error show-ref: stop using PARSE_OPT_NO_INTERNAL_HELP Ronnie Sahlberg (2): verify_refname_available(): rename function verify_refname_available(): new function Stefan Beller (4): submodule: rewrite `module_list` shell function in C submodule: rewrite `module_name` shell function in C submodule: rewrite `module_clone` shell function in C submodule-config: "goto" removal in parse_config() Takashi Iwai (3): gitk: Update msgid's for menu items with accelerator gitk: Add accelerators to Japanese locale gitk: Add accelerator to German locale Techlive Zheng (7): contrib/subtree: Clean and refactor test code contrib/subtree: Add test for missing subtree contrib/subtree: Add tests for subtree add contrib/subtree: Add merge tests contrib/subtree: Add split tests contrib/subtree: Make each test self-contained contrib/subtree: Handle '--prefix' argument with a slash appended Tobias Klauser (4): credential-cache--daemon: remove unused #include "sigchain.h" diff: remove unused #include "sigchain.h" read-cache: remove unused #include "sigchain.h" shallow: remove unused #include "sigchain.h" Torsten Bögershausen (1): t0027: improve test for not-normalized files Trần Ngọc Quân (1): Updated Vietnamese translation brian m. carlson (12): sha1_file: introduce has_object_file helper. Convert struct ref to use object_id. add_sought_entry_mem: convert to struct object_id parse_fetch: convert to use struct object_id get_remote_heads: convert to struct object_id push_refs_with_export: convert to struct object_id ref_newer: convert to use struct object_id object: introduce get_object_hash macro. Add several uses of get_object_hash. Convert struct object to object_id Remove get_object_hash. remote: convert functions to struct object_id Version v2.6.7; changes since v2.6.6: ------------------------------------- Jeff King (1): shell: disallow repo names beginning with dash Junio C Hamano (3): Git 2.4.12 Git 2.5.6 Git 2.6.7 Version v2.6.6; changes since v2.6.5: ------------------------------------- Jeff King (7): add helpers for detecting size_t overflow tree-diff: catch integer overflow in combine_diff_path allocation http-push: stop using name_path show_object_with_name: simplify by using path_name() list-objects: convert name_path to a strbuf list-objects: drop name_path entirely list-objects: pass full pathname to callbacks Junio C Hamano (3): Git 2.4.11 Git 2.5.5 Git 2.6.6 Version v2.6.5; changes since v2.6.4: ------------------------------------- Alexey Shumkin (2): t7900-subtree: test the "space in a subdirectory name" case contrib/subtree: respect spaces in a repository path Charles Bailey (1): t3404: fix quoting of redirect for some versions of bash Christian Couder (1): Documentation/git-update-index: add missing opts to synopsis David Turner (1): verify_pack: do not ignore return value of verification function Elia Pinto (1): ident.c: add support for IPv6 Jeff King (7): ident: make xgetpwuid_self() a static local helper ident: keep a flag for bogus default_email ident: loosen getpwuid error in non-strict mode ident: fix undefined variable when NO_IPV6 is set revision.c: propagate tag names from pending array symbolic-ref: propagate error code from create_symref() t1401: test reflog creation for git-symbolic-ref Johannes Sixt (1): prune: close directory earlier during loose-object directory traversal John Keeping (6): t7610: don't use test_config in a subshell t5801: don't use test_when_finished in a subshell test-lib-functions: support "test_config -C <dir> ..." t7800: don't use test_config in a subshell test-lib-functions: detect test_when_finished in subshell send-email: enable SSL level 1 debug output Junio C Hamano (3): Prepare for 2.6.5 Update draft release notes to 2.6.5 Git 2.6.5 Lars Schneider (1): git-p4: add option to keep empty commits Nguyễn Thái Ngọc Duy (1): git-check-ref-format.txt: typo, s/avoids/avoid/ René Scharfe (2): use pop_commit() for consuming the first entry of a struct commit_list show-branch: use argv_array for default arguments SZEDER Gábor (3): Make error message after failing commit_lock_file() less confusing completion: remove 'git column' from porcelain commands credential-store: don't pass strerror to die_errno() Stefan Beller (1): document submodule sync --recursive Stefan Naewe (1): revision.c: fix possible null pointer arithmetic Version v2.6.4; changes since v2.6.3: ------------------------------------- Atousa Pahlevan Duprat (2): sha1: provide another level of indirection for the SHA-1 functions sha1: allow limiting the size of the data passed to SHA1_Update() Charles Bailey (1): http: treat config options sslCAPath and sslCAInfo as paths Christian Couder (1): Documentation/git-update-index: add missing opts to synopsys Clemens Buchacher (1): allow hooks to ignore their standard input stream Daniel Knittl-Frank (1): Escape Git's exec path in contrib/rerere-train.sh script David Aguilar (1): difftool: ignore symbolic links in use_wt_file Dennis Kaarsemaker (2): t5813: avoid creating urls that break on cygwin check-ignore: correct documentation about output Doug Kelly (2): t5304: test cleaning pack garbage gc: remove garbage .idx files from pack dir Fredrik Medley (1): rebase-i-exec: Allow space in SHELL_PATH GIRARD Etienne (1): git-p4: clean up after p4 submit failure John Keeping (3): interpret-trailers: allow running outside a repository rebase: support --no-autostash Documentation/git-rebase: fix --no-autostash formatting Junio C Hamano (3): prepare_packed_git(): refactor garbage reporting in pack directory Prepare for 2.6.4 Git 2.6.4 Luke Diamand (3): git-p4: add failing test for submit from detached head git-p4: add option to system() to return subshell status git-p4: work with a detached head Michael J Gruber (1): Documentation/diff: give --word-diff-regex=. example Pat Thoyts (1): remote-http(s): support SOCKS proxies Rainer M. Canavan (1): configure.ac: use $LIBS not $CFLAGS when testing -lpthread René Scharfe (1): wt-status: correct and simplify check for detached HEAD SZEDER Gábor (4): bash prompt: test dirty index and worktree while on an orphan branch bash prompt: remove a redundant 'git diff' option bash prompt: indicate dirty index even on orphan branches filter-branch: deal with object name vs. pathname ambiguity in tree-filter Андрей Рыбак (1): Documentation: make environment variable formatting more consistent Version v2.6.3; changes since v2.6.2: ------------------------------------- David Turner (2): t7063: fix flaky untracked-cache test name-hash: don't reuse cache_entry in dir_entry Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation James McCoy (1): filter-branch: remove multi-line headers in msg filter Jeff King (7): introduce "extensions" form of core.repositoryformatversion introduce "preciousObjects" repository extension t6031: move triple-rename test to t3030 t6031: generalize for recursive and resolve strategies merge: detect delete/modechange conflict add_submodule_odb: initialize alt_odb list earlier merge-file: clamp exit code to maximum 127 Johannes Schindelin (10): t5700: demonstrate a Windows file locking issue with `git clone --dissociate` sha1_file: consolidate code to close a pack's file descriptor gc: demonstrate failure with stale remote HEAD sha1_file.c: add a function to release all packs clone --dissociate: avoid locking pack files pack-objects: do not get distracted by broken symrefs imap-send: only use CURLOPT_LOGIN_OPTIONS if it is actually available Squelch warning about an integer overflow Silence GCC's "cast of pointer to integer of a different size" warning t3404: "rebase -i" gets broken when insn sheet uses CR/LF line endings Junio C Hamano (10): am -3: do not let failed merge from completing the error codepath Documentation/gc: warn against --prune=<now> usage: do not insist that standard input must come from a file Documentation/everyday: match undefline with the text Documentation: match underline with the text Documentation: match undefline with the text in old release notes Documentation: AsciiDoc spells em-dash as double-dashes, not triple add: simplify -u/-A without pathspec rebase-i: work around Windows CRLF line endings Git 2.6.3 Lars Schneider (2): git-p4: add test case for "Translation of file content failed" error git-p4: handle "Translation of file content failed" Luke Diamand (3): git-p4: failing test for ignoring invalid p4 labels git-p4: do not terminate creating tag for unknown commit git-p4: fix P4 label import for unprocessed commits Max Kirillov (3): submodule refactor: use strbuf_git_path_submodule() in add_submodule_odb() path: implement common_dir handling in git_pathdup_submodule() blame: fix option name in error message Nguyễn Thái Ngọc Duy (7): path.c: delete an extra space gc: save log from daemonized gc --auto and print it next time t0002: add test for enter_repo(), non-strict mode enter_repo: avoid duplicating logic, use is_git_directory() instead enter_repo: allow .git files in strict mode clone: allow --local from a linked checkout clone: better error when --reference is a linked checkout Ralf Thielow (1): am, credential-cache: add angle brackets to usage string Ray Donnelly (1): test-path-utils.c: remove incorrect assumption Remi Pommarel (3): Makefile: link libcurl before zlib Makefile: make curl-config path configurable configure.ac: detect ssl need with libcurl René Scharfe (7): t7060: add test for status --branch on a detached HEAD wt-status: exit early using goto in wt_shortstatus_print_tracking() wt-status: avoid building bogus branch name with detached HEAD wt-status: don't skip a magical number of characters blindly wt-status: use skip_prefix() to get rid of magic string length constants run-command: factor out child_process_clear() daemon: plug memory leak Sidhant Sharma (1): worktree: usage: denote <branch> as optional with 'add' Stefan Agner (1): git-send-email.perl: Fixed sending of many/huge changes/patches Tobias Klauser (2): strbuf: make stripspace() part of strbuf stripspace: use parse-options for command-line parsing Waldek Maleska (1): Correct fscanf formatting string for I64u values Xue Fuqiao (2): Documentation: fix header markup user-manual: fix the description of fast-forward Version v2.6.2; changes since v2.6.1: ------------------------------------- Alex Henrie (2): merge: grammofix in please-commit-before-merge message pull: enclose <options> in brackets in the usage string Christian Couder (2): quote: fix broken sq_quote_buf() related comment quote: move comment before sq_quote_buf() Eric N. Vander Weele (1): log: Update log.follow doc and add to config.txt Jacob Keller (1): notes: correct documentation of DWIMery for notes references Jeff King (3): git_connect: clear GIT_* environment for ssh git_connect: clarify conn->use_shell flag blame: handle --first-parent Johannes Schindelin (1): setup: fix "inside work tree" detection on case-insensitive filesystems John Keeping (2): Makefile: fix MAKEFLAGS tests with multiple flags Documentation: fix section header mark-up Junio C Hamano (3): Makefile: allow $(ARFLAGS) specified from the command line fsck: exit with non-zero when problems are found Git 2.6.2 Matthieu Moy (7): Documentation: use 'keyid' consistently, not 'key-id' Documentation/grep: fix documentation of -O Documentation: explain optional arguments better t3203: test 'detached at' after checkout --detach status: don't say 'HEAD detached at HEAD' rebase-i: explicitly accept tab as separator in commands rebase-i: loosen over-eager check_bad_cmd check Michael J Gruber (1): t2026: rename worktree prune test Nguyễn Thái Ngọc Duy (1): ls-remote.txt: delete unsupported option Renee Margaret McConahy (1): am: configure gpg at startup Stephan Beyer (2): t5561: get rid of racy appending to logfile t/perf: make runner work even if Git is not installed Takashi Iwai (1): pager: don't use unsafe functions in signal handlers Tobias Klauser (2): connect: fix typo in result string of prot_name() Documentation/interpret-trailers: Grammar fix Version v2.6.1; changes since v2.6.0: ------------------------------------- Blake Burkhart (2): http: limit redirection to protocol-whitelist http: limit redirection depth Jeff King (6): transport: add a protocol-whitelist environment variable submodule: allow only certain protocols for submodule fetches transport: refactor protocol whitelist code react to errors in xdi_diff xdiff: reject files larger than ~1GB merge-file: enforce MAX_XDIFF_SIZE on incoming files Junio C Hamano (4): Git 2.3.10 Git 2.4.10 Git 2.5.4 Git 2.6.1 Version v2.6.0; changes since v2.6.0-rc3: ----------------------------------------- Junio C Hamano (1): Git 2.6 Version v2.6.0-rc3; changes since v2.6.0-rc2: --------------------------------------------- Alejandro R. Sedeño (1): Makefile: use SHELL_PATH when running generate-cmdlist.sh Alex Henrie (2): show-ref: place angle brackets around variables in usage string l10n: ca.po: update translation Andreas Schwab (1): Documentation/config: fix formatting for branch.*.rebase and pull.rebase Brian Norris (1): send-email: fix uninitialized var warning for $smtp_auth Edward Thomson (1): poll: honor the timeout on Win32 Jean-Noël Avila (2): l10n: fr.po v2.6.0 round 1 (2441t) l10n: fr.po v2.6.0 round 2 (2440t) Jiang Xin (6): l10n: TEAMS: stash inactive zh_CN team members l10n: zh_CN: Add translations for Git glossary l10n: git.pot: v2.6.0 round 1 (123 new, 41 removed) l10n: zh_CN: for git v2.6.0 l10n round 1 l10n: git.pot: v2.6.0 round 2 (3 improvements) l10n: zh_CN: for git v2.6.0 l10n round 2 Johannes Schindelin (1): am --skip/--abort: merge HEAD/ORIG_HEAD tree into index Junio C Hamano (4): Update RelNotes to 2.6 to describe leftover bits since -rc2 Git 2.5.3 Update RelNotes to 2.6 Git 2.6-rc3 Peter Krefting (1): l10n: sv.po: Update Swedish translation (2441t0f0u) Philip Oakley (1): doc: show usage of branch description Phillip Sz (1): l10n: de.po: better language for one string Ralf Thielow (4): pull: don't mark values for option "rebase" for translation tag, update-ref: improve description of option "create-reflog" l10n: de.po: translate 123 new messages l10n: de.po: translate 2 messages Ramsay Jones (1): mailmap: update my entry with new email address Ray Chen (10): l10n: zh_CN: Update Translation: "tag object" l10n: zh_CN: Unify Translation of "packfile" l10n: zh_CN: Update Translation of "tag" l10n: zh_CN: Add Surrounding Spaces l10n: zh_CN: Update Git Glossary: SHA-1 l10n: zh_CN: Update Git Glossary: "dumb", "smart" l10n: zh_CN: Update Git Glossary: tag l10n: zh_CN: Update Git Glossary: fork l10n: zh_CN: Update Git Glossary: pickaxe l10n: zh_CN: Update Git Glossary: "commit message" Trần Ngọc Quân (2): l10n: Updated Vietnamese translation (2441t) l10n: Update and review Vietnamese translation (2440t) Version v2.6.0-rc2; changes since v2.6.0-rc1: --------------------------------------------- Alex Henrie (2): gitk: Fix bad English grammar "Matches none Commit Info" gitk: Remove mc parameter from proc show_error Alexander Shopov (2): gitk: Update Bulgarian translation (304t) gitk: Update Bulgarian translation (307t) Beat Bolli (2): gitk: Add a "Copy commit summary" command gitk: Adjust the menu line numbers to compensate for the new entry Giuseppe Bilotta (2): apply: comment grammar fix gitk: Accelerators for the main menu Ismael Luceno (1): gitk: Make it easier to go quickly to a specific commit Jeff King (5): pack-protocol: clarify LF-handling in PKT-LINE() verify_absent: allow filenames longer than PATH_MAX notes: use a strbuf in add_non_note read_info_alternates: handle paths larger than PATH_MAX show-branch: use a strbuf for reflog descriptions Junio C Hamano (6): Git 2.2.3 Git 2.3.9 Git 2.4.9 Git 2.5.2 Release Notes: typofix Git 2.6-rc2 Marc Branchaud (3): gitk: Rearrange window title to be more conventional gitk: Show the current view's name in the window title gitk: Use translated version of "Command line" in getcommitlines Matthieu Prat (1): t7060: actually test "git diff-index --cached -M" Michael J Gruber (1): git-svn: parse authors file more leniently Michael Rappazzo (1): gitk: Add mouse right-click options to copy path and branch name Paul Mackerras (3): gitk: Replace catch {unset foo} with unset -nocomplain foo gitk: Fix error when changing colors after closing "List references" window gitk: Update .po files Peter Krefting (1): gitk: sv.po: Update Swedish translation (305t0f0u) Version v2.6.0-rc1; changes since v2.6.0-rc0: --------------------------------------------- Jeff King (1): rerere: release lockfile in non-writing functions Junio C Hamano (2): am: match --signoff to the original scripted version Git 2.6-rc1 Version v2.6.0-rc0; changes since v2.5.6: ----------------------------------------- Alex Henrie (3): reflog: add missing single quote to error message pack-objects: place angle brackets around placeholders in usage strings read-tree: replace bracket set with parentheses to clarify usage Antoine Delaite (3): bisect: correction of typo bisect: replace hardcoded "bad|good" by variables bisect: simplify the addition of new bisect terms Brian Degenhardt (1): unpack-trees: populate cache-tree on successful merge Charles Bailey (2): test-parse-options: update to handle negative ints parse-options: move unsigned long option parsing out of pack-objects.c Dave Borowitz (9): Documentation/git-push.txt: document when --signed may fail Documentation/git-send-pack.txt: wrap long synopsis line Documentation/git-send-pack.txt: document --signed gitremote-helpers.txt: document pushcert option transport: remove git_transport_options.push_cert config.c: rename git_config_maybe_bool_text and export it as git_parse_maybe_bool builtin/send-pack.c: use parse_options API push: support signing pushes iff the server supports it push: add a config option push.gpgSign for default signed pushes David Turner (18): log: add "log.follow" configuration variable refs.c: add err arguments to reflog functions refs: break out check for reflog autocreation refs: new public ref function: safe_create_reflog git-reflog: add exists command refs: add REF_FORCE_CREATE_REFLOG flag update-ref and tag: add --create-reflog arg git-stash: use update-ref --create-reflog instead of creating files t/t7509: remove unnecessary manipulation of reflog tests: remove some direct access to .git/logs refs: introduce pseudoref and per-worktree ref concepts refs: add ref_type function pseudorefs: create and use pseudoref update and delete functions bisect: use update_ref sequencer: replace write_cherry_pick_head with update_ref worktrees: add find_shared_symref notes: handle multiple worktrees pseudoref: check return values from read_ref() Elia Pinto (1): http: add support for specifying the SSL version Eric Sunshine (25): config: rename "gc.pruneWorktreesExpire" to "gc.worktreePruneExpire" checkout: avoid resolving HEAD unnecessarily checkout: name check_linked_checkouts() more meaningfully checkout: improve die_if_checked_out() robustness checkout: die_if_checked_out: simplify strbuf management checkout: generalize die_if_checked_out() branch name argument checkout: check_linked_checkout: improve "already checked out" aesthetic checkout: check_linked_checkout: simplify symref parsing checkout: teach check_linked_checkout() about symbolic link HEAD branch: publish die_if_checked_out() worktree: improve worktree setup message worktree: simplify new branch (-b/-B) option checking worktree: introduce options container worktree: make --detach mutually exclusive with -b/-B worktree: add: suppress auto-vivication with --detach and no <branch> worktree: make branch creation distinct from worktree population worktree: elucidate environment variables intended for child processes worktree: add_worktree: construct worktree-population command locally worktree: detect branch-name/detached and error conditions locally worktree: make setup of new HEAD distinct from worktree population worktree: avoid resolving HEAD unnecessarily worktree: populate via "git reset --hard" rather than "git checkout" checkout: drop intimate knowledge of newly created worktree Documentation/git-worktree: fix broken 'linkgit' invocation Documentation/config: mention "now" and "never" for 'expire' settings Erik Elfström (5): setup: add gentle version of read_gitfile setup: sanity check file size in read_gitfile_gently t7300: add tests to document behavior of clean and nested git p7300: add performance tests for clean clean: improve performance when removing lots of directories Galan Rémi (3): git-rebase -i: add command "drop" to remove a commit git rebase -i: warn about removed commits git rebase -i: add static check for commands and SHA-1 Guillaume Pagès (4): status: factor two rebase-related messages together status: differentiate interactive from non-interactive rebases status: give more information during rebase -i status: add new tests for status during rebase -i Heiko Voigt (4): submodule: implement a config API for lookup of .gitmodules values submodule: extract functions for config set and lookup submodule: use new config API for worktree configurations submodule: allow erroneous values for the fetchRecurseSubmodules option Jacob Keller (8): refs: cleanup comments regarding check_refname_component() refs: loosen restriction on wildcard "*" refspecs notes: document cat_sort_uniq rewriteMode notes: extract enum notes_merge_strategy to notes-utils.h notes: extract parse_notes_merge_strategy to notes-utils notes: add tests for --commit/--abort/--strategy exclusivity notes: add notes.mergeStrategy option to select default strategy notes: teach git-notes about notes.<name>.mergeStrategy option Jan Viktorin (1): send-email: provide whitelist of SMTP AUTH mechanisms Jeff King (36): pkt-line: simplify starts_with checks in packet tracing pkt-line: tighten sideband PACK check when tracing pkt-line: support tracing verbatim pack contents cat-file: minor style fix in options list cat-file: move batch_options definition to top of file cat-file: add --buffer option cat-file: stop returning value from batch_one_object cat-file: split batch_one_object into two stages cat-file: add --batch-all-objects option read_gitfile_gently: fix use-after-free cat-file: sort and de-dup output of --batch-all-objects show-branch: use DATE_RELATIVE instead of magic number convert "enum date_mode" into a struct introduce "format" date-mode strbuf: make strbuf_addftime more robust docs/config.txt: reorder hideRefs config refs: support negative transfer.hideRefs cache.h: clarify documentation for git_path, et al cache.h: complete set of git_path_submodule helpers t5700: modernize style add_to_alternates_file: don't add duplicate entries prefer git_pathdup to git_path in some possibly-dangerous cases prefer mkpathdup to mkpath in assignments remote.c: drop extraneous local variable from migrate_file refs.c: remove extra git_path calls from read_loose_refs path.c: drop git_path_submodule refs.c: simplify strbufs in reflog setup and writing refs.c: avoid repeated git_path calls in rename_tmp_log refs.c: avoid git_path assignment in lock_ref_sha1_basic refs.c: remove_empty_directories can take a strbuf find_hook: keep our own static buffer get_repo_path: refactor path-allocation memoize common git-path "constant" files format_config: don't init strbuf format_config: simplify buffer handling get_urlmatch: avoid useless strbuf write Jiang Xin (1): i18n: am: fix typo in description of -b option Johannes Schindelin (19): fsck: introduce fsck options fsck: introduce identifiers for fsck messages fsck: provide a function to parse fsck message IDs fsck: offer a function to demote fsck errors to warnings fsck (receive-pack): allow demoting errors to warnings fsck: report the ID of the error/warning fsck: make fsck_ident() warn-friendly fsck: make fsck_commit() warn-friendly fsck: handle multiple authors in commits specially fsck: make fsck_tag() warn-friendly fsck: add a simple test for receive.fsck.<msg-id> fsck: disallow demoting grave fsck errors to warnings fsck: optionally ignore specific fsck issues completely fsck: allow upgrading fsck warnings to errors fsck: document the new receive.fsck.<msg-id> options fsck: support demoting errors to warnings fsck: introduce `git fsck --connectivity-only` fsck: git receive-pack: support excluding objects from fsck'ing fsck: support ignoring objects in `git fsck` via fsck.skiplist Johannes Sixt (1): t7300-clean: require POSIXPERM for chmod 0 test Junio C Hamano (21): commit-slab: introduce slabname##_peek() function First batch for 2.6 sha1_file.c: rename move_temp_to_file() to finalize_object_file() Second batch for 2.6 Third batch for 2.6 Fourth batch for 2.6 log: rename "tweak" helpers log: when --cc is given, default to -p unless told otherwise log: show merge commit when --cc is given builtin/am: introduce write_state_*() helper functions builtin/am: make sure state files are text write_file(): drop "fatal" parameter write_file_v(): do not leave incomplete line at the end write_file(): drop caller-supplied LF from calls to create a one-liner file builtin/log.c: minor reformat Fifth batch for 2.6 Sixth batch for 2.6 Seventh batch for 2.6 Eighth batch for 2.6 Ninth batch for 2.6 Git 2.6-rc0 Karsten Blees (1): Documentation/i18n.txt: clarify character encoding support Karthik Nayak (11): for-each-ref: extract helper functions out of grab_single_ref() for-each-ref: clean up code for-each-ref: rename 'refinfo' to 'ref_array_item' for-each-ref: introduce new structures for better organisation for-each-ref: introduce 'ref_array_clear()' for-each-ref: rename some functions and make them public for-each-ref: rename variables called sort to sorting ref-filter: add 'ref-filter.h' ref-filter: move code from 'for-each-ref' for-each-ref: introduce filter_refs() ref-filter: make 'ref_array_item' use a FLEX_ARRAY for refname Kevin Daudt (1): pull: allow dirty tree when rebase.autostash enabled Lars Schneider (1): git-p4: honor core.ignorecase when using P4 client specs Matthieu Moy (2): Documentation/bisect: move getting help section to the end bisect: don't mix option parsing and non-trivial code Michael Haggerty (41): delete_ref(): move declaration to refs.h remove_branches(): remove temporary delete_ref(): handle special case more explicitly delete_refs(): new function for the refs API delete_refs(): make error message more generic delete_refs(): bail early if the packed-refs file cannot be rewritten prune_remote(): use delete_refs() prune_refs(): use delete_refs() repack_without_refs(): make function private initial_ref_transaction_commit(): function for initial ref creation refs: remove some functions from the module's public interface initial_ref_transaction_commit(): check for duplicate refs initial_ref_transaction_commit(): check for ref D/F conflicts refs: move the remaining ref module declarations to refs.h refs.h: add some parameter names to function declarations check_branch_commit(): make first parameter const update_ref(): don't read old reference value before delete cmd_update_ref(): make logic more straightforward delete_ref(): use the usual convention for old_sha1 Documentation/bisect: revise overall content fast-import: add a get-mark command Documentation/git-worktree: consistently use term "linked working tree" Documentation/git-worktree: fix incorrect reference to file "locked" Documentation/config: fix stale "git prune --worktree" reference Documentation/git-worktree: wordsmith worktree-related manpages lockfile: move documentation to lockfile.h and lockfile.c create_bundle(): duplicate file descriptor to avoid closing it twice lockfile: add accessors get_lock_file_fd() and get_lock_file_fp() lockfile: add accessor get_lock_file_path() commit_lock_file(): use get_locked_file_path() tempfile: a new module for handling temporary files prepare_tempfile_object(): new function, extracted from create_tempfile() tempfile: add several functions for creating temporary files register_tempfile(): new function to handle an existing temporary file write_shared_index(): use tempfile module setup_temporary_shallow(): use tempfile module diff: use tempfile module lock_repo_for_gc(): compute the path to "gc.pid" only once gc: use tempfile module to handle gc.pid file credential-cache--daemon: delete socket from main() credential-cache--daemon: use tempfile module Michael Rappazzo (1): git-rebase--interactive.sh: add config option for custom instruction format Mike Hommey (1): Allow to control where the replace refs are looked for Patrick Steinhardt (4): Documentation/git-worktree: fix duplicated 'from' clone: do not include authentication data in guessed dir clone: do not use port number as dir name clone: abort if no dir name could be guessed Paul Tan (85): t4150: test applying StGit patch am: teach StGit patch parser how to read from stdin t4150: test applying StGit series am: use gmtime() to parse mercurial patch date am: teach mercurial patch parser how to read from stdin parse-options-cb: implement parse_opt_passthru() parse-options-cb: implement parse_opt_passthru_argv() argv-array: implement argv_array_pushv() pull: implement skeletal builtin pull pull: implement fetch + merge pull: pass verbosity, --progress flags to fetch and merge pull: pass git-merge's options to git-merge pull: pass git-fetch's options to git-fetch pull: error on no merge candidates pull: support pull.ff config pull: check if in unresolved merge state pull: fast-forward working tree if head is updated pull: implement pulling into an unborn branch pull: set reflog message pull: teach git pull about --rebase pull: configure --rebase via branch.<name>.rebase or pull.rebase pull --rebase: exit early when the working directory is dirty pull --rebase: error on no merge candidate cases pull: remove redirection to git-pull.sh t4150: am.messageid really adds the message id t4150: am fails if index is dirty t4151: am --abort will keep dirty index intact t4150: am refuses patches when paused t4150: am --resolved fails if index has no changes t4150: am --resolved fails if index has unmerged entries t4150: am with applypatch-msg hook t4150: am with pre-applypatch hook t4150: am with post-applypatch hook t4150: tests for am --[no-]scissors t3418: non-interactive rebase --continue with rerere enabled t3901: test git-am encoding conversion wrapper: implement xopen() wrapper: implement xfopen() builtin-am: implement skeletal builtin am builtin-am: implement patch queue mechanism builtin-am: split out mbox/maildir patches with git-mailsplit builtin-am: auto-detect mbox patches builtin-am: extract patch and commit info with git-mailinfo builtin-am: apply patch with git-apply builtin-am: implement committing applied patch builtin-am: refuse to apply patches if index is dirty builtin-am: implement --resolved/--continue builtin-am: don't parse mail when resuming builtin-am: implement --skip builtin-am: implement --abort builtin-am: reject patches when there's a session in progress builtin-am: implement -q/--quiet builtin-am: exit with user friendly message on failure builtin-am: implement -s/--signoff cache-tree: introduce write_index_as_tree() builtin-am: implement --3way builtin-am: implement --rebasing mode builtin-am: bypass git-mailinfo when --rebasing builtin-am: handle stray state directory builtin-am: implement -u/--utf8 builtin-am: implement -k/--keep, --keep-non-patch builtin-am: implement --[no-]message-id, am.messageid builtin-am: support --keep-cr, am.keepcr builtin-am: implement --[no-]scissors builtin-am: pass git-apply's options to git-apply builtin-am: implement --ignore-date builtin-am: implement --committer-date-is-author-date builtin-am: implement -S/--gpg-sign, commit.gpgsign builtin-am: invoke post-rewrite hook builtin-am: support automatic notes copying builtin-am: invoke applypatch-msg hook builtin-am: invoke pre-applypatch hook builtin-am: invoke post-applypatch hook builtin-am: rerere support builtin-am: support and auto-detect StGit patches builtin-am: support and auto-detect StGit series files builtin-am: support and auto-detect mercurial patches builtin-am: implement -i/--interactive builtin-am: implement legacy -b/--binary option builtin-am: check for valid committer ident builtin-am: remove redirection to git-am.sh test_terminal: redirect child process' stdin to a pty am: let command-line options override saved options am: let --signoff override --no-signoff am --skip/--abort: merge HEAD/ORIG_HEAD tree into index Ralf Thielow (1): lockfile: remove function "hold_lock_file_for_append" Remi Lespinet (11): t9001-send-email: move script creation in a setup test send-email: allow aliases in patch header and command script outputs t9001-send-email: refactor header variable fields replacement send-email: refactor address list process send-email: allow use of aliases in the From field of --compose mode send-email: minor code refactoring send-email: reduce dependencies impact on parse_address_line send-email: consider quote as delimiter instead of character send-email: allow multiple emails using --cc, --to and --bcc send-email: suppress meaningless whitespaces in from field git-am: add am.threeWay config variable SZEDER Gábor (6): bash prompt: test untracked files status indicator with untracked dirs bash prompt: faster untracked status indicator with untracked directories config: add '--name-only' option to list only variable names completion: list variable names reliably with 'git config --name-only' config: restructure format_config() for better control flow describe --contains: default to HEAD when no commit-ish is given Stefan Beller (1): read-cache: fix indentation in read_index_from Thomas Braun (1): completion: offer '--edit-todo' during interactive rebase Zoë Blade (1): userdiff: add support for Fountain documents brian m. carlson (7): verify-tag: add tests verify-tag: share code with verify-commit verify-commit: add test for exit status on untrusted signature gpg: centralize signature check gpg: centralize printing signature buffers verify-commit: add option to print raw gpg status information verify-tag: add option to print raw gpg status information Version v2.5.6; changes since v2.5.5: ------------------------------------- Jeff King (1): shell: disallow repo names beginning with dash Junio C Hamano (2): Git 2.4.12 Git 2.5.6 Version v2.5.5; changes since v2.5.4: ------------------------------------- Jeff King (7): add helpers for detecting size_t overflow tree-diff: catch integer overflow in combine_diff_path allocation http-push: stop using name_path show_object_with_name: simplify by using path_name() list-objects: convert name_path to a strbuf list-objects: drop name_path entirely list-objects: pass full pathname to callbacks Junio C Hamano (2): Git 2.4.11 Git 2.5.5 Version v2.5.4; changes since v2.5.3: ------------------------------------- Blake Burkhart (2): http: limit redirection to protocol-whitelist http: limit redirection depth Jeff King (6): transport: add a protocol-whitelist environment variable submodule: allow only certain protocols for submodule fetches transport: refactor protocol whitelist code react to errors in xdi_diff xdiff: reject files larger than ~1GB merge-file: enforce MAX_XDIFF_SIZE on incoming files Junio C Hamano (3): Git 2.3.10 Git 2.4.10 Git 2.5.4 Version v2.5.3; changes since v2.5.2: ------------------------------------- Alex Henrie (1): git-submodule: remove extraneous space from error message Brett Randall (1): git-svn doc: mention "svn-remote.<name>.include-paths" David Turner (2): untracked-cache: support sparse checkout untracked-cache: fix subdirectory handling Johannes Schindelin (1): am --skip/--abort: merge HEAD/ORIG_HEAD tree into index Junio C Hamano (1): Git 2.5.3 Nguyễn Thái Ngọc Duy (2): t7063: use --force-untracked-cache to speed up a bit untracked cache: fix entry invalidation Version v2.5.2; changes since v2.5.1: ------------------------------------- Andreas Schwab (1): Documentation/config: fix inconsistent label on gc.*.reflogExpireUnreachable Christian Couder (3): trailer: ignore first line of message trailer: retitle a test and correct an in-comment message trailer: support multiline title Clemens Buchacher (1): git_open_noatime: return with errno=0 on success David Turner (1): commit: don't rewrite shared index unnecessarily Eric Sunshine (1): generate-cmdlist: re-implement as shell script Erik Elfström (1): t7300: fix broken && chains Jeff King (9): vreportf: report to arbitrary filehandles vreportf: avoid intermediate buffer config: silence warnings for command names with invalid keys rev-list: make it obvious that we do not support notes log: diagnose empty HEAD more clearly verify_absent: allow filenames longer than PATH_MAX notes: use a strbuf in add_non_note read_info_alternates: handle paths larger than PATH_MAX show-branch: use a strbuf for reflog descriptions Jim Hill (1): strbuf_read(): skip unnecessary strbuf_grow() at eof Johannes Sixt (1): t2019: skip test requiring '*' in a file name non Windows Junio C Hamano (5): ps_matched: xcalloc() takes nmemb and then element size Git 2.2.3 Git 2.3.9 Git 2.4.9 Git 2.5.2 Michael Haggerty (4): get_remote_group(): handle remotes with single-character names get_remote_group(): rename local variable "space" to "wordlen" get_remote_group(): eliminate superfluous call to strcspn() get_remote_group(): use skip_prefix() Nguyễn Thái Ngọc Duy (1): setup: update the right file in multiple checkouts Patrick Steinhardt (2): tests: fix broken && chains in t1509-root-worktree tests: fix cleanup after tests in t1509-root-worktree Philip Oakley (1): po/README: Update directions for l10n contributors René Scharfe (3): t5004: test ZIP archives with many entries archive-zip: use a local variable to store the creator version archive-zip: support more than 65535 entries SZEDER Gábor (2): t3020: fix typo in test description wt-status: move #include "pathspec.h" to the header Sven Strickroth (1): config: close config file handle in case of error Version v2.5.1; changes since v2.5.0: ------------------------------------- Charles Bailey (1): untracked: fix detection of uname(2) failure David Aguilar (1): contrib/subtree: ignore log.date configuration David Turner (1): unpack-trees: don't update files with CE_WT_REMOVE set Eric Sunshine (5): Documentation/git: drop outdated Cogito reference Documentation/git-tools: improve discoverability of Git wiki Documentation/git-tools: fix item text formatting Documentation/git-tools: drop references to defunct tools Documentation/git-tools: retire manually-maintained list Ilya Bobyr (1): rev-parse --parseopt: allow [*=?!] in argument hints Jeff King (4): test-lib: turn off "-x" tracing during chain-lint check test-lib: disable trace when test is not verbose clone: add tests for output directory clone: use computed length in guess_dir_name Jiang Xin (1): receive-pack: crash when checking with non-exist HEAD Jose F. Morales (1): Mingw: verify both ends of the pipe () call Junio C Hamano (5): builtin/send-pack.c: respect user.signingkey Git 2.4.8 Start preparing for 2.5.1 pull: pass upload_pack only when it was given Git 2.5.1 Karthik Nayak (1): Documentation/tag: remove double occurance of "<pattern>" Matthieu Moy (1): pull.sh: quote $upload_pack when passing it to git-fetch Mike Hommey (1): fast-import: do less work when given "from" matches current branch head Nguyễn Thái Ngọc Duy (1): setup: set env $GIT_WORK_TREE when work tree is set, like $GIT_DIR Simon A. Eugster (1): checkout: document subtlety around --ours/--theirs Stefan Beller (3): parse-options: align curly braces for all options add: remove dead code transport-helper: die on errors reading refs. Thomas Ackermann (1): typofix for index-format.txt Version v2.5.0; changes since v2.5.0-rc3: ----------------------------------------- Junio C Hamano (4): Revert "git-am: add am.threeWay config variable" RelNotes: am.threeWay does not exist (yet) Git 2.4.7 Git 2.5 Version v2.5.0-rc3; changes since v2.5.0-rc2: --------------------------------------------- Alex Henrie (2): l10n: ca.po: update translation l10n: ca.po: update translation Alexander Shopov (2): l10n: Updated Bulgarian translation of git (2355t,0f,0u) l10n: Updated Bulgarian translation of git (2359t,0f,0u) Dimitriy Ryazantcev (1): l10n: ru.po: update Russian translation Eric Sunshine (2): Documentation/git-worktree: fix stale "git checkout --to" references Documentation/git: fix stale "MULTIPLE CHECKOUT MODE" reference Jean-Noël Avila (2): l10n: fr.po v2.5.0-rc0 (2355t) l10n: fr v2.5.0 round 2 (2359t) Jiang Xin (4): l10n: git.pot: v2.5.0 round 1 (65 new, 15 removed) l10n: zh_CN: for git v2.5.0 l10n round 1 l10n: git.pot: v2.5.0 round 2 (9 new, 5 removed) l10n: zh_CN: for git v2.5.0 l10n round 2 Junio C Hamano (3): Git 2.4.6 worktree: caution that this is still experimental Git 2.5.0-rc3 Peter Krefting (2): l10n: sv.po: Update Swedish translation (2355t0f0u) l10n: sv.po: Update Swedish translation (2359t0f0u) Ralf Thielow (4): l10n: de.po: fix translation of "head nodes" l10n: de.po: translate "index" as "Index" l10n: de.po: translate 65 new messages l10n: de.po: translate 9 new messages René Scharfe (1): diff: parse ws-error-highlight option more strictly Stefan Beller (1): revision.c: remove unneeded check for NULL Tony Finch (1): gitweb: fix typo in man page Trần Ngọc Quân (2): l10n: Updated Vietnamese translation (2355t) l10n: Updated Vietnamese translation (2359t) Version v2.5.0-rc2; changes since v2.5.0-rc1: --------------------------------------------- Charles Bailey (3): contrib/subtree: use tabs consitently for indentation in tests contrib/subtree: fix broken &&-chains and revealed test error contrib/subtree: small tidy-up to test Clemens Buchacher (1): rebase: return non-zero error code if format-patch fails Enrique Tobis (1): http: always use any proxy auth method available Eric Sunshine (23): Documentation/git-checkout: fix incorrect worktree prune command Documentation/git-worktree: associate options with commands Documentation: move linked worktree description from checkout to worktree Documentation/git-worktree: add BUGS section Documentation/git-worktree: split technical info from general description Documentation/git-worktree: add high-level 'lock' overview Documentation/git-worktree: add EXAMPLES section checkout: fix bug with --to and relative HEAD checkout: relocate --to's "no branch specified" check checkout: prepare_linked_checkout: drop now-unused 'new' argument checkout: make --to unconditionally verbose checkout: drop 'checkout_opts' dependency from prepare_linked_checkout worktree: introduce "add" command worktree: add --force option worktree: add --detach option worktree: add -b/-B options tests: worktree: retrofit "checkout --to" tests for "worktree add" checkout: retire --to option checkout: require worktree unconditionally worktree: extract basename computation to new function worktree: add: make -b/-B default to HEAD when <branch> is omitted worktree: add: auto-vivify new branch when <branch> is omitted checkout: retire --ignore-other-worktrees in favor of --force Jeff King (4): docs: clarify that --encoding can produce invalid sequences for_each_packed_object: automatically open pack index rev-list: disable --use-bitmap-index when pruning commits check_and_freshen_file: fix reversed success-check Johannes Schindelin (2): t3404: demonstrate CHERRY_PICK_HEAD bug rebase -i: do not leave a CHERRY_PICK_HEAD file behind Junio C Hamano (6): fsck: it is OK for a tag and a commit to lack the body pager: do not leak "GIT_PAGER_IN_USE" to the pager index-pack: fix allocation of sorted_by_pos array The last minute bits of fixes Revert "checkout: retire --ignore-other-worktrees in favor of --force" Git 2.5.0-rc2 Karsten Blees (2): config.c: fix writing config files on Windows network shares Makefile / racy-git.txt: clarify USE_NSEC prerequisites Lawrence Siebert (1): rev-list: add --count to usage guide Matthieu Moy (3): git-multimail: update to release 1.1.1 Documentation/branch: document -d --force and -m --force Documentation/branch: document -M and -D in terms of --force Michael Haggerty (1): strbuf: strbuf_read_file() should return ssize_t Nguyễn Thái Ngọc Duy (3): checkout: don't check worktrees when not necessary worktree: new place for "git prune --worktrees" Add tests for wildcard "path vs ref" disambiguation Richard Hansen (2): Revert "test-lib.sh: do tests for color support after changing HOME" test-lib.sh: fix color support when tput needs ~/.terminfo Sebastian Schuberth (1): clone: simplify string handling in guess_dir_name() Stefan Beller (1): p5310: Fix broken && chain in performance test Torsten Bögershausen (1): git-checkout.txt: document "git checkout <pathspec>" better Version v2.5.0-rc1; changes since v2.5.0-rc0: --------------------------------------------- Joe Cridge (1): git-prompt.sh: document GIT_PS1_STATESEPARATOR Junio C Hamano (1): Git 2.5.0-rc1 Matthieu Moy (1): Documentation/describe: improve one-line summary Michael J Gruber (1): mergetool-lib: fix default tool selection Mike Edgar (1): fetch-pack: check for shallow if depth given Version v2.5.0-rc0; changes since v2.4.12: ------------------------------------------ Allen Hubbe (1): send-email: add sendmail email aliases format Blair Holloway (1): git-p4: fix filetype detection on files opened exclusively Christian Neukirchen (1): cvsimport: silence regex warning appearing in Perl 5.22. Danny Lin (2): contrib/subtree: there's no push --squash contrib/subtree: portability fix for string printing David Aguilar (2): mergetool--lib: set IFS for difftool and mergetool mergetools: add winmerge as a builtin tool David Turner (3): tree-walk: learn get_tree_entry_follow_symlinks sha1_name: get_sha1_with_context learns to follow symlinks cat-file: add --follow-symlinks to --batch Dennis Kaarsemaker (1): checkout: don't require a work tree when checking out into a new one Eric Sunshine (14): command-list: prepare machinery for upcoming "common groups" section generate-cmdlist: parse common group commands send-email: further document missing sendmail aliases functionality send-email: visually distinguish sendmail aliases parser warnings send-email: drop noise comments which merely repeat what code says send-email: fix style: cuddle 'elsif' and 'else' with closing brace send-email: refactor sendmail aliases parser send-email: simplify sendmail aliases comment and blank line recognizer send-email: implement sendmail aliases line continuation support t9001: refactor sendmail aliases test infrastructure t9001: add sendmail aliases line continuation tests send-email: further warn about unsupported sendmail aliases features config.mak.uname: Darwin: define HAVE_GETDELIM for modern OS X releases configure: add getdelim() check Fredrik Medley (3): config.txt: clarify allowTipSHA1InWant with camelCase upload-pack: prepare to extend allow-tip-sha1-in-want upload-pack: optionally allow fetching reachable sha1 Jeff King (29): strbuf_getwholeline: use getc macro git-compat-util: add fallbacks for unlocked stdio strbuf_getwholeline: use getc_unlocked config: use getc_unlocked when reading from file strbuf_addch: avoid calling strbuf_grow strbuf_getwholeline: avoid calling strbuf_grow strbuf_getwholeline: use getdelim if it is available read_packed_refs: avoid double-checking sane refs t1430: add another refs-escape test test-lib: turn on GIT_TEST_CHAIN_LINT by default remote.c: drop default_remote_name variable progress: treat "no terminal" as being in the foreground remote.c: refactor setup of branch->merge list remote.c: drop "remote" pointer from "struct branch" remote.c: hoist branch.*.remote lookup out of remote_get_1 remote.c: provide per-branch pushremote name remote.c: hoist read_config into remote_get_1 remote.c: introduce branch_get_upstream helper remote.c: report specific errors from branch_get_upstream remote.c: untangle error logic in branch_get_upstream remote.c: return upstream name from stat_tracking_info remote.c: add branch_get_push sha1_name: refactor upstream_mark sha1_name: refactor interpret_upstream_mark sha1_name: implement @{push} shorthand for-each-ref: use skip_prefix instead of starts_with for-each-ref: accept "%(push)" format t7063: hide stderr from setup inside prereq index-pack: fix truncation of off_t in comparison Johannes Sixt (5): compat/mingw: stubs for getpgid() and tcgetpgrp() lockfile: replace random() by rand() help.c: wrap wait-only poll() invocation in sleep_millisec() lockfile: convert retry timeout computations to millisecond lockfile: wait using sleep_millisec() instead of select() Jonathan Nieder (1): config: use error() instead of fprintf(stderr, ...) Junio C Hamano (38): t2026: fix broken &&-chain test: validate prerequistes syntax merge: test the top-level merge driver merge: simplify code flow t5520: style fixes t5520: test pulling an octopus into an unborn branch merge: clarify "pulling into void" special case merge: do not check argc to determine number of remote heads merge: small leakfix and code simplification merge: clarify collect_parents() logic merge: split reduce_parents() out of collect_parents() merge: narrow scope of merge_names merge: extract prepare_merge_message() logic out merge: make collect_parents() auto-generate the merge message merge: decide if we auto-generate the message early in collect_parents() merge: handle FETCH_HEAD internally merge: deprecate 'git merge <message> HEAD <commit>' syntax First batch for 2.5 cycle Second batch for 2.5 cycle Third batch for 2.5 cycle copy.c: make copy_fd() report its status silently filter_buffer_or_fd(): ignore EPIPE Fourth batch for 2.5 cycle t4015: modernise style t4015: separate common setup and per-test expectation Fifth batch for 2.5 cycle diff.c: add emit_del_line() and emit_context_line() diff.c: --ws-error-highlight=<kind> option t9001: write $HOME/, not ~/, to help shells without tilde expansion apply: reject a hunk that does not do anything Sixth batch for 2.5 cycle ll-merge: pass the original path to external drivers The first half of the seventh batch for 2.5 Second half of seventh batch Eighth batch for 2.5 Revert "diff-lib.c: adjust position of i-t-a entries in diff" Ninth batch for 2.5 Git 2.5.0-rc0 Karthik Nayak (4): sha1_file: support reading from a loose object of unknown type cat-file: make the options mutually exclusive cat-file: teach cat-file a '--allow-unknown-type' option t1006: add tests for git cat-file --allow-unknown-type Lars Kellogg-Stedman (1): http: add support for specifying an SSL cipher list Lex Spoon (1): git-p4: use -m when running p4 changes Luke Diamand (11): git-p4: fix small bug in locked test scripts git-p4: small fix for locked-file-move-test git-p4: t9814: prevent --chain-lint failure git-p4: add failing tests for case-folding p4d git-p4: add failing test for P4EDITOR handling git-p4: fix handling of multi-word P4EDITOR git-p4: tests: use test-chmtime in place of touch git-p4: additional testing of --changes-block-size git-p4: test with limited p4 server results git-p4: add tests for non-numeric revision range git-p4: fixing --changes-block-size handling Luke Mewburn (1): progress: no progress in background Matthieu Moy (6): t3701-add-interactive: simplify code add -p: demonstrate failure when running 'edit' after a split t3904-stash-patch: fix test description t3904-stash-patch: factor PERL prereq at the top of the file stash -p: demonstrate failure of split with mixed y/n git-multimail: update to release 1.1.0 Max Kirillov (3): checkout: do not fail if target is an empty directory git-common-dir: make "modules/" per-working-directory directory prune --worktrees: fix expire vs worktree existence condition Michael Haggerty (62): lockfile: allow file locking to be retried with a timeout lock_packed_refs(): allow retries when acquiring the packed-refs lock each_ref_fn: change to take an object_id parameter builtin/rev-parse: rewrite to take an object_id argument handle_one_ref(): rewrite to take an object_id argument register_ref(): rewrite to take an object_id argument append_ref(): rewrite to take an object_id argument add_pending_uninteresting_ref(): rewrite to take an object_id argument get_name(): rewrite to take an object_id argument builtin/fetch: rewrite to take an object_id argument grab_single_ref(): rewrite to take an object_id argument name_ref(): rewrite to take an object_id argument builtin/pack-objects: rewrite to take an object_id argument show_ref_cb(): rewrite to take an object_id argument builtin/reflog: rewrite ref functions to take an object_id argument add_branch_for_removal(): rewrite to take an object_id argument add_branch_for_removal(): don't set "util" field of string_list entries builtin/remote: rewrite functions to take object_id arguments show_reference(): rewrite to take an object_id argument append_matching_ref(): rewrite to take an object_id argument builtin/show-branch: rewrite functions to take object_id arguments append_one_rev(): rewrite to work with object_id builtin/show-branch: rewrite functions to work with object_id cmd_show_branch(): fix error message fsck: change functions to use object_id builtin/show-ref: rewrite to use object_id show_ref(): convert local variable peeled to object_id builtin/show-ref: rewrite to take an object_id argument append_similar_ref(): rewrite to take an object_id argument http-backend: rewrite to take an object_id argument show_head_ref(): convert local variable "unused" to object_id add_ref_decoration(): rewrite to take an object_id argument add_ref_decoration(): convert local variable original_sha1 to object_id string_list_add_one_ref(): rewrite to take an object_id argument add_one_ref(): rewrite to take an object_id argument remote: rewrite functions to take object_id arguments register_replace_ref(): rewrite to take an object_id argument handle_one_reflog(): rewrite to take an object_id argument add_info_ref(): rewrite to take an object_id argument handle_one_ref(): rewrite to take an object_id argument shallow: rewrite functions to take object_id arguments submodule: rewrite to take an object_id argument write_refs_to_temp_dir(): convert local variable sha1 to object_id write_one_ref(): rewrite to take an object_id argument find_symref(): rewrite to take an object_id argument find_symref(): convert local variable "unused" to object_id upload-pack: rewrite functions to take object_id arguments send_ref(): convert local variable "peeled" to object_id mark_complete(): rewrite to take an object_id argument clear_marks(): rewrite to take an object_id argument mark_complete_oid(): new function, taking an object_oid mark_complete(): remove unneeded arguments rev_list_insert_ref_oid(): new function, taking an object_oid rev_list_insert_ref(): remove unneeded arguments each_ref_fn_adapter(): remove adapter warn_if_dangling_symref(): convert local variable "junk" to object_id struct ref_lock: convert old_sha1 member to object_id verify_lock(): return 0/-1 rather than struct ref_lock * verify_lock(): on errors, let the caller unlock the lock verify_lock(): report errors via a strbuf verify_lock(): do not capitalize error messages ref_transaction_commit(): do not capitalize error messages Miguel Torroja (1): p4: retrieve the right revision of the file in UTF-16 codepath Mike Hommey (1): show-branch: show all local heads when only giving one rev along --topics Nguyễn Thái Ngọc Duy (63): path.c: make get_pathname() return strbuf instead of static buffer path.c: make get_pathname() call sites return const char * git_snpath(): retire and replace with strbuf_git_path() path.c: rename vsnpath() to do_git_path() path.c: group git_path(), git_pathdup() and strbuf_git_path() together git_path(): be aware of file relocation in $GIT_DIR *.sh: respect $GIT_INDEX_FILE reflog: avoid constructing .lock path with git_path fast-import: use git_path() for accessing .git dir instead of get_git_dir() commit: use SEQ_DIR instead of hardcoding "sequencer" $GIT_COMMON_DIR: a new environment variable git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects *.sh: avoid hardcoding $GIT_DIR/hooks/... git-stash: avoid hardcoding $GIT_DIR/logs/.... setup.c: convert is_git_directory() to use strbuf setup.c: detect $GIT_COMMON_DIR in is_git_directory() setup.c: convert check_repository_format_gently to use strbuf setup.c: detect $GIT_COMMON_DIR check_repository_format_gently() setup.c: support multi-checkout repo setup wrapper.c: wrapper to open a file, fprintf then close use new wrapper write_file() for simple file writing checkout: support checking out into a new working directory prune: strategies for linked checkouts checkout: reject if the branch is already checked out elsewhere checkout: clean up half-prepared directories in --to mode gc: style change -- no SP before closing parenthesis gc: factor out gc.pruneexpire parsing code gc: support prune --worktrees count-objects: report unused files in $GIT_DIR/worktrees/... git_path(): keep "info/sparse-checkout" per work-tree t2025: add a test to make sure grafts is working from a linked checkout checkout: pass whole struct to parse_branchname_arg instead of individual flags checkout: add --ignore-other-wortrees git-checkout.txt: a note about multiple checkout support for submodules index-pack: reduce object_entry size to save memory dir.c: optionally compute sha-1 of a .gitignore file untracked cache: record .gitignore information and dir hierarchy untracked cache: initial untracked cache validation untracked cache: invalidate dirs recursively if .gitignore changes untracked cache: make a wrapper around {open,read,close}dir() untracked cache: record/validate dir mtime and reuse cached output untracked cache: mark what dirs should be recursed/saved untracked cache: don't open non-existent .gitignore ewah: add convenient wrapper ewah_serialize_strbuf() untracked cache: save to an index extension untracked cache: load from UNTR index extension untracked cache: invalidate at index addition or removal read-cache.c: split racy stat test to a separate function untracked cache: avoid racy timestamps untracked cache: print stats with $GIT_TRACE_UNTRACKED_STATS untracked cache: mark index dirty if untracked cache is updated untracked-cache: temporarily disable with $GIT_DISABLE_UNTRACKED_CACHE status: enable untracked cache update-index: manually enable or disable untracked cache update-index: test the system before enabling untracked cache t7063: tests for untracked cache mingw32: add uname() untracked cache: guard and disable on system changes git-status.txt: advertisement for untracked cache diff-lib.c: adjust position of i-t-a entries in diff index-pack: kill union delta_base to save memory pathspec: avoid the need of "--" when wildcard is used read-cache: fix untracked cache invalidation when split-index is used Paul Tan (10): t5520: prevent field splitting in content comparisons t5520: test no merge candidates cases t5520: test for failure if index has unresolved entries t5520: test work tree fast-forward when fetch updates head t5520: test --rebase with multiple branches t5520: test --rebase failure on unborn branch with index t5521: test --dry-run does not make any changes t5520: check reflog action in fast-forward merge pull: handle git-fetch's options as well pull: use git-rev-parse --parseopt for option parsing Quentin Neill (1): blame: add blame.showEmail configuration Ramsay Jones (1): t7502-commit.sh: fix a broken and-chain Remi Lespinet (3): git-am.sh: fix initialization of the threeway variable t4150-am: refactor am -3 tests git-am: add am.threeWay config variable SZEDER Gábor (4): completion: remove redundant __git_compute_all_commands() call completion: remove credential helpers from porcelain commands completion: add a helper function to get config variables completion: simplify query for config variables Stefan Beller (2): prefix_path(): unconditionally free results in the callers refs.c: remove lock_fd from struct ref_lock Sébastien Guimmara (4): command-list.txt: fix whitespace inconsistency command-list.txt: add the common groups block command-list.txt: drop the "common" tag help: respect new common command grouping Thomas Braun (1): completion: suggest sequencer commands for revert Thomas Gummerer (1): t1501: fix test with split index Thomas Schneider (1): checkout: call a single commit "it" intead of "them" Torsten Bögershausen (4): t2026 needs procondition SANITY t0027: cleanup: rename functions; avoid non-leading TABs t0027: support NATIVE_CRLF platforms t0027: Add repoMIX and LF_nul Vitor Antunes (2): t9801: check git-p4's branch detection with client spec enabled git-p4: improve client path detection when branches are used brian m. carlson (11): define a structure for object IDs define utility functions for object IDs bisect.c: convert leaf functions to use struct object_id archive.c: convert to use struct object_id zip: use GIT_SHA1_HEXSZ for trailers bulk-checkin.c: convert to use struct object_id diff: convert struct combine_diff_path to object_id commit: convert parts to struct object_id patch-id: convert to use struct object_id apply: convert threeway_stage to object_id refs: convert struct ref_entry to use struct object_id Version v2.4.12; changes since v2.4.11: --------------------------------------- Jeff King (1): shell: disallow repo names beginning with dash Junio C Hamano (1): Git 2.4.12 Version v2.4.11; changes since v2.4.10: --------------------------------------- Jeff King (7): add helpers for detecting size_t overflow tree-diff: catch integer overflow in combine_diff_path allocation http-push: stop using name_path show_object_with_name: simplify by using path_name() list-objects: convert name_path to a strbuf list-objects: drop name_path entirely list-objects: pass full pathname to callbacks Junio C Hamano (1): Git 2.4.11 Version v2.4.10; changes since v2.4.9: -------------------------------------- Blake Burkhart (2): http: limit redirection to protocol-whitelist http: limit redirection depth Jeff King (6): transport: add a protocol-whitelist environment variable submodule: allow only certain protocols for submodule fetches transport: refactor protocol whitelist code react to errors in xdi_diff xdiff: reject files larger than ~1GB merge-file: enforce MAX_XDIFF_SIZE on incoming files Junio C Hamano (2): Git 2.3.10 Git 2.4.10 Version v2.4.9; changes since v2.4.8: ------------------------------------- Jeff King (4): verify_absent: allow filenames longer than PATH_MAX notes: use a strbuf in add_non_note read_info_alternates: handle paths larger than PATH_MAX show-branch: use a strbuf for reflog descriptions Junio C Hamano (3): Git 2.2.3 Git 2.3.9 Git 2.4.9 Version v2.4.8; changes since v2.4.7: ------------------------------------- Johannes Schindelin (2): t3404: demonstrate CHERRY_PICK_HEAD bug rebase -i: do not leave a CHERRY_PICK_HEAD file behind Junio C Hamano (1): Git 2.4.8 Michael Haggerty (4): t6301: new tests of for-each-ref error handling for-each-ref: report broken references correctly read_loose_refs(): simplify function logic read_loose_refs(): treat NULL_SHA1 loose references as broken Paul Tan (6): am --skip: revert changes introduced by failed 3way merge am -3: support 3way merge on unborn branch am --skip: support skipping while on unborn branch am --abort: revert changes introduced by failed 3way merge am --abort: support aborting to unborn branch am --abort: keep unrelated commits on unborn branch SZEDER Gábor (2): completion: teach 'scissors' mode to 'git commit --cleanup=' commit: cope with scissors lines in commit message Sebastian Schuberth (1): clone: simplify string handling in guess_dir_name() Version v2.4.7; changes since v2.4.6: ------------------------------------- Clemens Buchacher (1): rebase: return non-zero error code if format-patch fails Enrique Tobis (1): http: always use any proxy auth method available Jeff King (4): index-pack: avoid excessive re-reading of pack directory docs: clarify that --encoding can produce invalid sequences rev-list: disable --use-bitmap-index when pruning commits check_and_freshen_file: fix reversed success-check Junio C Hamano (3): fsck: it is OK for a tag and a commit to lack the body pager: do not leak "GIT_PAGER_IN_USE" to the pager Git 2.4.7 Karsten Blees (1): config.c: fix writing config files on Windows network shares Lawrence Siebert (1): rev-list: add --count to usage guide Matthieu Moy (2): Documentation/branch: document -d --force and -m --force Documentation/branch: document -M and -D in terms of --force Michael Haggerty (1): strbuf: strbuf_read_file() should return ssize_t Richard Hansen (2): Revert "test-lib.sh: do tests for color support after changing HOME" test-lib.sh: fix color support when tput needs ~/.terminfo Torsten Bögershausen (1): git-checkout.txt: document "git checkout <pathspec>" better Version v2.4.6; changes since v2.4.5: ------------------------------------- Ariel Faigon (1): git-completion.tcsh: fix redirect with noclobber Charles Bailey (1): Fix definition of ARRAY_SIZE for non-gcc builds Eric Sunshine (2): ewah/bitmap: silence warning about MASK macro redefinition utf8: NO_ICONV: silence uninitialized variable warning Frans Klaver (1): doc: format-patch: fix typo Jeff King (2): ewah: use less generic macro name Revert "stash: require a clean index to apply" Joe Cridge (1): git-prompt.sh: document GIT_PS1_STATESEPARATOR Junio C Hamano (2): format-patch: do not feed tags to clear_commit_marks() Git 2.4.6 Matthieu Moy (1): Documentation/describe: improve one-line summary Michael Haggerty (2): fsck_handle_reflog_sha1(): new function fsck: report errors if reflog entries point at invalid objects Mike Edgar (1): fetch-pack: check for shallow if depth given Panagiotis Astithas (1): hooks/pre-auto-gc: adjust power checking for newer OS X Paul Tan (1): t0302: "unreadable" test needs SANITY prereq Version v2.4.5; changes since v2.4.4: ------------------------------------- Jeff King (13): diff: accept color.diff.context as a synonym for "plain" diff.h: rename DIFF_PLAIN color slot to DIFF_CONTEXT read-cache.c: drop PROT_WRITE from mmap of index config.c: fix mmap leak when writing config config.c: avoid xmmap error messages config.c: rewrite ENODEV into EISDIR when mmap fails Makefile: drop dependency between git-instaweb and gitweb Makefile: avoid timestamp updates to GIT-BUILD-OPTIONS Makefile: silence perl/PM.stamp recipe setup_git_directory: delay core.bare/core.worktree errors add quieter versions of parse_{tree,commit} silence broken link warnings with revs->ignore_missing_links suppress errors on missing UNINTERESTING links Junio C Hamano (3): t5407: use <<- to align the expected output xmmap(): drop "Out of memory?" Git 2.4.5 Matthieu Moy (2): rebase -i: demonstrate incorrect behavior of post-rewrite rebase -i: fix post-rewrite hook with failed exec command Paul Tan (1): pull: remove --tags error in no merge candidates case SZEDER Gábor (1): Documentation: include 'merge.branchdesc' for merge and config as well Stefan Beller (1): Documentation/technical/pack-protocol: mention http as possible protocol Version v2.4.4; changes since v2.4.3: ------------------------------------- Alex Henrie (1): blame, log: format usage strings similarly to those in documentation David Turner (1): clean: only lstat files in pathspec Elia Pinto (1): git-compat-util.h: implement a different ARRAY_SIZE macro for for safely deriving the size of array Jeff King (8): http-backend: fix die recursion with custom handler t5551: factor out tag creation stash: complain about unknown flags stash: recognize "--help" for subcommands test_bitmap_walk: free bitmap with bitmap_free http-backend: spool ref negotiation requests to buffer clone: use OPT_STRING_LIST for --reference clone: reorder --dissociate and --reference options Jim Hill (1): sha1_file: pass empty buffer to index empty file Junio C Hamano (1): Git 2.4.4 Matthieu Moy (2): Documentation/log: clarify what --raw means Documentation/log: clarify sha1 non-abbreviation in log --raw Michael Coleman (1): Documentation/git-commit: grammofix Michael J Gruber (3): l10n: de.po: grammar fix l10n: de.po: punctuation fixes l10n: de.po: translation fix for fall-back to 3way merge Phillip Sz (1): l10n: de.po: change error message from "sagen" to "Meinten Sie" René Scharfe (3): use file_exists() to check if a file exists in the worktree clean: remove unused variable buf dir: remove unused variable sb Stefan Beller (2): submodule doc: reorder introductory paragraphs glossary: add "remote", "submodule", "superproject" Version v2.4.3; changes since v2.4.2: ------------------------------------- Danny Lin (1): branch: do not call a "remote-tracking branch" a "remote branch" Fredrik Gustafsson (1): Documentation: clarify how "git commit" cleans up the edited log message Jean-Noël Avila (1): doc: fix unmatched code fences Jeff King (14): sha1_file: squelch "packfile cannot be accessed" warnings t/lib-httpd.sh: skip tests if NO_CURL is defined add: check return value of launch_editor doc: fix unmatched code fences in git-stripspace doc: fix misrendering due to `single quote' doc: fix unquoted use of "{type}" doc: fix hanging "+"-continuation doc: fix length of underlined section-title doc/add: reformat `--edit` option doc: convert \--option to --option doc: drop backslash quoting of some curly braces doc: put example URLs and emails inside literal backticks doc: convert AsciiDoc {?foo} to ifdef::foo[] rerere: exit silently on "forget" when rerere is disabled Junio C Hamano (7): t0302: "unreadable" test needs POSIXPERM fmt-merge-msg: plug small leak of commit buffer ignore: info/exclude should trump core.excludesfile tests: skip dav http-push tests under NO_EXPAT=NoThanks log: decorate HEAD with branch name under --decorate=full, too log: do not shorten decoration names too early Git 2.4.3 Michael Haggerty (30): t1404: new tests of ref D/F conflicts within transactions is_refname_available(): revamp the comments is_refname_available(): avoid shadowing "dir" variable is_refname_available(): convert local variable "dirname" to strbuf entry_matches(): inline function report_refname_conflict(): inline function struct nonmatching_ref_data: store a refname instead of a ref_entry is_refname_available(): use dirname in first loop ref_transaction_commit(): use a string_list for detecting duplicates refs: check for D/F conflicts among refs created in a transaction verify_refname_available(): rename function verify_refname_available(): report errors via a "struct strbuf *err" lock_ref_sha1_basic(): report errors via a "struct strbuf *err" lock_ref_sha1_basic(): improve diagnostics for ref D/F conflicts rename_ref(): integrate lock_ref_sha1_basic() errors into ours ref_transaction_commit(): provide better error messages ref_transaction_commit(): delete extra "the" from error message reflog_expire(): integrate lock_ref_sha1_basic() errors into ours write_ref_to_lockfile(): new function, extracted from write_ref_sha1() commit_ref_update(): new function, extracted from write_ref_sha1() rename_ref(): inline calls to write_ref_sha1() from this function ref_transaction_commit(): inline call to write_ref_sha1() ref_transaction_commit(): remove the local flags variable ref_transaction_commit(): fix atomicity and avoid fd exhaustion write_ref_to_lockfile(): new function, extracted from write_ref_sha1() commit_ref_update(): new function, extracted from write_ref_sha1() rename_ref(): inline calls to write_ref_sha1() from this function ref_transaction_commit(): inline call to write_ref_sha1() ref_transaction_commit(): remove the local flags variable ref_transaction_commit(): fix atomicity and avoid fd exhaustion Mike Hommey (1): clone: call transport_set_verbosity before anything else on the newly created transport Patrick Steinhardt (5): bundle: verify arguments more strictly git-verify-pack.txt: fix inconsistent spelling of "packfile" git-unpack-objects.txt: fix inconsistent spelling of "packfile" pack-protocol.txt: fix insconsistent spelling of "packfile" doc: fix inconsistent spelling of "packfile" Paul Tan (13): git-credential-store: support multiple credential files git-credential-store: support XDG_CONFIG_HOME t0302: test credential-store support for XDG_CONFIG_HOME path.c: implement xdg_config_home() attr.c: replace home_config_paths() with xdg_config_home() dir.c: replace home_config_paths() with xdg_config_home() credential-store.c: replace home_config_paths() with xdg_config_home() git-commit: replace use of home_config_paths() git-config: replace use of home_config_paths() path.c: remove home_config_paths() pull: handle --log=<n> pull: make pull.ff=true override merge.ff pull: parse pull.ff as a bool or string Phil Hord (1): rebase -i: redo tasks that die during cherry-pick René Scharfe (1): pack-bitmaps: plug memory leak, fix allocation size for recent_bitmaps Stefan Beller (5): update-ref: test handling large transactions properly t7004: rename ULIMIT test prerequisite to ULIMIT_STACK_SIZE update-ref: test handling large transactions properly t7004: rename ULIMIT test prerequisite to ULIMIT_STACK_SIZE subdirectory tests: code cleanup, uncomment test Torsten Bögershausen (1): blame: CRLF in the working tree and LF in the repo brian m. carlson (3): connect: simplify SSH connection code path t5601: fix quotation error leading to skipped tests connect: improve check for plink to reduce false positives Version v2.4.2; changes since v2.4.1: ------------------------------------- Eric Sunshine (3): git-hash-object.txt: document --literally option hash-object --literally: fix buffer overrun with extra-long object type t1007: add hash-object --literally tests Jeff King (7): limit_list: avoid quadratic behavior from still_interesting t3903: stop hard-coding commit sha1s t3903: avoid applying onto dirty index stash: require a clean index to apply stop putting argv[0] dirname at front of PATH rebase: silence "git checkout" for noop rebase filter-branch: avoid passing commit message through sed Junio C Hamano (3): write_sha1_file(): do not use a separate sha1[] array daemon: unbreak NO_IPV6 build regression Git 2.4.2 SZEDER Gábor (1): completion: fix and update 'git log --decorate=' options Version v2.4.1; changes since v2.4.0: ------------------------------------- Carlos Martín Nieto (1): dir: allow a BOM at the beginning of exclude files Elia Pinto (1): test-lib-functions.sh: fix the second argument to some helper functions Jeff King (5): init: don't set core.worktree when initializing /.git type_from_string_gently: make sure length matches reachable: only mark local objects as recent sha1_file: freshen pack objects before loose sha1_file: only freshen packs once per run Junio C Hamano (10): diff-no-index: DWIM "diff D F" into "diff D/F F" diff-no-index: align D/F handling with that of normal Git parse_date_basic(): return early when given a bogus timestamp parse_date_basic(): let the system handle DST conversion add_excludes_from_file: clarify the bom skipping logic utf8-bom: introduce skip_utf8_bom() helper config: use utf8_bom[] from utf.[ch] in git_parse_source() attr: skip UTF8 BOM at the beginning of the input file Git 2.3.8 Git 2.4.1 Matthieu Moy (2): Documentation: change -L:<regex> to -L:<funcname> log -L: improve error message on malformed argument Nguyễn Thái Ngọc Duy (1): t1509: update prepare script to be able to run t1509 in chroot again Ossi Herrala (1): config: fix settings in default_user_config template Stefan Beller (2): line-log.c: fix a memleak pack-bitmap.c: fix a memleak Version v2.4.0; changes since v2.4.0-rc3: ----------------------------------------- Junio C Hamano (2): Git 2.3.7 Git 2.4 Michael Haggerty (6): git tag: mention versionsort.prereleaseSuffix in manpage RelNotes: correct name of versionsort.prereleaseSuffix RelNotes: refer to the rebase -i "todo list", not "insn sheet" RelNotes: wordsmithing status: document the -v/--verbose option Update git-multimail to version 1.0.2 Michael J Gruber (1): rev-list-options.txt: complete sentence about notes matching Version v2.4.0-rc3; changes since v2.4.0-rc2: --------------------------------------------- Alexander Shopov (2): git-gui i18n: Updated Bulgarian translation (520t,0f,0u) git-gui i18n: Updated Bulgarian translation (547t,0f,0u) Csaba Kiraly (1): git-gui: fix problem with gui.maxfilesdisplayed David Turner (1): git-gui: Make git-gui lib dir configurable at runime Henri GEIST (1): git-gui: Add a 'recursive' checkbox in the clone menu. Junio C Hamano (6): push --signed: tighten what the receiving end can ask to sign Revert "merge: pass verbosity flag down to merge-recursive" Hopefully the last batch for 2.4 RelNotes: "merge --quiet" change has been reverted Git 2.3.6 Git 2.4.0-rc3 Kyle J. McKay (1): git-gui: reinstate support for Tcl 8.4 Michael Lutz (1): git-gui: add configurable tab size to the diff view Márcio Almada (1): completion: fix global bash variable leak on __gitcompappend Pat Thoyts (3): git-gui: align the new recursive checkbox with the radiobuttons. git-gui: fix verbose loading when git path contains spaces. git-gui: set version 0.20 Patrick Steinhardt (1): grep: correctly initialize help-all option Peter Krefting (1): git-gui: sv.po: Update Swedish translation (547t0f0u) Remi Rampin (2): git-gui: Fixes chooser not accepting gitfiles git-gui: Makes chooser set 'gitdir' to the resolved path Sebastian Schuberth (1): git-gui/gitk: Do not depend on Cygwin's "kill" command on Windows Torsten Bögershausen (1): connect.c: ignore extra colon after hostname Trần Ngọc Quân (1): L10n: vi.po (543t): Init translation for Vietnamese Vitor Antunes (3): t9814: fix broken shell syntax in git-p4 rename test git-p4: fix copy detection test t9814: guarantee only one source exists in git-p4 copy tests Version v2.4.0-rc2; changes since v2.4.0-rc1: --------------------------------------------- Alex Henrie (2): l10n: ca.po: update translation l10n: ca.po: update translation Alexander Shopov (1): l10n: Updated Bulgarian translation of git (2305t,0f,0u) Dimitriy Ryazantcev (3): l10n: ru: added Russian translation l10n: ru: updated Russian translation l10n: ru: updated Russian translation Ivan Ukhov (1): parse-options.h: OPTION_{BIT,SET_INT} do not store pointer to defval Jean-Noël Avila (2): l10n: fr.po v2.4.0-rc0 round 1 l10n: fr.po v2.4.0 round 2 Jeff King (3): cherry-pick: fix docs describing handling of empty commits howto: document more tools for recovery corruption merge: pass verbosity flag down to merge-recursive Jiang Xin (5): l10n: git.pot: v2.4.0 round 1 (99 new, 92 removed) l10n: zh_CN: translations for git v2.4.0-rc0 l10n: git.pot: v2.4.0 round 2 (1 update) l10n: zh_CN: for git v2.4.0 l10n round 2 l10n: TEAMS: Change repository URL of zh_CN John Keeping (1): streaming.c: fix a memleak Jonathan Nieder (1): fast-import doc: remove suggested 16-parent limit Julian Gindi (1): CodingGuidelines: update 'rough' rule count Junio C Hamano (2): push-to-deploy: allow pushing into an unborn branch and updating it Git 2.4.0-rc2 Jérôme Zago (1): gitweb.conf.txt: say "build-time", not "built-time" Kyle J. McKay (1): diff-highlight: do not split multibyte characters Matthias Rüster (1): l10n: de.po: translate 'symbolic link' as 'symbolische Verknüpfung' Michael J Gruber (1): l10n: de.po: fix negation for commit -a with paths Paul Tan (1): enter_repo(): fix docs to match code Peter Krefting (2): l10n: sv.po: Update Swedish translation (2305t0f0u) l10n: sv.po: Update Swedish translation (2305t0f0u) Phillip Sz (1): l10n: de.po: add space before ellipsis Ralf Thielow (3): l10n: de.po: fix messages with abbreviated hashs l10n: de.po: translate 99 new messages l10n: de.po: translate one message Stefan Beller (1): wt-status.c: fix a memleak Trần Ngọc Quân (2): l10n: vi.po: Updated Vietnamese translation l10n: vi.po(2305t): Updated 1 new string Version v2.4.0-rc1; changes since v2.4.0-rc0: --------------------------------------------- Junio C Hamano (6): add_to_index(): free unused cache-entry Update mailmap to spell out "Alexander Kuleshov" Prepare for 2.3.5 RelNotes: minor doc updates Git 2.3.5 Git 2.4.0-rc1 Phil Hord (1): git-push.txt: clean up force-with-lease wording Ralf Thielow (1): send-pack: unify error messages for unsupported capabilities Sebastian Schuberth (2): docs: clarify "preserve" option wording for git-pull docs: clarify what git-rebase's "-p" / "--preserve-merges" does Stefan Beller (9): read-cache: free cache entry in add_to_index in case of early return update-index: fix a memleak builtin/apply.c: fix a memleak merge-blobs.c: fix a memleak merge-recursive: fix memleaks http-push: remove unneeded cleanup commit.c: fix a memory leak read-cache: fix memleak http: release the memory of a http pack request as well Thomas Ackermann (2): api-error-handling doc: typofix 2.3.2 release notes: typofix Version v2.4.0-rc0; changes since v2.3.10: ------------------------------------------ Alex Henrie (3): standardize usage info string format gitk: Remove tcl-format flag from a message that shouldn't have it gitk: l10n: Add Catalan translation Alexander Kuleshov (3): pack-bitmap: fix typo t/lib-terminal.sh: fix typo gitk: Fix typo in Russian translation Chris Packham (1): gitk: Default wrcomcmd to use --pretty=email Christoph Junghans (2): log: teach --invert-grep option gitk: Pass --invert-grep option down to "git log" Dave Olszewski (1): push: allow --follow-tags to be set by config push.followTags Dongcan Jiang (1): revision: forbid combining --graph and --no-walk Eric Wong (1): git-svn: lazy load some modules Gabriele Mazzotta (1): gitk: Enable mouse horizontal scrolling in diff pane Jean-Noël Avila (1): Add hint interactive cleaning Jeff King (50): strbuf.h: integrate api-strbuf.txt documentation strbuf.h: drop asciidoc list formatting from API docs strbuf.h: format asciidoc code blocks as 4-space indent strbuf.h: reorganize api function grouping headers strbuf.h: drop boilerplate descriptions of strbuf_split_* strbuf.h: group documentation for trim functions git_push_config: drop cargo-culted wt_status pointer cmd_push: set "atomic" bit directly cmd_push: pass "flags" pointer to config callback gettext.c: move get_preferred_languages() from http.c t/test-lib: introduce --chain-lint option t: fix severe &&-chain breakage t: fix moderate &&-chain breakage t: fix trivial &&-chain breakage t: assume test_cmp produces verbose output t: use verbose instead of hand-rolled errors t: use test_must_fail instead of hand-rolled blocks t: fix &&-chaining issues around setup which might fail t: use test_might_fail for diff and grep t: use test_expect_code instead of hand-rolled comparison t: wrap complicated expect_code users in a block t: avoid using ":" for comments t3600: fix &&-chain breakage for setup commands t7201: fix &&-chain breakage t9502: fix &&-chain breakage t6030: use modern test_* helpers t0020: use modern test_* helpers t1301: use modern test_* helpers t6034: use modern test_* helpers t4117: use modern test_* helpers t9001: use test_when_finished t0050: appease --chain-lint t7004: fix embedded single-quotes t0005: fix broken &&-chains t4104: drop hand-rolled error reporting wt-status: don't flush before running "submodule status" wt_status: fix signedness mismatch in strbuf_read call run-command: introduce capture_command helper wt-status: use capture_command submodule: use capture_command trailer: use capture_command run-command: forbid using run_command with piped output perf-lib: fix ignored exit code inside loop t0020: fix ignored exit code inside loops t3305: fix ignored exit code inside loop t7701: fix ignored exit code inside loop t: fix some trivial cases of ignored exit codes in loops t: simplify loop exit-code status variables t0020: use test_* helpers instead of hand-rolled messages t9001: drop save_confirm helper Jonathan Nieder (1): doc: document error handling functions and conventions Junio C Hamano (33): receive-pack: refactor updateInstead codepath receive-pack: support push-to-checkout hook http.c: make finish_active_slot() and handle_curl_result() static prompt.c: remove git_getpass() nobody uses pack-bitmap.c: make pack_bitmap_filename() static line-log.c: make line_log_data_init() static revision.c: make save_parents() and free_saved_parents() static urlmatch.c: make match_urls() static remote.c: make clear_cas_option() static shallow.c: make check_shallow_file_for_update() static CodingGuidelines: clarify C #include rules "log --pretty" documentation: do not forget "tformat:" apply: detect and mark whitespace errors in context lines when fixing t4122: use test_write_lines from test-lib-functions run_diff_files(): clarify computation of sha1 validity Post 2.3 cycle (batch #1) xread/xwrite: clip MAX_IO_SIZE to SSIZE_MAX send-email: ask confirmation if given encoding name is very short Post 2.3 cycle (batch #2) Post 2.3 cycle (batch #3) Post 2.3 cycle (batch #4) Post 2.3 cyle (batch #5) Post 2.3 cycle (batch #6) Post 2.3 cycle (batch #7) t7508: .gitignore 'expect' and 'output' files Post 2.3 cycle (batch #8) Post 2.3 cycle (batch #9) log: decorate HEAD with branch name Post 2.3 cyce (batch #10) Post 2.3 cycle (batch #11) Post 2.3 cycle (batch #12) Getting ready for -rc0 Git 2.4.0-rc0 Kevin Daudt (1): rev-list: refuse --first-parent combined with --bisect Kyle J. McKay (8): gettext.h: add parentheses around N_ expansion if supported git-instaweb: allow running in a working tree subdirectory git-instaweb: use @SHELL_PATH@ instead of /bin/sh git-compat-util.h: move SHELL_PATH default into header help.c: use SHELL_PATH instead of hard-coded "/bin/sh" configure: support HAVE_BSD_SYSCTL option thread-utils.c: detect CPU count on older BSD-like systems t5528: do not fail with FreeBSD shell Luke Diamand (2): git-p4: correct --prepare-p4-only instructions git-p4: support excluding paths on sync Max Kirillov (3): gitk: Only write changed configuration variables gitk: Report errors in saving config file gitk: Synchronize config file writes Michael Haggerty (37): expire_reflog(): it's not an each_ref_fn anymore expire_reflog(): rename "ref" parameter to "refname" expire_reflog(): return early if the reference has no reflog expire_reflog(): use a lock_file for rewriting the reflog file Extract function should_expire_reflog_ent() expire_reflog(): extract two policy-related functions expire_reflog(): add a "flags" argument expire_reflog(): move dry_run to flags argument expire_reflog(): move updateref to flags argument Rename expire_reflog_cb to expire_reflog_policy_cb struct expire_reflog_cb: a new callback data type expire_reflog(): pass flags through to expire_reflog_ent() expire_reflog(): move verbose to flags argument expire_reflog(): move rewrite to flags argument Move newlog and last_kept_sha1 to "struct expire_reflog_cb" expire_reflog(): treat the policy callback data as opaque reflog_expire(): new function in the reference API lock_any_ref_for_update(): inline function refs: move REF_DELETING to refs.c refs: remove the gap in the REF_* constant values refs.c: change some "flags" to "unsigned int" struct ref_update: move "have_old" into "flags" ref_transaction_update(): remove "have_old" parameter ref_transaction_delete(): remove "have_old" parameter commit: add tests of commit races commit: avoid race when creating orphan commits ref_transaction_create(): check that new_sha1 is valid ref_transaction_delete(): check that old_sha1 is not null_sha1 ref_transaction_verify(): new function to check a reference's value update_ref(): improve documentation refs.h: remove duplication in function docstrings write_ref_sha1(): remove check for lock == NULL write_ref_sha1(): move write elision test to callers lock_ref_sha1_basic(): do not set force_write for missing references reflog: improve and update documentation reflog_expire(): ignore --updateref for symbolic references reflog_expire(): never update a reference to null_sha1 Michael J Gruber (7): t7508: test git status -v commit/status: show the index-worktree diff with -v -v sequencer: preserve commit messages wt-status: refactor detached HEAD analysis branch: name detached HEAD analogous to status t9104: fix test for following larger parents t9158, t9161: fix broken &&-chain in git-svn tests Mike Hommey (2): transport-helper: ask the helper to set progress and verbosity options after asking for its capabilities transport-helper: ask the helper to set the same options for import as for fetch Nguyễn Thái Ngọc Duy (6): attr.c: rename arg name attr_nr to avoid shadowing the global one attr: do not attempt to expand when we know it's not a macro attr: avoid heavy work when we know the specified attr is not defined versionsort: support reorder prerelease suffixes config.txt: update versioncmp.prereleaseSuffix *config.txt: stick to camelCase naming convention Paul Mackerras (1): gitk: Update .po files René Scharfe (3): archive-zip: mark text files in archives daemon: use strbuf for hostname info daemon: deglobalize hostname information Ronnie Sahlberg (7): refs.c: make ref_transaction_create a wrapper for ref_transaction_update refs.c: make ref_transaction_delete a wrapper for ref_transaction_update refs.c: add a function to append a reflog entry to a fd refs.c: remove unlock_ref/close_ref/commit_ref from the refs api receive-pack.c: negotiate atomic push support send-pack.c: add --atomic command line argument push.c: add an --atomic argument Sebastian Schuberth (1): check-builtins: strip executable suffix $X when enumerating builtins Stefan Beller (15): refs.c: don't expose the internal struct ref_lock in the header file refs.c: let fprintf handle the formatting receive-pack.c: shorten the execute_commands loop over all commands receive-pack.c: die instead of error in case of possible future bug receive-pack.c: move iterating over all commands outside execute_commands receive-pack.c: move transaction handling in a central place receive-pack.c: add execute_commands_atomic function send-pack: rename ref_update_to_be_sent to check_to_send_update t5543-atomic-push.sh: add basic tests for atomic pushes Document receive.advertiseatomic strbuf.h: unify documentation comments beginnings struct ref_lock: delete the force_write member connect.c: do not leak "conn" after showing diagnosis bundle.c: fix memory leak builtin/help.c: fix memory leak Tom G. Christensen (1): http: support curl < 7.10.7 Torsten Bögershausen (1): t6039: fix broken && chain Yi EungJun (1): http: add Accept-Language header if possible Version v2.3.10; changes since v2.3.9: -------------------------------------- Blake Burkhart (2): http: limit redirection to protocol-whitelist http: limit redirection depth Jeff King (6): transport: add a protocol-whitelist environment variable submodule: allow only certain protocols for submodule fetches transport: refactor protocol whitelist code react to errors in xdi_diff xdiff: reject files larger than ~1GB merge-file: enforce MAX_XDIFF_SIZE on incoming files Junio C Hamano (1): Git 2.3.10 Version v2.3.9; changes since v2.3.8: ------------------------------------- Jeff King (4): verify_absent: allow filenames longer than PATH_MAX notes: use a strbuf in add_non_note read_info_alternates: handle paths larger than PATH_MAX show-branch: use a strbuf for reflog descriptions Junio C Hamano (2): Git 2.2.3 Git 2.3.9 Version v2.3.8; changes since v2.3.7: ------------------------------------- Junio C Hamano (5): diff-no-index: DWIM "diff D F" into "diff D/F F" diff-no-index: align D/F handling with that of normal Git parse_date_basic(): return early when given a bogus timestamp parse_date_basic(): let the system handle DST conversion Git 2.3.8 Matthieu Moy (2): Documentation: change -L:<regex> to -L:<funcname> log -L: improve error message on malformed argument Ossi Herrala (1): config: fix settings in default_user_config template Version v2.3.7; changes since v2.3.6: ------------------------------------- Junio C Hamano (2): push --signed: tighten what the receiving end can ask to sign Git 2.3.7 Márcio Almada (1): completion: fix global bash variable leak on __gitcompappend Torsten Bögershausen (1): connect.c: ignore extra colon after hostname Version v2.3.6; changes since v2.3.5: ------------------------------------- Ivan Ukhov (1): parse-options.h: OPTION_{BIT,SET_INT} do not store pointer to defval Jeff King (7): t: translate SIGINT to an exit t: redirect stderr GIT_TRACE to descriptor 4 t: pass GIT_TRACE through Apache t5541: move run_with_cmdline_limit to test-lib.sh t5551: make EXPENSIVE test cheaper cherry-pick: fix docs describing handling of empty commits howto: document more tools for recovery corruption Jonathan Nieder (1): fast-import doc: remove suggested 16-parent limit Julian Gindi (1): CodingGuidelines: update 'rough' rule count Junio C Hamano (1): Git 2.3.6 Jérôme Zago (1): gitweb.conf.txt: say "build-time", not "built-time" Kyle J. McKay (1): diff-highlight: do not split multibyte characters Paul Tan (1): enter_repo(): fix docs to match code Version v2.3.5; changes since v2.3.4: ------------------------------------- Cody A Taylor (1): git prompt: use toplevel to find untracked files Jeff King (15): tag: fix some mis-organized options in "-h" listing upload-pack: fix transfer.hiderefs over smart-http upload-pack: do not check NULL return of lookup_unknown_object sha1fd_check: die when we cannot open the file clone: initialize atexit cleanup handler earlier clone: drop period from end of die_errno message filter_ref: avoid overwriting ref->old_sha1 with garbage filter_ref: make a copy of extra "sought" entries fetch_refs_via_pack: free extra copy of refs fetch-pack: remove dead assignment to ref->new_sha1 t5312: test object deletion code paths in a corrupted repository refs: introduce a "ref paranoia" flag prune: turn on ref_paranoia flag repack: turn on "ref paranoia" when doing a destructive repack refs.c: drop curate_packed_refs John Szakmeister (1): contrib/completion: escape the forward slash in __git_match_ctag Junio C Hamano (5): SubmittingPatches: encourage users to use format-patch and send-email report_path_error(): move to dir.c Update mailmap to spell out "Alexander Kuleshov" Prepare for 2.3.5 Git 2.3.5 Nguyễn Thái Ngọc Duy (1): git.txt: list index versions in plain English Phil Hord (1): git-push.txt: clean up force-with-lease wording SZEDER Gábor (1): completion: use __gitcomp_nl() for completing refs Sebastian Schuberth (2): docs: clarify "preserve" option wording for git-pull docs: clarify what git-rebase's "-p" / "--preserve-merges" does Thomas Ackermann (1): 2.3.2 release notes: typofix Thomas Gummerer (2): t1700: make test pass with index-v4 read-cache: fix reading of split index Wilhelm Schuermann (1): grep: fix "--quiet" overwriting current output Version v2.3.4; changes since v2.3.3: ------------------------------------- Alexander Kuleshov (1): git: make was_alias and done_help non-static Eric Sunshine (2): rebase-interactive: suppress whitespace preceding item count rebase-interactive: re-word "item count" comment Junio C Hamano (8): Documentation/config.txt: avoid unnecessary negation Documentation/config.txt: explain multi-valued variables once Documentation/config.txt: describe the structure first and then meaning Documentation/config.txt: have a separate "Values" section Documentation/config.txt: describe 'color' value type in the "Values" section Documentation/config.txt: simplify boolean description in the syntax section log --decorate: do not leak "commit" color into the next item Git 2.3.4 Karthik Nayak (1): git: treat "git -C '<path>'" as a no-op when <path> is empty Kyle J. McKay (2): imap-send: use cURL automatically when NO_OPENSSL defined t7510: do not fail when gpg warns about insecure memory Michael J Gruber (1): config,completion: add color.status.unmerged René Scharfe (2): zlib: initialize git_zstream in git_deflate_init{,_gzip,_raw} use isxdigit() for checking if a character is a hexadecimal digit SZEDER Gábor (2): completion: add a test for __git_remotes() helper function completion: simplify __git_remotes() Torsten Bögershausen (3): connect.c: allow ssh://user@[2001:db8::1]/repo.git t5601: add more test cases for IPV6 t5500: show user name and host in diag-url Version v2.3.3; changes since v2.3.2: ------------------------------------- Anders Kaseorg (1): t5516: correct misspelled pushInsteadOf Ben Walton (1): kwset: use unsigned char to store values with high-bit set Jeff King (5): git_connect: let user override virtual-host we send to daemon t5570: test git-daemon's --interpolated-path option daemon: sanitize incoming virtual hostname diffcore-rename: split locate_rename_dst into two functions diffcore-rename: avoid processing duplicate destinations Johannes Sixt (1): test_ln_s_add: refresh stat info of fake symbolic links Junio C Hamano (11): apply: reject input that touches outside the working area apply: do not read from the filesystem under --index apply: do not read from beyond a symbolic link apply: do not touch a file beyond a symbolic link t4008: correct stale comments t9300: correct expected object names t4010: correct expected object names tests: do not borrow from COPYING and README from the real source t/diff-lib: check exact object names in compare_diff_raw t4008: modernise style Git 2.3.3 Michael J Gruber (1): git-remote.txt: describe behavior without --tags and --no-tags Michal Sojka (1): submodule: improve documentation of update subcommand Mikko Rapeli (1): Documentation/git-clean.txt: document that -f may need to be given twice Mårten Kongstad (1): diff --shortstat --dirstat: remove duplicate output Nguyễn Thái Ngọc Duy (1): grep: correct help string for --exclude-standard René Scharfe (2): daemon: look up client-supplied hostname lazily daemon: use callback to build interpolated path Version v2.3.2; changes since v2.3.1: ------------------------------------- Aleksander Boruch-Gruszecki (1): merge-file: correctly open files when in a subdir Aleksey Vasenev (1): wincred: fix get credential if username has "@" Alexander Kuleshov (1): Git.pm: two minor typo fixes Eric Sunshine (1): builtin/blame: destroy initialized commit_info only Jeff King (8): t/lib-httpd: switch SANITY check for NOT_ROOT t/lib-gpg: include separate public keys in keyring.gpg t/lib-gpg: sanity-check that we can actually sign config: do not ungetc EOF decimal_width: avoid integer overflow config_buf_ungetc: warn when pushing back a random character for_each_loose_file_in_objdir: take an optional strbuf path fast-import: avoid running end_packfile recursively Jonathon Mah (1): sha1_file: fix iterating loose alternate objects Junio C Hamano (7): tests: correct misuses of POSIXPERM config.txt: clarify that add.ignore-errors is deprecated config.txt: mark deprecated variables more prominently Documentation/git-remote.txt: stress that set-url is not for triangular CodingGuidelines: describe naming rules for configuration variables Prepare for 2.3.2 Git 2.3.2 Kirill A. Shutemov (1): rebase -i: use full object name internally throughout the script Kyle J. McKay (3): git-compat-util: do not step on MAC_OS_X_VERSION_MIN_REQUIRED git-send-email.perl: support no- prefix with older GetOptions Git::SVN::*: avoid premature FileHandle closure Matthieu Moy (2): Documentation/config.txt: document mailinfo.scissors Documentation/git-am.txt: mention mailinfo.scissors config variable Mike Hommey (2): transport-helper: do not request symbolic refs to remote helpers transport-helper: fix typo in error message when --signed is not supported Patrick Steinhardt (1): git-submodule.sh: fix '/././' path normalization Ramsay Jones (1): git-compat-util.h: remove redundant code René Scharfe (4): connect: use strcmp() for string comparison for-each-ref: use skip_prefix() to avoid duplicate string comparison pretty: use starts_with() to check for a prefix sha1_name: use strlcpy() to copy strings Ryuichi Kokubo (1): git-svn: fix localtime=true on non-glibc environments Stefan Beller (2): hex.c: reduce memory footprint of sha1_to_hex static buffers read-cache.c: free cache entry when refreshing fails Tom G. Christensen (2): Makefile: handle broken curl version number in version check ewah: fix building with gcc < 3.4.0 Torsten Bögershausen (1): test-lib.sh: set prerequisite SANITY by testing what we really need Дилян Палаузов (1): do not include the same header twice Version v2.3.1; changes since v2.3.0: ------------------------------------- Alexander Kuleshov (1): add -i: return from list_and_choose if there is no candidate Doug Kelly (2): t4255: test am submodule with diff.submodule format-patch: ignore diff.submodule setting Jeff King (7): git-compat-util: add xstrdup_or_null helper builtin/apply.c: use xstrdup_or_null instead of null_strdup builtin/commit.c: use xstrdup_or_null instead of envdup use xstrdup_or_null to replace ternary conditionals dumb-http: do not pass NULL path to parse_pack_index read_and_strip_branch: fix typo'd address-of operator do not check truth value of flex arrays Jonathan Nieder (1): rerere: error out on autoupdate failure Junio C Hamano (6): apply.c: typofix apply: make update_pre_post_images() sanity check the given postlen apply: count the size of postimage correctly Documentation: what does "git log --indexed-objects" even mean? diff-format doc: a score can follow M for rewrite Git 2.3.1 Lukas Fleischer (1): blame.c: fix garbled error message Michael J Gruber (2): commit: reword --author error message git-push.txt: document the behavior of --repo brian m. carlson (1): remote-curl: fall back to Basic auth if Negotiate fails Version v2.3.0; changes since v2.3.0-rc2: ----------------------------------------- Alex Henrie (1): l10n: ca.po: Fix trailing whitespace Junio C Hamano (1): Git 2.3 Version v2.3.0-rc2; changes since v2.3.0-rc1: --------------------------------------------- Alex Henrie (1): l10n: ca.po: update translation Alexander Kuleshov (1): cat-file: use "type" and "size" from outer scope Benedikt Heine (1): l10n: de.po: fix typo Jean-Noël Avila (2): l10n: fr.po v2.3.0 round 1 l10n: fr.po v2.3.0 round 2 Jiang Xin (5): l10n: git.pot: v2.3.0 round 1 (13 new, 11 removed) l10n: zh_CN: translations for git v2.3.0-rc0 l10n: git.pot: v2.3.0 round 2 (3 updated) l10n: zh_CN: various fixes on command arguments l10n: correct indentation of show-branch usage Joan Perals (1): l10n: ca.po: various fixes Johannes Sixt (1): t1050-large: generate large files without dd Junio C Hamano (1): Git 2.3.0-rc2 Kacper Kornet (1): Fix unclosed here document in t3301.sh Michael J Gruber (2): l10n: de.po: translate "leave behind" correctly l10n: de.po: correct singular form Peter Krefting (2): l10n: sv.po: Update Swedish translation (2298t0f0u) l10n: sv.po: Update Swedish translation (2298t0f0u) Ralf Thielow (4): l10n: de.po: translate "track" as "versionieren" l10n: de.po: fix typo l10n: de.po: translate 13 new messages l10n: de.po: translate 3 messages Sven van Haastregt (1): Documentation: fix version numbering Trần Ngọc Quân (2): l10n: vi.po(2298t): Updated and change Plural-Forms l10n: vi.po(2298t): Updated 3 new strings Version v2.3.0-rc1; changes since v2.3.0-rc0: --------------------------------------------- Adam Williamson (1): correct smtp-ssl-cert-path description Alexander Kuleshov (4): show-branch: line-wrap show-branch usage git.c: remove unnecessary #includes cat-file: remove unused includes Documentation: list long options for -v and -n Jeff King (4): t1301: set umask in reflog sharedrepository=group test update-server-info: create info/* with mode 0666 http-push: trim trailing newline from remote symref parse_color: fix return value for numeric color values 0-8 Jess Austin (1): git-prompt.sh: allow to hide prompt for ignored pwd Johannes Schindelin (2): git remote: allow adding remotes agreeing with url.<...>.insteadOf Add a regression test for 'git remote add <existing> <same-url>' Junio C Hamano (2): Fifth batch for 2.3 cycle Git 2.3.0-rc1 Kyle J. McKay (3): log.c: fix translation markings imap-send.c: support GIT_CURL_VERBOSE imap-send.c: set CURLOPT_USE_SSL to CURLUSESSL_TRY Matthieu Moy (1): git-completion: add --autostash for 'git rebase' Philip Oakley (2): doc: core.ignoreStat clarify the --assume-unchanged effect doc: core.ignoreStat update, and clarify the --assume-unchanged effect Ralf Thielow (1): show-branch: fix indentation of usage string Ramkumar Ramachandra (2): Git::SVN: handle missing ref_id case correctly git-svn: make it play nicely with submodules Raphael Kubo da Costa (1): for-each-ref: always check stat_tracking_info()'s return value Reuben Hawkins (3): configure.ac: check 'tv_nsec' field in 'struct stat' configure.ac: check for clock_gettime and CLOCK_MONOTONIC configure.ac: check for HMAC_CTX_cleanup Richard Hansen (3): git-prompt.sh: if pc mode, immediately set PS1 to a plain prompt test-lib: use 'test ...' instead of '[ ... ]' test-lib.sh: do tests for color support after changing HOME Steffen Prohaska (1): subtree: fix AsciiDoc list item continuation Tony Finch (1): git-prompt: preserve value of $? in all cases Version v2.3.0-rc0; changes since v2.2.3: ----------------------------------------- Alfred Perlstein (1): git-svn: support for git-svn propset Beat Bolli (5): update_unicode.sh: simplify output capture update_unicode.sh: set UNICODE_DIR only once update_unicode.sh: shorten uniset invocation path update_unicode.sh: make the output structure visible update_unicode.sh: delete the command group Ben Walton (1): t0090: tweak awk statement for Solaris /usr/xpg4/bin/awk Bernhard Reiter (2): imap-send: use parse options API to determine verbosity git-imap-send: use libcurl for implementation Christian Couder (5): commit: make ignore_non_trailer() non static trailer: reuse ignore_non_trailer() to ignore conflict lines trailer: add test with an old style conflict block bisect: parse revs before passing them to check_expected_revs() bisect: add test to check that revs are properly parsed Christian Hesse (4): tests: create gpg homedir on the fly tests: skip RFC1991 tests for gnupg 2.1 tests: replace binary GPG keyrings with ASCII-armored keys tests: make comment on GPG keyring match the code Dan Wyand (1): git-sh-setup.sh: use dashdash with basename call David Aguilar (4): mergetool--lib: remove use of $status global difftool--helper: add explicit exit statement mergetool: simplify conditionals mergetools: stop setting $status in merge_cmd() David Michael (1): compat: convert modes to use portable file type values Eric Sunshine (7): git-compat-util: suppress unavoidable Apple-specific deprecation warnings t2004: modernize style t2004: drop unnecessary write-tree/read-tree t2004: standardize file naming in symlink test t2004: demonstrate broken relative path printing checkout-index: fix --temp relative path mangling SubmittingPatches: explain rationale for using --notes with format-patch Jeff King (13): parse_color: refactor color storage parse_color: support 24-bit RGB values parse_color: recognize "no$foo" to clear the $foo attribute diff-highlight: allow configurable colors credential: let helpers tell us to quit prompt: respect GIT_TERMINAL_PROMPT to disable terminal prompts fsck: properly bound "invalid tag name" error message parse_color: drop COLOR_BACKGROUND macro pkt-line: allow writing of LARGE_PACKET_MAX buffers t: support clang/gcc AddressSanitizer commit: loosen ident checks when generating template commit: always populate GIT_AUTHOR_* variables add--interactive: leave main loop on read error Jim Hill (1): pre-push.sample: remove unnecessary and misleading IFS=' ' Johan Herland (9): builtin/notes: fix premature failure when trying to add the empty blob t3301: verify that 'git notes' removes empty notes by default builtin/notes: improve naming builtin/notes: refactor note file path into struct note_data builtin/notes: simplify early exit code in add() builtin/notes: split create_note() to clarify add vs. remove logic builtin/notes: add --allow-empty, to allow storing empty notes notes: empty notes should be shown by 'git log' t3301: modernize style Johannes Schindelin (2): receive-pack: add another option for receive.denyCurrentBranch test-hashmap: squelch gcc compiler warning Johannes Sixt (1): t5000 on Windows: do not mistake "sh.exe" as "sh" Junio C Hamano (30): checkout: report upstream correctly even with loosely defined branch.*.merge clone: --dissociate option to mark that reference is only temporary diff -B -M: fix output for "copy and then rewrite" case builtin/merge.c: drop a parameter that is never used merge & sequencer: unify codepaths that write "Conflicts:" hint strbuf_add_commented_lines(): avoid SP-HT sequence in commented lines builtin/commit.c: extract ignore_non_trailer() helper function merge & sequencer: turn "Conflicts:" hint into a comment bisect: clean flags after checking merge bases get_merge_bases(): always clean-up object flags unpack_trees: plug leakage of o->result mergetool--lib: remove no-op assignment to $status from setup_user_tool SubmittingPatches: refer to t/README for tests t/README: justify why "! grep foo" is sufficient t9001: style modernisation phase #1 t9001: style modernisation phase #2 t9001: style modernisation phase #3 t9001: style modernisation phase #4 t9001: style modernisation phase #5 system_path(): always return free'able memory to the caller t5516: more tests for receive.denyCurrentBranch=updateInstead run-command.c: retire unused run_hook_with_custom_index() t3102: document that ls-tree does not yet support negated pathspec t3102: style modernization First batch for 2.3 cycle tests: squelch noise from GPG machinery set-up Second batch for 2.3 cycle Third batch for 2.3 cycle Fourth batch for 2.3 cycle Git 2.3.0-rc0 Justin Guenther (1): git-prompt.sh: make $f local to __git_eread() Karsten Blees (1): pack-bitmap: do not use gcc packed attribute Luis Henriques (2): send-email: add --[no-]xmailer option test/send-email: --[no-]xmailer tests Michael Haggerty (10): cmd_config(): make a copy of path obtained from git_path() prune_remote(): exit early if there are no stale references prune_remote(): initialize both delete_refs lists in a single loop prune_remote(): sort delete_refs_list references en masse repack_without_refs(): make the refnames argument a string_list prune_remote(): rename local variable prune_remote(): iterate using for_each_string_list_item() sort_string_list(): rename to string_list_sort() t1400: add some more tests of "update-ref --stdin"'s verify command update-ref: fix "verify" command with missing <oldvalue> Michael J Gruber (4): t3200-branch: test -M check-ignore: clarify treatment of tracked files gitignore.txt: do not suggest assume-unchanged branch: allow -f with -m and -d Nguyễn Thái Ngọc Duy (6): lockfile.c: store absolute path tree.c: update read_tree_recursive callback to pass strbuf as base ls-tree: remove path filtering logic in show_tree ls-tree: disable negative pathspec because it's not supported index-pack: terminate object buffers with NUL index-format.txt: add a missing closing quote Onno Kortmann (1): Show number of TODO items for interactive rebase Paolo Bonzini (4): git-send-email: delay creation of MIME headers git-send-email: add --transfer-encoding option git-mailinfo: add --message-id git-am: add --message-id/--no-message-id Paul Smith (1): git-new-workdir: don't fail if the target directory is empty Peter van der Does (1): Update documentation occurrences of filename .sh Philip Oakley (1): doc: make clear --assume-unchanged's user contract Ralf Thielow (3): builtin/push.c: fix description of --recurse-submodules option for-each-ref: correct spelling of Tcl in option description completion: add git-tag options Ramsay Jones (2): git-compat-util.h: don't define _XOPEN_SOURCE on cygwin t0050-*.sh: mark the rename (case change) test as passing René Scharfe (6): use args member of struct child_process use strbuf_complete_line() for adding a newline if needed commit-tree: simplify parsing of option -S using skip_prefix() merge: release strbuf after use in suggest_conflicts() transport: simplify duplicating a substring in transport_get() using xmemdupz() refs: plug strbuf leak in lock_ref_sha1_basic() Ronnie Sahlberg (1): lock_ref_sha1_basic: do not die on locking errors Slavomir Vlcek (3): builtin: move builtin retrieval to get_builtin() apply: fix typo in an error message Documentation/git-stripspace: add synopsis for --comment-lines Stefan Beller (5): string_list: document string_list_(insert,lookup) mailmap: use higher level string list functions string_list: remove string_list_insert_at_index() from its API t5400: remove dead code Documentation/SubmittingPatches: unify whitespace/tabs for the DCO Thomas Quinot (1): git_connect: set ssh shell command in GIT_SSH_COMMAND Tony Finch (1): git-prompt: preserve value of $? inside shell prompt Torsten Bögershausen (2): init-db: improve the filemode trustability check t0027: check the eol conversion warnings brian m. carlson (3): Documentation: add missing article in rev-list-options.txt rev-list: add an option to mark fewer edges as uninteresting pack-objects: use --objects-edge-aggressive for shallow repos Роман Донченко (2): send-email: align RFC 2047 decoding more closely with the spec send-email: handle adjacent RFC 2047-encoded words properly Version v2.2.3; changes since v2.2.2: ------------------------------------- Jeff King (4): verify_absent: allow filenames longer than PATH_MAX notes: use a strbuf in add_non_note read_info_alternates: handle paths larger than PATH_MAX show-branch: use a strbuf for reflog descriptions Junio C Hamano (1): Git 2.2.3 Version v2.2.2; changes since v2.2.1: ------------------------------------- Alexander Kuleshov (1): clean: typofix Jeff King (17): pass TIME_DATE_NOW to approxidate future-check checkout $tree: do not throw away unchanged index entries approxidate: allow ISO-like dates far in the future Makefile: have perl scripts depend on NO_PERL setting t0090: mark add-interactive test with PERL prerequisite t960[34]: mark cvsimport tests as requiring perl gitweb: hack around CGI's list-context param() handling docs: describe ANSI 256-color mode config: fix parsing of "git config --get-color some.key -1" t4026: test "normal" color push: truly use "simple" as default, not "upstream" for_each_reflog_ent_reverse: fix newlines on block boundaries for_each_reflog_ent_reverse: turn leftover check into assertion read_packed_refs: use a strbuf for reading lines read_packed_refs: pass strbuf to parse_ref_line read_packed_refs: use skip_prefix instead of static array is_hfs_dotgit: loosen over-eager match of \u{..47} Johannes Sixt (1): Windows: correct detection of EISDIR in mingw_open() Jonathan Nieder (2): Makefile: simplify by using SCRIPT_{PERL,SH}_GEN macros Makefile: have python scripts depend on NO_PYTHON setting Junio C Hamano (2): Prepare for 2.2.2 Git 2.2.2 Michael Haggerty (1): create_default_files(): don't set u+x bit on $GIT_DIR/config Michael J Gruber (1): add: ignore only ignored files Mike Hommey (1): sha1_name: avoid unnecessary sha1 lookup in find_unique_abbrev René Scharfe (2): use labs() for variables of type long instead of abs() use labs() for variables of type long instead of abs() Ronald Wampler (1): git-am.txt: --ignore-date flag is not passed to git-apply brian m. carlson (1): Documentation: change "gitlink" typo in git-push Version v2.2.1; changes since v2.2.0: ------------------------------------- Hartmut Henkel (1): l10n: de.po: fix typos Jeff King (8): unpack-trees: propagate errors adding entries to the index read-tree: add tests for confusing paths like ".." and ".git" verify_dotfile(): reject .git case-insensitively t1450: refactor ".", "..", and ".git" fsck tests fsck: notice .git case-insensitively utf8: add is_hfs_dotgit() helper read-cache: optionally disallow HFS+ .git variants fsck: complain about HFS+ ".git" aliases in trees Johannes Schindelin (3): path: add is_ntfs_dotgit() helper read-cache: optionally disallow NTFS .git variants fsck: complain about NTFS ".git" aliases in trees Junio C Hamano (6): Start post 2.2 cycle Git 1.8.5.6 Git 1.9.5 Git 2.0.5 Git 2.1.4 Git 2.2.1 Version v2.2.0; changes since v2.2.0-rc3: ----------------------------------------- Junio C Hamano (1): Git 2.2 Marc Branchaud (1): RelNotes: spelling & grammar tweaks Version v2.2.0-rc3; changes since v2.2.0-rc2: --------------------------------------------- Alex Henrie (1): l10n: Update Catalan translation Christian Couder (2): trailer: ignore comment lines inside the trailers trailer: display a trailer without its trailing newline David Aguilar (1): difftool: honor --trust-exit-code for builtin tools Jiang Xin (3): l10n: git.pot: v2.2.0 round 2 (1 updated) l10n: batch updates for one trivial change l10n: remove a superfluous translation for push.c Junio C Hamano (2): Documentation/git-commit: clarify that --only/--include records the working tree contents Git 2.2.0-rc3 Max Horn (1): doc: add some crossrefs between manual pages Ralf Thielow (4): l10n: de.po: use imperative form for command options l10n: de.po: translate 62 new messages l10n: de.po: translate 2 new messages l10n: de.po: translate 2 messages Slavomir Vlcek (1): SubmittingPatches: final submission is To: maintainer and CC: list Stefan Beller (1): l10n: de.po: Fixup one translation Stefan Naewe (1): gittutorial: fix output of 'git status' Thomas Ackermann (1): gittutorial.txt: remove reference to ancient Git version Torsten Bögershausen (1): t5705: the file:// URL should be absolute Version v2.2.0-rc2; changes since v2.2.0-rc1: --------------------------------------------- Alexander Shopov (1): l10n: Updated Bulgarian translation of git (2296t,0f,0u) Jean-Noël Avila (1): l10n: fr.po (2296t) update for version 2.2.0 Jeff King (1): t1410: fix breakage on case-insensitive filesystems Jiang Xin (2): l10n: git.pot: v2.2.0 round 1 (62 new, 23 removed) l10n: zh_CN: translations for git v2.2.0-rc0 John Szakmeister (1): diff-highlight: exit when a pipe is broken Junio C Hamano (2): Update draft release notes to 2.2 Git 2.2.0-rc2 Nicolas Dermine (1): config.txt: fix typo Peter Krefting (1): l10n: sv.po: Update Swedish translation (2296t0f0u) René Scharfe (2): trailer: use CHILD_PROCESS_INIT in apply_command() run-command: use void to declare that functions take no parameters Thomas Quinot (1): Documentation/config.txt: fix minor typo Trần Ngọc Quân (1): l10n: vi.po: Update new message strings Version v2.2.0-rc1; changes since v2.2.0-rc0: --------------------------------------------- Ben North (1): gitignore.txt: fix spelling of "backslash" Jeff King (5): cache-tree: avoid infinite loop on zero-entry tree bundle: split out ref writing from bundle_create fetch: load all default config at startup ignore stale directories when checking reflog existence docs/credential-store: s/--store/--file/ Junio C Hamano (3): bundle: split out a helper function to create pack data bundle: split out a helper function to compute and write prerequisites Git 2.2.0-rc1 Matthieu Moy (1): RelNotes/2.2.0.txt: fix minor typos René Scharfe (1): use child_process_init() to initialize struct child_process variables Thomas Ackermann (1): Documentation: typofixes Tzvetan Mikov (1): line-log: fix crash when --first-parent is used Version v2.2.0-rc0; changes since v2.1.4: ----------------------------------------- Alex Henrie (1): grammofix in user-facing messages Arjun Sreedharan (1): calloc() and xcalloc() takes nmemb and then size Beat Bolli (1): pretty: provide a strict ISO 8601 date format Ben Walton (2): t/lib-credential: use write_script trace.c: do not mark getnanotime() as "inline" Bernhard Reiter (3): http.c: die if curl_*_init fails git-imap-send: simplify tunnel construction imap-send.c: imap_folder -> imap_server_conf.folder Brian Gernhardt (1): receive-pack::hmac_sha1(): copy the entire SHA-1 hash out Brice Lambson (1): MinGW: update tests to handle a native eol of crlf Charles Bailey (2): mergetool: don't require a work tree for --tool-help difftool: don't assume that default sh is sane Christian Couder (11): trailer: add data structures and basic functions trailer: process trailers from input message and arguments trailer: read and process config information trailer: process command line trailer arguments trailer: parse trailers from file or stdin trailer: put all the processing together and print trailer: add interpret-trailers command trailer: add tests for "git interpret-trailers" trailer: execute command from 'trailer.<name>.command' trailer: add tests for commands in config file Documentation: add documentation for 'git interpret-trailers' David Aguilar (19): stylefix: asterisks stick to the variable, not the type cleanups: ensure that git-compat-util.h is included first Documentation: a note about stdout for git rev-parse --verify --quiet t1503: use test_must_be_empty refs: make rev-parse --quiet actually quiet stash: prefer --quiet over shell redirection of the standard error stream completion: add --show-signature for log and show t7610-mergetool: use tabs instead of a mix of tabs and spaces t7610-mergetool: add missing && and remove commented-out code t7610-mergetool: prefer test_config over git config test-lib-functions: adjust style to match CodingGuidelines mergetool: use more conservative temporary filenames git-sh-setup: move GIT_DIR initialization into a function t7610-mergetool: use test_config to isolate tests test-lib-functions: adjust style to match CodingGuidelines mergetool: use more conservative temporary filenames mergetool: add an option for writing to a temporary directory t7610-mergetool: add test cases for mergetool.writeToTemp difftool: add support for --trust-exit-code David Michael (3): git-compat-util.h: support variadic macros with the XL C compiler Makefile: reorder linker flags in the git executable rule compat/bswap.h: detect endianness from XL C compiler macros David Turner (4): cache-tree: create/update cache-tree on checkout test-dump-cache-tree: invalid trees are not errors cache-tree: subdirectory tests cache-tree: Write updated cache-tree after commit Eric Wong (15): git svn: info: correctly handle absolute path args git svn: find-rev allows short switches for near matches git-svn: delay term initialization git-svn: reduce check_cherry_pick cache overhead git-svn: cache only mergeinfo revisions git-svn: remove mergeinfo rev caching git-svn: reload RA every log-window-size git-svn: remove unnecessary DESTROY override git-svn: save a little memory as fetch progresses git-svn: disable _rev_list memoization Git.pm: add specified name to tempfile template git-svn: prepare SVN::Ra config pieces once git-svn: (cleanup) remove editor param passing git-svn: add space after "W:" prefix in warning git-svn: use SVN::Ra::get_dir2 when possible Etienne Buira (2): index-pack: fix compilation with NO_PTHREADS Handle atexit list internaly for unthreaded builds Harry Jeffery (1): pretty: add %D format specifier Ian Liu Rodrigues (1): Makefile: fix some typos in the preamble Jaime Soriano Pastor (2): read_index_from(): catch out of order entries when reading an index file read_index_unmerged(): remove unnecessary loop index adjustment Jakob Stoklund Olesen (2): git-svn: only look at the new parts of svn:mergeinfo git-svn: only look at the root path for svn:mergeinfo Jeff King (54): stash: default listing to working-tree diff subtree: make "all" default target of Makefile http: style fixes for curl_multi_init error check Makefile: use `find` to determine static header dependencies log-tree: make add_name_decoration a public function log-tree: make name_decoration hash static Makefile: drop CHECK_HEADER_DEPENDENCIES code log-tree: use FLEX_ARRAY in name_decoration commit: provide a function to find a header in a buffer record_author_date(): fix memory leak on malformed commit record_author_date(): use find_commit_header() date: use strbufs in date-formatting functions teach fast-export an --anonymize option docs/fast-export: explain --anonymize more completely determine_author_info(): reuse parsing functions determine_author_info(): copy getenv output refs: write packed_refs file using stdio refs: speed up is_refname_available prune-packed: fix minor memory leak make update-server-info more robust server-info: clean up after writing info/packs credential-cache: close stderr in daemon process branch: clean up commit flags after merge-filter walk t5304: use test_path_is_* instead of "test -f" t5304: use helper to report failure of "test foo = bar" test-lib.sh: support -x option for shell-tracing color_parse: do not mention variable name in error message foreach_alt_odb: propagate return value from callback isxdigit: cast input to unsigned char object_array: factor out slopbuf-freeing logic object_array: add a "clear" function clean up name allocation in prepare_revision_walk reachable: use traverse_commit_list instead of custom walk reachable: reuse revision.c "add all reflogs" code prune: factor out loose-object directory traversal reachable: mark index blobs as SEEN prune-packed: use for_each_loose_file_in_objdir count-objects: do not use xsize_t when counting object size count-objects: use for_each_loose_file_in_objdir sha1_file: add for_each iterators for loose and packed objects prune: keep objects reachable from recent objects pack-objects: refactor unpack-unreachable expiration check pack-objects: match prune logic for discarding objects write_sha1_file: freshen existing objects make add_object_array_with_context interface more sane traverse_commit_list: support pending blobs/trees with paths t5516: test pushing a tag of an otherwise unreferenced blob rev-list: document --reflog option rev-list: add --indexed-objects option reachable: use revision machinery's --indexed-objects code pack-objects: use argv_array repack: pack objects mentioned by the index pack-objects: double-check options before discarding objects drop add_object_array_with_mode Johannes Schindelin (6): Refactor type_from_string() to allow continuing after detecting an error fsck_object(): allow passing object data separately from the object itself Make sure fsck_commit_buffer() does not run out of the buffer fsck: check tag objects' headers Add regression tests for stricter tag fsck'ing Make sure that index-pack --strict checks tag objects Johannes Sixt (3): t9300: use test_cmp_bin instead of test_cmp to compare binary files mingw.h: add dummy functions for sigset_t operations difftool--helper: exit when reading a prompt answer fails John Szakmeister (1): completion: silence "fatal: Not a git repository" error Jonas 'Sortie' Termansen (3): git-compat-util.h: add missing semicolon after struct itimerval autoconf: check for struct itimerval autoconf: check for setitimer() Jonathan Nieder (10): i18n: treat "make pot" as an explicitly-invoked target update-ref --stdin: narrow scope of err strbuf update-ref --stdin: pass transaction around explicitly pass config slots as pointers instead of offsets mv test: recreate mod/ directory instead of relying on stale copy branch -d: avoid repeated symref resolution packed-ref cache: forbid dot-components in refnames refs.c: do not permit err == NULL lockfile: remove unable_to_lock_error ref_transaction_commit: bail out on failure to remove a ref Junio C Hamano (55): tests: drop GIT_*_TIMING_TESTS environment variable support lockfile: allow reopening a closed but still locked file test prerequisites: eradicate NOT_FOO test prerequisites: enumerate with commas config.mak.uname: add hint on uname_R for MacOS X Start the post-2.1 cycle cache-tree: do not try to use an invalidated subtree info to build a tree parse-options: detect attempt to add a duplicate short option name Update draft release notes to 2.2 Update draft release notes to 2.2 hash-object: reduce file-scope statics hash-object: pass 'write_object' as a flag hash-object: add --literally option t1450: make sure fsck detects a malformed tagger line receive-pack: do not overallocate command structure receive-pack: parse feature request a bit earlier receive-pack: do not reuse old_sha1[] for other things receive-pack: factor out queueing of command send-pack: move REF_STATUS_REJECT_NODELETE logic a bit higher send-pack: refactor decision to send update per ref send-pack: always send capabilities send-pack: factor out capability string generation receive-pack: factor out capability string generation send-pack: rename "new_refs" to "need_pack_data" send-pack: refactor inspecting and resetting status and sending commands send-pack: clarify that cmds_sent is a boolean gpg-interface: move parse_gpg_output() to where it should be gpg-interface: move parse_signature() to where it should be pack-protocol doc: typofix for PKT-LINE push: the beginning of "git push --signed" receive-pack: GPG-validate push certificates send-pack: send feature request on push-cert packet signed push: remove duplicated protocol info signed push: add "pushee" header to push certificate receive-pack: allow hooks to ignore its standard input stream signed push: fortify against replay attacks signed push: teach smart-HTTP to pass "git push --signed" around signed push: allow stale nonce in stateless mode Update draft release notes to 2.2 t7004: give the test a bit more stack space Update draft release notes to 2.2 Update draft release notes to 2.2 Update draft release notes to 2.2 completion: use "git -C $there" instead of (cd $there && git ...) pack-objects: set number of threads before checking and warning t1308: fix broken here document in test script Update draft release notes to 2.2 reflog test: test interaction with detached HEAD Revert "archive: honor tar.umask even for pax headers" Update draft release notes to 2.2 mergetool: rename bc3 to bc Update draft release notes to 2.2 Update draft release notes to 2.2 Update draft release notes to 2.2 Git 2.2.0-rc0 Kyle J. McKay (1): config.mak.uname: set NO_APPLE_COMMON_CRYPTO on older systems Lawrence Velázquez (1): git-svn.txt: Remove mentions of repack options Linus Arver (7): Documentation: git-init: typographical fixes Documentation: git-init: list items facelift Documentation: git-init: template directory: reword Documentation: git-init: --separate-git-dir: clarify Documentation: git-init: reword parenthetical statements Documentation: git-init: template directory: reword and cross-reference Documentation: git-init: flesh out example Matthias Rüster (2): rerere.h: mark string for translation builtin/log.c: mark strings for translation Matthieu Moy (7): config --global --edit: create a template file if needed home_config_paths(): let the caller ignore xdg path commit: advertise config --global --edit on guessed identity config.c: mark error and warnings strings for translation config.c: fix accuracy of line number in errors builtin/log.c: fix minor memory leak merge, pull: stop advising 'commit -a' in case of conflict Max Kirillov (2): gitk: Show detached HEAD if --all is specified gitk: Remove boilerplate for configuration variables Maxim Bublis (1): contrib/svn-fe: fix Makefile Michael Haggerty (41): unable_to_lock_die(): rename function from unable_to_lock_index_die() api-lockfile: revise and expand the documentation close_lock_file(): exit (successfully) if file is already closed rollback_lock_file(): do not clear filename redundantly rollback_lock_file(): exit early if lock is not active rollback_lock_file(): set fd to -1 lockfile: unlock file if lockfile permissions cannot be adjusted hold_lock_file_for_append(): release lock on errors lock_file(): always initialize and register lock_file object lockfile.c: document the various states of lock_file objects cache.h: define constants LOCK_SUFFIX and LOCK_SUFFIX_LEN delete_ref_loose(): don't muck around in the lock_file's filename prepare_index(): declare return value to be (const char *) lock_file(): exit early if lockfile cannot be opened remove_lock_file(): call rollback_lock_file() commit_lock_file(): inline temporary variable commit_lock_file(): die() if called for unlocked lockfile object close_lock_file(): if close fails, roll back commit_lock_file(): rollback lock file on failure to rename api-lockfile: document edge cases dump_marks(): remove a redundant call to rollback_lock_file() git_config_set_multivar_in_file(): avoid call to rollback_lock_file() lockfile: avoid transitory invalid states struct lock_file: declare some fields volatile try_merge_strategy(): remove redundant lock_file allocation try_merge_strategy(): use a statically-allocated lock_file object commit_lock_file(): use a strbuf to manage temporary space lockfile: change lock_file::filename into a strbuf resolve_symlink(): use a strbuf for internal scratch space resolve_symlink(): take a strbuf parameter trim_last_path_component(): replace last_path_elm() commit_lock_file_to(): refactor a helper out of commit_lock_file() lockfile: rename LOCK_NODEREF to LOCK_NO_DEREF lockfile.c: rename static functions get_locked_file_path(): new function hold_lock_file_for_append(): restore errno before returning hold_locked_index(): move from lockfile.c to read-cache.c lockfile.h: extract new header file for the functions in lockfile.c fdopen_lock_file(): access a lockfile using stdio dump_marks(): reimplement using fdopen_lock_file() commit_packed_refs(): reimplement using fdopen_lock_file() Michael J Gruber (2): push: heed user.signingkey for signed pushes t/lib-gpg: make gpghome files writable Monard Vong (1): git-svn: branch: avoid systematic prompt for cert/pass Nguyễn Thái Ngọc Duy (16): mv: mark strings for translations mv: flatten error handling code block utf8.c: fix strbuf_utf8_replace() consuming data beyond input string wrapper.c: introduce gentle xmallocz that does not die() sha1_file.c: do not die failing to malloc in unpack_compressed_entry diff.c: allow to pass more flags to diff_populate_filespec diff --stat: mark any file larger than core.bigfilethreshold binary diff: shortcut for diff'ing two binary SHA-1 objects mv: split submodule move preparation code out mv: remove an "if" that's always true mv: move index search code out mv: unindent one level for directory move code mv: combine two if(s) mv: no SP between function name and the first opening parenthese archive: support filtering paths with glob dir.c: remove the second declaration of "stk" in prep_exclude() Pat Thoyts (1): Makefile: propagate NATIVE_CRLF to C Patrick Reynolds (2): use a hashmap to make remotes faster unblock and unignore SIGPIPE Philip Oakley (4): doc: modernise everyday.txt wording and format in man page style doc: Makefile regularise OBSOLETE_HTML list building doc: add 'everyday' to 'git help' doc: fix 'git status --help' character quoting Ramsay Jones (1): revision: remove definition of unused 'add_object' function René Scharfe (44): strbuf: add strbuf_getcwd() unix-sockets: use strbuf_getcwd() init: avoid superfluous real_path() calls turn path macros into inline function run-command: introduce CHILD_PROCESS_INIT run-command: introduce child_process_init() run-command: call run_command_v_opt_cd_env() instead of duplicating it run-command: inline prepare_run_command_v_opt() sha1_name: avoid quadratic list insertion in handle_one_ref walker: avoid quadratic list insertion in mark_complete setup: convert setup_git_directory_gently_1 et al. to strbuf abspath: use strbuf_getcwd() to remember original working directory abspath: convert real_path_internal() to strbuf wrapper: add xgetcwd() use xgetcwd() to get the current directory or die use xgetcwd() to set $GIT_DIR abspath: convert absolute_path() to strbuf use strbuf_add_absolute_path() to add absolute paths connect: simplify check_ref() using skip_prefix() and starts_with() pack-write: simplify index_pack_lockfile using skip_prefix() and xstrfmt() config: simplify git_config_include() http-walker: simplify process_alternates_response() using strbuf merge-tree: remove unused df_conflict arguments imap-send: simplify v_issue_imap_cmd() and get_cmd_result() using starts_with() trace: correct trace_strbuf() parameter type for !HAVE_VARIADIC_MACROS strbuf: export strbuf_addchars() strbuf: use strbuf_addchars() for adding a char multiple times repack: call prune_packed_objects() and update_server_info() directly add macro REALLOC_ARRAY use REALLOC_ARRAY for changing the allocation size of arrays graph: simplify graph_padding_line() remote: simplify match_name_with_pattern() using strbuf t0090: avoid passing empty string to printf %d sha1-array: add test-sha1-array and basic tests sha1-lookup: handle duplicates in sha1_pos() bundle: plug minor memory leak in is_tag_in_date_range() mailsplit: remove unnecessary unlink(2) call use skip_prefix() to avoid more magic numbers receive-pack: plug minor memory leak in unpack() run-command: add env_array, an optional argv_array for env use env_array member of struct child_process grep: add color.grep.matchcontext and color.grep.matchselected receive-pack: avoid minor leak in case start_async() fails api-run-command: add missing list item marker Robert de Bath (1): config.txt: pack.windowmemory limit applies per-thread Ronnie Sahlberg (38): refs.c: change ref_transaction_create to do error checking and return status refs.c: update ref_transaction_delete to check for error and return status refs.c: make ref_transaction_begin take an err argument refs.c: add transaction.status and track OPEN/CLOSED tag.c: use ref transactions when doing updates replace.c: use the ref transaction functions for updates commit.c: use ref transactions for updates sequencer.c: use ref transactions for all ref updates fast-import.c: change update_branch to use ref transactions branch.c: use ref transaction for all ref updates refs.c: change update_ref to use a transaction receive-pack.c: use a reference transaction for updating the refs fast-import.c: use a ref transaction when dumping tags walker.c: use ref transaction for ref updates refs.c: make lock_ref_sha1 static refs.c: remove the update_ref_lock function refs.c: remove the update_ref_write function refs.c: remove lock_ref_sha1 refs.c: make prune_ref use a transaction to delete the ref refs.c: make delete_ref use a transaction wrapper.c: remove/unlink_or_warn: simplify, treat ENOENT as success refs.c: lock_ref_sha1_basic is used for all refs wrapper.c: add a new function unlink_or_msg refs.c: add an err argument to delete_ref_loose refs.c: pass the ref log message to _create/delete/update instead of _commit rename_ref: don't ask read_ref_full where the ref came from refs.c: refuse to lock badly named refs in lock_ref_sha1_basic refs.c: call lock_ref_sha1_basic directly from commit refs.c: pass a list of names to skip to is_refname_available refs.c: ref_transaction_commit: distinguish name conflicts from other errors fetch.c: change s_update_ref to use a ref transaction refs.c: make write_ref_sha1 static refs.c: change resolve_ref_unsafe reading argument to be a flags field branch -d: simplify by using RESOLVE_REF_READING test: put tests for handling of bad ref names in one place refs.c: allow listing and deleting badly named refs for-each-ref: skip and warn about broken ref names remote rm/prune: print a message when writing packed-refs fails Sebastian Schuberth (3): subtree: add an install-html target contacts: add a Makefile to generate docs and install gitk: Do not depend on Cygwin's "kill" command on Windows Sergey Organov (1): Documentation/git-rebase.txt: document when --fork-point is auto-enabled Sergey Senozhatsky (1): compat-util: add _DEFAULT_SOURCE define Stefan Beller (12): remote.c: don't leak the base branch name in format_tracking_info clone.c: don't leak memory in cmd_clone prepare_revision_walk(): check for return value in all places builtin/blame.c: add translation to warning about failed revision walk mailsplit.c: remove dead code help: fix the size passed to qsort t9300-fast-import: fix typo in test description t6031-test-merge-recursive: do not forget to add file to be committed merge-recursive: fix copy-paste mistake merge-recursive: remove stale commented debugging code transport: free leaking head in transport_print_push_status() .mailmap: add Stefan Bellers corporate mail address Steffen Prohaska (8): convert: drop arguments other than 'path' from would_convert_to_git() config.c: add git_env_ulong() to parse environment variable memory_limit: use git_env_ulong() to parse GIT_ALLOC_LIMIT mmap_limit: introduce GIT_MMAP_LIMIT to allow testing expected mmap size copy_fd(): do not close the input file descriptor convert: stream from fd to required clean filter to reduce used address space Documentation: use single-parameter --cacheinfo in example sha1_file: don't convert off_t to size_t too early to avoid potential die() Sveinung Kvilhaugsvik (1): git-svn.txt: advertise pushurl with dcommit Tanay Abhra (24): add `config_set` API for caching config-like files test-config: add tests for the config_set API pretty.c: make git_pretty_formats_config return -1 on git_config_string failure add line number and file name info to `config_set` change `git_config()` return value to void config: add `git_die_config()` to the config-set API rewrite git_config() to use the config-set API add a test for semantic errors in config files add tests for `git_config_get_string_const()` daemon.c: replace `git_config()` with `git_config_get_bool()` family http-backend.c: replace `git_config()` with `git_config_get_bool()` family read-cache.c: replace `git_config()` with `git_config_get_*()` family archive.c: replace `git_config()` with `git_config_get_bool()` family fetchpack.c: replace `git_config()` with `git_config_get_*()` family rerere.c: replace `git_config()` with `git_config_get_*()` family builtin/gc.c: replace `git_config()` with `git_config_get_*()` family pager.c: replace `git_config()` with `git_config_get_value()` imap-send.c: replace `git_config()` with `git_config_get_*()` family alias.c: replace `git_config()` with `git_config_get_string()` branch.c: replace `git_config()` with `git_config_get_string() fast-import.c: replace `git_config()` with `git_config_get_*()` family ll-merge.c: refactor `read_merge_config()` to use `git_config_string()` merge-recursive.c: replace `git_config()` with `git_config_get_int()` builtin/apply.c: replace `git_config()` with `git_config_get_string_const()` Thomas Braun (2): pretty: note that %cd respects the --date= option completion: Add --ignore-blank-lines for diff Tony Finch (2): imap-send: clarify CRAM-MD5 vs LOGIN documentation imap-send: create target mailbox if it is missing Torsten Bögershausen (2): t0027: Tests for core.eol=native, eol=lf, eol=crlf core.filemode may need manual action W. Trevor King (2): pre-push.sample: Write error message to stderr t1304: Set LOGNAME even if USER is unset or null brian m. carlson (8): archive: honor tar.umask even for pax headers imap-send doc: omit confusing "to use imap-send" modifier Documentation: adjust document title underlining Documentation: fix mismatched delimiters in git-imap-send Documentation: move some AsciiDoc parameters into variables Documentation: implement linkgit macro for Asciidoctor Documentation: refactor common operations into variables Documentation: remove Asciidoctor linkgit macro Version v2.1.4; changes since v2.1.3: ------------------------------------- Ben North (1): gitignore.txt: fix spelling of "backslash" Jeff King (9): docs/credential-store: s/--store/--file/ unpack-trees: propagate errors adding entries to the index read-tree: add tests for confusing paths like ".." and ".git" verify_dotfile(): reject .git case-insensitively t1450: refactor ".", "..", and ".git" fsck tests fsck: notice .git case-insensitively utf8: add is_hfs_dotgit() helper read-cache: optionally disallow HFS+ .git variants fsck: complain about HFS+ ".git" aliases in trees Johannes Schindelin (3): path: add is_ntfs_dotgit() helper read-cache: optionally disallow NTFS .git variants fsck: complain about NTFS ".git" aliases in trees Junio C Hamano (4): Git 1.8.5.6 Git 1.9.5 Git 2.0.5 Git 2.1.4 Nicolas Dermine (1): config.txt: fix typo René Scharfe (1): clean: use f(void) instead of f() to declare a pointer to a function without arguments Thomas Quinot (1): Documentation/config.txt: fix minor typo Version v2.1.3; changes since v2.1.2: ------------------------------------- David Aguilar (1): mergetools/meld: make usage of `--output` configurable and more robust Eric Sunshine (1): mailinfo: work around -Wstring-plus-int warning Jeff King (2): mailinfo: make ">From" in-body header check more robust pack-objects: turn off bitmaps when we split packs Junio C Hamano (1): Git 2.1.3 René Scharfe (3): daemon: handle gethostbyname() error daemon: fix error message after bind() daemon: remove write-only variable maxfd Roland Mas (1): gitweb: use start_form, not startform that was removed in CGI.pm 4.04 Wieland Hoffmann (1): git-tag.txt: Add a missing hyphen to `-s` brian m. carlson (1): Documentation: fix misrender of pretty-formats in Asciidoctor Version v2.1.2; changes since v2.1.1: ------------------------------------- Jeff King (5): send-pack: take refspecs over stdin index-pack: fix race condition with duplicate bases fsck: exit with non-zero status upon error from fsck_obj() config: avoid a funny sentinel value "a^" fsck: return non-zero status on missing ref tips Junio C Hamano (1): Git 2.1.2 Max Kirillov (1): reachable.c: add HEAD to reachability starting commits Maxim Bublis (2): t9300: test filedelete command fast-import: fix segfault in store_tree() Phillip Sz (2): l10n: de.po: change Email to E-Mail l10n: de.po: use comma before "um" Ralf Thielow (1): po/TEAMS: add new member to German translation team Sergey Organov (2): Documentation/git-rebase.txt: -f forces a rebase that would otherwise be a no-op Documentation/git-rebase.txt: <upstream> must be given to specify <branch> Tanay Abhra (1): make config --add behave correctly for empty and NULL values Version v2.1.1; changes since v2.1.0: ------------------------------------- Alex Henrie (2): l10n: Add Catalan translation po/TEAMS: Add Catalan team Alexander Shopov (3): l10n: Updated Bulgarian translation of git (2228t,0f,0u) l10n: Updated Bulgarian translation of git (2247t,0f,0u) l10n: Updated Bulgarian translation of git (2257t,0f,0u) Edward Thomson (1): upload-pack: keep poll(2)'s timeout to -1 Jean-Noël Avila (1): l10n: fr.po (2257t) update for version 2.1.0 Jeff King (10): revision: drop useless string offset when parsing "--pretty" pretty: treat "--format=" as an empty userformat pretty: make empty userformats truly empty pack-objects: turn off bitmaps when we see --shallow lines Makefile: make perf tests optional for profile build intersect_paths: respect mode in git's tree-sort pack-refs: prune top-level refs like "refs/foo" fast-import: clean up pack_data pointer in end_packfile fast-import: fix buffer overflow in dump_tags git-prompt: do not look for refs/stash in $GIT_DIR Jiang Xin (2): l10n: git.pot: v2.1.0 round 1 (38 new, 9 removed) l10n: zh_CN: translations for git v2.1.0-rc0 Jonathan Nieder (2): unpack-trees: use 'cuddled' style for if-else cascade checkout -m: attempt merge when deletion of path was staged Junio C Hamano (5): config: teach "git -c" to recognize an empty string apply: use the right attribute for paths in non-Git patches apply: hoist use_patch() helper for path exclusion up apply: omit ws check for excluded paths Git 2.1.1 Lukas Fleischer (1): bundle: fix exclusion of annotated tags Nguyễn Thái Ngọc Duy (2): fetch: convert argv_gc_auto to struct argv_array fetch: silence git-gc if --quiet is given Peter Krefting (2): l10n: Fix more typos in the Swedish translations l10n: sv.po: Update Swedish translation (2257t0f0u) Ralf Thielow (4): l10n: de.po: fix typo l10n: de.po: improve message when switching branches l10n: de.po: translate 38 new messages po/TEAMS: add new members to German translation team René Scharfe (1): read-cache: check for leading symlinks when refreshing index Shawn O. Pearce (1): Document LF appearing in shallow command during send-pack/receive-pack Stefan Beller (1): unpack-trees: simplify 'all other failures' case Trần Ngọc Quân (1): l10n: vi.po (2257t): Update translation Version v2.1.0; changes since v2.1.0-rc2: ----------------------------------------- Alexander Shopov (1): gitk: Updated Bulgarian translation (302t,0f,0u) Johannes Sixt (1): tests: fix negated test_i18ngrep calls Junio C Hamano (1): Git 2.1 Max Kirillov (1): gitk: Add keybinding to switch to parent commit Version v2.1.0-rc2; changes since v2.1.0-rc1: --------------------------------------------- Junio C Hamano (2): RelNotes: no more check_ref_format micro-optimization Git 2.1-rc2 Marc Branchaud (1): Release notes: grammatical fixes Stefan Beller (1): various contrib: Fix links in man pages Version v2.1.0-rc1; changes since v2.1.0-rc0: --------------------------------------------- Fabian Ruch (1): commit --amend: test specifies authorship but forgets to check Jeff King (14): receive-pack: don't copy "dir" parameter free ref string returned by dwim_ref transport: fix leaks in refs_from_alternate_cb fix memory leak parsing core.commentchar apply: avoid possible bogus pointer alloc: write out allocator definitions move setting of object->type to alloc_* functions parse_object_buffer: do not set object type add object_as_type helper for casting objects alloc: factor out commit index object_as_type: set commit index diff-tree: avoid lookup_unknown_object t1402: check for refs ending with a dot t4013: test diff-tree's --stdin commit formatting Johannes Schindelin (1): MinGW: Skip test redirecting to fd 4 John Keeping (3): completion: complete "unstuck" `git push --recurse-submodules` completion: add some missing options to `git push` completion: complete `git push --force-with-lease=` Junio C Hamano (6): t9814: fix misconversion from test $a -o $b to test $a || test $b Revert "Merge branch 'dt/refs-check-refname-component-sse-fix'" Revert "Merge branch 'dt/refs-check-refname-component-sse'" Git 2.0.4 Update draft release notes to 2.1 Git 2.1.0-rc1 Karsten Blees (16): Revert "Windows: teach getenv to do a case-sensitive search" Win32: Unicode environment (outgoing) Win32: Unicode environment (incoming) Win32: fix environment memory leaks Win32: unify environment case-sensitivity Win32: unify environment function names Win32: factor out environment block creation Win32: don't copy the environment twice when spawning child processes Win32: reduce environment array reallocations Win32: use low-level memory allocation during initialization Win32: keep the environment sorted Win32: patch Windows environment on startup Win32: enable color output in Windows cmd.exe t0110/MinGW: skip tests that pass arbitrary bytes on the command line MinGW: disable legacy encoding tests t800[12]: work around MSys limitation Pat Thoyts (3): tests: do not pass iso8859-1 encoded parameter t4210: skip command-line encoding tests on mingw t9902: mingw-specific fix for gitfile link files Ramsay Jones (1): alloc.c: remove the alloc_raw_commit_node() function Tanay Abhra (1): add documentation for writing config files Tony Finch (1): git-push: fix link in man page Version v2.1.0-rc0; changes since v2.0.5: ----------------------------------------- Anders Kaseorg (1): gitk: Allow displaying time zones from author and commit dates timestamps Andi Kleen (4): Use BASIC_FLAGS for profile feedback Don't define away __attribute__ on gcc Run the perf test suite for profile feedback too Fix profile feedback with -jN and add profile-fast Andreas Schwab (1): grep: add grep.fullName config variable Brian Gesiak (2): strbuf: use _rtrim and _ltrim in strbuf_trim api-strbuf.txt: add docs for _trim and _ltrim Cezary Zawadka (1): Windows: allow using UNC path for git repository Charles Bailey (1): Fix contrib/subtree Makefile to patch #! line Christian Couder (16): replace: make sure --edit results in a different object replace: refactor checking ref validity replace: die early if replace ref already exists replace: add tests for --edit replace: add --edit to usage string Documentation: replace: describe new --edit option commit: add for_each_mergetag() replace: cleanup redirection style in tests replace: add --graft option replace: add test for --graft Documentation: replace: add --graft option contrib: add convert-grafts-to-replace-refs.sh replace: remove signature when using --graft replace: add test for --graft with signed commit replace: check mergetags when using --graft replace: add test for --graft with a mergetag Dan Albert (1): imap-send: use git-credential David Aguilar (3): gitk: Honor TMPDIR when viewing external diffs gitk: Use mktemp -d to avoid predictable temporary directories gitk: Catch mkdtemp errors David Kastrup (2): blame: large-scale performance rewrite Bump core.deltaBaseCacheLimit to 96m David Turner (5): docs: document RUN_SETUP_GENTLY and clarify RUN_SETUP refs.c: optimize check_refname_component() refs.c: SSE2 optimizations for check_refname_component refs.c: handle REFNAME_REFSPEC_PATTERN at end of page refs: fix valgrind suppression file Elia Pinto (61): t9365-continuing-queries.sh: use the $( ... ) construct for command substitution test-gitmw-lib.sh: use the $( ... ) construct for command substitution t7900-subtree.sh: use the $( ... ) construct for command substitution appp.sh: use the $( ... ) construct for command substitution git-pull.sh: use the $( ... ) construct for command substitution git-rebase--merge.sh: use the $( ... ) construct for command substitution git-rebase.sh: use the $( ... ) construct for command substitution git-stash.sh: use the $( ... ) construct for command substitution git-web--browse.sh: use the $( ... ) construct for command substitution lib-credential.sh: use the $( ... ) construct for command substitution lib-cvs.sh: use the $( ... ) construct for command substitution lib-gpg.sh: use the $( ... ) construct for command substitution p5302-pack-index.sh: use the $( ... ) construct for command substitution t0001-init.sh: use the $( ... ) construct for command substitution t0010-racy-git.sh: use the $( ... ) construct for command substitution t0020-crlf.sh: use the $( ... ) construct for command substitution t0025-crlf-auto.sh: use the $( ... ) construct for command substitution t0026-eol-config.sh: use the $( ... ) construct for command substitution t0030-stripspace.sh: use the $( ... ) construct for command substitution t0300-credentials.sh: use the $( ... ) construct for command substitution t1000-read-tree-m-3way.sh: use the $( ... ) construct for command substitution t1001-read-tree-m-2way.sh: use the $( ... ) construct for command substitution t1002-read-tree-m-u-2way.sh: use the $( ... ) construct for command substitution t1003-read-tree-prefix.sh: use the $( ... ) construct for command substitution t1004-read-tree-m-u-wf.sh: use the $( ... ) construct for command substitution t1020-subdirectory.sh: use the $( ... ) construct for command substitution t1050-large.sh: use the $( ... ) construct for command substitution t3905-stash-include-untracked.sh: use the $( ... ) construct for command substitution t3910-mac-os-precompose.sh: use the $( ... ) construct for command substitution t4006-diff-mode.sh: use the $( ... ) construct for command substitution t4010-diff-pathspec.sh: use the $( ... ) construct for command substitution t4012-diff-binary.sh: use the $( ... ) construct for command substitution t4013-diff-various.sh: use the $( ... ) construct for command substitution t4014-format-patch.sh: use the $( ... ) construct for command substitution t4036-format-patch-signer-mime.sh: use the $( ... ) construct for command substitution t4038-diff-combined.sh: use the $( ... ) construct for command substitution t4057-diff-combined-paths.sh: use the $( ... ) construct for command substitution t4116-apply-reverse.sh: use the $( ... ) construct for command substitution t4119-apply-config.sh: use the $( ... ) construct for command substitution t4204-patch-id.sh: use the $( ... ) construct for command substitution t5000-tar-tree.sh: use the $( ... ) construct for command substitution check_bindir: avoid "test <cond> -a/-o <cond>" contrib/examples/git-clone.sh: avoid "test <cond> -a/-o <cond>" contrib/examples/git-commit.sh: avoid "test <cond> -a/-o <cond>" contrib/examples/git-merge.sh: avoid "test <cond> -a/-o <cond>" contrib/examples/git-repack.sh: avoid "test <cond> -a/-o <cond>" contrib/examples/git-resolve.sh: avoid "test <cond> -a/-o <cond>" git-bisect.sh: avoid "test <cond> -a/-o <cond>" git-mergetool.sh: avoid "test <cond> -a/-o <cond>" git-rebase--interactive.sh: avoid "test <cond> -a/-o <cond>" t/lib-httpd.sh: avoid "test <cond> -a/-o <cond>" t/t0025-crlf-auto.sh: avoid "test <cond> -a/-o <cond>" t/t0026-eol-config.sh: avoid "test <cond> -a/-o <cond>" t/t4102-apply-rename.sh: avoid "test <cond> -a/-o <cond>" t/t5000-tar-tree.sh: avoid "test <cond> -a/-o <cond>" t/t5403-post-checkout-hook.sh: avoid "test <cond> -a/-o <cond>" t/t5538-push-shallow.sh: avoid "test <cond> -a/-o <cond>" t/t9814-git-p4-rename.sh: avoid "test <cond> -a/-o <cond>" t/test-lib-functions.sh: avoid "test <cond> -a/-o <cond>" git-submodule.sh: avoid "test <cond> -a/-o <cond>" submodule.c: use the ARRAY_SIZE macro Ephrim Khong (1): sha1_file: do not add own object directory as alternate Eric Wong (1): config: preserve config file permissions on edits Erik Faye-Lund (1): send-email: recognize absolute path on Windows Fabian Ruch (1): sequencer: signal failed ff as an aborted, not a conflicted merge Felipe Contreras (12): fast-export: improve argument parsing fast-export: add new --refspec option transport-helper: add support for old:new refspec transport-helper: add support to push symbolic refs fast-import: add support to delete refs fast-export: add support to delete refs transport-helper: add support to delete branches transport-helper: remove unnecessary strbuf resets mergetools: add vimdiff3 mode mergetool: run prompt only if guessed tool merge: enable defaulttoupstream by default silence a bunch of format-zero-length warnings Ilya Bobyr (4): test-lib: document short options in t/README test-lib: tests skipped by GIT_SKIP_TESTS say so test-lib: '--run' to run only specific tests gitk: Replace SHA1 entry field on keyboard paste Jacob Keller (2): tag: fix --sort tests to use cat<<-\EOF format tag: support configuring --sort via .gitconfig James Denholm (6): contrib/subtree/Makefile: scrap unused $(gitdir) contrib/subtree/Makefile: use GIT-VERSION-FILE contrib/subtree/Makefile: s/libexecdir/gitexecdir/ contrib/subtree/Makefile: clean up rules to generate documentation contrib/subtree/Makefile: clean up rule for "clean" contrib/subtree: allow adding an annotated tag Jason St. John (1): Documentation: use "command-line" when used as a compound adjective, and fix other minor grammatical issues Jean-Jacques Lafay (1): git tag --contains: avoid stack overflow Jeff King (97): run_external_diff: use an argv_array for the environment run_external_diff: clean up error handling run_external_diff: drop fflush(NULL) run_external_diff: hoist common bits out of conditional run_external_diff: refactor cmdline setup logic t3910: show failure of core.precomposeunicode with decomposed filenames replace: refactor command-mode determination replace: use OPT_CMDMODE to handle modes replace: factor object resolution out of replace_object replace: add --edit option commit: use split_ident_line to compare author/committer pretty: make show_ident_date public commit: print "Date" line when the user has set date commit: accept more date formats for "--date" inline constant return from error() function let clang use the constant-return error() macro grep: use run-command's "dir" option for --open-files-in-pager t/lib-httpd: require SANITY prereq run-command: store an optional argv_array run_column_filter: use argv_array git_connect: use argv_array get_helper: use run-command's internal argv_array get_exporter: use argv_array get_importer: use run-command's internal argv_array argv-array: drop "detach" code format-patch: make newline after signature conditional daemon/config: factor out duplicate xstrdup_tolower test-lib: preserve GIT_CURL_VERBOSE from the environment t/lib-httpd: use write_script to copy CGI scripts t5550: test display of remote http error messages strbuf: add strbuf_tolower function http: extract type/subtype portion of content-type http: optionally extract charset parameter from content-type strbuf: add strbuf_reencode helper remote-curl: reencode http error messages http: default text charset to iso-8859-1 error_resolve_conflict: rewrap advice message error_resolve_conflict: drop quotations around operation pack-objects: stop respecting pack.writebitmaps repack: simplify handling of --write-bitmap-index repack: introduce repack.writeBitmaps config option t7700: drop explicit --no-pack-kept-objects from .keep test parse_diff_color_slot: drop ofs parameter daemon: mark some strings as const avoid using skip_prefix as a boolean strbuf: add xstrfmt helper use xstrfmt in favor of manual size calculations use xstrdup instead of xmalloc + strcpy use xstrfmt to replace xmalloc + sprintf use xstrfmt to replace xmalloc + strcpy/strcat setup_git_env: use git_pathdup instead of xmalloc + sprintf sequencer: use argv_array_pushf merge: use argv_array when spawning merge strategy walker_fetch: fix minor memory leak unique_path: fix unlikely heap overflow refactor skip_prefix to return a boolean apply: use skip_prefix instead of raw addition fast-import: fix read of uninitialized argv memory transport-helper: avoid reading past end-of-string use skip_prefix to avoid magic numbers use skip_prefix to avoid repeating strings fast-import: use skip_prefix for parsing input daemon: use skip_prefix to avoid magic numbers stat_opt: check extra strlen call fast-import: refactor parsing of spaces fetch-pack: refactor parsing in get_ack git: avoid magic number with skip_prefix use skip_prefix to avoid repeated calculations http-push: refactor parsing of remote object names setup_git_env(): introduce git_path_from_env() helper replace: replace spaces with tabs in indentation avoid double close of descriptors handed to run_command replace: use argv_array in export_object replace: add a --raw mode for --edit add strip_suffix function implement ends_with via strip_suffix replace has_extension with ends_with use strip_suffix instead of ends_with in simple cases index-pack: use strip_suffix to avoid magic numbers strbuf: implement strbuf_strip_suffix verify-pack: use strbuf_strip_suffix prepare_packed_git_one: refactor duplicate-pack check remote-curl: do not complain on EOF from parent git remote-curl: use error instead of fprintf(stderr) remote-curl: mark helper-protocol errors more clearly tag: use skip_prefix instead of magic numbers alloc: write out allocator definitions move setting of object->type to alloc_* functions parse_object_buffer: do not set object type add object_as_type helper for casting objects alloc: factor out commit index object_as_type: set commit index diff-tree: avoid lookup_unknown_object prio-queue: factor out compare and swap operations prio-queue: make output stable with respect to insertion paint_down_to_common: use prio_queue t5539: update a flaky test Jens Lehmann (19): git-gui: show staged submodules regardless of ignore config git-gui: tolerate major version changes when comparing the git version gitk: Show staged submodules regardless of ignore config test-lib: add test_dir_is_empty() t/Makefile: check helper scripts for non-portable shell commands too t/Makefile: always test all lint targets when running tests submodules: add the lib-submodule-update.sh test library checkout: call the new submodule update test framework apply: add t4137 for submodule updates read-tree: add t1013 for submodule updates reset: add t7112 for submodule updates bisect: add t6041 for submodule updates merge: add t7613 for submodule updates rebase: add t3426 for submodule updates pull: add t5572 for submodule updates cherry-pick: add t3512 for submodule updates am: add t4255 for submodule updates stash: add t3906 for submodule updates revert: add t3513 for submodule updates Jeremiah Mahler (4): format-patch: add "--signature-file=<file>" option t9138-git-svn-authors-prog.sh fixups name-hash.c: replace cache_name_compare() with memcmp(3) cleanup duplicate name_compare() functions Johannes Schindelin (1): Win32: let mingw_execve() return an int John Keeping (2): rebase--am: use --cherry-pick instead of --ignore-if-in-upstream rebase: omit patch-identical commits with --fork-point Jonathan Nieder (4): contrib: remove vim support instructions contrib: remove git-diffall test-lint: find unportable sed, echo, test, and export usage after && test doc: test_write_lines does not split its arguments Junio C Hamano (37): send-email: windows drive prefix (e.g. C:) appears only at the beginning mergetool: document the default for --[no-]prompt CodingGuidelines: once it is in, it is not worth the code churn CodingGuidelines: give an example for case/esac statement CodingGuidelines: give an example for redirection CodingGuidelines: give an example for control statements CodingGuidelines: give an example for shell function preamble CodingGuidelines: do not call the conditional statement "if()" CodingGuidelines: on comparison CodingGuidelines: on splitting a long line CodingGuidelines: avoid "test <cond> -a/-o <cond>" fetch doc: update introductory part for clarity fetch doc: update note on '+' in front of the refspec fetch doc: remove notes on outdated "mixed layout" First batch for 2.1 fetch doc: on pulling multiple refspecs fetch doc: update refspec format description fetch doc: remove "short-cut" section fetch doc: add a section on configured remote-tracking branches fetch: allow explicit --refmap to override configuration Second batch for 2.1 Update draft release notes to 2.1 test: turn EXPENSIVE into a lazy prerequisite test: turn USR_BIN_TIME into a lazy prerequisite t3302: coding style updates t3302: do not chdir around in the primary test process t3302: drop unnecessary NOT_EXPENSIVE pseudo-prerequisite t3419: drop unnecessary NOT_EXPENSIVE pseudo-prerequisite Third batch for 2.1 git-submodule.sh: avoid "echo" path-like values Fourth batch for 2.1 Fifth batch for 2.1 Sixth batch for 2.1 Seventh batch for 2.1 Eighth batch for 2.1 Ninth batch for 2.1 Git 2.1.0-rc0 Karsten Blees (46): MSVC: link dynamically to the CRT Win32 dirent: remove unused dirent.d_ino member Win32 dirent: remove unused dirent.d_reclen member Win32 dirent: change FILENAME_MAX to MAX_PATH Win32 dirent: clarify #include directives Win32 dirent: improve dirent implementation Win32: move main macro to a function Win32: support Unicode console output Win32: detect console streams more reliably Win32: warn if the console font doesn't support Unicode Win32: add Unicode conversion functions Win32: Thread-safe windows console output Win32: fix broken pipe detection Win32: reliably detect console pipe handles Win32: simplify internal mingw_spawn* APIs Win32: fix potential multi-threading issue MinGW: disable CRT command line globbing Win32: Unicode arguments (outgoing) Win32: Unicode arguments (incoming) trace: move trace declarations from cache.h to new trace.h trace: consistently name the format parameter trace: remove redundant printf format attribute symlinks: remove PATH_MAX limitation hashmap: factor out getting a hash code from a SHA1 hashmap: improve struct hashmap member documentation hashmap: add simplified hashmap_get_from_hash() API hashmap: add string interning API cache.h: rename cache_def_free to cache_def_clear trace: improve trace performance Documentation/git.txt: improve documentation of 'GIT_TRACE*' variables sha1_file: change GIT_TRACE_PACK_ACCESS logging to use trace API trace: add infrastructure to augment trace output with additional info trace: disable additional trace output for unit tests trace: add current timestamp to all trace output trace: move code around, in preparation to file:line output trace: add 'file:line' to all trace output trace: add high resolution timer function to debug performance issues trace: add trace_performance facility to debug performance issues git: add performance tracing for git's main() function to debug scripts wt-status: simplify performance measurement by using getnanotime() progress: simplify performance measurement by using getnanotime() api-trace.txt: add trace API documentation Win32: Unicode file name support (except dirent) Win32: Unicode file name support (dirent) MinGW: fix compile error due to missing ELOOP config: use chmod() instead of fchmod() Kirill Smelkov (20): combine-diff: move show_log_first logic/action out of paths scanning combine-diff: move changed-paths scanning logic into its own function tree-diff: no need to manually verify that there is no mode change for a path tree-diff: no need to pass match to skip_uninteresting() tree-diff: show_tree() is not needed tree-diff: consolidate code for emitting diffs and recursion in one place tree-diff: don't assume compare_tree_entry() returns -1,0,1 tree-diff: move all action-taking code out of compare_tree_entry() tree-diff: rename compare_tree_entry -> tree_entry_pathcmp tree-diff: show_path prototype is not needed anymore tree-diff: simplify tree_entry_pathcmp tree-diff: remove special-case diff-emitting code for empty-tree cases tree-diff: diff_tree() should now be static tree-diff: rework diff_tree interface to be sha1 based tree-diff: no need to call "full" diff_tree_sha1 from show_path() tree-diff: reuse base str(buf) memory on sub-tree recursion Portable alloca for Git tree-diff: rework diff_tree() to generate diffs for multiparent cases as well combine-diff: speed it up, by using multiparent diff tree-walker directly mingw: activate alloca Linus Torvalds (1): git log: support "auto" decorations Luis R. Rodriguez (1): git.c: treat RUN_SETUP_GENTLY and RUN_SETUP as mutually exclusive Marc Branchaud (2): fetch doc: move FETCH_HEAD material lower and add an example docs: Explain the purpose of fetch's and pull's <refspec> parameter. Matthieu Moy (3): git-remote-mediawiki: allow stop/start-ing the test server git-remote-mediawiki: fix encoding issue for UTF-8 media files pager: remove 'S' from $LESS by default Max Kirillov (4): gitk: Switch to patch mode when searching for line origin gitk: Add visiblerefs option, which lists always-shown branches t6023-merge-file.sh: fix and mark as broken invalid tests git-merge-file: do not add LF at EOF while applying unrelated change Maxime Coste (2): git-p4: Do not include diff in spec file when just preparing p4 git-p4: fix submit in non --prepare-p4-only mode Michael Barabanov (1): use local cloning if insteadOf makes a local URL Michael Haggerty (27): t1400: fix name and expected result of one test t1400: provide more usual input to the command parse_arg(): really test that argument is properly terminated t1400: add some more tests involving quoted arguments refs.h: rename the action_on_err constants update_refs(): fix constness update-ref --stdin: read the whole input at once parse_cmd_verify(): copy old_sha1 instead of evaluating <oldvalue> twice update-ref.c: extract a new function, parse_refname() update-ref --stdin: improve error messages for invalid values update-ref --stdin: make error messages more consistent update-ref --stdin: simplify error messages for missing oldvalues t1400: test that stdin -z update treats empty <newvalue> as zeros update-ref.c: extract a new function, parse_next_sha1() update-ref --stdin -z: deprecate interpreting the empty string as zeros t1400: test one mistake at a time update-ref --stdin: improve the error message for unexpected EOF update-ref --stdin: harmonize error messages refs: add a concept of a reference transaction update-ref --stdin: reimplement using reference transactions refs: remove API function update_refs() struct ref_update: rename field "ref_name" to "refname" struct ref_update: store refname as a FLEX_ARRAY ref_transaction_commit(): simplify code using temporary variables struct ref_update: add a lock field struct ref_update: add a type field ref_transaction_commit(): work with transaction->updates in place Michael J Gruber (5): gpg-interface: provide clear helper for struct signature_check gpg-interface: provide access to the payload verify-commit: scriptable commit signature verification t7510: exit for loop with test result t7510: test verify-commit Michael S. Tsirkin (6): git-send-email: two new options: to-cover, cc-cover test/send-email: to-cover, cc-cover tests rebase --keep-empty -i: add test test: add test_write_lines helper patch-id: make it stable against hunk reordering patch-id-test: test stable and unstable behaviour Nguyễn Thái Ngọc Duy (38): ewah: fix constness of ewah_read_mmap ewah: delete unused ewah_read_mmap_native declaration sequencer: do not update/refresh index if the lock cannot be held config: be strict on core.commentChar commit: allow core.commentChar=auto for character auto selection git potty: restore environments after alias expansion read-cache: new API write_locked_index instead of write_index/write_cache read-cache: relocate and unexport commit_locked_index() read-cache: store in-memory flags in the first 12 bits of ce_flags read-cache: be strict about "changed" in remove_marked_cache_entries() read-cache: be specific what part of the index has changed update-index: be specific what part of the index has changed resolve-undo: be specific what part of the index has changed unpack-trees: be specific what part of the index has changed cache-tree: mark istate->cache_changed on cache tree invalidation cache-tree: mark istate->cache_changed on cache tree update cache-tree: mark istate->cache_changed on prime_cache_tree() entry.c: update cache_changed if refresh_cache is set in checkout_entry() read-cache: save index SHA-1 after reading read-cache: split-index mode read-cache: mark new entries for split index read-cache: save deleted entries in split index read-cache: mark updated entries for split index split-index: the writing part split-index: the reading part split-index: do not invalidate cache-tree at read time split-index: strip pathname of on-disk replaced entries update-index: new options to enable/disable split index mode update-index --split-index: do not split if $GIT_DIR is read only rev-parse: add --shared-index-path to get shared index path read-tree: force split-index mode off on --index-output read-tree: note about dropping split-index mode or index version read-cache: force split index mode with GIT_TEST_SPLIT_INDEX t2104: make sure split index mode is off for the version test t1700: new tests for split-index mode dir.c: coding style fix dir.h: move struct exclude declaration to top level prep_exclude: remove the artificial PATH_MAX limit Pat Thoyts (2): wincred: add install target wincred: avoid overwriting configured variables Ramsay Jones (2): t0000-*.sh: fix the GIT_SKIP_TESTS sub-tests alloc.c: remove the alloc_raw_commit_node() function René Scharfe (22): Use starts_with() for C strings instead of memcmp() blame: factor out get_next_line() blame: simplify prepare_lines() wt-status: use argv_array for environment wt-status: simplify building of summary limit argument sha1_file: replace PATH_MAX buffer with strbuf in prepare_packed_git_one() t5000, t5003: simplify commit diff-tree: call free_commit_list() instead of duplicating its code line-log: use commit_list_append() instead of duplicating its code use strbuf_addbuf for adding strbufs use strbuf_addch for adding single characters merge: simplify merge_trivial() by using commit_list_append() commit: use commit_list_append() instead of duplicating its code fsck: simplify fsck_commit_buffer() by using commit_list_count() strbuf: use strbuf_addstr() for adding C strings use commit_list_count() to count the members of commit_lists run-command: use internal argv_array of struct child_process in run_hook_ve() transport: simplify fetch_objs_via_rsync() using argv_array fast-import: use hashcmp() for SHA1 hash comparison bundle: use internal argv_array of struct child_process in create_bundle() remote-testsvn: use internal argv_array of struct child_process in cmd_import() unix-socket: remove stale socket before calling chdir() RomanBelinsky (1): SVN.pm::parse_svn_date: allow timestamps with a single-digit hour Ronnie Sahlberg (26): sequencer.c: check for lock failure and bail early in fast_forward_to commit.c: check for lock error and return early refs.c: add new functions reflog_exists and delete_reflog checkout.c: use ref_exists instead of file_exist refs.c: change read_ref_at to use the reflog iterators enums: remove trailing ',' after last item in enum refs.c: remove ref_transaction_rollback refs.c: ref_transaction_commit should not free the transaction refs.c: constify the sha arguments for ref_transaction_create|delete|update refs.c: allow passing NULL to ref_transaction_free refs.c: add a strbuf argument to ref_transaction_commit for error logging lockfile.c: add a new public function unable_to_lock_message lockfile.c: make lock_file return a meaningful errno on failurei refs.c: add an err argument to repack_without_refs refs.c: make sure log_ref_setup returns a meaningful errno refs.c: verify_lock should set errno to something meaningful refs.c: make remove_empty_directories always set errno to something sane refs.c: commit_packed_refs to return a meaningful errno on failure refs.c: make resolve_ref_unsafe set errno to something meaningful on error refs.c: log_ref_write should try to return meaningful errno refs.c: make ref_update_reject_duplicates take a strbuf argument for errors refs.c: make update_ref_write update a strbuf on failure update-ref: use err argument to get error from ref_transaction_commit refs.c: remove the onerr argument to ref_transaction_commit refs.c: change ref_transaction_update() to do error checking and return status refs.c: add a public is_branch function Stefan Beller (1): .mailmap: map different names with the same email address together Steffen Prohaska (1): completion: handle '!f() { ... }; f' and "!sh -c '...' -" aliases Stepan Kasal (2): Revert "submodules: fix ambiguous absolute paths under Windows" mingw: avoid const warning Stephen P. Smith (1): How to keep a project's canonical history correct. Steve Hoelzer (1): environment.c: enable core.preloadindex by default Tanay Abhra (4): string-list: spell all values out that are given to a string_list initializer imap-send: use skip_prefix instead of using magic numbers string-list: add string_list initializer helper function replace memset with string-list initializers Theodore Leblond (1): compat/poll: sleep 1 millisecond to avoid busy wait Thorsten Glaser (1): builtin/tag.c: show tag name to hint in the message editor Torsten Bögershausen (7): utf8.c: use a table for double_width utf8: make it easier to auto-update git_wcwidth() t5551: fix the 50,000 tag test t9001: avoid non-portable '\n' with sed Update of unicode_width.h to Unicode Version 7.0 t0025: rename the test files t0027: combinations of core.autocrlf, core.eol and text Trần Ngọc Quân (1): l10n: Init Vietnamese translation W. Trevor King (1): Documentation: mention config sources for @{upstream} William Giokas (1): svn-fe: conform to pep8 Yi EungJun (1): http: fix charset detection of extract_content_type() Øyvind A. Holm (1): .gitignore: "git-verify-commit" is a generated file Version v2.0.5; changes since v2.0.4: ------------------------------------- Jeff King (8): unpack-trees: propagate errors adding entries to the index read-tree: add tests for confusing paths like ".." and ".git" verify_dotfile(): reject .git case-insensitively t1450: refactor ".", "..", and ".git" fsck tests fsck: notice .git case-insensitively utf8: add is_hfs_dotgit() helper read-cache: optionally disallow HFS+ .git variants fsck: complain about HFS+ ".git" aliases in trees Johannes Schindelin (3): path: add is_ntfs_dotgit() helper read-cache: optionally disallow NTFS .git variants fsck: complain about NTFS ".git" aliases in trees Junio C Hamano (3): Git 1.8.5.6 Git 1.9.5 Git 2.0.5 Wieland Hoffmann (1): git-tag.txt: Add a missing hyphen to `-s` Version v2.0.4; changes since v2.0.3: ------------------------------------- Fabian Ruch (1): commit --amend: test specifies authorship but forgets to check Jeff King (8): alloc: write out allocator definitions move setting of object->type to alloc_* functions parse_object_buffer: do not set object type add object_as_type helper for casting objects alloc: factor out commit index object_as_type: set commit index diff-tree: avoid lookup_unknown_object t4013: test diff-tree's --stdin commit formatting Junio C Hamano (1): Git 2.0.4 Ramsay Jones (1): alloc.c: remove the alloc_raw_commit_node() function Version v2.0.3; changes since v2.0.2: ------------------------------------- Abbaad Haider (1): http-push.c: make CURLOPT_IOCTLDATA a usable pointer Ben Walton (1): compat/bswap.h: fix endianness detection Brian Gesiak (12): builtin/ls-remote.c: rearrange xcalloc arguments builtin/remote.c: rearrange xcalloc arguments commit.c: rearrange xcalloc arguments config.c: rearrange xcalloc arguments diff.c: rearrange xcalloc arguments http-push.c: rearrange xcalloc arguments imap-send.c: rearrange xcalloc arguments notes.c: rearrange xcalloc arguments pack-revindex.c: rearrange xcalloc arguments reflog-walk.c: rearrange xcalloc arguments remote.c: rearrange xcalloc arguments transport-helper.c: rearrange xcalloc arguments Charles Bailey (2): compat/bswap.h: detect endianness on more platforms that don't use BYTE_ORDER filter-branch: eliminate duplicate mapped parents Elia Pinto (1): scripts: "export VAR=VALUE" construct is not portable Jeremiah Mahler (3): Documentation: wording fixes in the user manual and glossary t/t7810-grep.sh: remove duplicate test_config() api-strbuf.txt minor typos Johannes Sixt (1): fix brown paper bag breakage in t5150-request-pull.sh Jonathan McCrohan (1): git-instaweb: add support for Apache 2.4 Junio C Hamano (3): compat/bswap.h: restore preference __BIG_ENDIAN over BIG_ENDIAN scripts: more "export VAR=VALUE" fixes Git 2.0.3 Michael J Gruber (1): log: correctly identify mergetag signature verification status Philip Oakley (1): doc: give some guidelines for error messages René Scharfe (2): use xcalloc() to allocate zero-initialized memory use xmemdupz() to allocate copies of strings given by start and length Stefan Beller (2): git.1: switch homepage for stats .mailmap: combine Stefan Beller's emails Stepan Kasal (1): t5000, t5003: do not use test_cmp to compare binary files Yi EungJun (1): http-protocol.txt: Basic Auth is defined in RFC 2617, not RFC 2616 Zoltan Klinger (1): log: fix indentation for --graph --show-signature brian m. carlson (1): Documentation: fix missing text for rev-parse --verify Version v2.0.2; changes since v2.0.1: ------------------------------------- Jeff King (27): repack: do not accidentally pack kept objects by default repack: respect pack.writebitmaps repack: s/write_bitmap/&s/ in code commit_tree: take a pointer/len pair rather than a const strbuf replace dangerous uses of strbuf_attach alloc: include any-object allocations in alloc_report commit: push commit_index update into alloc_commit_node do not create "struct commit" with xcalloc logmsg_reencode: return const buffer sequencer: use logmsg_reencode in get_message provide a helper to free commit buffer provide a helper to set the commit buffer provide helpers to access the commit buffer use get_cached_commit_buffer where appropriate use get_commit_buffer to avoid duplicate code convert logmsg_reencode to get_commit_buffer use get_commit_buffer everywhere commit-slab: provide a static initializer commit: convert commit->buffer to a slab commit: record buffer length in cache reuse cached commit buffer when parsing signatures t7510: stop referring to master in later tests t7510: test a commit signed by an unknown key t7510: check %G* pretty-format output pretty: avoid reading past end-of-string with "%G" move "%G" format test from t7510 to t6006 t7300: repair filesystem permissions with test_when_finished Junio C Hamano (4): t0008: do not depend on 'echo' handling backslashes specially builtin/clone.c: detect a clone starting at a tag correctly Start preparing for 2.0.2 Git 2.0.2 Matthew Chen (1): submodule: document "sync --recursive" Michael J Gruber (1): t7510: use consistent &&-chains in loop Pasha Bolokhov (1): dir.c:trim_trailing_spaces(): fix for " \ " sequence René Scharfe (2): sha1_file: avoid overrunning alternate object base string annotate: use argv_array Ronnie Sahlberg (1): enums: remove trailing ',' after last item in enum brian m. carlson (1): rebase--merge: fix --skip with two conflicts in a row Version v2.0.1; changes since v2.0.0: ------------------------------------- Alexey Shumkin (5): t4205 (log-pretty-formats): don't hardcode SHA-1 in expected outputs t4041, t4205, t6006, t7102: don't hardcode tested encoding value t4205 (log-pretty-format): use `tformat` rather than `format` t4205, t6006: add tests that fail with i18n.logOutputEncoding set pretty.c: format string with truncate respects logOutputEncoding David Turner (2): merge-recursive.c: fix case-changing merge bug mv: allow renaming to fix case on case insensitive filesystems Felipe Contreras (1): rerere: fix for merge.conflictstyle Jacek Konieczny (1): pull: do not abuse 'break' inside a shell 'case' Jeff King (7): commit: do not complain of empty messages from -C index-pack: distinguish missing objects from type errors run_diff_files: do not look at uninitialized stat data open_sha1_file: report "most interesting" errno move "--follow needs one pathspec" rule to diff_setup_done t5537: re-drop http tests update-index: fix segfault with missing --cacheinfo argument Jens Lehmann (2): status/commit: show staged submodules regardless of ignore config commit -m: commit staged submodules regardless of ignore config Jens Lindström (3): remote rm: delete remote configuration as the last remote: repack packed-refs once when deleting multiple refs remote prune: optimize "dangling symref" check/warning Jiang Xin (2): blame: fix broken time_buf paddings in relative timestamp blame: dynamic blame_date_width for different locales Johannes Schindelin (1): git grep -O -i: if the pager is 'less', pass the '-I' option John Keeping (2): completion: add a note that merge options are shared completion: add missing options for git-merge Junio C Hamano (5): apply --ignore-space-change: lines with and without leading whitespaces do not match Git 1.9.4 shortlog: allow --exclude=<glob> to be passed revision: parse "git log -<count>" more carefully Git 2.0.1 Jörn Engel (1): pager: do allow spawning pager recursively Matthieu Moy (1): rebase -i: test "Nothing to do" case with autostash Max Kirillov (1): git-show: fix 'git show -s' to not add extra terminator after merge commit Michael Naumov (1): sideband.c: do not use ANSI control sequence on non-terminal Nguyễn Thái Ngọc Duy (2): index-pack: work around thread-unsafe pread() gc --auto: do not lock refs in the background Nick Alcock (1): t5538: move http push tests out to t5542 Ramkumar Ramachandra (1): rebase -i: handle "Nothing to do" case with autostash René Scharfe (2): mailinfo: use strcmp() for string comparison pack-objects: use free()+xcalloc() instead of xrealloc()+memset() Yiannis Marangos (2): wrapper.c: add xpread() similar to xread() read-cache.c: verify index file before we opportunistically update it brian m. carlson (1): blame: correctly handle files regardless of autocrlf Øystein Walle (1): config: respect '~' and '~user' in mailmap.file Version v2.0.0; changes since v2.0.0-rc4: ----------------------------------------- Junio C Hamano (2): Update draft release notes to 2.0 Git 2.0 Version v2.0.0-rc4; changes since v2.0.0-rc3: --------------------------------------------- Alexander Shopov (1): l10n: Updated Bulgarian translation of git (1307t0f921u) Anders Kaseorg (1): Documentation/technical/api-hashmap: remove source highlighting Felipe Contreras (2): contrib: completion: fix 'eread()' namespace contrib: remote-helpers: add move warnings (v2.0) Grégoire Paris (1): fr: a lot of good fixups Jason St. John (1): RelNotes/2.0.0.txt: Fix several grammar issues, notably a lack of hyphens, double quotes, or articles Jens Lehmann (1): git-gui: tolerate major version changes when comparing the git version Junio C Hamano (5): request-pull: resurrect for-linus -> tags/for-linus DWIM Revert "Merge branch 'fc/transport-helper-sync-error-fix'" remote-helpers: point at their upstream repositories Revert "Merge branch 'jc/graduate-remote-hg-bzr' (early part)" Git 2.0-rc4 Richard Hansen (1): git-prompt.sh: don't assume the shell expands the value of PS1 Version v2.0.0-rc3; changes since v2.0.0-rc2: --------------------------------------------- Jonathan Nieder (1): shell doc: remove stray "+" in example Junio C Hamano (4): Update draft release notes for 2.0 Start preparing for 1.9.3 Git 1.9.3 Git 2.0-rc3 Peter Krefting (1): l10n: Fix a couple of typos in the Swedish translation Tolga Ceylan (1): git-p4: format-patch to diff-tree change breaks binary patches Øyvind A. Holm (1): RelNotes/2.0.0: Grammar and typo fixes Version v2.0.0-rc2; changes since v2.0.0-rc1: --------------------------------------------- Dave Borowitz (1): Makefile: default to -lcurl when no CURL_CONFIG or CURLDIR Jean-Noël Avila (1): l10n: fr translation for v2.0.0rc0 (2228t) Jeff King (1): run_external_diff: use an argv_array for the command line Jiang Xin (2): l10n: git.pot: v2.0.0 round 1 (45 new, 28 removed) l10n: zh_CN.po: translate 46 new messages (2229t0f0u) Junio C Hamano (2): Revert the whole "ask curl-config" topic for now Git 2.0-rc2 Kyle J. McKay (1): t9117: use --prefix "" instead of --prefix="" Martin Erik Werner (1): setup: fix windows path buffer over-stepping Max Kirillov (1): Documentation: git-gui: describe gui.displayuntracked Peter Krefting (1): l10n: Update Swedish translation (2228t0f0u) Ralf Thielow (3): l10n: de.po: correct translation of "completed" after resolving deltas l10n: de.po: translate 45 new messages l10n: de.po: improve hint for autocorrected command execution Richard Hansen (1): git-prompt.sh: don't put unsanitized branch names in $PS1 Trần Ngọc Quân (1): l10n: vi.po (2228t): Update and minor fix Version v2.0.0-rc1; changes since v2.0.0-rc0: --------------------------------------------- Dave Borowitz (2): Makefile: use curl-config to determine curl flags Makefile: allow static linking against libcurl Elia Pinto (14): howto-index.sh: use the $( ... ) construct for command substitution install-webdoc.sh: use the $( ... ) construct for command substitution git-checkout.sh: use the $( ... ) construct for command substitution git-clone.sh: use the $( ... ) construct for command substitution git-commit.sh: use the $( ... ) construct for command substitution git-fetch.sh: use the $( ... ) construct for command substitution git-ls-remote.sh: use the $( ... ) construct for command substitution git-merge.sh: use the $( ... ) construct for command substitution git-repack.sh: use the $( ... ) construct for command substitution git-resolve.sh: use the $( ... ) construct for command substitution git-revert.sh: use the $( ... ) construct for command substitution git-tag.sh: use the $( ... ) construct for command substitution t9360-mw-to-git-clone.sh: use the $( ... ) construct for command substitution t9362-mw-to-git-utf8.sh: use the $( ... ) construct for command substitution Felipe Contreras (6): transport-helper: remove barely used xchgline() remote-helpers: make recvline return an error transport-helper: propagate recvline() error pushing transport-helper: trivial cleanup transport-helper: fix sync issue on crashes t5801 (remote-helpers): cleanup environment sets Jiang Xin (3): i18n: fix uncatchable comments for translators in date.c i18n: remove obsolete comments for translators in diffstat generation i18n: only extract comments marked with "TRANSLATORS:" Johan Herland (1): Git 2.0: git svn: Set default --prefix='origin/' if --prefix is not given Junio C Hamano (3): i18n: mention "TRANSLATORS:" marker in Documentation/CodingGuidelines Update draft release notes to 2.0 Git 2.0-rc1 Kyle J. McKay (3): rebase: avoid non-function use of "return" on FreeBSD Revert "rebase: fix run_specific_rebase's use of "return" on FreeBSD" ewah_bitmap.c: do not assume size_t and eword_t are the same size Version v2.0.0-rc0; changes since v1.9.5: ----------------------------------------- Adam (1): branch.c: install_branch_config: simplify if chain Albert L. Lash, IV (4): docs/merge-strategies: remove hyphen from mis-merges docs/git-remote: capitalize first word of initial blurb docs/git-clone: clarify use of --no-hardlinks option docs/git-blame: explain more clearly the example pickaxe use Andrew Keller (1): gitweb: Avoid overflowing page body frame with large images Astril Hayato (1): Documentation/gitk: document the location of the configulation file Benoit Sigoure (1): git-compat-util.h: #undef (v)snprintf before #define them Brian Bourn (2): diff-no-index: rename read_directory() diff-no-index: replace manual "."/".." check with is_dot_or_dotdot() Brian Gesiak (3): t3200-branch: test setting branch as own upstream branch: use skip_prefix() in install_branch_config() rebase: allow "-" short-hand for the previous branch Charles Bailey (2): dir.c: make git_fnmatch() not inline tests: don't rely on strerror text when testing rmdir failure Chris Angelico (1): config.txt: third-party tools may and do use their own variables Chris Packham (2): Documentation/git-am: Document supported --patch-format options Documentation/git-am: typofix Christian Couder (1): strbuf: remove prefixcmp() and suffixcmp() David Aguilar (2): pull: add pull.ff configuration pull: add --ff-only to the help text David Kastrup (6): builtin/blame.c: struct blame_entry does not need a prev link builtin/blame.c: eliminate same_suspect() builtin/blame.c::prepare_lines: fix allocation size of sb->lineno blame.c: prepare_lines should not call xrealloc for every line builtin/blame.c::find_copy_in_blob: no need to scan for region end skip_prefix(): scan prefix only once David Tran (1): tests: use "env" to run commands with temporary env-var settings Dirk Wallenstein (1): doc: status, remove leftover statement about '#' prefix Dmitry Marakasov (1): configure.ac: link with -liconv for locale_charset() Dmitry S. Dolzhenko (15): commit.c: use the generic "sha1_pos" function for lookup builtin/pack-objects.c: use ALLOC_GROW() in check_pbase_path() bundle.c: use ALLOC_GROW() in add_to_ref_list() cache-tree.c: use ALLOC_GROW() in find_subtree() commit.c: use ALLOC_GROW() in register_commit_graft() diff.c: use ALLOC_GROW() diffcore-rename.c: use ALLOC_GROW() patch-ids.c: use ALLOC_GROW() in add_commit() replace_object.c: use ALLOC_GROW() in register_replace_object() reflog-walk.c: use ALLOC_GROW() dir.c: use ALLOC_GROW() in create_simplify() attr.c: use ALLOC_GROW() in handle_attr_line() builtin/mktree.c: use ALLOC_GROW() in append_to_tree() read-cache.c: use ALLOC_GROW() in add_index_entry() sha1_file.c: use ALLOC_GROW() in pretend_sha1_file() Elia Pinto (9): bisect.c: reduce scope of variable builtin/apply.c: reduce scope of variables builtin/blame.c: reduce scope of variables builtin/clean.c: reduce scope of variable builtin/commit.c: reduce scope of variables builtin/fetch.c: reduce scope of variable builtin/gc.c: reduce scope of variables check-builtins.sh: use the $(...) construct for command substitution git-am.sh: use the $(...) construct for command substitution Eric Sunshine (2): name-hash: retire unused index_name_exists() sh-i18n--envsubst: retire unused string_list_member() Fabian Ruch (1): add: use struct argv_array in run_add_interactive() Felipe Contreras (10): transport-helper: mismerge fix transport-helper: don't update refs in dry-run transport-helper: add 'force' to 'export' helpers transport-helper: check for 'forced update' message remote-helpers: allow all tests running from any dir remote-hg: always normalize paths remote-bzr: add support for older versions completion: fix completing args of aliased "push", "fetch", etc. remote-bzr: trivial test fix prompt: fix missing file errors in zsh Hiroyuki Sano (1): fsck: use bitwise-or assignment operator to set flag Ilya Bobyr (1): rev-parse --parseopt: option argument name hints Jacopo Notarstefano (2): git-bisect.sh: fix a few style issues branch.c: delete size check of newly tracked branch names Jeff King (43): pack-objects: split add_object_entry repack: stop using magic number for ARRAY_SIZE(exts) repack: turn exts array into array-of-struct repack: handle optional files created by pack-objects t: add basic bitmap functionality tests t/perf: add tests for pack bitmaps cat-file: refactor error handling of batch_objects cat-file: fix a minor memory leak in batch_objects do not discard revindex when re-preparing packfiles block-sha1: factor out get_be and put_be wrappers read-cache: use get_be32 instead of hand-rolled ntoh_l tests: auto-set git-daemon port ewah: unconditionally ntohll ewah data tests: turn on network daemon tests by default http: never use curl_easy_perform config: disallow relative include paths from blobs docs: clarify remote restrictions for git-upload-archive CodingGuidelines: mention C whitespace rules repack: add `repack.packKeptObjects` config var docs: mark info/grafts as outdated match_explicit: hoist refspec lhs checks into their own function match_explicit_lhs: allow a "verify only" mode push: detect local refspec errors early cat-file: restore warn_on_object_refname_ambiguity flag rev-list: disable object/refname ambiguity check with --stdin pack-objects: show progress for reused packfiles pack-objects: show reused packfile objects in "Counting objects" pack-objects: turn off bitmaps when skipping objects subtree: initialize "prefix" variable t/Makefile: stop setting GIT_CONFIG t/test-lib: drop redundant unset of GIT_CONFIG t: drop useless sane_unset GIT_* calls t: stop using GIT_CONFIG to cross repo boundaries t: prefer "git config --file" to GIT_CONFIG with test_must_fail t: prefer "git config --file" to GIT_CONFIG t0001: make symlink reinit test more careful t0001: use test_path_is_* t0001: use test_config_global t0001: use test_must_fail t0001: drop useless subshells t0001: drop subshells just for "cd" pack-objects: do not reuse packfiles without --delta-base-offset config.c: mark die_bad_number as NORETURN Jens Lehmann (2): submodule: don't access the .gitmodules cache entry after removing it submodule update: consistently document the '--checkout' option Johan Herland (1): notes: disallow reusing non-blob as a note object Johannes Sixt (11): t0008: skip trailing space test on Windows userdiff: support C++ ->* and .* operators in the word regexp userdiff: support unsigned and long long suffixes of integer constants t4018: an infrastructure to test hunk headers t4018: convert perl pattern tests to the new infrastructure t4018: convert java pattern test to the new infrastructure t4018: convert custom pattern test to the new infrastructure t4018: reduce test files for pattern compilation tests t4018: test cases for the built-in cpp pattern t4018: test cases showing that the cpp pattern misses many anchor points userdiff: have 'cpp' hunk header pattern catch more C++ anchor points John Keeping (4): notes-utils: handle boolean notes.rewritemode correctly utf8: fix iconv error detection utf8: use correct type for values in interval table builtin/mv: don't use memory after free John Marshall (1): stash doc: mention short form -k in save description Jonathan Nieder (3): am doc: add a pointer to relevant hooks .gitignore: test-hashmap is a generated file test-hashmap.c: drop unnecessary #includes Junio C Hamano (34): git add <pathspec>... defaults to "-A" git add: -u/-A now affects the entire working tree core.statinfo: remove as promised in Git 2.0 push: switch default from "matching" to "simple" diff: remove "diff-files -q" in a version of Git in a distant future push: switch default from "matching" to "simple" open_istream(): do not dereference NULL in the error case combine-diff: simplify intersect_paths() further commit-tree: add and document --no-gpg-sign request-pull: pick up tag message as before request-pull: test updates request-pull: resurrect "pretty refname" feature *.sh: drop useless use of "env" tag: grok "--with" as synonym to "--contains" Start preparing for Git 2.0 request-pull: documentation updates Update draft release notes to Git 2.0 Update draft release notes to Git 2.0 Update draft release notes to 2.0 t1502: protect runs of SPs used in the indentation parse-options: multi-word argh should use dash to separate words update-index: teach --cacheinfo a new syntax "mode,sha1,path" parse-options: make sure argh string does not have SP or _ Update draft release notes to 2.0 Update draft release notes to 2.0 parse-options: add cast to correct pointer type to OPT_SET_PTR Update draft release notes to 2.0 Revert "Merge branch 'wt/doc-submodule-name-path-confusion-2'" Revert "submodule: explicit local branch creation in module_clone" Revert part of 384364b (Start preparing for Git 2.0, 2014-03-07) Update draft release notes to 2.0 Update draft release notes to 2.0 Update draft release notes for 2.0 Git 2.0-rc0 Karsten Blees (14): add a hashtable implementation that supports O(1) removal buitin/describe.c: use new hash map implementation diffcore-rename.c: move code around to prepare for the next patch diffcore-rename.c: simplify finding exact renames diffcore-rename.c: use new hash map implementation name-hash.c: use new hash map implementation for directories name-hash.c: remove unreferenced directory entries name-hash.c: use new hash map implementation for cache entries name-hash.c: remove cache entries instead of marking them CE_UNHASHED remove old hash.[ch] implementation fix 'git update-index --verbose --again' output builtin/update-index.c: cleanup update_one read-cache.c: fix memory leaks caused by removed cache entries hashmap.h: use 'unsigned int' for hash-codes everywhere Kirill A. Shutemov (3): builtin/config.c: rename check_blob_write() -> check_write() config: change git_config_with_options() interface config: teach "git config --file -" to read from the standard input Kirill Smelkov (10): tree-diff: allow diff_tree_sha1 to accept NULL sha1 tree-diff: convert diff_root_tree_sha1() to just call diff_tree_sha1 with old=NULL line-log: convert to using diff_tree_sha1() revision: convert to using diff_tree_sha1() tree-walk: finally switch over tree descriptors to contain a pre-parsed entry diffcore-order: export generic ordering interface diff test: add tests for combine-diff with orderfile combine-diff: optimize combine_diff_path sets intersection combine-diff: combine_diff_path.len is not needed anymore tests: add checking that combine-diff emits only correct paths Lars Gullik Bjønnes (1): git-contacts: do not fail parsing of good diffs Linus Torvalds (2): request-pull: more strictly match local/remote branches request-pull: allow "local:remote" to specify names on both ends Marat Radchenko (5): MSVC: allow linking with the cURL library MSVC: link in invalidcontinue.obj for better POSIX compatibility MSVC: fix t0040-parse-options crash parse-options: remove unused OPT_SET_PTR MSVC: allow using ExtUtils::MakeMaker Max Horn (2): transport-helper.c: do not overwrite forced bit remote-hg: do not fail on invalid bookmarks Michael Haggerty (14): rename read_replace_refs to check_replace_refs replace_object: use struct members instead of an array find_pack_entry(): document last_found_pack sha1_file_name(): declare to return a const string sha1_file.c: document a bunch of functions defined in the file Add docstrings for lookup_replace_object() and do_lookup_replace_object() Document some functions defined in object.c cache_tree_find(): remove redundant checks cache_tree_find(): find the end of path component using strchrnul() cache_tree_find(): fix comment formatting cache_tree_find(): remove redundant check cache_tree_find(): remove early return cache_tree_find(): use path variable when passing over slashes git-multimail: update to version 1.0.0 Nguyễn Thái Ngọc Duy (24): count-objects: recognize .bitmap in garbage-checking t7101, t7014: rename test files to indicate what that file is for reset: support "--mixed --intent-to-add" mode daemon: move daemonize() to libgit.a gc: config option for running --auto in background dir: warn about trailing spaces in exclude patterns dir: ignore trailing spaces in exclude patterns wt-status.c: make cut_line[] const to shrink .data section a bit wt-status.c: move cut-line print code out to wt_status_add_cut_line use wildmatch() directly without fnmatch() wrapper Revert "test-wildmatch: add "perf" command to compare wildmatch and fnmatch" stop using fnmatch (either native or compat) actually remove compat fnmatch source code sha1_file: fix delta_stack memory leak in unpack_entry i18n: mark all progress lines for translation commit: add --cleanup=scissors tag: support --sort=<spec> strbuf: style fix -- top opening bracket on a separate line upload-pack: send shallow info over stdin to pack-objects connect.c: SP after "}", not TAB object.h: centralize object flag allocation log: add --show-linear-break to help see non-linear history gc --aggressive: make --depth configurable environment.c: fix constness for odb_pack_keep() Nicolas Vigier (10): cherry-pick, revert: add the --gpg-sign option git-sh-setup.sh: add variable to use the stuck-long mode am: parse options in stuck-long mode am: add the --gpg-sign option rebase: remove useless arguments check rebase: don't try to match -M option rebase: parse options in stuck-long mode rebase: add the --gpg-sign option commit-tree: add the commit.gpgsign option to sign all commits test the commit.gpgsign config option Ralf Thielow (1): help.c: rename function "pretty_print_string_list" René Scharfe (13): t7810: add missing variables to tests in loop grep: support -h (no header) with --count t4209: set up expectations up front t4209: factor out helper function test_log() t4209: factor out helper function test_log_icase() t4209: use helper functions to test --grep t4209: use helper functions to test --author pickaxe: honor -i when used with -S and --pickaxe-regex pickaxe: merge diffcore_pickaxe_grep() and diffcore_pickaxe_count() into diffcore_pickaxe() pickaxe: move pickaxe() after pickaxe_match() pickaxe: call strlen only when necessary in diffcore_pickaxe_count() pickaxe: simplify kwset loop in contains() rev-parse: fix typo in example on manpage Richard Hansen (2): test-hg.sh: tests are now expected to pass remote-bzr: support the new 'force' option Richard Lowe (1): diffcore.h: be explicit about the signedness of is_binary Roberto Tyley (1): Documentation: fix documentation AsciiDoc links for external urls Rohit Mani (1): use strchrnul() in place of strchr() and strlen() Scott J. Goldman (1): add uploadarchive.allowUnreachable option Sebastian Schuberth (1): t5510: Do not use $(pwd) when fetching / pushing / pulling via rsync Simon Ruderich (2): git-config: document interactive.singlekey requires Term::ReadKey git-add--interactive: warn if module for interactive.singlekey is missing Sun He (3): write_pack_file: use correct variable in diagnostic finish_tmp_packfile():use strbuf for pathname construction Use hashcpy() when copying object names Sup Yut Sum (1): completion: teach --recurse-submodules to fetch, pull and push Tanay Abhra (1): commit.c: use skip_prefix() instead of starts_with() Tay Ray Chuan (1): demonstrate git-commit --dry-run exit code behaviour Thomas Gummerer (3): introduce GIT_INDEX_VERSION environment variable test-lib: allow setting the index format version read-cache: add index.version config variable Vicent Marti (16): revindex: export new APIs pack-objects: refactor the packing list pack-objects: factor out name_hash revision: allow setting custom limiter function sha1_file: export `git_open_noatime` compat: add endianness helpers ewah: compressed bitmap implementation documentation: add documentation for the bitmap format pack-bitmap: add support for bitmap indexes pack-objects: use bitmaps when packing objects rev-list: add bitmap mode to speed up object lists pack-objects: implement bitmap writing repack: consider bitmaps when performing repacks pack-bitmap: implement optional name_hash cache ewah: support platforms that require aligned reads add `ignore_missing_links` mode to revwalk Vlad Dogaru (1): git-p4: explicitly specify that HEAD is a revision W. Trevor King (6): submodule: make 'checkout' update_module mode more explicit submodule: document module_clone arguments in comments submodule: explicit local branch creation in module_clone Documentation: describe 'submodule update --remote' use case doc: submodule.* config are keyed by submodule names doc: submodule.*.branch config is keyed by name Yuxuan Shui (2): fsck.c:fsck_ident(): ident points at a const string fsck.c:fsck_commit(): use skip_prefix() to verify and skip constant brian m. carlson (1): pull: add the --gpg-sign option. dequis (1): remote-bzr: include authors field in pushed commits Дилян Палаузов (1): Makefile: describe CHARSET_LIB better Version v1.9.5; changes since v1.9.4: ------------------------------------- Jeff King (9): t7300: repair filesystem permissions with test_when_finished unpack-trees: propagate errors adding entries to the index read-tree: add tests for confusing paths like ".." and ".git" verify_dotfile(): reject .git case-insensitively t1450: refactor ".", "..", and ".git" fsck tests fsck: notice .git case-insensitively utf8: add is_hfs_dotgit() helper read-cache: optionally disallow HFS+ .git variants fsck: complain about HFS+ ".git" aliases in trees Johannes Schindelin (3): path: add is_ntfs_dotgit() helper read-cache: optionally disallow NTFS .git variants fsck: complain about NTFS ".git" aliases in trees Junio C Hamano (2): Git 1.8.5.6 Git 1.9.5 René Scharfe (1): annotate: use argv_array Ronnie Sahlberg (1): enums: remove trailing ',' after last item in enum Wieland Hoffmann (1): git-tag.txt: Add a missing hyphen to `-s` brian m. carlson (1): Documentation: fix missing text for rev-parse --verify Version v1.9.4; changes since v1.9.3: ------------------------------------- Junio C Hamano (2): t3004: add test for ls-files on symlinks via absolute paths Git 1.9.4 Martin Erik Werner (6): t0060: add test for prefix_path on symlinks via absolute paths t0060: add test for prefix_path when path == work tree t0060: add tests for prefix_path when path begins with work tree setup: add abspath_part_inside_repo() function setup: don't dereference in-tree symlinks for absolute paths setup: fix windows path buffer over-stepping Richard Hansen (1): git-prompt.sh: don't assume the shell expands the value of PS1 Version v1.9.3; changes since v1.9.2: ------------------------------------- Jonathan Nieder (1): shell doc: remove stray "+" in example Junio C Hamano (2): Start preparing for 1.9.3 Git 1.9.3 Kyle J. McKay (4): test: fix t7001 cp to use POSIX options test: fix t5560 on FreeBSD rebase: avoid non-function use of "return" on FreeBSD Revert "rebase: fix run_specific_rebase's use of "return" on FreeBSD" Richard Hansen (1): git-prompt.sh: don't put unsanitized branch names in $PS1 Tolga Ceylan (1): git-p4: format-patch to diff-tree change breaks binary patches Torsten Bögershausen (1): utf8.c: partially update to version 6.3 Version v1.9.2; changes since v1.9.1: ------------------------------------- Aman Gupta (1): update-ref: fail create operation over stdin if ref already exists Benoit Pierre (7): merge hook tests: fix missing '&&' in test merge hook tests: use 'test_must_fail' instead of '!' test patch hunk editing with "commit -p -m" commit: fix patch hunk editing with "commit -p -m" merge: fix GIT_EDITOR override for commit hook merge hook tests: fix and update tests run-command: mark run_hook_with_custom_index as deprecated Carlos Martín Nieto (2): fetch: add a failing test for prunning with overlapping refspecs fetch: handle overlaping refspecs on --prune Jeff King (6): shallow: use stat_validity to check for up-to-date file shallow: automatically clean up shallow tempfiles t/lib-terminal: make TTY a lazy prerequisite shallow: verify shallow file after taking lock date: recognize bogus FreeBSD gmtime output t4212: loosen far-in-future test for AIX John Keeping (1): builtin/mv: fix out of bounds write Jonathan Nieder (2): wt-status: extract the code to compute width for labels wt-status: i18n of section labels Junio C Hamano (8): stash pop: mention we did not drop the stash upon failing to apply wt-status: make full label string to be subject to l10n wt-status: lift the artificual "at least 20 columns" floor index-pack: report error using the correct variable diff-no-index: correctly diagnose error return from diff_opt_parse() Start preparing for 1.9.1 Update draft release notes to 1.9.2 Git 1.9.2 Justin Lebar (4): Documentation: fix misuses of "nor" contrib: fix misuses of "nor" comments: fix misuses of "nor" code and test: fix misuses of "nor" Matthieu Moy (1): status: disable translation when --porcelain is used Michael Haggerty (2): checkout_entry(): use the strbuf throughout the function entry.c: fix possible buffer overflow in remove_subtree() Ramkumar Ramachandra (1): Documentation/merge-strategies: avoid hyphenated commands Thomas Ackermann (1): doc/http-backend: missing accent grave in literal mark-up Uwe Storbeck (2): rebase -i: do not "echo" random user-supplied strings test-lib.sh: do not "echo" caller-supplied strings brian m. carlson (1): mv: prevent mismatched data when ignoring errors. Version v1.9.1; changes since v1.9.0: ------------------------------------- Brad King (4): t3030-merge-recursive: test known breakage with empty work tree read-cache.c: refactor --ignore-missing implementation read-cache.c: extend make_cache_entry refresh flag with options merge-recursive.c: tolerate missing files while refreshing index David Aguilar (1): difftool: support repositories with .git-files David Sharp (1): rev-parse: check i before using argv[i] against argc Jeff King (12): expand_user_path: do not look at NULL path handle_path_include: don't look at NULL value tests: auto-set LIB_HTTPD_PORT from test name t4212: test bogus timestamps with git-log fsck: report integer overflow in author timestamps date: check date overflow against time_t log: handle integer overflow in timestamps log: do not segfault on gmtime errors remote: handle pushremote config in any order show_ident_date: fix tz range check clean: respect pathspecs with "-d" clean: simplify dir/not-dir logic Junio C Hamano (4): t0003: do not chdir the whole test process check-attr: move to the top of working tree when in non-bare repository t7800: add a difftool test for .git-files Git 1.9.1 Nguyễn Thái Ngọc Duy (17): test: rename http fetch and push test files pack-protocol.txt: clarify 'obj-id' in the last ACK after 'done' protocol-capabilities.txt: refer multi_ack_detailed back to pack-protocol.txt protocol-capabilities.txt: document no-done fetch-pack: fix deepen shallow over smart http with no-done cap t5537: move http tests out to t5539 reset: optionally setup worktree and refresh index on --mixed pathspec: convert some match_pathspec_depth() to ce_path_match() pathspec: convert some match_pathspec_depth() to dir_path_match() pathspec: rename match_pathspec_depth() to match_pathspec() dir.c: prepare match_pathspec_item for taking more flags match_pathspec: match pathspec "foo/" against directory "foo" pathspec: pass directory indicator to match_pathspec_item() clean: replace match_pathspec() with dir_path_match() clean: use cache_name_is_other() diff.c: move diffcore_skip_stat_unmatch core logic out for reuse later diff: do not quit early on stat-dirty files Sandy Carter (1): i18n: proposed command missing leading dash Thomas Rast (1): diff: do not reuse_worktree_file for submodules Version v1.9.0; changes since v1.9.0-rc3: ----------------------------------------- Jean-Noël Avila (1): l10n: fr: 1.9rc2 2211t Jiang Xin (3): l10n: git.pot: v1.9 round 2 (1 new) l10n: zh_CN.po: translate 1 new message (2211t0f0u) l10n: zh_CN.po: Disambiguation for rebase Junio C Hamano (2): Git 1.8.5.5 Git 1.9.0 Michael J Gruber (1): release notes: typo fixes Peter Krefting (1): l10n: Update Swedish translation (2211t0f0u) Ralf Thielow (2): l10n: de.po: translate 28 new messages l10n: de.po: correct message when hiding commits by craft Trần Ngọc Quân (1): l10n: vi.po (2211t): Updated one new string Version v1.9.0-rc3; changes since v1.9-rc2: ------------------------------------------- Adrian Johnson (1): userdiff: update Ada patterns Junio C Hamano (3): Git 1.8.5.4 howto/maintain-git.txt: new version numbering scheme Git 1.9.0-rc3 Nguyễn Thái Ngọc Duy (1): git-tag.txt: <commit> for --contains is optional Torsten Bögershausen (1): repack.c: rename and unlink pack file if it exists Øystein Walle (1): Documentation: fix typos in man pages Version v1.9-rc2; changes since v1.9-rc1: ----------------------------------------- Alexander Shopov (2): po/TEAMS: Added Bulgarian team l10n: Bulgarian translation of git (222t21f1967u) Jean-Noël Avila (1): [fr] update french translation 2210/2210 Jiang Xin (3): l10n: git.pot: v1.9 round 1 (27 new, 11 removed) l10n: zh_CN.po: translate 27 messages (2210t0f0u) l10n: remove 2 blank translations on Danish, Dutch Jonathan Nieder (1): pager test: make fake pager consume all its input Junio C Hamano (1): Git 1.9-rc2 Peter Krefting (1): l10n: Update Swedish translation (2210t0f0u) Trần Ngọc Quân (1): l10n: vi.po (2210t): Updated git-core translation Version v1.9-rc1; changes since v1.9-rc0: ----------------------------------------- Alexander Shopov (4): git-gui i18n: Initial glossary in Bulgarian git-gui l10n: Add 29 more terms to glossary git-gui i18n: Added Bulgarian translation gitk: Add Bulgarian translation (304t) Andy Spencer (1): tree_entry_interesting: match against all pathspecs Anthony Baire (1): subtree: fix argument validation in add/pull/push Astril Hayato (1): gitk: Comply with XDG base directory specification Erik Faye-Lund (2): prefer xwrite instead of write mingw: remove mingw_write Jeff King (18): fetch-pack: do not filter out one-level refs interpret_branch_name: factor out upstream handling interpret_branch_name: rename "cp" variable to "at" interpret_branch_name: always respect "namelen" parameter interpret_branch_name: avoid @{upstream} past colon interpret_branch_name: find all possible @-marks diff_filespec: reorder dirty_submodule macro definitions diff_filespec: drop funcname_pattern_ident field diff_filespec: drop xfrm_flags field diff_filespec: reorder is_binary field diff_filespec: use only 2 bits for is_binary flag t/perf: time rev-list with UNINTERESTING commits list-objects: only look at cmdline trees with edge_hint repack: fix typo in max-pack-size option repack: make parsed string options const-correct repack: propagate pack-objects options as strings t7501: fix "empty commit" test with NO_PERL t7700: do not use "touch" unnecessarily Johannes Sixt (1): Makefile: Fix compilation of Windows resource file John Keeping (3): completion: complete merge-base options completion: handle --[no-]fork-point options to git-rebase Makefile: remove redundant object in git-http{fetch,push} Jonathan Nieder (3): gitignore doc: add global gitignore to synopsis git-gui: chmod +x po2msg, windows/git-gui.sh gitk: chmod +x po2msg.sh Junio C Hamano (6): Documentation: exclude irrelevant options from "git pull" Documentation: "git pull" does not have the "-m" option revision: mark contents of an uninteresting tree uninteresting revision: propagate flag bits from tags to pointees Documentation: make it easier to maintain enumerated documents Git 1.9-rc1 Marc Branchaud (1): gitk: Replace "next" and "prev" buttons with down and up arrows Max Kirillov (2): git-gui: fallback right pane to packed widgets with Tk 8.4 gitk: Fix mistype Michael Haggerty (22): safe_create_leading_directories(): fix format of "if" chaining safe_create_leading_directories(): reduce scope of local variable safe_create_leading_directories(): add explicit "slash" pointer safe_create_leading_directories(): rename local variable safe_create_leading_directories(): split on first of multiple slashes safe_create_leading_directories(): always restore slash at end of loop safe_create_leading_directories(): introduce enum for return values cmd_init_db(): when creating directories, handle errors conservatively safe_create_leading_directories(): add new error value SCLD_VANISHED gitattributes: document more clearly where macros are allowed refname_match(): always use the rules in ref_rev_parse_rules lock_ref_sha1_basic(): on SCLD_VANISHED, retry lock_ref_sha1_basic(): if locking fails with ENOENT, retry remove_dir_recurse(): tighten condition for removing unreadable dir remove_dir_recurse(): handle disappearing files and directories rename_ref(): extract function rename_tmp_log() rename_tmp_log(): handle a possible mkdir/rmdir race rename_tmp_log(): limit the number of remote_empty_directories() attempts rename_tmp_log(): on SCLD_VANISHED, retry safe_create_leading_directories(): on Windows, \ can separate path components Add cross-references between docs for for-each-ref and show-ref doc: remote author/documentation sections from more pages Nguyễn Thái Ngọc Duy (1): tree-walk.c: ignore trailing slash on submodule in tree_entry_interesting() Pat Thoyts (1): git-gui 0.19 Paul Mackerras (2): gitk: Update copyright dates gitk: Indent word-wrapped lines in commit display header Pete Wyckoff (11): git p4 test: wildcards are supported git p4 test: ensure p4 symlink parsing works git p4: work around p4 bug that causes empty symlinks git p4 test: explicitly check p4 wildcard delete git p4 test: is_cli_file_writeable succeeds git p4 test: run as user "author" git p4 test: do not pollute /tmp git p4: handle files with wildcards when doing RCS scrubbing git p4: fix an error message when "p4 where" fails git p4 test: examine behavior with locked (+l) files git p4 doc: use two-line style for options with multiple spellings Ruben Kerkhof (1): send-email: /etc/ssl/certs/ directory may not be usable as ca_path Thomas Ackermann (2): create HTML for http-protocol.txt http-protocol.txt: don't use uppercase for variable names in "The Negotiation Algorithm" Thomas Rast (2): Documentation/gitk: document -L option Documentation: @{-N} can refer to a commit lin zuojian (1): git-svn: memoize _rev_list and rebuild Version v1.9-rc0; changes since v1.8.5.6: ----------------------------------------- Anders Kaseorg (1): submodule foreach: skip eval for more than one argument Antoine Pelisse (2): Prevent buffer overflows when path is too long remote-hg: test 'shared_path' in a moved clone Benny Siegert (1): Add MirBSD support to the build system. Brodie Rao (1): sha1_name: don't resolve refs when core.warnambiguousrefs is false Carlos Martín Nieto (1): send-pack: don't send a thin pack to a server which doesn't support it Christian Couder (15): environment: normalize use of prefixcmp() by removing " != 0" builtin/remote: remove postfixcmp() and use suffixcmp() instead strbuf: introduce starts_with() and ends_with() replace {pre,suf}fixcmp() with {starts,ends}_with() rename READ_SHA1_FILE_REPLACE flag to LOOKUP_REPLACE_OBJECT replace_object: don't check read_replace_refs twice sha1_file.c: add lookup_replace_object_extended() to pass flags sha1_object_info_extended(): add an "unsigned flags" parameter t6050: show that git cat-file --batch fails with replace objects sha1_file: perform object replacement in sha1_object_info_extended() builtin/replace: teach listing using short, medium or full formats t6050: add tests for listing with --format builtin/replace: unset read_replace_refs Documentation/git-replace: describe --format option replace info: rename 'full' to 'long' and clarify in-code symbols Crestez Dan Leonard (1): git p4: Use git diff-tree instead of format-patch Felipe Contreras (9): test-lib.sh: convert $TEST_DIRECTORY to an absolute path test-bzr.sh, test-hg.sh: allow running from any dir remote-helpers: add extra safety checks remote-hg: fix 'shared path' path remote-hg: add tests for special filenames abspath: trivial style fix t: trivial whitespace cleanups fetch: add missing documentation remote: fix status with branch...rebase=preserve Francesco Pretto (1): git-submodule.sh: 'checkout' is a valid update mode Greg Jacobson (1): push: enhance unspecified push default warning Jeff King (24): log_tree_diff: die when we fail to parse a commit assume parse_commit checks commit->object.parsed assume parse_commit checks for NULL commit use parse_commit_or_die instead of segfaulting use parse_commit_or_die instead of custom message checkout: do not die when leaving broken detached HEAD sha1write: make buffer const-correct use @@PERL@@ in built scripts http: return curl's AUTHAVAIL via slot_results remote-curl: pass curl slot_results back through run_slot drop support for "experimental" loose objects t5000: simplify gzip prerequisite checks pack-objects: name pack files after trailer hash pack-objects doc: treat output filename as opaque diff.c: fix some recent whitespace style violations builtin/prune.c: use strbuf to avoid having to worry about PATH_MAX do not pretend sha1write returns errors sha1_object_info_extended: provide delta base sha1s cat-file: provide %(deltabase) batch format use distinct username/password for http auth tests t0000: set TEST_OUTPUT_DIRECTORY for sub-tests t0000: simplify HARNESS_ACTIVE hack t0000: drop "known breakage" test t5531: further "matching" fixups Jens Lehmann (3): submodule update: remove unnecessary orig_flags variable mv: better document side effects when moving a submodule rm: better document side effects when removing a submodule Johannes Sixt (1): document --exclude option John Keeping (8): repo-config: remove deprecated alias for "git config" tar-tree: remove deprecated command lost-found: remove deprecated command peek-remote: remove deprecated alias of ls-remote pull: use merge-base --fork-point when appropriate rebase: use reflog to find common base with upstream rebase: fix fork-point with zero arguments pull: suppress error when no remoteref is found John Murphy (1): git-gui: corrected setup of git worktree under cygwin. John Szakmeister (1): contrib/git-credential-gnome-keyring.c: small stylistic cleanups Jonathan Nieder (16): git-remote-mediawiki: do not remove installed files in "clean" target git-remote-mediawiki: honor DESTDIR in "make install" git-remote-mediawiki build: make 'install' command configurable git-remote-mediawiki build: handle DESTDIR/INSTLIBDIR with whitespace Makefile: rebuild perl scripts when perl paths change Makefile: add PERLLIB_EXTRA variable that adds to default perl path mark Windows build scripts executable mark perl test scripts executable mark contributed hooks executable contrib: remove git-p4import test: make FILEMODE a lazy prereq test: replace shebangs with descriptions in shell libraries remove #!interpreter line from shell libraries stop installing git-tar-tree link pager: set LV=-c alongside LESS=FRSX diff test: reading a directory as a file need not error out Junio C Hamano (17): revision: introduce --exclude=<glob> to tame wildcards merge-base: use OPT_CMDMODE and clarify the command line parsing merge-base: teach "--fork-point" mode rev-list --exclude: tests rev-list --exclude: export add/clear-ref-exclusion and ref-excluded API rev-parse: introduce --exclude=<glob> to tame wildcards bundle: use argv-array builtin/push.c: use strbuf instead of manual allocation push: use remote.$name.push as a refmap push: also use "upstream" mapping when pushing a single ref Start 1.9 cycle Update draft release notes to 1.9 prune-packed: use strbuf to avoid having to worry about PATH_MAX Update draft release notes to 1.9 Update draft release notes to 1.9 Update draft release notes to 1.9 Git 1.9-rc0 Karsten Blees (1): gitignore.txt: clarify recursive nature of excluded directories Krzesimir Nowak (4): gitweb: Move check-ref-format code into separate function gitweb: Return 1 on validation success instead of passed input gitweb: Add a feature for adding more branch refs gitweb: Denote non-heads, non-remotes branches Mads Dørup (1): git-gui: Improve font rendering on retina macbooks Masanari Iida (1): git-gui: correct spelling errors in comments Max Kirillov (2): git-gui: Add gui.displayuntracked option git-gui: right half window is paned Michael Haggerty (26): t5510: use the correct tag name in test t5510: prepare test refs more straightforwardly t5510: check that "git fetch --prune --tags" does not prune branches api-remote.txt: correct section "struct refspec" get_ref_map(): rename local variables builtin/fetch.c: reorder function definitions get_expanded_map(): add docstring get_expanded_map(): avoid memory leak fetch: only opportunistically update references based on command line fetch --tags: fetch tags *in addition to* other stuff fetch --prune: prune only based on explicit refspecs query_refspecs(): move some constants out of the loop builtin/remote.c: reorder function definitions builtin/remote.c:update(): use struct argv_array fetch, remote: properly convey --no-prune options to subprocesses fetch-options.txt: simplify ifdef/ifndef/endif usage git-fetch.txt: improve description of tag auto-following ref_remove_duplicates(): avoid redundant bisection t5536: new test of refspec conflicts when fetching ref_remove_duplicates(): simplify loop logic ref_remote_duplicates(): extract a function handle_duplicate() handle_duplicate(): mark error message for translation fetch: improve the error messages emitted for conflicting refspecs shorten_unambiguous_ref(): introduce a new local variable gen_scanf_fmt(): delete function and use snprintf() instead shorten_unambiguous_ref(): tighten up pointer arithmetic Nguyễn Thái Ngọc Duy (36): wt-status: take the alignment burden off translators gettext.c: detect the vsnprintf bug at runtime glossary-content.txt: rephrase magic signature part Support pathspec magic :(exclude) and its short form :! pathspec.c: support adding prefix magic to a pathspec with mnemonic magic parse-options: remove OPT_BOOLEAN transport.h: remove send_pack prototype, already defined in send-pack.h remote.h: replace struct extra_have_objects with struct sha1_array send-pack: forbid pushing from a shallow repository clone: prevent --reference to a shallow repository make the sender advertise shallow commits to the receiver connect.c: teach get_remote_heads to parse "shallow" lines shallow.c: extend setup_*_shallow() to accept extra shallow commits shallow.c: the 8 steps to select new commits for .git/shallow shallow.c: steps 6 and 7 to select new commits for .git/shallow fetch-pack.c: move shallow update code out of fetch_pack() fetch-pack.h: one statement per bitfield declaration clone: support remote shallow repository fetch: support fetching from a shallow repository upload-pack: make sure deepening preserves shallow roots fetch: add --update-shallow to accept refs that update .git/shallow receive-pack: reorder some code in unpack() receive/send-pack: support pushing from a shallow clone add GIT_SHALLOW_FILE to propagate --shallow-file to subprocesses connected.c: add new variant that runs with --shallow-file receive-pack: allow pushes that update .git/shallow send-pack: support pushing to a shallow clone remote-curl: pass ref SHA-1 to fetch-pack as well smart-http: support shallow fetch/clone receive-pack: support pushing to a shallow clone via http send-pack: support pushing from a shallow clone via http clone: use git protocol for cloning shallow repo locally prune: clean .git/shallow after pruning objects git-clone.txt: remove shallow clone limitations commit.c: make "tree" a const pointer in commit_tree*() t5537: fix incorrect expectation in test case 10 Nicolas Vigier (2): Use the word 'stuck' instead of 'sticked' rev-parse --parseopt: add the --stuck-long mode Pat Thoyts (3): git-gui: added gui.maxrecentrepo to extend the number of remembered repos git-gui: show the maxrecentrepo config option in the preferences dialog git-gui: add menu item to launch a bash shell on Windows. Paul Mackerras (1): gitk: Tag display improvements Ramkumar Ramachandra (11): t6300 (for-each-ref): clearly demarcate setup t6300 (for-each-ref): don't hardcode SHA-1 hexes for-each-ref: introduce %(HEAD) asterisk marker for-each-ref: introduce %(upstream:track[short]) for-each-ref: introduce %(color:...) for color for-each-ref: avoid color leakage zsh completion: find matching custom bash completion completion: introduce __gitcomp_nl_append () completion: fix branch.autosetup(merge|rebase) completion: fix remote.pushdefault completion: complete format.coverLetter Ramsay Jones (2): send-pack.c: mark a file-local function static shallow: remove unused code Richard Hansen (6): test-bzr.sh, test-hg.sh: prepare for change to push.default=simple test-hg.sh: eliminate 'local' bashism test-hg.sh: avoid obsolete 'test' syntax test-hg.sh: fix duplicate content strings in author tests test-hg.sh: help user correlate verbose output with email test remote-bzr, remote-hg: fix email address regular expression Roberto Tyley (1): docs: add filter-branch notes on The BFG Roman Kagan (1): git-svn: workaround for a bug in svn serf backend Samuel Bronson (3): t4056: add new tests for "git diff -O" diff: let "git diff -O" read orderfile from any file and fail properly diff: add diff.orderfile configuration variable Sebastian Schuberth (3): git.c: consistently use the term "builtin" instead of "internal command" builtin/help.c: call load_command_list() only when it is needed builtin/help.c: speed up is_git_command() by checking for builtin commands first Thomas Ackermann (1): user-manual: improve html and pdf formatting Thomas Gummerer (4): diff: move no-index detection to builtin/diff.c diff: don't read index when --no-index is given diff: add test for --no-index executed outside repo diff: avoid some nesting Thomas Rast (9): commit-slab: document clear_$slabname() commit-slab: declare functions "static inline" gitk: Support -G option from the command line gitk: Refactor per-line part of getblobdiffline and its support gitk: Split out diff part in $commitinfo gitk: Support showing the gathered inline diffs gitk: Recognize -L option commit-slab: sizeof() the right type in xrealloc config: arbitrary number of matches for --unset and --replace-all Tom Miller (2): fetch --prune: always print header url fetch --prune: Run prune before fetching Vasily Makarov (1): get_octopus_merge_bases(): cleanup redundant variable Zoltan Klinger (1): difftool: display the number of files in the diff queue in the prompt brian m. carlson (2): remote-curl: fix large pushes with GSSAPI Documentation: document pitfalls with 3-way merge jcb91 (1): remote-hg: avoid buggy strftime() Version v1.8.5.6; changes since v1.8.5.5: ----------------------------------------- Jeff King (9): t7300: repair filesystem permissions with test_when_finished unpack-trees: propagate errors adding entries to the index read-tree: add tests for confusing paths like ".." and ".git" verify_dotfile(): reject .git case-insensitively t1450: refactor ".", "..", and ".git" fsck tests fsck: notice .git case-insensitively utf8: add is_hfs_dotgit() helper read-cache: optionally disallow HFS+ .git variants fsck: complain about HFS+ ".git" aliases in trees Johannes Schindelin (3): path: add is_ntfs_dotgit() helper read-cache: optionally disallow NTFS .git variants fsck: complain about NTFS ".git" aliases in trees Junio C Hamano (1): Git 1.8.5.6 René Scharfe (1): annotate: use argv_array Ronnie Sahlberg (1): enums: remove trailing ',' after last item in enum Wieland Hoffmann (1): git-tag.txt: Add a missing hyphen to `-s` brian m. carlson (1): Documentation: fix missing text for rev-parse --verify Version v1.8.5.5; changes since v1.8.5.4: ----------------------------------------- Andy Spencer (1): tree_entry_interesting: match against all pathspecs Jeff King (9): fetch-pack: do not filter out one-level refs interpret_branch_name: factor out upstream handling interpret_branch_name: rename "cp" variable to "at" interpret_branch_name: always respect "namelen" parameter interpret_branch_name: avoid @{upstream} past colon interpret_branch_name: find all possible @-marks repack: fix typo in max-pack-size option repack: make parsed string options const-correct repack: propagate pack-objects options as strings Junio C Hamano (5): merge-base: separate "--independent" codepath into its own helper merge-base --octopus: reduce the result from get_octopus_merge_bases() revision: mark contents of an uninteresting tree uninteresting revision: propagate flag bits from tags to pointees Git 1.8.5.5 Ruben Kerkhof (1): send-email: /etc/ssl/certs/ directory may not be usable as ca_path Version v1.8.5.4; changes since v1.8.5.3: ----------------------------------------- Jens Lehmann (1): commit -v: strip diffs and submodule shortlogs from the commit message Johannes Schindelin (1): Remove the line length limit for graft files Johannes Sixt (2): git_connect: remove artificial limit of a remote command git_connect: factor out discovery of the protocol and its parts Junio C Hamano (4): get_max_fd_limit(): fall back to OPEN_MAX upon getrlimit/sysconf failure Documentation: exclude irrelevant options from "git pull" Documentation: "git pull" does not have the "-m" option Git 1.8.5.4 Nguyễn Thái Ngọc Duy (2): clone,fetch: catch non positive --depth option value add: don't complain when adding empty project root Roman Kagan (1): git-svn: workaround for a bug in svn serf backend Thomas Rast (3): send-email: pass Debug to Net::SMTP::SSL::new send-email: --smtp-ssl-cert-path takes an argument send-email: set SSL options through IO::Socket::SSL::set_client_defaults Torsten Bögershausen (8): t5601: remove clear_ssh, refactor setup_ssh_wrapper t5601: add tests for ssh git fetch-pack: add --diag-url t5500: add test cases for diag-url git fetch: support host:/~repo git_connect(): refactor the port handling for ssh connect.c: refactor url parsing git_connect(): use common return point brian m. carlson (1): log: properly handle decorations with chained tags Øystein Walle (1): stash: handle specifying stashes with $IFS Version v1.8.5.3; changes since v1.8.5.2: ----------------------------------------- Jeff King (5): rev-parse: correctly diagnose revision errors before "--" rev-parse: be more careful with munging arguments cat-file: pass expand_data to print_object_or_die cat-file: handle --batch format with missing type/size Revert "prompt: clean up strbuf usage" Johannes Sixt (1): mv: let 'git mv file no-such-dir/' error out on Windows, too Junio C Hamano (1): Git 1.8.5.3 Kyle J. McKay (1): gc: notice gc processes run by other users Matthieu Moy (1): mv: let 'git mv file no-such-dir/' error out Nguyễn Thái Ngọc Duy (1): daemon: be strict at parsing parameters --[no-]informative-errors Ralf Thielow (1): l10n: de.po: fix translation of 'prefix' Ramkumar Ramachandra (1): for-each-ref: remove unused variable Thomas Ackermann (1): pack-heuristics.txt: mark up the file header properly W. Trevor King (1): Documentation/gitmodules: Only 'update' and 'url' are required Version v1.8.5.2; changes since v1.8.5.1: ----------------------------------------- Jason St. John (6): Documentation/git-log: update "--log-size" description Documentation/git-log.txt: mark-up fix and minor rephasing State correct usage of literal examples in man pages in the coding standards Documentation/rev-list-options.txt: fix mark-up Documentation/rev-list-options.txt: fix some grammatical issues and typos Documentation/gitcli.txt: fix double quotes Jeff King (1): unpack-trees: fix "read-tree -u --reset A B" with conflicted index Johan Herland (1): sha1_file.c:create_tmpfile(): Fix race when creating loose object dirs Junio C Hamano (4): t1005: reindent t1005: add test for "read-tree --reset -u A B" sha1_loose_object_info(): do not return success on missing object Git 1.8.5.2 Masanari Iida (3): typofixes: fix misspelt comments Documentation/technical/http-protocol.txt: typofixes contrib: typofixes Michael Haggerty (1): cmd_repack(): remove redundant local variable "nr_packs" Nguyễn Thái Ngọc Duy (2): diff: restrict pathspec limitations to diff b/f case only glossary-content.txt: fix documentation of "**" patterns René Scharfe (1): SubmittingPatches: document how to handle multiple patches Thomas Rast (1): Documentation: revamp git-cherry(1) Torsten Bögershausen (1): git-fetch-pack uses URLs like git-fetch Version v1.8.5.1; changes since v1.8.5: --------------------------------------- Junio C Hamano (3): submodule: do not copy unknown update mode from .gitmodules Git 1.8.4.5 Git 1.8.5.1 Nick Townsend (1): ref-iteration doc: add_submodule_odb() returns 0 for success Version v1.8.5; changes since v1.8.5-rc3: ----------------------------------------- Junio C Hamano (1): Git 1.8.5 Richard Hansen (2): remote-hg: don't decode UTF-8 paths into Unicode objects remote-hg: don't decode UTF-8 paths into Unicode objects Version v1.8.5-rc3; changes since v1.8.5-rc2: --------------------------------------------- Junio C Hamano (3): Revert "upload-pack: send non-HEAD symbolic refs" Git 1.8.4.4 Git 1.8.5-rc3 Marc Branchaud (1): RelNotes: spelling & grammar fixes Nguyễn Thái Ngọc Duy (1): pathspec: stop --*-pathspecs impact on internal parse_pathspec() uses Torstein Hegge (1): branch: fix --verbose output column alignment Version v1.8.5-rc2; changes since v1.8.5-rc1: --------------------------------------------- Jason St. John (1): Correct word usage of "timezone" in "Documentation" directory Jean-Noël Avila (1): l10n: fr.po 2194/1294 messages translated Jiang Xin (2): l10n: git.pot: v1.8.5 round 1 (68 new, 9 removed) l10n: zh_CN.po: translate 68 messages (2194t0f0u) Junio C Hamano (3): Start preparing for 1.8.4.3 Git 1.8.4.3 Git 1.8.5-rc2 Karsten Blees (1): gitignore.txt: fix documentation of "**" patterns Peter Krefting (1): l10n: Update Swedish translation (2194t0f0u) Ralf Thielow (3): po/TEAMS: update Thomas Rast's email address l10n: de.po: translate 68 new messages l10n: de.po: improve error message when pushing to unknown upstream Trần Ngọc Quân (1): l10n: vi.po (2194t): Update and minor fix Version v1.8.5-rc1; changes since v1.8.5-rc0: --------------------------------------------- Anders Kaseorg (1): cvsserver: Determinize output to combat Perl 5.18 hash randomization Antoine Pelisse (1): remote-hg: unquote C-style paths when exporting Ben Walton (2): Change sed i\ usage to something Solaris' sed can handle Avoid difference in tr semantics between System V and BSD Felipe Contreras (12): merge: simplify ff-only option t: replace pulls with merges revision: add missing include branch: trivial style fix sha1-name: trivial style cleanup transport-helper: trivial style fix describe: trivial style fixes pretty: trivial style fix revision: trivial style fixes diff: trivial style fix run-command: trivial style fixes setup: trivial style fixes Jeff King (7): add-interactive: handle unborn branch in patch mode reset: pass real rev name to add--interactive howto: add article on recovering a corrupted object t: provide a perl() function which uses $PERL_PATH t: use perl instead of "$PERL_PATH" where applicable for-each-ref: avoid loading objects to print %(objectname) subtree: add makefile target for html docs Jens Lehmann (1): mv: Fix spurious warning when moving a file in presence of submodules Johannes Sixt (4): t5300-pack-object: do not compare binary data using test_cmp Windows: a test_cmp that is agnostic to random LF <> CRLF conversions tests: undo special treatment of CRLF for Windows t3200: do not open a HTML manual page when DEFAULT_MAN_FORMAT is html Jonathan Nieder (1): t/README: tests can use perl even with NO_PERL Junio C Hamano (5): doc/pull: clarify the illustrations Update draft release notes to 1.8.5 t4015: simplify sed command that is not even seen by sed Update draft release notes to 1.8.5 Git 1.8.5-rc1 Kacper Kornet (1): Fix '\%o' for printf from coreutils Rüdiger Sonderfeld (1): web--browse: Add support for xdg-open Sitaram Chamarty (1): doc/howto: warn about (dumb)http server document being too old Stefan Beller (2): refs: remove unused function invalidate_ref_cache cache: remove unused function 'have_git_dir' Vivien Didelot (2): Documentation: restore a space in unpack-objects usage Documentation: "pack-file" is not literal in unpack-objects Version v1.8.5-rc0; changes since v1.8.4.5: ------------------------------------------- Alexandru Juncu (1): git-p4: Fix occasional truncation of symlink contents. Antoine Pelisse (1): remote-hg: fix path when cloning with tilde expansion Brad King (8): reset: rename update_refs to reset_refs refs: report ref type from lock_any_ref_for_update refs: factor update_ref steps into helpers refs: factor delete_ref loose ref step into a helper refs: add function to repack without multiple refs refs: add update_refs for multiple simultaneous updates update-ref: support multiple simultaneous updates update-ref: add test cases covering --stdin signature Brandon Casey (18): sha1_file: introduce close_one_pack() to close packs on fd pressure Don't close pack fd when free'ing pack windows contrib/git-credential-gnome-keyring.c: remove unnecessary pre-declarations contrib/git-credential-gnome-keyring.c: remove unused die() function contrib/git-credential-gnome-keyring.c: *style* use "if ()" not "if()" etc. contrib/git-credential-gnome-keyring.c: add static where applicable contrib/git-credential-gnome-keyring.c: exit non-zero when called incorrectly contrib/git-credential-gnome-keyring.c: strlen() returns size_t, not ssize_t contrib/git-credential-gnome-keyring.c: ensure buffer is non-empty before accessing contrib/git-credential-gnome-keyring.c: set Gnome application name contrib/git-credential-gnome-keyring.c: use gnome helpers in keyring_object() contrib/git-credential-gnome-keyring.c: use secure memory functions for passwds contrib/git-credential-gnome-keyring.c: use secure memory for reading passwords contrib/git-credential-gnome-keyring.c: use glib memory allocation functions contrib/git-credential-gnome-keyring.c: use glib messaging functions contrib/git-credential-gnome-keyring.c: report failure to store password contrib/git-credential-gnome-keyring.c: support ancient gnome-keyring contrib/git-credential-gnome-keyring.c: support really ancient gnome-keyring Brian Gernhardt (3): Makefile: Fix APPLE_COMMON_CRYPTO with BLK_SHA1 OS X: Fix redeclaration of die warning t5551: Remove header from curl cookie file Christian Couder (7): replace: forbid replacing an object with one of a different type Documentation/replace: state that objects must be of the same type t6050-replace: test that objects are of the same type t6050-replace: add test to clean up all the replace refs Documentation/replace: add Creating Replacement Objects section replace: allow long option names t6050-replace: use some long option names Dale R. Worley (2): t0070: test that git_mkstemps correctly checks return value of open() diff --no-index: clarify operation when not inside a repository Dave Borowitz (1): http: add http.savecookies option to write out HTTP cookies Dave Williams (1): check-ignore: Add option to ignore index contents Eric Sunshine (36): t8001/t8002: blame: decompose overly-large test t8001/t8002: blame: demonstrate -L bounds checking bug t8001/t8002: blame: add empty file & partial-line tests blame: fix -L bounds checking bug t4211: log: demonstrate -L bounds checking bug t4211: retire soon-to-be unimplementable tests log: fix -L bounds checking bug t8001/t8002: blame: demonstrate acceptance of bogus -LX,+0 and -LX,-0 blame: reject empty ranges -LX,+0 and -LX,-0 t8001/t8002: blame: demonstrate acceptance of bogus -L,+0 and -L,-0 blame: reject empty ranges -L,+0 and -L,-0 git-log.txt: place each -L option variation on its own line line-range-format.txt: clarify -L:regex usage form range-set: publish API for re-use by git-blame -L blame: inline one-line function into its lone caller blame: accept multiple -L ranges t8001/t8002: blame: add tests of multiple -L options blame: document multiple -L support line-range: teach -L/RE/ to search relative to anchor point blame: teach -L/RE/ to search from end of previous -L range log: teach -L/RE/ to search from end of previous -L range line-range-format.txt: document -L/RE/ relative search line-range: teach -L^/RE/ to search from start of file line-range: teach -L:RE to search from end of previous -L range line-range: teach -L^:RE to search from start of file t8001/t8002: blame: add tests of -L line numbers less than 1 line-range: reject -L line numbers less than 1 contacts: validate hunk length earlier contacts: gather all blame sources prior to invoking git-blame contacts: reduce git-blame invocations name-hash: refactor polymorphic index_name_exists() employ new explicit "exists in index?" API name-hash: stop storing trailing '/' on paths in index_state.dir_hash dir: revert work-around for retired dangerous behavior t7508: avoid non-portable sed expression contacts: fix to work in subdirectories Eric Wong (1): http: enable keepalive on TCP sockets Felipe Contreras (26): remote-hg: ensure shared repo is initialized remote-hg: add shared repo upgrade unpack-trees: plug a memory leak remote-bzr: fix export of utf-8 authors remote-bzr: make bzr branches configurable per-repo remote-hg: fix test remote-hg: add missing &&s in the test remote-hg: improve basic test remote-helpers: trivial style fixes remote-helpers: cleanup more global variables remote-hg: use notes to keep track of Hg revisions reset: trivial refactoring branch: trivial style fix reset: trivial style cleanup add: trivial style cleanup sha1-name: pass len argument to interpret_branch_name() t: branch: trivial style fix t: branch: fix typo t: branch: fix broken && chains fast-export: make extra_refs global fast-export: refactor get_tags_and_duplicates() rev-parse test: modernize quoting and whitespace rev-parse test: use test_must_fail, not "if <command>; then false; fi" rev-parse test: use standard test functions for setup Add new @ shortcut for HEAD alias: have SP around arithmetic operators Gerrit Pape (1): hooks/post-receive-email: set declared encoding to utf-8 Hiroshige Umino (1): cherry-pick: allow "-" as abbreviation of '@{-1}' Jean-Noël Avila (1): l10n: fr.po: 2135/2135 messages translated Jeff King (22): grep: allow to use textconv filters clear parsed flag when we free tree buffers cat-file: only split on whitespace when %(rest) is used test-sha1: add a binary output mode sha1-lookup: handle duplicate keys with GIT_USE_LOOKUP add tests for indexing packs with delta cycles test index-pack on packs with recoverable delta cycles write_index: optionally allow broken null sha1s pager: turn on "cat" optimization for DEFAULT_PAGER peel_onion: do not assume length of x_type globals t5308: check that index-pack --strict detects duplicate objects config: factor out integer parsing from range checks config: properly range-check integer values config: set errno in numeric git_parse_* functions config: make numeric parsing errors more clear git-config: always treat --int as 64-bit internally t5541: mark passing c-a-s test as success cherry-pick: handle "-" after parsing options remote: do not copy "origin" string literal http: use curl's tcp keepalive if available drop redundant semicolon in empty while silence gcc array-bounds warning Jens Lehmann (6): mv: move submodules together with their work trees mv: move submodules using a gitfile submodule.c: add .gitmodules staging helper functions mv: update the path entry in .gitmodules for moved submodules rm: delete .gitmodules entry of submodules removed from the work tree Improve documentation concerning the status.submodulesummary setting Jens Lindström (1): Clear fd after closing to avoid double-close error Jeremy Huddleston (1): imap-send: use Apple's Security framework for base64 encoding Jiang Xin (6): branch: report invalid tracking branch as gone status: always show tracking branch even no change documentation: clarify notes for clean.requireForce test: use unambigous leading path (/foo) for MSYS relative_path should honor dos-drive-prefix Use simpler relative_path when set_git_dir Johan Herland (3): sample pre-commit hook: use --bool when retrieving config var Documentation/git-svn: Promote the use of --prefix in docs + examples git-svn: Warn about changing default for --prefix in Git v2.0 Johannes Sixt (1): compat/mingw.h: define PRId64 John Keeping (10): t9300: document fast-import empty path issues fast-import: set valid mode on root tree in "ls" fast-import: allow ls or filecopy of the root tree fast-import: allow moving the root tree rev-parse: remove restrictions on some options rev-parse(1): logically group options git_remote_helpers: remove little used Python library rm: re-use parse_pathspec's trailing-slash removal reset: handle submodule with trailing slash Documentation/Makefile: make AsciiDoc dblatex dir configurable Jonathan Nieder (7): hooks/post-receive-email: use plumbing instead of git log/show hooks/post-receive-email: force log messages in UTF-8 add -i test: use skip_all instead of repeated PERL prerequisite reset test: modernize style rev-parse test: use test_cmp instead of "test" builtin status test: add missing && to <<EOF blocks gc: remove gc.pid file at end of execution Julien Carsique (1): git-prompt.sh: optionally show upstream branch name Junio C Hamano (60): pack-objects: shrink struct object_entry diff_opt: track whether flags have been set explicitly setup_reflog_action: document the rules for using GIT_REFLOG_ACTION cache.h: move remote/connect API out of it builtin/push.c: use OPT_BOOL, not OPT_BOOLEAN check-ignore: the name of the character is NUL, not NULL check-attr: the name of the character is NUL, not NULL check-ignore -z: a single -z should apply to both input and output check-attr -z: a single -z should apply to both input and output diff: pass the whole diff_options to diffcore_apply_filter() diff: factor out match_filter() diff: preparse --diff-filter string argument diff: reject unknown change class given to --diff-filter diff: allow lowercase letter to specify what change class to exclude diff: deprecate -q option to diff-files remote.c: add command line option parser for "--force-with-lease" push --force-with-lease: implement logic to populate old_sha1_expect[] push --force-with-lease: tie it all together t5533: test "push --force-with-lease" parse-options: add OPT_CMDMODE() tag: use OPT_CMDMODE http.c: fix parsing of http.sslCertPasswordProtected variable config: add generic callback wrapper to parse section.<url>.key t5540/5541: smart-http does not support "--force-with-lease" send-pack: fix parsing of --force-with-lease option push: teach --force-with-lease to smart-http transport builtin/config: refactor collect_config() config: "git config --get-urlmatch" parses section.<url>.key builtin/config.c: compilation fix core-tutorial: trim the section on Inspecting Changes whatchanged: document its historical nature diff --no-index: describe in a separate paragraph config: rewrite core.pager documentation Start the post-1.8.4 cycle contrib/remote-helpers: style updates for test scripts contrib/remote-helpers: quote variable references in redirection targets Update draft release notes after merging the first batch of topics typofix: commit is spelled with two ems typofix: cherry is spelled with two ars Update draft release notes to 1.8.5 for the second batch of topics checkout: update synopsys and documentation on detaching HEAD Update draft release notes to 1.8.5 mailmap: work around implementations with pure inline strcasecmp Update draft release notes to 1.8.5 for the third batch of topics Update draft release notes to 1.8.5 for the first half of the fourth batch Update draft release notes to 1.8.5 for the fourth batch of topics Update draft release notes to 1.8.5 for the fifth batch of topics C: have space around && and || operators abspath.c: have SP around arithmetic operators alloc.c: have SP around arithmetic operators archive.c: have SP around arithmetic operators base85.c: have SP around arithmetic operators block-sha1/sha1.c: have SP around arithmetic operators Update draft release notes to 1.8.5 Update draft release notes to 1.8.5 Update draft release notes to 1.8.5 Update draft release notes to 1.8.5 checkout_entry(): clarify the use of topath[] parameter Almost -rc0 for 1.8.5 Git 1.8.5-rc0 Kacper Kornet (2): Make test "using invalid commit with -C" more strict t/t7106-reset-unborn-branch.sh: Add PERL prerequisite Karsten Blees (3): MSVC: fix compile errors due to missing libintl.h MSVC: fix compile errors due to macro redefinitions MSVC: fix stat definition hell Kazuki Saitoh (2): git p4 test: sanitize P4CHARSET git p4: implement view spec wildcards with "p4 where" Keshav Kini (4): git-svn.txt: fix AsciiDoc formatting error git-svn.txt: reword description of gc command git-svn.txt: replace .git with $GIT_DIR git-svn.txt: elaborate on rev_map files Kirill A. Shutemov (1): rebase -i: respect core.abbrev Kyle J. McKay (2): config: add helper to normalize and match URLs config: parse http.<url>.<variable> using urlmatch Lee Carver (1): Allow git-filter-branch to process large repositories with lots of branches. Marc Branchaud (1): Provide some linguistic guidance for the documentation. Mark Levedahl (1): t6131 - skip tests if on case-insensitive file system Matthieu Moy (16): Documentation/fast-import: clarify summary for `feature` command Documentation/remote-helpers: document common use-case for private ref git-remote-mediawiki: add test and check Makefile targets transport-helper: add no-private-update capability git-remote-mediawiki: use no-private-update capability on dumb push git-remote-mediawiki: no need to update private ref in non-dumb push builtin/stripspace.c: fix broken indentation wt-status: use argv_array API submodule summary: ignore --for-status option status: disable display of '#' comment prefix by default tests: don't set status.displayCommentPrefix file-wide status: add missing blank line after list of "other" files commit: factor status configuration is a helper function wt-status: turn advice_status_hints into a field of wt_status commit: disable status hints when writing to COMMIT_EDITMSG RelNotes/1.8.5: direct script writers to "git status --porcelain" Michael J Gruber (5): t4030: demonstrate behavior of show with textconv show: honor --textconv for blobs cat-file: do not die on --textconv without textconv filters t7008: demonstrate behavior of grep with textconv grep: honor --textconv for the case rev:path Michael S. Tsirkin (1): doc: don't claim that cherry calls patch-id Michael Schubert (1): fetch: make --prune configurable Michal Nazarewicz (1): remove dead pastebin link from pack-heuristics document Nazri Ramliy (2): git: run in a directory given with -C option t0056: "git -C" test updates Nguyễn Thái Ngọc Duy (57): clean: remove unused variable "seen" move struct pathspec and related functions to pathspec.[ch] pathspec: i18n-ize error strings in pathspec parsing code pathspec: add copy_pathspec add parse_pathspec() that converts cmdline args to struct pathspec parse_pathspec: save original pathspec for reporting parse_pathspec: add PATHSPEC_PREFER_{CWD,FULL} flags convert some get_pathspec() calls to parse_pathspec() parse_pathspec: add special flag for max_depth feature parse_pathspec: support stripping submodule trailing slashes parse_pathspec: support stripping/checking submodule paths parse_pathspec: support prefixing original patterns guard against new pathspec magic in pathspec matching code clean: convert to use parse_pathspec commit: convert to use parse_pathspec status: convert to use parse_pathspec rerere: convert to use parse_pathspec checkout: convert to use parse_pathspec rm: convert to use parse_pathspec ls-files: convert to use parse_pathspec archive: convert to use parse_pathspec check-ignore: convert to use parse_pathspec add: convert to use parse_pathspec reset: convert to use parse_pathspec line-log: convert to use parse_pathspec convert read_cache_preload() to take struct pathspec convert run_add_interactive to use struct pathspec convert unmerge_cache to take struct pathspec checkout: convert read_tree_some to take struct pathspec convert report_path_error to take struct pathspec convert refresh_index to take struct pathspec convert {read,fill}_directory to take struct pathspec convert add_files_to_cache to take struct pathspec convert common_prefix() to use struct pathspec remove diff_tree_{setup,release}_paths remove init_pathspec() in favor of parse_pathspec() remove match_pathspec() in favor of match_pathspec_depth() tree-diff: remove the use of pathspec's raw[] in follow-rename codepath rename field "raw" to "_raw" in struct pathspec parse_pathspec: make sure the prefix part is wildcard-free parse_pathspec: preserve prefix length via PATHSPEC_PREFIX_ORIGIN kill limit_pathspec_to_literal() as it's only used by parse_pathspec() pathspec: support :(literal) syntax for noglob pathspec pathspec: make --literal-pathspecs disable pathspec magic pathspec: support :(glob) syntax parse_pathspec: accept :(icase)path syntax smart http: use the same connectivity check on cloning for-each-ref, quote: convert *_quote_print -> *_quote_buf gc: reject if another gc is running, unless --force is given push: respect --no-thin pathspec: catch prepending :(prefix) on pathspec with short magic add: lift the pathspec magic restriction on "add -p" pack-objects: no crc check when the cached version is used fetch-pack.c: show correct command name that fails clone: tighten "local paths with colons" check a bit Fix calling parse_pathspec with no paths nor PATHSPEC_PREFER_* flags entry.c: convert checkout_entry to use strbuf Nicolas Pitre (1): lookup_object: remove hashtable_index() and optimize hash_obj() Nicolas Vigier (2): git-svn: fix signed commit parsing config doc: user.signingkey is also used for signed commits Philip Oakley (6): Doc: 'replace' merge and non-merge commits doc: command line interface (cli) dot-repository dwimmery config doc: update dot-repository notes remote doc: document long forms of set-head options remote set-head -h: add long options to synopsis doc/cli: make "dot repository" an independent bullet point Ralf Thielow (2): Documentation/git-merge-file: document option "--diff3" status: show commit sha1 in "You are currently cherry-picking" message Ramkumar Ramachandra (3): editor: use canonicalized absolute path tar-tree: remove dependency on sq_quote_print() quote: remove sq_quote_print() Ramsay Jones (8): howto/setup-git-server-over-http: fix unescaped '^'s howto/revert-a-faulty-merge: fix unescaped '^'s config.c: mark file-local function static refs.c: spell NULL pointer as NULL wrapper.c: only define gitmkstemps if needed gitweb test: fix highlight test hang on Linux Mint format-patch doc: Thunderbird wraps lines unless mailnews.wraplength=0 sparse: suppress some "using sizeof on a function" warnings René Scharfe (1): pull: use $curr_branch_short more Richard Hansen (9): peel_onion(): add support for <rev>^{tag} glossary: mention 'treeish' as an alternative to 'tree-ish' glossary: define commit-ish (a.k.a. committish) use 'tree-ish' instead of 'treeish' use 'commit-ish' instead of 'committish' glossary: more precise definition of tree-ish (a.k.a. treeish) revisions.txt: fix and clarify <rev>^{<type>} glossary: fix and clarify the definition of 'ref' remote-bzr: reuse bzrlib transports when possible SZEDER Gábor (3): bash prompt: test the prompt with newline in repository path completion: improve untracked directory filtering for filename completion t3600: fix broken "choking git rm" test Sebastian Schuberth (5): Documentation: make AsciiDoc links always point to HTML files MinGW: Fix stat definitions to work with MinGW runtime version 4.0 Windows: do not redefine _WIN32_WINNT clone: add a period after "done" to end the sentence path-utils test: rename mingw_path function to print_path Shawn O. Pearce (1): Document the HTTP transport protocols Stefan Beller (22): rm: do not set a variable twice without intermediate reading. Remove deprecated OPTION_BOOLEAN for parsing arguments Replace deprecated OPT_BOOLEAN by OPT_BOOL log, format-patch: parsing uses OPT__QUIET checkout: remove superfluous local variable branch, commit, name-rev: ease up boolean conditions hash-object: replace stdin parsing OPT_BOOLEAN by OPT_COUNTUP config parsing options: allow one flag multiple times checkout-index: fix negations of even numbers of -n revert: use the OPT_CMDMODE for parsing, reducing code diff: remove ternary operator evaluating always to true diff: fix a possible null pointer dereference rm: remove unneeded null pointer check create_delta_index: simplify condition always evaluating to true mailmap: remove redundant check for freeing memory repack: rewrite the shell script in C repack: retain the return value of pack-objects repack: improve warnings about failure of renaming and removing files contrib: remove ciabot checkout test: enable test with complex relative path Reword repack documentation to no longer state it's a script git-svn docs: Use tabs consistently within the ascii doc Stefan Saasen (2): mergetools/diffmerge: support DiffMerge as a git mergetool mergetool--lib: Fix typo in the merge/difftool help Steffen Prohaska (1): git.txt: fix asciidoc syntax of --*-pathspecs Stephen Haberman (1): pull: allow pull to preserve merges when rebasing Ted Zlatanov (1): git-credential-netrc: fix uninitialized warning Thomas Ackermann (11): Call it "Git User Manual" and remove reference to very old Git version Use current "detached HEAD" message Use current output for "git repack" Use "git merge" instead of "git pull ." Fix some typos and improve wording Simplify "How to make a commit" Improve section "Manipulating branches" Improve section "Merging multiple trees" Remove unnecessary historical note from "Object storage format" Remove irrelevant reference from "Tying it all together" "git prune" is safe Thomas Gummerer (1): read-cache: use fixed width integer types Thomas Rast (5): urlmatch.c: recompute pointer after append_normalized_escapes .mailmap: switch to Thomas Rast's personal address Documentation: revamp gitk(1) Revert "test-lib: support running tests under valgrind in parallel" Revert "test-lib: allow prefixing a custom string before "ok N" etc." Tony Finch (4): gitweb: ensure OPML text fits inside its box gitweb: vertically centre contents of page footer gitweb: omit the repository owner when it is unset gitweb: make search help link less ugly Torsten Bögershausen (1): Set core.precomposeunicode to true on e.g. HFS+ Uli Heller (1): git-svn: fix termination issues for remote svn connections brian m. carlson (3): submodule: fix confusing variable name submodule: don't print status output with ignore=all CodingGuidelines: style for multi-line comments Ævar Arnfjörð Bjarmason (1): gitweb: Fix the author initials in blame for non-ASCII names Version v1.8.4.5; changes since v1.8.4.4: ----------------------------------------- Junio C Hamano (2): submodule: do not copy unknown update mode from .gitmodules Git 1.8.4.5 Richard Hansen (1): remote-hg: don't decode UTF-8 paths into Unicode objects Version v1.8.4.4; changes since v1.8.4.3: ----------------------------------------- Junio C Hamano (2): Revert "upload-pack: send non-HEAD symbolic refs" Git 1.8.4.4 Version v1.8.4.3; changes since v1.8.4.2: ----------------------------------------- Antoine Pelisse (1): remote-hg: unquote C-style paths when exporting Brian Gernhardt (3): t5570: Update for symref capability t5570: Update for clone-progress-to-stderr branch t5570: Update for clone-progress-to-stderr branch Hemmo Nieminen (1): graph: fix coloring around octopus merges Jeff King (11): http_get_file: style fixes http_request: factor out curlinfo_strbuf http: refactor options to http_get_* http: hoist credential request out of handle_curl_result http: provide effective url to callers http: update base URLs when we see redirects remote-curl: make refs_url a strbuf remote-curl: store url as a strbuf remote-curl: rewrite base url from info/refs redirects split_ident: parse timestamp from end of line subtree: add makefile target for html docs Jonathan Nieder (1): t/README: tests can use perl even with NO_PERL Junio C Hamano (10): t5505: fix "set-head --auto with ambiguous HEAD" test upload-pack.c: do not pass confusing cb_data to mark_our_ref() upload-pack: send symbolic ref information as capability upload-pack: send non-HEAD symbolic refs connect.c: make parse_feature_value() static connect: annotate refs with their symref information in get_remote_head() clone: test the new HEAD detection logic revision: do not peel tags used in range notation Start preparing for 1.8.4.3 Git 1.8.4.3 Karsten Blees (1): gitignore.txt: fix documentation of "**" patterns Matthieu Moy (2): checkout: allow dwim for branch creation for "git checkout $branch --" checkout: proper error message on 'git checkout foo bar --' Ramsay Jones (1): http.c: Spell the null pointer as NULL SZEDER Gábor (1): bash prompt: don't use '+=' operator in show upstream code path Sitaram Chamarty (1): doc/howto: warn about (dumb)http server document being too old Vivien Didelot (2): Documentation: restore a space in unpack-objects usage Documentation: "pack-file" is not literal in unpack-objects Version v1.8.4.2; changes since v1.8.4.1: ----------------------------------------- Antoine Pelisse (1): commit: search author pattern against mailmap Christian Couder (1): sha1_file: move comment about return value where it belongs Eric Sunshine (5): rebase -i: fix cases ignoring core.commentchar dir.c::test_one_path(): work around directory_exists_in_index_icase() breakage t3404: make tests more self-contained t3404: rebase -i: demonstrate short SHA-1 collision t3200: fix failure on case-insensitive filesystems Jeff King (8): has_sha1_file: re-check pack directory before giving up upload-pack: send keepalive packets during pack computation upload-pack: bump keepalive default to 5 seconds clone: send diagnostic messages to stderr clone: treat "checking connectivity" like other progress clone: always set transport options shortlog: ignore commits with missing authors format-patch: print in-body "From" only when needed Johan Herland (4): t2024: Fix &&-chaining and a couple of typos t3200: Minor fix when preparing for tracking failure Refer to branch.<name>.remote/merge when documenting --track t3200: Add test demonstrating minor regression in 41c21f2 Johannes Sixt (1): add--interactive: fix external command invocation on Windows John Keeping (1): merge-recursive: fix parsing of "diff-algorithm" option Junio C Hamano (8): dir.c: use the cache_* macro to access the current index ls-files -k: a directory only can be killed if the index has a non-directory t3010: update to demonstrate "ls-files -k" optimization pitfalls rebase -i: fix short SHA-1 collision cvsserver: pick up the right mode bits Start preparing for 1.8.4.2 Almost 1.8.4.2 ;-) Git 1.8.4.2 Matthijs Kooijman (1): Add testcase for needless objects during a shallow fetch Nguyễn Thái Ngọc Duy (7): move setup_alternate_shallow and write_shallow_commits to shallow.c shallow: only add shallow graft points to new shallow file shallow: add setup_temporary_shallow() upload-pack: delegate rev walking in shallow fetch to pack-objects list-objects: reduce one argument in mark_edges_uninteresting list-objects: mark more commits as edges in mark_edges_uninteresting Make setup_git_env() resolve .git file when $GIT_DIR is not specified Nicolas Vigier (1): git-merge: document the -S option Per Cederqvist (1): branch.c: Relax unnecessary requirement on upstream's remote ref name Ralf Thielow (2): rebase --preserve-merges: ignore "merge.log" config clone --branch: refuse to clone if upstream repo is empty SZEDER Gábor (1): t4254: modernize tests Steffen Prohaska (1): git-prune-packed.txt: fix reference to GIT_OBJECT_DIRECTORY Torstein Hegge (1): test-lib: fix typo in comment brian m. carlson (1): http-backend: provide Allow header for 405 Version v1.8.4.1; changes since v1.8.4: --------------------------------------- Andreas Schwab (1): Documentation/git-merge.txt: fix formatting of example block Benoit Person (1): git-remote-mediawiki: bugfix for pages w/ >500 revisions Brandon Casey (3): git-completion.bash: use correct Bash/Zsh array length syntax t9902-completion.sh: old Bash still does not support array+=('') notation contrib/git-prompt.sh: handle missing 'printf -v' more gracefully Jeff King (2): config: do not use C function names as struct members mailmap: handle mailmap blobs without trailing newlines Jharrod LaFon (1): avoid segfault on submodule.*.path set to an empty "true" Johannes Sixt (1): stream_to_pack: xread does not guarantee to read all requested bytes Jonathan Nieder (1): Git 1.8.4.1 Junio C Hamano (6): t5802: add test for connect helper fetch: rename file-scope global "transport" to "gtransport" fetch: refactor code that prepares a transport fetch: refactor code that fetches leftover tags fetch: work around "transport-take-over" hack Start preparing for 1.8.4.1 Kyle J. McKay (3): Git.pm: add new temp_is_locked function git-svn: allow git-svn fetching to work using serf Git.pm: revert _temp_cache use of temp_is_locked Matthieu Moy (2): die_with_status: use "printf '%s\n'", not "echo" rebase: fix run_specific_rebase's use of "return" on FreeBSD Nguyễn Thái Ngọc Duy (1): fetch-pack: do not remove .git/shallow file when --depth is not specified Ralf Thielow (1): l10n: de.po: use "das Tag" instead of "der Tag" Ramsay Jones (1): builtin/fetch.c: Fix a sparse warning Sebastien Helleu (1): l10n: fr.po: hotfix for commit 6b388fc Steffen Prohaska (2): xread, xwrite: limit size of IO to 8MB Revert "compat/clipped-write.c: large write(2) fails on Mac OS X/XNU" Tay Ray Chuan (1): t7406-submodule-update: add missing && Thomas Rast (2): log: use true parents for diff even when rewriting log: use true parents for diff when walking reflogs Thorsten Glaser (1): fix shell syntax error in template brian m. carlson (1): send-email: don't call methods on undefined values Version v1.8.4; changes since v1.8.4-rc4: ----------------------------------------- Junio C Hamano (2): Typofix draft release notes to 1.8.4 Git 1.8.4 Version v1.8.4-rc4; changes since v1.8.4-rc3: --------------------------------------------- Junio C Hamano (3): Revert "git stash: avoid data loss when "git stash save" kills a directory" Revert "Add new @ shortcut for HEAD" Git 1.8.4-rc4 Version v1.8.4-rc3; changes since v1.8.4-rc2: --------------------------------------------- Eric Sunshine (1): parse-options: fix clang opterror() -Wunused-value warning Jean-Noël Avila (2): l10n: fr.po: 821/2112 messages translated l10n: Add reference for french translation team Jiang Xin (2): l10n: git.pot: v1.8.4 round 2 (5 new, 3 removed) l10n: zh_CN.po: translate 5 messages (2135t0f0u) Junio C Hamano (2): .mailmap: update long-lost friends with multiple defunct addresses Git 1.8.4-rc3 Matthieu Moy (1): git-remote-mediawiki: ignore generated git-mw Peter Krefting (1): l10n: Update Swedish translation (2135t0f0u) Phil Hord (1): t/t7407: fix two typos in submodule tests Ralf Thielow (3): l10n: de.po: switch from pure German to German+English l10n: de.po: translate 99 new messages l10n: de.po: translate 5 messages Stefan Beller (2): .mailmap: fixup entries .mailmap: Combine more (name, email) to individual persons Trần Ngọc Quân (1): l10n: vi.po(2135t): v1.8.4 round 2 Wieland Hoffmann (1): l10n: de.po: Fix a typo Version v1.8.4-rc2; changes since v1.8.4-rc1: --------------------------------------------- Felix Gruber (1): fix typo in documentation of git-svn Jiang Xin (2): l10n: git.pot: v1.8.4 round 1 (99 new, 46 removed) l10n: zh_CN.po: translate 99 messages (2133t0f0u) Jonathan Nieder (1): log doc: the argument to --encoding is not optional Junio C Hamano (4): Revert "cat-file: split --batch input lines on whitespace" t3900: test rejecting log message with NULs correctly commit: typofix for xxFFF[EF] check Git 1.8.4-rc2 Ramsay Jones (1): cygwin: Remove the Win32 l/stat() implementation René Scharfe (1): t8001, t8002: fix "blame -L :literal" test on NetBSD Stefan Beller (1): .mailmap: Multiple addresses of Michael S. Tsirkin Torstein Hegge (1): Documentation/rev-list-options: add missing word in --*-parents Trần Ngọc Quân (1): l10n: vi.po (2133t) brian m. carlson (1): Add missing test file for UTF-16. Version v1.8.4-rc1; changes since v1.8.4-rc0: --------------------------------------------- Brandon Casey (1): git-completion.bash: replace zsh notation that breaks bash 3.X Daniele Segato (1): docs/git-tag: explain lightweight versus annotated tags Jeff King (6): docs: fix 'report-status' protocol capability thinko docs: note that receive-pack knows side-band-64k capability document 'agent' protocol capability document 'quiet' receive-pack capability commit.h: drop redundant comment commit: tweak empty cherry pick advice for sequencer Jiang Xin (2): Documentation/git-clean: fix description for range git-clean: implement partial matching for selection Junio C Hamano (2): builtin/rm.c: consolidate error reporting for removing submodules Git 1.8.4-rc1 Lukas Fleischer (1): Avoid using `echo -n` anywhere Maurício C Antunes (1): hg-to-git: --allow-empty-message in git commit Michael Haggerty (1): do_one_ref(): save and restore value of current_ref Michal Sojka (1): contrib/subtree: Fix make install target Nguyễn Thái Ngọc Duy (1): document 'allow-tip-sha1-in-want' capability Ondřej Bílka (1): many small typofixes Ralf Thielow (1): git-rebase: fix typo Ramkumar Ramachandra (1): config doc: quote paths, fixing tilde-interpretation Ramsay Jones (1): commit-slab.h: Fix memory allocation and addressing Stefan Beller (1): .mailmap: combine more (email, name) to individual persons Thomas Rast (1): Rename advice.object_name_warning to objectNameWarning Version v1.8.4-rc0; changes since v1.8.3.4: ------------------------------------------- Adam Spiers (6): t0008: remove duplicated test fixture data check-ignore: add -n / --non-matching option check-ignore: move setup into cmd_check_ignore() check-ignore: allow incremental streaming of queries via --stdin Documentation: add caveats about I/O buffering for check-{attr,ignore} t0008: use named pipe (FIFO) to test check-ignore streaming Alexey Shumkin (10): t6006 (rev-list-format): don't hardcode SHA-1 in expected outputs t7102 (reset): don't hardcode SHA-1 in expected outputs t4205 (log-pretty-formats): don't hardcode SHA-1 in expected outputs pretty: Add failing tests: --format output should honor logOutputEncoding pretty: --format output should honor logOutputEncoding t4041, t4205, t6006, t7102: use iso8859-1 rather than iso-8859-1 t4205 (log-pretty-formats): revert back single quotes t4205, t6006, t7102: make functions better readable t6006 (rev-list-format): add tests for "%b" and "%s" for the case i18n.commitEncoding is not set t4205 (log-pretty-formats): avoid using `sed` Andrew Pimlott (2): rebase -i: handle fixup! fixup! in --autosquash lib-rebase: style: use write_script, <<-\EOF Andrew Wong (1): git add -e: Explicitly specify that patch should have no color Antoine Pelisse (1): diff: add --ignore-blank-lines option Arnaud Fontaine (1): Do not ignore merge options in interactive rebase Benoit Person (9): git-remote-mediawiki: use Git.pm functions for credentials git-remote-mediawiki: remove hardcoded version number in the test suite git-remote-mediawiki: introduction of Git::Mediawiki.pm wrap-for-bin: make bin-wrappers chainable git-remote-mediawiki: add a git bin-wrapper for developement git-remote-mediawiki: update tests to run with the new bin-wrapper git-remote-mediawiki: factoring code between git-remote-mediawiki and Git::Mediawiki git-remote-mediawiki: add git-mw command git-remote-mediawiki: add preview subcommand into git mw Benoit Sigoure (1): Revert "compat/unsetenv.c: Fix a sparse warning" Bo Yang (2): Refactor parse_loc Export rewrite_parents() for 'log -L' Brandon Casey (3): builtin/checkout.c: don't leak memory in check_tracking_name t/t9802: explicitly name the upstream branch to use as a base remote.c: avoid O(m*n) behavior in match_push_refs Brian Gernhardt (1): t4205: replace .\+ with ..* in sed commands Chris Packham (1): submodule update: allow custom command to update submodule working tree Christian Couder (1): Makefile: replace "echo 1>..." with "echo >..." Célestin Matte (32): git-remote-mediawiki: display message when launched directly git-remote-mediawiki: make a regexp clearer git-remote-mediawiki: move "use warnings;" before any instruction git-remote-mediawiki: replace :utf8 by :encoding(UTF-8) git-remote-mediawiki: always end a subroutine with a return git-remote-mediawiki: move a variable declaration at the top of the code git-remote-mediawiki: change syntax of map calls git-remote-mediawiki: rewrite unclear line of instructions git-remote-mediawiki: remove useless regexp modifier (m) git-remote-mediawiki: change the behaviour of a split git-remote-mediawiki: change separator of some regexps git-remote-mediawiki: change style in a regexp git-remote-mediawiki: change style in a regexp git-remote-mediawiki: add newline in the end of die() error messages git-remote-mediawiki: change the name of a variable git-remote-mediawiki: turn double-negated expressions into simple expressions git-remote-mediawiki: remove unused variable $entry git-remote-mediawiki: rename a variable ($last) which has the name of a keyword git-remote-mediawiki: assign a variable as undef and make proper indentation git-remote-mediawiki: check return value of open git-remote-mediawiki: remove import of unused open2 git-remote-mediawiki: put long code into a subroutine git-remote-mediawiki: modify strings for a better coding-style git-remote-mediawiki: brace file handles for print for more clarity git-remote-mediawiki: replace "unless" statements with negated "if" statements git-remote-mediawiki: don't use quotes for empty strings git-remote-mediawiki: put non-trivial numeric values in constants. git-remote-mediawiki: fix a typo ("mediwiki" instead of "mediawiki") git-remote-mediawiki: clearly rewrite double dereference git-remote-mediawiki: add a .perlcriticrc file git-remote-mediawiki: add a perlcritic rule in Makefile git-remote-mediawiki: make error message more precise Dale R. Worley (1): git_mkstemps: correctly test return value of open() Dirk Wallenstein (1): request-pull: improve error message for invalid revision args Doug Bell (1): show-ref: make --head always show the HEAD ref Eduardo R. D'Avila (5): t9903: add tests for git-prompt pcmode git-prompt.sh: refactor colored prompt code t9903: remove redundant tests git-prompt.sh: do not print duplicate clean color code git-prompt.sh: add missing information in comments Eric Sunshine (27): t4211: fix broken test when one -L range is subset of another range_set: fix coalescing bug when range is a subset of another builtin: add git-check-mailmap command t4203: test check-mailmap command invocation t4203: demonstrate loss of single-character name in mailmap entry t4203: demonstrate loss of uppercase characters in canonical email mailmap: debug: fix out-of-order fprintf() arguments mailmap: debug: fix malformed fprintf() format conversion specification mailmap: debug: eliminate -Wformat field precision type warning mailmap: debug: avoid passing NULL to fprintf() '%s' conversion specification git-log.txt: fix typesetting of example "git-log -L" invocation line-range: fix "blame -L X,-N" regression t8001/t8002 (blame): modernize style t8001/t8002 (blame): add blame -L tests t8001/t8002 (blame): add blame -L :funcname tests blame-options.txt: place each -L option variation on its own line blame-options.txt: explain that -L <start> and <end> are optional contrib: add git-contacts helper contrib: contacts: add ability to parse from committish contrib: contacts: interpret committish akin to format-patch contrib: contacts: add mailmap support contrib: contacts: add documentation range-set: fix sort_and_merge_range_set() corner case bug t4211: demonstrate empty -L range crash t4211: demonstrate crash when first -L encountered is empty range range-set: satisfy non-empty ranges invariant line-log: fix "log -LN" crash when N is last line of file Felipe Contreras (108): transport-helper: report errors properly transport-helper: improve push messages transport-helper: clarify *:* refspec transport-helper: update refspec documentation transport-helper: clarify pushing without refspecs transport-helper: warn when refspec is not used transport-helper: trivial code shuffle transport-helper: update remote helper namespace completion: add file completion tests completion: document tilde expansion failure in tests completion; remove unuseful comments completion: use __gitcompadd for __gitcomp_file completion: refactor diff_index wrappers completion: refactor __git_complete_index_file() completion: add hack to enable file mode in bash < 4 completion: add space after completed filename completion: remove __git_index_file_list_filter() fast-export: do not parse non-commit objects while reading marks file fast-export: don't parse commits while reading marks file fast-{import,export}: use get_sha1_hex() to read from marks file tests: at-combinations: simplify setup tests: at-combinations: check ref names directly tests: at-combinations: improve nonsense() sha1_name: remove no-op sha1_name: remove unnecessary braces completion: cleanup zsh wrapper completion: synchronize zsh wrapper sha1_name: reorganize get_sha1_basic() sha1_name: refactor reinterpret() Add new @ shortcut for HEAD sha1_name: compare variable with constant, not constant with variable test: remote-helper: add missing and transport-helper: fix remote helper namespace regression transport-helper: barf when user tries old:new transport-helper: check if the dry-run is supported remote-helpers: tests: use python directly remote-hg: tests: fix hg merge build: trivial simplification build: cleanup using $^ build: cleanup using $< build: add NO_INSTALL variable build: do not install git-remote-testpy remote-bzr: recover from failed clones remote-bzr: fix for files with spaces remote-bzr: simplify get_remote_branch() remote-bzr: delay cloning/pulling remote-bzr: change global repo remote-bzr: trivial cleanups remote-bzr: reorganize the way 'wanted' works remote-bzr: add fallback check for a partial clone remote-hg: test: be a little more quiet remote-hg: trivial reorganization remote-helpers: test: cleanup white-spaces remote-helpers: test: cleanup style remote-helpers: tests: general improvements remote-helpers: test: simplify remote URLs remote-hg: test: simplify previous branch checkout remote-hg: load all extensions remote-hg: use a shared repository store remote-hg: shuffle some code remote-hg: improve node traversing remote-hg: add version checks to the marks remote-hg: switch from revisions to SHA-1 noteids remote-hg: upgrade version 1 marks remote-hg: ensure remote rebasing works remote-hg: trivial cleanups remote-hg: improve progress calculation remote-hg: always point HEAD to master remote-hg: add tests for 'master' bookmark remote-bzr: simplify test checks remote-hg: add check_bookmark() test helper remote-hg: update bookmarks when using a remote remote-hg: add remote tests remote-hg: add test to push new bookmark remote-hg: add test for diverged push remote-hg: add test for bookmark diverge remote-hg: add test for new bookmark special remote-hg: add test for big push remote-hg: add test for failed double push remote-hg: reorganize bookmark handling remote-hg: force remote bookmark push selectively remote-hg: only update necessary revisions remote-hg: implement custom push() remote-hg: implement custom checkheads() remote-hg: pass around revision refs remote-hg: check diverged bookmarks remote-hg: simplify branch_tip() remote-hg: improve branch listing remote-hg: use remote 'default' not local one remote-hg: improve lightweight tag author remote-hg: remove files before modifications remote-hg: add setup_big_push() helper remote-hg: add check_push() helper remote-helpers: improve marks usage remote-hg: trivial cleanup remote-hg: check if a fetch is needed remote-hg: add support for --dry-run remote-hg: add support for --force remote: trivial style cleanup test: trivial cleanups test: rebase: fix --interactive test send-email: remove warning about unset chainreplyto completion: zsh: improve bash script loading completion: avoid ls-remote in certain scenarios test: fix post rewrite hook report build: generate and clean test scripts build: do not install git-remote-testgit Makefile: use $^ to avoid listing prerequisites on the command line Fredrik Gustafsson (2): git-submodule.sh: remove duplicate call to set_rev_name Add --depth to submodule update/add Grahack (1): French translation: copy -> copie. Heiko Voigt (6): git-gui: allow "\ No newline at end of file" for linewise staging config: factor out config file stack management config: drop cf validity check in get_next_char() config: make parsing stack struct independent from actual data source teach config --blob option to parse config from database do not die when error in config parsing of buf occurs Jeff King (40): transport-helper: mention helper name when it dies commit: allow associating auxiliary info on-demand lookup_object: prioritize recently found objects t5510: start tracking-ref tests from a known state refactor "ref->merge" flag fetch: opportunistically update tracking refs t0005: test git exit code from signal death contrib: drop blameview/ directory t5303: drop "count=1" from corruption dd unpack_entry: do not die when we fail to apply a delta get_packed_ref_cache: reload packed-refs file when it changes for_each_ref: load all loose refs before packed refs transport-helper: be quiet on read errors from helpers fetch-pack: avoid quadratic list insertion in mark_complete commit.c: make compare_commits_by_commit_date global fetch-pack: avoid quadratic behavior in rev_list_push pretty.c: drop const-ness from pretty_print_context teach format-patch to place other authors into in-body "From" zero-initialize object_info structs teach sha1_object_info_extended a "disk_size" query clone: drop connectivity check for local clones add missing "format" function attributes use "sentinel" function attribute for variadic lists wt-status: use "format" function attribute for status_printf t1006: modernize output comparisons cat-file: teach --batch to stream blob objects cat-file: refactor --batch option parsing cat-file: add --batch-check=<format> cat-file: add %(objectsize:disk) format atom cat-file: split --batch input lines on whitespace pack-revindex: use unsigned to store number of objects pack-revindex: radix-sort the revindex t0008: avoid SIGPIPE race condition on fifo cat-file: disable object/refname ambiguity check for batch mode sha1_object_info_extended: rename "status" to "type" sha1_loose_object_info: make type lookup optional packed_object_info: hoist delta type resolution to helper packed_object_info: make type lookup optional sha1_object_info_extended: make type calculation optional sha1_object_info_extended: pass object_info to helpers Jiang Xin (16): test: add test cases for relative_path path.c: refactor relative_path(), not only strip prefix quote.c: substitute path_relative with relative_path quote_path_relative(): remove redundant parameter write_name{_quoted_relative,}(): remove redundant parameters git-clean: refactor git-clean into two phases git-clean: add support for -i/--interactive git-clean: show items of del_list in columns git-clean: add colors to interactive git-clean git-clean: use a git-add-interactive compatible UI git-clean: add filter by pattern interactive action git-clean: add select by numbers interactive action git-clean: add ask each interactive action git-clean: add documentation for interactive git-clean test: add t7301 for git-clean--interactive test: run testcases with POSIX absolute paths on Windows Johan Herland (3): finish_copy_notes_for_rewrite(): Let caller provide commit message Move copy_note_for_rewrite + friends from builtin/notes.c to notes-utils.c Move create_notes_commit() from notes-merge.c into notes-utils.c Johannes Schindelin (2): Define NO_GETTEXT for Git for Windows Windows resource: handle dashes in the Git version gracefully Johannes Sixt (4): git-remote-testgit: avoid process substitution git-remote-testgit: further remove some bashisms t0005: skip signal death exit code test on Windows rebase topology tests: fix commit names on case-insensitive file systems John Keeping (20): t/Makefile: fix result handling with TEST_OUTPUT_DIRECTORY test output: respect $TEST_OUTPUT_DIRECTORY t/Makefile: don't define TEST_RESULTS_DIRECTORY recursively fetch: don't try to update unfetched tracking refs git-gui: fix file name handling with non-empty prefix add--interactive: respect diff.algorithm Documentation/Makefile: fix spaces around assignments Documentation/Makefile: move infodir to be with other '*dir's mergetool--lib: refactor {diff,merge}_cmd logic t7401: make indentation consistent t7403: modernize style t7403: add missing && chaining submodule: show full path in error message rev-parse: add --prefix option submodule: drop the top-level requirement completion: handle unstuck form of base git options completion: learn about --man-path git-config(1): clarify precedence of multiple values push: avoid suggesting "merging" remote changes pull: change the description to "integrate" changes Jonathan Nieder (1): mingw: rename WIN32 cpp macro to GIT_WINDOWS_NATIVE Jonathon Mah (2): Documentation: remove --prune from pack-refs examples Documentation: fix git-prune example usage Jorge Juan Garcia Garcia (4): status: introduce status.short to enable --short by default status: introduce status.branch to enable --branch by default status: introduce status.short to enable --short by default status: introduce status.branch to enable --branch by default Junio C Hamano (56): commit-slab: avoid large realloc date.c: add parse_expiry_date() line-log: fix documentation formatting t5801: "VAR=VAL shell_func args" is forbidden prune: introduce OPT_EXPIRY_DATE() and use it git-remote-testgit: build it to run under $SHELL_PATH t6111: allow checking the parents as well t6012: update test for tweaked full-history traversal Start 1.8.4 cycle Update draft release notes to 1.8.4 Update draft release notes to 1.8.4 Update draft release notes to 1.8.4 commit-slab: introduce a macro to define a slab for new type test: test_must_be_empty helper Update draft release notes toposort: rename "lifo" field prio-queue: priority queue of pointers to structs sort-in-topological-order: use prio-queue log: --author-date-order Update draft release notes to 1.8.4 t7512: test "detached from" as well Update draft release notes to 1.8.4 t/lib-t6000: style fixes topology tests: teach a helper to take abbreviated timestamps t6003: add --date-order test topology tests: teach a helper to set author dates as well t6003: add --author-date-order test add -i: add extra options at the right place in "diff" command line Update draft release notes to 1.8.4 Revert "Merge branch 'jg/status-config'" status/commit: make sure --porcelain is not affected by user-facing config Update draft release notes to 1.8.4 Update draft release notes to 1.8.4 Update draft release notes to 1.8.4 Update draft release notes to 1.8.4 Update draft release notes to 1.8.4 treat_directory(): do not declare submodules to be untracked name-ref: factor out name shortening logic from name_ref() name-rev: allow converting the exact object name at the tip of a ref describe: use argv-array remote-http: use argv-array Update draft release notes to 1.8.4 Update draft release notes for 1.8.4 mailmap: do not lose single-letter names mailmap: do not downcase mailmap entries mailmap: style fixes Revert "git-clone.txt: remove the restriction on pushing from a shallow clone" Update draft release notes to 1.8.4 Update draft release notes to 1.8.4 name-rev: differentiate between tags and commits they point at describe: fix --contains when a tag is given as input t2202: make sure "git add" (no args) stays a no-op Update draft release notes to 1.8.4 t7600: fix typo in test title t4211: fix incorrect rebase at f8395edc (range-set: satisfy non-empty ranges invariant) Git 1.8.4-rc0 Kevin Bracey (14): decorate.c: compact table when growing t6019: test file dropped in -s ours merge t6111: new TREESAME test set t6111: add parents to tests rev-list-options.txt: correct TREESAME for P Documentation: avoid "uninteresting" revision.c: Make --full-history consider more merges simplify-merges: never remove all TREESAME parents simplify-merges: drop merge from irrelevant side branch revision.c: add BOTTOM flag for commits revision.c: discount side branches when computing TREESAME revision.c: don't show all merges for --parents revision.c: make default history consider bottom commits am: replace uses of --resolved with --continue Kirill Smelkov (1): git-gui: Fix parsing of <rev> <path-which-not-present-in-worktree> Mark Levedahl (6): test-lib.sh - cygwin does not have usable FIFOs test-lib.sh - define and use GREP_STRIPS_CR Cygwin 1.7 needs compat/regex Cygwin 1.7 has thread-safe pread Cygwin 1.7 supports mmap cygwin: stop forcing core.filemode=false Martin von Zweigbergk (7): add simple tests of consistency across rebase types add tests for rebasing with patch-equivalence present add tests for rebasing of empty commits add tests for rebasing root add tests for rebasing merged history t3406: modernize style tests: move test for rebase messages from t3400 to t3406 Mathieu Lienard--Mayor (2): rm: better error message on failure for multiple files rm: introduce advice.rmHints to shorten messages Matthieu Moy (10): config: refactor management of color.ui's default value git-remote-mediawiki: better error message when HTTP(S) access fails make color.ui default to 'auto' git-remote-mediawiki: un-brace file handles in binmode calls t4000-diff-format.sh: modernize style diff: allow --no-patch as synonym for -s diff: allow --patch & cie to override -s/--no-patch Documentation/git-show.txt: include common diff options, like git-log.txt Documentation: move description of -s, --no-patch to diff-options.txt Documentation/git-log.txt: capitalize section names Matthijs Kooijman (1): upload-pack: remove a piece of dead code Michael Haggerty (75): git-gc.txt, git-reflog.txt: document new expiry options api-parse-options.txt: document "no-" for non-boolean options refs: document flags constants REF_* refs: document the fields of struct ref_value refs: document do_for_each_ref() and do_one_ref() refs: document how current_ref is used refs: define constant PEELED_LINE_LENGTH do_for_each_ref_in_dirs(): remove dead code get_packed_ref(): return a ref_entry peel_ref(): use function get_packed_ref() repack_without_ref(): use function get_packed_ref() refs: extract a function ref_resolves_to_object() refs: extract function peel_object() peel_object(): give more specific information in return value peel_ref(): fix return value for non-peelable, not-current reference refs: extract a function peel_entry() refs: change the internal reference-iteration API t3210: test for spurious error messages for dangling packed refs repack_without_ref(): silence errors for dangling packed refs search_ref_dir(): return an index rather than a pointer refs: change how packed refs are deleted t3211: demonstrate loss of peeled refs if a packed ref is deleted repack_without_ref(): write peeled refs in the rewritten file refs: extract a function write_packed_entry() pack-refs: rename handle_one_ref() to pack_one_ref() pack-refs: merge code from pack-refs.{c,h} into refs.{c,h} pack_one_ref(): rename "path" parameter to "refname" refs: use same lock_file object for both ref-packing functions pack_refs(): change to use do_for_each_entry() refs: inline function do_not_prune() pack_one_ref(): use function peel_entry() pack_one_ref(): use write_packed_entry() to do the writing pack_one_ref(): do some cheap tests before a more expensive one refs: change do_for_each_*() functions to take ref_cache arguments refs: handle the main ref_cache specially describe: make own copy of refname fetch: make own copies of refnames add_rev_cmdline(): make a copy of the name argument builtin_diff_tree(): make it obvious that function wants two entries cmd_diff(): use an object_array for holding trees cmd_diff(): rename local variable "list" -> "entry" cmd_diff(): make it obvious which cases are exclusive of each other revision: split some overly-long lines object_array: add function object_array_filter() revision: use object_array_filter() in implementation of gc_boundary() object_array_remove_duplicates(): rewrite to reduce copying fsck: don't put a void*-shaped peg in a char*-shaped hole find_first_merges(): initialize merges variable using initializer find_first_merges(): remove unnecessary code object_array_entry: fix memory handling of the name field do_fetch(): reduce scope of peer_item do_fetch(): clean up existing_refs before exiting add_existing(): do not retain a reference to sha1 show_head_ref(): do not shadow name of argument show_head_ref(): rename first parameter to "refname" string_list_add_one_ref(): rename first parameter to "refname" string_list_add_refs_by_glob(): add a comment about memory management exclude_existing(): set existing_refs.strdup_strings register_ref(): make a copy of the bad reference SHA-1 refs: document the lifetime of the args passed to each_ref_fn resolve_ref_unsafe(): extract function handle_missing_loose_ref() resolve_ref_unsafe(): handle the case of an SHA-1 within loop resolve_ref_unsafe(): close race condition reading loose refs repack_without_ref(): split list curation and entry writing pack_refs(): split creation of packed refs and entry writing refs: wrap the packed refs cache in a level of indirection refs: implement simple transactions for the packed-refs file refs: manage lifetime of packed refs cache via reference counting do_for_each_entry(): increment the packed refs cache refcount packed_ref_cache: increment refcount when locked Extract a struct stat_data from cache_entry add a stat_validity struct refs: do not invalidate the packed-refs cache unnecessarily git-multimail: an improved replacement for post-receive-email post-receive-email: deprecate script in favor of git-multimail Michael Schubert (1): Change "remote tracking" to "remote-tracking" Mike Crowe (1): describe: Add --first-parent option Miklos Vajna (1): merge: handle --ff/--no-ff/--ff-only as a tri-state option Namhyung Kim (1): name-rev: allow to specify a subpath for --refs option Nguyễn Thái Ngọc Duy (10): clone: allow cloning local paths with colons in them index-pack: remove dead code (it should never happen) clone: open a shortcut for connectivity check prune-packed: avoid implying "1" is DRY_RUN in prune_packed_objects() get_sha1: warn about full or short object names that look like refs Makefile: promote wildmatch to be the default fnmatch implementation core: use env variable instead of config var to turn on logging pack access git.txt: document GIT_TRACE_PACKET Convert "struct cache_entry *" to "const ..." wherever possible git-clone.txt: remove the restriction on pushing from a shallow clone Ondřej Bílka (3): typofix: release notes typofix: documentation typofix: in-code comments Pat Thoyts (7): git-gui: fix the mergetool launcher for the Beyond Compare tool. git-gui: change dialog button positions for Windows to suit platform. Provide a Windows version resource for the git executables. Ensure the resource file is rebuilt when the version changes. Set the default help format to html for msys builds. git-gui: avoid an error message when removing the last remote git-gui 0.18 Peter Krefting (1): commit: reject non-characters Petr Baudis (1): git stash: avoid data loss when "git stash save" kills a directory Pierre le Riche (1): msysgit: Add the --large-address-aware linker directive to the makefile. Ralf Thielow (1): wt-status: give better advice when cherry-pick is in progress Ramkumar Ramachandra (54): tests: at-combinations: increase coverage tests: at-combinations: @{N} versus HEAD@{N} sha1_name: don't waste cycles in the @-parsing loop sha1_name: check @{-N} errors sooner am: tighten a conditional that checks for $dotest rebase -i: don't error out if $state_dir already exists rebase: prepare to do generic housekeeping am: return control to caller, for housekeeping rebase -i: return control to caller, for housekeeping rebase --merge: return control to caller, for housekeeping prompt: introduce GIT_PS1_STATESEPARATOR prompt: factor out gitstring coloring logic prompt: colorize ZSH prompt rebase: implement --[no-]autostash and rebase.autostash contrib: remove continuous/ and patches/ completion: difftool takes both revs and files completion: show can take both revlist and paths rebase: guard against missing files in read_basic_state() rebase: finish_rebase() in fast-forward rebase rebase: finish_rebase() in noop rebase prompt: squelch error output from cat t/rebase: add failing tests for a peculiar revision sh-setup: add new peel_committish() helper rebase: use peel_committish() where appropriate am: handle stray $dotest directory t/am: use test_path_is_missing() where appropriate stash doc: add a warning about using create stash doc: document short form -p in synopsis stash: simplify option parser for create wt-status: remove unused field in grab_1st_switch_cbdata t/t2021-checkout-last: "checkout -" should work after a rebase finishes status: do not depend on rebase reflog messages checkout: respect GIT_REFLOG_ACTION stash: introduce 'git stash store' rebase: use 'git stash store' to simplify logic sequencer: write useful reflog message for fast-forward t/t5528-push-default: remove redundant test_config lines t/t5505-remote: modernize style t/t5505-remote: test push-refspec in branches-file t/t5505-remote: use test_path_is_missing remote: remove dead code in read_branches_file() t/t5505-remote: test url-with-# in branches-file ls-remote doc: fix example invocation on git.git ls-remote doc: rewrite <repository> paragraph ls-remote doc: don't encourage use of branches-file t/t5505-remote: test multiple push/pull in remotes-file config doc: rewrite push.default section rebase: use a better reflog message rebase -i: use a better reflog message push: change `simple` to accommodate triangular workflows t/t5528-push-default: generalize test_push_* t/t5528-push-default: test pushdefault workflows commit: make it work with status.short send-email: be explicit with SSL certificate verification Ramsay Jones (14): compat/regex/regexec.c: Fix some sparse warnings compat/fnmatch/fnmatch.c: Fix a sparse error compat/nedmalloc: Fix some sparse warnings compat/nedmalloc: Fix compiler warnings on linux compat/unsetenv.c: Fix a sparse warning compat/win32/pthread.c: Fix a sparse warning compat/poll/poll.c: Fix a sparse warning compat/win32mmap.c: Fix some sparse warnings compat/mingw.c: Fix some sparse warnings sparse: Fix mingw_main() argument number/type errors cygwin: Remove the CYGWIN_V15_WIN32API build variable path: Fix a sparse warning Fix some sparse warnings Add the LAST_ARG_MUST_BE_NULL macro René Scharfe (11): cache: mark cache_entry pointers const read-cache: mark cache_entry pointers const unpack-trees: factor out dup_entry unpack-trees: create working copy of merge entry in merged_entry diff-lib, read-tree, unpack-trees: mark cache_entry pointers const diff-lib, read-tree, unpack-trees: mark cache_entry array paramters const unpack-trees: free cache_entry array members for merges match-trees: factor out fill_tree_desc_strict unpack-trees: don't shift conflicts left and right diffcore-pickaxe: simplify has_changes and contains .mailmap: René Scharfe has a new email address Richard Hartmann (3): templates: Use heredoc in pre-commit hook templates: Reformat pre-commit hook's message templates: spell ASCII in uppercase in pre-commit hook SZEDER Gábor (16): bash prompt: fix redirection coding style in tests bash prompt: use 'write_script' helper in interactive rebase test completion, bash prompt: move __gitdir() tests to completion test suite bash prompt: add a test for symbolic link symbolic refs bash prompt: print unique detached HEAD abbreviated object name bash prompt: return early from __git_ps1() when not in a git repository bash prompt: run 'git rev-parse --git-dir' directly instead of __gitdir() bash prompt: use bash builtins to find out rebase state bash prompt: use bash builtins to find out current branch bash prompt: combine 'git rev-parse' executions in the main code path bash prompt: combine 'git rev-parse' for detached head bash prompt: use bash builtins to check for unborn branch for dirty state bash prompt: use bash builtins to check stash state bash prompt: avoid command substitution when checking for untracked files bash prompt: avoid command substitution when finalizing gitstring bash prompt: mention that PROMPT_COMMAND mode is faster Sebastian Schuberth (1): Makefile: Do not use OLD_ICONV on MINGW anymore Slava Kardakov (1): Fix `git svn` `rebase` & `dcommit` if top-level HEAD directory exist Stefan Beller (10): .mailmap: Map "H.Merijn Brand" to "H. Merijn Brand" .mailmap: Map email addresses to names .mailmap: Combine more (email, name) to individual persons daemon.c:handle: Remove unneeded check for null pointer. commit: Fix a memory leak in determine_author_info diff.c: Do not initialize a variable, which gets reassigned anyway. parse_object_buffer: correct freeing the buffer .mailmap: combine more (email, name) to individual persons traverse_trees(): clarify return value of the callback open_istream: remove unneeded check for null pointer Stefan Haller (1): git-gui: bring wish process to front on Mac Thomas Gummerer (1): perf-lib: fix start/stop of perf tests Thomas Rast (25): Implement line-history search (git log -L) log -L: :pattern:file syntax to find by funcname Speed up log -L... -M log -L: check range set invariants when we look it up log -L: fix overlapping input ranges t4211: pass -M to 'git log -M -L...' test log -L: test merge of parallel modify/rename log -L: store the path instead of a diff_filespec log -L: improve comments in process_all_files() git-log(1): remove --full-line-diff description fetch/pull doc: untangle meaning of bare <ref> sha1_file: silence sha1_loose_object_info test-lib: enable MALLOC_* for the actual tests test-lib: refactor $GIT_SKIP_TESTS matching test-lib: rearrange start/end of test_expect_* and test_skip test-lib: self-test that --verbose works test-lib: verbose mode for only tests matching a pattern test-lib: valgrind for only tests matching a pattern test-lib: allow prefixing a custom string before "ok N" etc. test-lib: support running tests under valgrind in parallel run-command: dup_devnull(): guard against syscalls failing daemon/shell: refactor redirection of 0/1/2 from /dev/null git: ensure 0/1/2 are open in main() apply, entry: speak of submodules instead of subprojects show-branch: fix description of --date-order Tony Finch (1): gitweb: allow extra breadcrumbs to prefix the trail Torsten Bögershausen (1): t0000: do not use export X=Y W. Trevor King (4): doc/clone: Remove the '--bare -l -s' example doc/clone: Pick more compelling paths for the --reference example Documentation: Update the NFS remote examples to use the staging repo Documentation: Update 'linux-2.6.git' -> 'linux.git' Xidorn Quan (1): credential-osxkeychain: support more protocols brian m. carlson (3): send-email: provide port separately from hostname commit: reject invalid UTF-8 codepoints commit: reject overlong UTF-8 sequences Version v1.8.3.4; changes since v1.8.3.3: ----------------------------------------- Dennis Kaarsemaker (2): tests: allow sha1's as part of the path GIT-VERSION-GEN: support non-standard $GIT_DIR path Fraser Tweedale (2): documentation: add git:// transport security notice diff-options: document default similarity index Jeff King (5): t/lib-httpd/apache.conf: do not use LockFile in apache >= 2.4 t/lib-httpd/apache.conf: load extra auth modules in apache 2.4 t/lib-httpd/apache.conf: load compat access module in apache 2.4 t/lib-httpd/apache.conf: configure an MPM module for apache 2.4 lib-httpd/apache.conf: check version only after mod_version loads Johannes Sixt (10): test-chmtime: Fix exit code on Windows t3010: modernize style tests: introduce test_ln_s_add tests: use test_ln_s_add to remove SYMLINKS prerequisite (trivial cases) t0000: use test_ln_s_add to remove SYMLINKS prerequisite t3030: use test_ln_s_add to remove SYMLINKS prerequisite t3100: use test_ln_s_add to remove SYMLINKS prerequisite t3509, t4023, t4114: use test_ln_s_add to remove SYMLINKS prerequisite t6035: use test_ln_s_add to remove SYMLINKS prerequisite t4011: remove SYMLINKS prerequisite Junio C Hamano (7): fetch-options.txt: prevent a wildcard refspec from getting misformatted diff: demote core.safecrlf=true to core.safecrlf=warn t1512: correct leftover constants from earlier edition get_short_sha1(): correctly disambiguate type-limited abbreviation Start preparing for 1.8.3.4 Update draft release notes to 1.8.3.4 Git 1.8.3.4 Kevin Bracey (1): Documentation: Move "git diff <blob> <blob>" Matthieu Moy (2): Documentation/git-push.txt: explain better cases where --force is dangerous Documentation/git-merge.txt: weaken warning about uncommited changes Michael Haggerty (1): lockfile: fix buffer overflow in path handling Namhyung Kim (1): config: Add description of --local option Ondřej Bílka (1): update URL to the marc.info mail archive Phil Hord (1): fix "builtin-*" references to be "builtin/*" Ramkumar Ramachandra (2): column doc: rewrite documentation for column.ui name-rev doc: rewrite --stdin paragraph René Scharfe (9): t5000: integrate export-subst tests into regular tests t5000, t5003: create directories for extracted files lazily t5000: factor out check_tar t5000: use check_tar for prefix test t5000: simplify tar-tree tests t5000: test long filenames read-cache: add simple performance test read-cache: free cache in discard_index use logical OR (||) instead of binary OR (|) in logical context Stefan Beller (4): archive-zip:write_zip_entry: Remove second reset of size variable to zero. Documentation: "git reset <tree-ish> <pathspec>" takes a tree-ish, not tree-sh http-push.c::add_send_request(): do not initialize transfer_request apply.c::find_name_traditional(): do not initialize len to the line's length Thomas Rast (7): coverage: split build target into compile and test coverage: do not delete .gcno files before building coverage: set DEFAULT_TEST_TARGET to avoid using prove coverage: build coverage-untested-functions by default Test 'commit --only' after 'checkout --orphan' t9902: fix 'test A == B' to use = operator test-lint: detect 'export FOO=bar' Torstein Hegge (1): bisect: Fix log output for multi-parent skip ranges Veres Lajos (1): random typofixes (committed missing a 't', successful missing an 's') Vitor Antunes (1): t9801: git-p4: check ignore files with client spec W. Trevor King (1): user-manual: Update download size for Git and the kernel Yaakov Selkowitz (1): web--browse: support /usr/bin/cygstart on Cygwin Version v1.8.3.3; changes since v1.8.3.2: ----------------------------------------- Andrew Pimlott (2): lib-rebase: document exec_ in FAKE_LINES t7500: fix flipped actual/expect Anthony Ramine (1): wildmatch: properly fold case everywhere Brandon Casey (1): http.c: don't rewrite the user:passwd string multiple times Charles McGarvey (1): gitweb: fix problem causing erroneous project list Chris Rorvick (1): git.txt: remove stale comment regarding GIT_WORK_TREE Clemens Buchacher (1): fix segfault with git log -c --follow David Aguilar (4): Makefile: fix default regex settings on Darwin Makefile: add support for Apple CommonCrypto facility cache.h: eliminate SHA-1 deprecation warnings on Mac OS X imap-send: eliminate HMAC deprecation warnings on Mac OS X Dmitry Marakasov (1): contrib/git-subtree: Use /bin/sh interpreter instead of /bin/bash Felipe Contreras (4): read-cache: fix wrong 'the_index' usage read-cache: trivial style cleanups sequencer: remove useless indentation sequencer: avoid leaking message buffer when refusing to create an empty commit Filipe Cabecinhas (1): compate/clipped-write.c: large write(2) fails on Mac OS X/XNU Fredrik Gustafsson (1): handle multibyte characters in name Jeff King (1): pull: update unborn branch tip after index John Keeping (1): git-config: update doc for --get with multiple values Junio C Hamano (6): deprecate core.statinfo at Git 2.0 boundary t5551: do not use unportable sed '\+' Documentation/diff-index: mention two modes of operation Start preparing for 1.8.3.3 Update draft release notes to 1.8.3.3 Git 1.8.3.3 Michael S. Tsirkin (9): t/send-email.sh: add test for suppress-cc=self send-email: fix suppress-cc=self on cccmd t/send-email: test suppress-cc=self on cccmd send-email: make --suppress-cc=self sanitize input t/send-email: add test with quoted sender t/send-email: test suppress-cc=self with non-ascii test-send-email: test for pre-sanitized self name send-email: add test for duplicate utf8 name send-email: sanitize author when writing From line Ramkumar Ramachandra (6): sha1_name: fix error message for @{u} sha1_name: fix error message for @{<N>}, @{<date>} diffcore-pickaxe: make error messages more consistent diffcore-pickaxe doc: document -S and -G properly check-ignore doc: fix broken link to ls-files page fixup-builtins: retire an old transition helper script René Scharfe (2): t5004: avoid using tar for checking emptiness of archive t5004: resurrect original empty tar archive test Richard Hansen (1): Documentation/merge-options.txt: restore `-e` option SZEDER Gábor (1): test: spell 'ls-files --delete' option correctly in test descriptions Thomas Rast (2): pull: merge into unborn by fast-forwarding from empty tree apply: carefully strdup a possibly-NULL name Torsten Bögershausen (1): t7400: test of UTF-8 submodule names pass under Mac OS Vikrant Varma (2): help: add help_unknown_ref() merge: use help_unknown_ref() Version v1.8.3.2; changes since v1.8.3.1: ----------------------------------------- Felipe Contreras (1): prompt: fix for simple rebase Johan Herland (8): t2024: Add tests verifying current DWIM behavior of 'git checkout <branch>' t2024: Show failure to use refspec when DWIMming remote branch names checkout: Use remote refspecs when DWIMming tracking branches t3200.39: tracking setup should fail if there is no matching refspec. t7201.24: Add refspec to keep --track working t9114.2: Don't use --track option against "svn-remote"-tracking branches branch.c: Validate tracking branches with refspecs instead of refs/remotes/* glossary: Update and rephrase the definition of a remote-tracking branch John Keeping (1): contrib/subtree: don't delete remote branches if split fails Junio C Hamano (3): strbuf_branchname(): do not double-expand @{-1}~22 Start preparing for 1.8.3.2 Git 1.8.3.2 Kenichi Saita (1): difftool --dir-diff: allow changing any clean working tree file Kevin Bracey (2): t6019: demonstrate --ancestry-path A...B breakage revision.c: treat A...B merge bases as if manually specified Matthijs Kooijman (1): combine-diff.c: Fix output when changes are exactly 3 lines apart Michael Heemskerk (2): upload-pack: ignore 'shallow' lines with unknown obj-ids t5500: add test for fetching with an unknown 'shallow' Nguyễn Thái Ngọc Duy (3): clone: let the user know when check_everything_connected is run urls.txt: avoid auto converting to hyperlink fetch-pack: prepare updated shallow file before fetching the pack Ramkumar Ramachandra (4): push: factor out the detached HEAD error message push: fail early with detached HEAD and current push: make push.default = current use resolved HEAD completion: complete diff --word-diff René Scharfe (1): commit: don't start editor if empty message is given with -m Stefano Lattarini (1): configure: fix option help message for --disable-pthreads Thomas Gummerer (1): prompt: fix show upstream with svn and zsh Thomas Rast (1): Document push --no-verify Torsten Bögershausen (1): t0070 "mktemp to unwritable directory" needs SANITY Wieland Hoffmann (1): pre-push.sample: Make the script executable Version v1.8.3.1; changes since v1.8.3: --------------------------------------- Erik Faye-Lund (1): mingw: make mingw_signal return the correct handler Felipe Contreras (1): sha1_file: trivial style cleanup Fredrik Gustafsson (1): Document .git/modules Jonathan Nieder (1): config: allow inaccessible configuration under $HOME Junio C Hamano (3): Start 1.8.3.1 maintenance track t/README: test_must_fail is for testing Git Git 1.8.3.1 Karsten Blees (1): dir.c: fix ignore processing within not-ignored directories Phil Hord (1): trivial: Add missing period in documentation René Scharfe (1): submodule: remove redundant check for the_index.initialized Version v1.8.3; changes since v1.8.3-rc3: ----------------------------------------- Amit Bakshi (1): remote-hg: set stdout to binary mode on win32 Felipe Contreras (3): completion: regression fix for zsh remote-hg: trivial configuration note cleanup remote-hg: fix order of configuration comments Jonathan Nieder (1): git-svn: clarify explanation of --destination argument Junio C Hamano (1): Git 1.8.3 Nathan Gray (1): git-svn: multiple fetch/branches/tags keys are supported Tobias Schulte (1): git-svn: introduce --parents parameter for commands branch and tag Version v1.8.3-rc3; changes since v1.8.3-rc2: --------------------------------------------- Dale R. Worley (1): git-submodule.txt: Clarify 'init' and 'add' subcommands. Dale Worley (1): CodingGuidelines: Documentation/*.txt are the sources Felipe Contreras (13): remote-bzr: update old organization remote-hg: trivial cleanups remote-hg: get rid of unused exception checks remote-hg: enable track-branches in hg-git mode remote-hg: add new get_config_bool() helper remote-hg: fix new branch creation remote-hg: disable forced push by default remote-hg: don't push fake 'master' bookmark remote-hg: update bookmarks when pulling remote-bzr: fix cloning of non-listable repos Revert "remote-hg: update bookmarks when pulling" remote-bzr: fixes for older versions of bzr documentation: trivial style cleanups John Keeping (1): difftool: fix dir-diff when file does not exist in working tree Junio C Hamano (1): Git 1.8.3-rc3 Peter Krefting (1): gitk: Update Swedish translation (304t) Sandor Bodo-Merle (1): remote-bzr: fix old organization destroy Version v1.8.3-rc2; changes since v1.8.3-rc1: --------------------------------------------- Anand Kumria (1): gitk: Display the date of a tag in a human-friendly way David Aguilar (1): mergetools/kdiff3: do not use --auto when diffing Felipe Contreras (25): remote-bzr: cleanup CustomTree remote-bzr: delay blob fetching until the very end remote-bzr: fix order of locking in CustomTree remote-bzr: always try to update the worktree remote-bzr: add support to push merges remote-bzr: fixes for branch diverge remote-bzr: fix partially pushed merge remote-bzr: use branch variable when appropriate remote-bzr: add support for bzr repos remote-bzr: fix branch names remote-bzr: add support for shared repo remote-bzr: improve author sanitazion remote-bzr: add custom method to find branches remote-bzr: add option to specify branches remote-bzr: improve progress reporting remote-bzr: iterate revisions properly remote-bzr: delay peer branch usage remote-bzr: access branches only when needed transport-helper: improve push messages remote-bzr: convert all unicode keys to str remote-bzr: avoid bad refs remote-bzr: fix for disappeared revisions remote-helpers: trivial cleanup transport-helper: trivial style cleanup gitk: Simplify file filtering Gauthier Östervall (1): gitk: Move hard-coded colors to .gitk Jiang Xin (2): l10n: git.pot: v1.8.3 round 2 (44 new, 12 removed) l10n: zh_CN.po: translate 44 messages (2080t0f0u) John Keeping (1): merge-tree: handle directory/empty conflict correctly Jonathan Nieder (1): Git::SVN::*: add missing "NAME" section to perldoc Junio C Hamano (4): Update draft release notes for 1.8.3 cherry-pick: picking a tag that resolves to a commit is OK Git 1.8.2.3 Git 1.8.3-rc2 Knut Franke (1): gitk: Add menu item for reverting commits Martin Langhoff (1): gitk: Add support for -G'regex' pickaxe variant Michael Contreras (1): git-svn: avoid self-referencing mergeinfo Paul Mackerras (1): gitk: Improve behaviour of drop-down lists Paul Walmsley (1): git-svn: added an --include-path flag Peter Krefting (1): l10n: Update Swedish translation (2080t0f0u) Ralf Thielow (1): l10n: de.po: translate 44 new messages René Scharfe (2): t5004: ignore pax global header file t5004: avoid using tar for checking emptiness of archive Tair Sabirgaliev (1): gitk: On OSX, bring the gitk window to front Torsten Bögershausen (1): test-bzr: do not use unportable sed '\+' Trần Ngọc Quân (1): l10n: Update Vietnamese translation (2080t0f0u) Version v1.8.3-rc1; changes since v1.8.3-rc0: --------------------------------------------- Anders Granskogen Bjørnstad (1): Documentation/git-commit: Typo under --edit Felipe Contreras (5): completion: add missing format-patch options documentation: trivial whitespace cleanups complete: zsh: trivial simplification complete: zsh: use zsh completion for the main cmd completion: zsh: don't override suffix on _detault H. Merijn Brand (1): Git.pm: call tempfile from File::Temp as a regular function John Keeping (2): merge-tree: fix typo in "both changed identically" t/Makefile: remove smoke test targets Junio C Hamano (2): Update draft release notes to 1.8.3 Git 1.8.3-rc1 Marc Branchaud (1): Fix grammar in the 1.8.3 release notes. Ramkumar Ramachandra (5): git-completion.bash: lexical sorting for diff.statGraphWidth git-completion.bash: add diff.submodule to config list git-completion.bash: complete branch.*.rebase as boolean git-completion.bash: add branch.*.pushremote to config list git-completion.bash: add remote.pushdefault to config list Ramsay Jones (2): clone: Make the 'junk_mode' symbol a file static pretty: Fix bug in truncation support for %>, %< and %>< René Scharfe (3): pretty: simplify input line length calculation in pp_user_info() pretty: simplify output line length calculation in pp_user_info() pretty: remove intermediate strbufs from pp_user_info() Thomas Rast (4): remote: add a test for extra arguments, according to docs remote: check for superfluous arguments in 'git remote add' remote: 'show' and 'prune' can take more than one remote unpack_entry: avoid freeing objects in base cache Zoltan Klinger (1): bash-prompt.sh: show where rebase is at when stopped Version v1.8.3-rc0; changes since v1.8.2.3: ------------------------------------------- Aaron Schrab (2): clone: Fix error message for reference repository clone: Allow repo using gitfile as a reference Antoine Pelisse (5): combine-diff: coalesce lost lines optimally fast-export: Allow pruned-references in mark file strbuf: create strbuf_humanise_bytes() to show byte sizes count-objects: add -H option to humanize sizes remote-hg: activate graphlog extension for hg_log() Brad King (1): commit-tree: document -S option consistently Brandon Casey (11): commit, cherry-pick -s: remove broken support for multiline rfc2822 fields t/test-lib-functions.sh: allow to specify the tag name to test_commit t/t3511: add some tests of 'cherry-pick -s' functionality sequencer.c: recognize "(cherry picked from ..." as part of s-o-b footer sequencer.c: require a conforming footer to be preceded by a blank line sequencer.c: always separate "(cherry picked from" from commit body sequencer.c: teach append_signoff how to detect duplicate s-o-b sequencer.c: teach append_signoff to avoid adding a duplicate newline Unify appending signoff in format-patch, commit and sequencer t7502: perform commits using alternate editor in a subshell git-commit: populate the edit buffer with 2 blank lines before s-o-b Brian Gernhardt (3): t5550: do not assume the "matching" push is the default t5551: do not assume the "matching" push is the default t5570: do not assume the "matching" push is the default Christophe Simonis (3): remote-bzr: fix directory renaming remote-bzr: remove files before modifications remote-bzr: fix utf-8 support for fetching David Aguilar (4): difftool: silence uninitialized variable warning t7800: update copyright notice t7800: modernize tests t7800: "defaults" is no longer a builtin tool name David Engster (1): remote-bzr: set author if available Dusty Phillips (3): remote-hg: add missing config variable in doc remote-hg: push to the appropriate branch remote-helpers: avoid has_key Felipe Contreras (64): remote-bzr: avoid echo -n remote-helpers: fix the run of all tests remote-bzr: remove stale check code for tests remote-hg: fix hg-git test-case remote-bzr: only update workingtree on local repos remote-bzr: avoid unreferred tags remote-bzr: add utf-8 support for pushing send-email: make annotate configurable format-patch: improve head calculation for cover-letter format-patch: refactor branch name calculation log: update to OPT_BOOL format-patch: add format.coverLetter configuration variable format-patch: trivial cleanups remote-bzr: improve tag handling remote-hg: trivial cleanups remote-hg: properly report errors on bookmark pushes remote-hg: make sure fake bookmarks are updated remote-hg: trivial test cleanups remote-hg: redirect buggy mercurial output remote-hg: split bookmark handling remote-hg: refactor export remote-hg: update remote bookmarks remote-hg: update tags globally remote-hg: force remote push remote-hg: show more proper errors remote-hg: add basic author tests remote-hg: add simple mail test remote-hg: fix bad state issue remote-hg: fix bad file paths completion: add more cherry-pick options completion: trivial test improvement completion: get rid of empty COMPREPLY assignments rebase-am: explicitly disable cover-letter completion: add new __gitcompadd helper completion: add __gitcomp_nl tests completion: get rid of compgen completion: inline __gitcomp_1 to its sole callsite completion: small optimization branch: colour upstream branches remote-bzr: fix prefix of tags remote-hg: safer bookmark pushing remote-hg: use python urlparse remote-hg: properly mark branches up-to-date remote-hg: add branch_tip() helper remote-hg: add support for tag objects remote-hg: custom method to write tags remote-hg: write tags in the appropriate branch remote-hg: add custom local tag write code remote-hg: improve email sanitation remote-hg: add support for schemes extension remote-hg: don't update bookmarks unnecessarily remote-hg: allow refs with spaces remote-hg: small performance improvement remote-hg: use marks instead of inlined files remote-hg: strip extra newline remote-bzr: use proper push method remote-helpers: trivial cleanups remote-hg: remove extra check remote-bzr: fix bad state issue remote-bzr: add support to push URLs remote-hg: use hashlib instead of hg sha1 util remote-bzr: store converted URL remote-bzr: tell bazaar to be quiet remote-bzr: strip extra newline Jacob Sarvis (1): log: read gpg settings for signed commit verification Jeff King (53): upload-pack: use get_sha1_hex to parse "shallow" lines upload-pack: do not add duplicate objects to shallow list upload-pack: remove packet debugging harness fetch-pack: fix out-of-bounds buffer offset in get_ack send-pack: prefer prefixcmp over memcmp in receive_status upload-archive: do not copy repo name upload-archive: use argv_array to store client arguments write_or_die: raise SIGPIPE when we get EPIPE pkt-line: move a misplaced comment pkt-line: drop safe_write function pkt-line: provide a generic reading function with options pkt-line: teach packet_read_line to chomp newlines pkt-line: move LARGE_PACKET_MAX definition from sideband pkt-line: provide a LARGE_PACKET_MAX static buffer pkt-line: share buffer/descriptor reading implementation teach get_remote_heads to read from a memory buffer remote-curl: pass buffer straight to get_remote_heads remote-curl: move ref-parsing code up in file remote-curl: always parse incoming refs t2200: check that "add -u" limits itself to subdirectory fast-export: rename handle_object function fast-export: do not load blob objects twice do not use GIT_TRACE_PACKET=3 in tests stream_blob_to_fd: detect errors reading from stream check_sha1_signature: check return value from read_istream read_istream_filtered: propagate read error from upstream avoid infinite loop in read_istream_loose add test for streaming corrupt blobs streaming_write_entry: propagate streaming errors add tests for cloning corrupted repositories clone: die on errors from unpack_trees clone: run check_everything_connected t1300: document some aesthetic failures of the config editor clone: leave repo in place after checkout errors t5516 (fetch-push): drop implicit arguments from helper functions t3200: test --set-upstream-to with bogus refs branch: factor out "upstream is not a branch" error messages branch: improve error message for missing --set-upstream-to ref branch: mention start_name in set-upstream error messages branch: give advice when tracking start-point is missing rm: do not complain about d/f conflicts during deletion t3600: test behavior of reverse-d/f conflict t3600: document failure of rm across symbolic links http: add HTTP_KEEP_ERROR option remote-curl: show server content on http errors remote-curl: let servers override http 404 advice remote-curl: always show friendlier 404 message remote-curl: consistently report repo url for http errors http: simplify http_error helper function http: re-word http error message remote-curl: die directly with http error messages http: drop http_error function http: set curl FAILONERROR each time we select a handle Jens Lehmann (2): submodule: add 'deinit' command submodule deinit: clarify work tree removal message Jiang Xin (3): l10n: git.pot: v1.8.3 round 1 (54 new, 15 removed) l10n: zh_CN.po: translate 54 messages (2048t0f0u) i18n: branch: mark strings for translation John Keeping (16): Makefile: make mandir, htmldir and infodir absolute git-difftool(1): fix formatting of --symlink description difftool: avoid double slashes in symlink targets difftool --dir-diff: symlink all files matching the working tree refs.c: fix fread error handling t7800: move '--symlinks' specific test to the end difftool: don't overwrite modified files t7800: don't hide grep output t7800: fix tests when difftool uses --no-symlinks t7800: run --dir-diff tests with and without symlinks submodule: print graph output next to submodule log gitremote-helpers(1): clarify refspec behaviour merge-tree: don't print entries that match "local" fast-export: add --signed-tags=warn-strip mode transport-helper: pass --signed-tags=warn-strip to fast-export transport-helper: add 'signed-tags' capability John Koleszar (1): http-backend: respect GIT_NAMESPACE with dumb clients John Szakmeister (1): git-web--browse: recognize any TERM_PROGRAM as a GUI terminal on OS X Jonathan Nieder (11): sequencer.c: rework search for start of footer to improve clarity shell doc: emphasize purpose and security model shell: new no-interactive-login command to print a custom message push test: use test_config when appropriate push test: simplify check of push result push test: rely on &&-chaining instead of 'if bad; then echo Oops; fi' add: make pathless 'add [-u|-A]' warning a file-global function add: make warn_pathless_add() a no-op after first call add -u: only show pathless 'add -u' warning when changes exist outside cwd add -A: only show pathless 'add -A' warning when changes exist outside cwd convert: The native line-ending is \r\n on MinGW Jonathon Mah (1): branch: give better message when no names specified for rename Junio C Hamano (53): t5404: do not assume the "matching" push is the default t5505: do not assume the "matching" push is the default t5516: do not assume the "matching" push is the default t5517: do not assume the "matching" push is the default t5519: do not assume the "matching" push is the default t5531: do not assume the "matching" push is the default t7406: do not assume the "matching" push is the default t9400: do not assume the "matching" push is the default t9401: do not assume the "matching" push is the default simplify-merges: drop merge from irrelevant side branch config.mak.in: remove unused definitions parse_fetch_refspec(): clarify the codeflow a bit fetch: use struct ref to represent refs to be fetched upload-pack: optionally allow fetching from the tips of hidden refs fetch: fetch objects by their exact SHA-1 object names Makefile: do not export mandir/htmldir/infodir match_push_refs(): nobody sets src->peer_ref anymore commit.c: add clear_commit_marks_many() commit.c: add in_merge_bases_many() commit.c: use clear_commit_marks_many() in in_merge_bases_many() push: --follow-tags for_each_reflog_ent(): extract a helper to process a single entry for_each_recent_reflog_ent(): simplify opening of a reflog file reflog: add for_each_reflog_ent_reverse() API builtin/add.c: simplify boolean variables git add: start preparing for "git add <pathspec>..." to default to "-A" Start the post 1.8.2 cycle The first wave of topics for 1.8.3 Update draft release notes to 1.8.3 merge-one-file: remove stale comment merge-one-file: force content conflict for "both sides added" case Second wave of topics toward 1.8.3 More topics from the second batch for 1.8.3 peel_onion: disambiguate to favor tree-ish when we know we want a tree-ish peel_onion(): teach $foo^{object} peeler Update draft release notes to 1.8.3 Update draft release notes to 1.8.3 Update draft release notes to 1.8.3 Update draft release notes to 1.8.3 Update draft release notes to 1.8.3 Revert 4b7f53da7618 (simplify-merges: drop merge from irrelevant side branch, 2013-01-17) Update dtaft release notes to 1.8.3 Update draft release notes to 1.8.3 git add: rework the logic to warn "git add <pathspec>..." default change Update draft release notes to 1.8.3 Update draft release notes to 1.8.3 git add: rephrase the "removal will cease to be ignored" warning Update draft release notes to 1.8.3 git add: --ignore-removal is a better named --no-all git add: rephrase -A/--no-all warning Update draft release notes to 1.8.3 git add: avoid "-u/-A without pathspec" warning on stat-dirty paths Git 1.8.3-rc0 Karsten Blees (14): dir.c: git-status --ignored: don't drop ignored directories dir.c: git-status --ignored: don't list files in ignored directories dir.c: git-status --ignored: don't list empty ignored directories dir.c: git-ls-files --directories: don't hide empty directories dir.c: git-status --ignored: don't list empty directories as ignored dir.c: make 'git-status --ignored' work within leading directories dir.c: git-clean -d -X: don't delete tracked directories dir.c: factor out parts of last_exclude_matching for later reuse dir.c: move prep_exclude dir.c: unify is_excluded and is_path_excluded APIs dir.c: replace is_path_excluded with now equivalent is_excluded API dir.c: git-status: avoid is_excluded checks for tracked files dir.c: git-status --ignored: don't scan the work tree three times dir.c: git-status --ignored: don't scan the work tree twice Kevin Bracey (5): mergetools/p4merge: swap LOCAL and REMOTE mergetools/p4merge: create a base if none available git-merge-one-file: style cleanup git-merge-one-file: send "ERROR:" messages to stderr checkout: abbreviate hash in suggest_reattach Kirill Smelkov (1): Fix `make install` when configured with autoconf Lukas Fleischer (3): attr.c: extract read_index_data() as read_blob_data_from_index() read_blob_data_from_index(): optionally return the size of blob data convert.c: remove duplicate code Matthieu Moy (3): status: show 'revert' state and status hint status: show commit sha1 in "You are currently reverting" message add: add a blank line at the end of pathless 'add [-u|-A]' warning Michael Haggerty (1): rev-parse: clarify documentation for the --verify option Michal Nazarewicz (6): Git.pm: allow command_close_bidi_pipe to be called as method Git.pm: fix example in command_close_bidi_pipe documentation Git.pm: refactor command_close_bidi_pipe to use _cmd_close Git.pm: allow pipes to be closed prior to calling command_close_bidi_pipe Git.pm: add interface for git credential command git-send-email: use git credential to obtain password Mike Gorchak (2): date.c: fix unsigned time_t comparison Fix time offset calculation in case of unsigned time_t Miklos Vajna (1): cherry-pick: make sure all input objects are commits Miklós Fazekas (1): git p4: avoid expanding client paths in chdir Modestas Vainius (1): Support FTP-over-SSL/TLS for regular FTP Nguyễn Thái Ngọc Duy (28): git-count-objects.txt: describe each line in -v output t4014: more tests about appending s-o-b lines format-patch: update append_signoff prototype sha1_file: reorder code in prepare_packed_git_one() count-objects: report garbage files in pack directory too count-objects: report how much disk space taken by garbage files wt-status: move strbuf into read_and_strip_branch() wt-status: split wt_status_state parsing function out wt-status: move wt_status_get_state() out to wt_status_print() status: show more info than "currently not on any branch" branch: show more information when HEAD is detached Preallocate hash tables when the number of inserts are known in advance status, branch: fix the misleading "bisecting" message checkout: avoid unnecessary match_pathspec calls checkout: add --ignore-skip-worktree-bits in sparse checkout mode pretty: save commit encoding from logmsg_reencode if the caller needs it pretty: get the correct encoding for --pretty:format=%e pretty-formats.txt: wrap long lines pretty: share code between format_decoration and show_decorations utf8.c: move display_mode_esc_sequence_len() for use by other functions utf8.c: add utf8_strnwidth() with the ability to skip ansi sequences utf8.c: add reencode_string_len() that can handle NULs in string pretty: two phase conversion for non utf-8 commits pretty: split color parsing into a separate function pretty: add %C(auto) for auto-coloring pretty: support padding placeholders, %< %> and %>< pretty: support truncating in %>, %< and %>< pretty: support %>> that steal trailing spaces Pete Wyckoff (2): git p4 test: make sure P4CONFIG relative path works git p4 test: should honor symlink in p4 client root Peter Krefting (1): l10n: Update Swedish translation (2048t0f0u) Peter van Zetten (1): remote-hg: fix for files with spaces Phil Hord (1): rebase: find orig_head unambiguously Philip Oakley (5): builtin/help.c: split "-a" processing into two builtin/help.c: add --guide option builtin/help.c: add list_common_guides_help() function help: mention -a and -g option, and 'git help <concept>' usage. doc: include --guide option description for "git help" Ralf Thielow (1): l10n: de.po: translate 54 new messages Ramkumar Ramachandra (14): t5520: use test_config to set/unset git config variables (leftover bits) remote.c: simplify a bit of code using git_config_string() t5516 (fetch-push): update test description remote.c: introduce a way to have different remotes for fetch/push remote.c: introduce remote.pushdefault remote.c: introduce branch.<name>.pushremote git-shortlog.txt: remove (-h|--help) from OPTIONS revisions.txt: clarify the .. and ... syntax git-log.txt: order OPTIONS properly; move <since>..<until> git-log.txt: generalize <since>..<until> git-log.txt: rewrite note on why "--" may be required git-shortlog.txt: make SYNOPSIS match log, update OPTIONS builtin/log.c: make usage string consistent with doc builtin/shortlog.c: make usage string consistent with log Ramsay Jones (5): msvc: Fix compilation errors caused by poll.h emulation msvc: git-daemon: Fix linker "unresolved external" errors msvc: Fix build by adding missing symbol defines msvc: test-svn-fe: Fix linker "unresolved external" error msvc: avoid collisions between "tags" and "TAGS" René Scharfe (1): archive-zip: use deflateInit2() to ask for raw compressed data Sebastian Götte (5): Move commit GPG signature verification to commit.c commit.c/GPG signature verification: Also look at the first GPG status line merge/pull: verify GPG signatures of commits being merged merge/pull Check for untrusted good GPG signatures pretty printing: extend %G? to include 'N' and 'U' Sebastian Schuberth (1): git-svn: Support custom tunnel schemes instead of SSH only Simon Ruderich (4): git-am: show the final log message on "Applying:" indicator remote-hg: add 'insecure' option remote-hg: document location of stored hg repository help: mark common_guides[] as translatable Stefano Lattarini (1): zlib: fix compilation failures with Sun C Compilaer Steven Walter (1): safe_create_leading_directories: fix race that could give a false negative Ted Zlatanov (1): Add contrib/credentials/netrc with GPG support Thomas Rast (8): sha1_file: remove recursion in packed_object_info Refactor parts of in_delta_base_cache/cache_or_unpack_entry sha1_file: remove recursion in unpack_entry Avoid loading commits twice in log with diffs t/README: --valgrind already implies -v tests: parameterize --valgrind option tests --valgrind: provide a mode without --track-origins tests: notice valgrind error in test_must_fail Timotheus Pokorra (1): remote-bzr: add utf-8 support for fetching Torstein Hegge (3): t9903: Don't fail when run from path accessed through symlink bisect: Store first bad commit as comment in log file bisect: Log possibly bad, skipped commits at bisection end Torsten Bögershausen (4): Make core.sharedRepository work under cygwin 1.7 path.c: simplify adjust_shared_perm() path.c: optimize adjust_shared_perm() test-bzr: portable shell and utf-8 strings for Mac OS Trần Ngọc Quân (1): l10n: vi.po: Update translation (2048t0u0f) Yann Droneaud (12): t3400: use test_config to set/unset git config variables t4304: use test_config to set/unset git config variables t4034: use test_config/test_unconfig to set/unset git config variables t4202: use test_config/test_unconfig to set/unset git config variables t5520: use test_config to set/unset git config variables t5541: use test_config to set/unset git config variables t7500: use test_config to set/unset git config variables t7508: use test_config to set/unset git config variables t9500: use test_config to set/unset git config variables t7502: use test_config to set/unset git config variables t7502: remove clear_config t7600: use test_config to set/unset git config variables Version v1.8.2.3; changes since v1.8.2.2: ----------------------------------------- Anders Granskogen Bjørnstad (1): Documentation/git-commit: Typo under --edit David Aguilar (1): mergetools/kdiff3: do not use --auto when diffing Felipe Contreras (5): documentation: trivial whitespace cleanups complete: zsh: trivial simplification complete: zsh: use zsh completion for the main cmd completion: zsh: don't override suffix on _detault transport-helper: trivial style cleanup John Keeping (1): t/Makefile: remove smoke test targets Jonathan Nieder (1): glossary: a revision is just a commit Junio C Hamano (1): Git 1.8.2.3 Ramkumar Ramachandra (3): git-completion.bash: lexical sorting for diff.statGraphWidth git-completion.bash: add diff.submodule to config list git-completion.bash: complete branch.*.rebase as boolean René Scharfe (2): t5004: ignore pax global header file t5004: avoid using tar for checking emptiness of archive Thomas Rast (4): read_revisions_from_stdin: make copies for handle_revision_arg remote: add a test for extra arguments, according to docs remote: check for superfluous arguments in 'git remote add' remote: 'show' and 'prune' can take more than one remote Version v1.8.2.2; changes since v1.8.2.1: ----------------------------------------- Adam Spiers (1): t: make PIPE a standard test prerequisite Antoine Pelisse (2): fix clang -Wtautological-compare with unsigned enum Allow combined diff to ignore white-spaces Benoit Bourbie (1): Typo fix: replacing it's -> its Carlos Martín Nieto (1): Documentation/git-commit: reword the --amend explanation David Aguilar (1): help.c: add a compatibility comment to cmd_version() Felipe Contreras (2): remote-hg: fix commit messages prompt: fix untracked files for zsh Jakub Narębski (1): gitweb/INSTALL: Simplify description of GITWEB_CONFIG_SYSTEM Jeff King (13): submodule: clarify logic in show_submodule_summary filter-branch: return to original dir after filtering diffcore-pickaxe: remove fill_one() diffcore-pickaxe: unify code for log -S/-G show-branch: use strbuf instead of static buffer doc/http-backend: clarify "half-auth" repo configuration doc/http-backend: give some lighttpd config examples doc/http-backend: match query-string in apache half-auth example t/test-lib.sh: drop "$test" variable usage: allow pluggable die-recursion checks run-command: use thread-aware die_is_recursing routine cat-file: print tags raw for "cat-file -p" receive-pack: close sideband fd on early pack errors Jiang Xin (1): i18n: make the translation of -u advice in one go Johannes Sixt (3): rerere forget: grok files containing NUL rerere forget: do not segfault if not all stages are present t6200: avoid path mangling issue on Windows John Keeping (5): diffcore-break: don't divide by zero bisect: avoid signed integer overflow git-merge(1): document diff-algorithm option to merge-recursive diff: allow unstuck arguments with --diff-algorithm t/test-lib.sh: fix TRASH_DIRECTORY handling Jonathan Nieder (1): gitweb/INSTALL: GITWEB_CONFIG_SYSTEM is for backward compatibility Junio C Hamano (13): merge: a random object may not necssarily be a commit apply --whitespace=fix: avoid running over the postimage buffer t5516: test interaction between pushURL and pushInsteadOf correctly test: resurrect q_to_tab t6200: use test_config/test_unconfig t6200: test message for merging of an annotated tag diffcore-pickaxe: port optimization from has_changes() to diff_grep() diffcore-pickaxe: fix leaks in "log -S<block>" and "log -G<pattern>" glossary: extend "detached HEAD" description doc: clarify that "git daemon --user=<user>" option does not export HOME=~user Start preparing for 1.8.2.2 Update draft release notes to 1.8.2.2 Git 1.8.2.2 Kevin Bracey (1): cherry-pick/revert: make usage say '<commit-ish>...' Lukas Fleischer (1): bundle: Accept prerequisites without commit messages Martin von Gagern (1): Documentation: Strip texinfo anchors to avoid duplicates Mårten Kongstad (1): completion: remove duplicate block for "git commit -c" Paul Price (1): fast-export: fix argument name in error messages Peter Eisentraut (1): pull: Apply -q and -v options to rebase mode as well Ralf Thielow (2): fmt-merge-msg: respect core.commentchar in people credits fmt-merge-msg: use core.commentchar in tag signatures completely Ramkumar Ramachandra (4): t3200 (branch): modernize style send-email: use "return;" not "return undef;" on error codepaths send-email: drop misleading function prototype send-email: use the three-arg form of open in recipients_cmd René Scharfe (5): match-trees: simplify score_trees() using tree_entry() t5004: fix issue with empty archive test and bsdtar archive: clarify explanation of --worktree-attributes pretty: handle broken commit headers gracefully blame: handle broken commit headers gracefully Robin Rosenberg (1): bash: teach __git_ps1 about REVERT_HEAD Simon Ruderich (3): diffcore-pickaxe: remove unnecessary call to get_textconv() diffcore-pickaxe: respect --no-textconv t/README: --immediate skips cleanup commands for failed tests Stefan Saasen (1): Documentation: distinguish between ref and offset deltas in pack-format Stefano Lattarini (9): doc: various spelling fixes git-remote-mediawiki: spelling fixes contrib/subtree: fix spelling of accidentally obstack: fix spelling of similar compat/regex: fix spelling and grammar in comments compat/nedmalloc: fix spelling in comments precompose-utf8: fix spelling of "want" in error message kwset: fix spelling in comments Correct common spelling mistakes in comments and tests Thomas Ackermann (4): glossary: remove outdated/misleading/irrelevant entries glossary: improve description of SHA-1 related topics The name of the hash function is "SHA-1", not "SHA1" glossary: improve definitions of refspec and pathspec Thomas Rast (2): perl: redirect stderr to /dev/null instead of closing t9700: do not close STDERR Torsten Bögershausen (5): t9020: do not use export X=Y t9501: do not use export X=Y test-hg-bidi.sh: do not use export X=Y test-hg-hg-git.sh: do not use export X=Y t7409: do not use export X=Y Version v1.8.2.1; changes since v1.8.2: --------------------------------------- Andrew Wong (2): setup.c: stop prefix_pathspec() from looping past the end of string setup.c: check that the pathspec magic ends with ")" Antoine Pelisse (3): update-index: allow "-h" to also display options diff: Fix rename pretty-print when suffix and prefix overlap tests: make sure rename pretty print works Brandon Casey (4): t/t7502: compare entire commit message with what was expected t7502: demonstrate breakage with a commit message with trailing newlines git-commit: only append a newline to -m mesg if necessary Documentation/git-commit.txt: rework the --cleanup section Christian Helmuth (1): git-commit doc: describe use of multiple `-m` options Dan Bornstein (1): Correct the docs about GIT_SSH. David Aguilar (20): git-sh-setup: use a lowercase "usage:" string git-svn: use a lowercase "usage:" string git-relink: use a lowercase "usage:" string git-merge-one-file: use a lowercase "usage:" string git-archimport: use a lowercase "usage:" string git-cvsexportcommit: use a lowercase "usage:" string git-cvsimport: use a lowercase "usage:" string git-cvsimport: use a lowercase "usage:" string contrib/credential: use a lowercase "usage:" string contrib/fast-import: use a lowercase "usage:" string contrib/fast-import/import-zips.py: fix broken error message contrib/fast-import/import-zips.py: use spaces instead of tabs contrib/examples: use a lowercase "usage:" string contrib/hooks/setgitperms.perl: use a lowercase "usage:" string templates/hooks--update.sample: use a lowercase "usage:" string Documentation/user-manual.txt: use a lowercase "usage:" string git-svn: use a lowercase "usage:" string tests: use a lowercase "usage:" string contrib/examples/git-remote.perl: use a lowercase "usage:" string contrib/mw-to-git/t/install-wiki.sh: use a lowercase "usage:" string David Michael (1): git-compat-util.h: Provide missing netdb.h definitions Greg Price (2): Fix ".git/refs" stragglers describe: Document --match pattern format Jeff King (23): utf8: accept alternate spellings of UTF-8 mailsplit: sort maildir filenames more cleverly cache.h: drop LOCAL_REPO_ENV_SIZE environment: add GIT_PREFIX to local_repo_env setup: suppress implicit "." work-tree for bare repos test-lib: factor out $GIT_UNZIP setup archive: handle commits with an empty tree upload-pack: drop lookup-before-parse optimization upload-pack: make sure "want" objects are parsed upload-pack: load non-tip "want" objects from disk avoid segfaults on parse_object failure use parse_object_or_die instead of die("bad object") pack-refs: write peeled entry for non-tags index-pack: always zero-initialize object_entry list fast-import: use pointer-to-pointer to keep list tail drop some obsolete "x = x" compiler warning hacks transport: drop "int cmp = cmp" hack run-command: always set failed_errno in start_command fast-import: clarify "inline" logic in file_change_m wt-status: fix possible use of uninitialized variable dir.c::match_pathname(): adjust patternlen when shifting pattern dir.c::match_pathname(): pay attention to the length of string parameters t: check that a pattern without trailing slash matches a directory Johannes Sixt (1): t2003: work around path mangling issue on Windows John Keeping (4): Revert "graph.c: mark private file-scope symbols as static" t2003: modernize style entry: fix filter lookup merge-tree: fix typo in merge-tree.c::unresolved Joshua Clayton (1): Git.pm: fix cat_blob crashes on large files Junio C Hamano (21): imap-send: support Server Name Indication (RFC4366) diff-options: unconfuse description of --color describe: --match=<pattern> must limit the refs even when used with --all reflog: fix typo in "reflog expire" clean-up codepath Documentation/git-push: clarify the description of defaults git status: document trade-offs in choosing parameters to the -u option CodingGuidelines: our documents are in AsciiDoc Documentation: merging a tag is a special case transport.c: help gcc 4.6.3 users by squelching compiler warning Start preparing for 1.8.2.1 attr.c::path_matches(): the basename is part of the pathname More corrections for 1.8.2.1 More fixes for 1.8.2.1 attr.c::path_matches(): special case paths that end with a slash dir.c::match_basename(): pay attention to the length of string parameters Update draft release notes to 1.8.2.1 Start preparing for 1.8.1.6 Update draft release notes to 1.8.2.1 mailmap: update Pasky's address Git 1.8.1.6 Git 1.8.2.1 Kacper Kornet (3): rev-parse: clarify documentation of $name@{upstream} syntax t1507: Test that branchname@{upstream} is interpreted as branch Fix revision walk for commits with the same dates Karsten Blees (1): name-hash.c: fix endless loop with core.ignorecase=true Kirill Smelkov (1): format-patch: RFC 2047 says multi-octet character may not be split Lukas Fleischer (2): bundle: Fix "verify" output if history is complete bundle: Add colons to list headings in "verify" Matthias Krüger (1): git help config: s/insn/instruction/ Matthieu Moy (1): git-remote-mediawiki: new wiki URL in documentation Max Nanasy (1): diff.c: diff.renamelimit => diff.renameLimit in message Michael Haggerty (1): pack-refs: add fully-peeled trait Michael J Gruber (5): gpg-interface: check good signature in a reliable way log-tree: rely upon the check in the gpg_interface gpg_interface: allow to request status return pretty: parse the gpg status lines rather than the output pretty: make %GK output the signing key for signed commits Mihai Capotă (1): git-pull doc: fix grammo ("conflicts" is plural) Nguyễn Thái Ngọc Duy (7): index-format.txt: mention of v4 is missing in some places read-cache.c: use INDEX_FORMAT_{LB,UB} in verify_hdr() branch: segfault fixes and validation update-index: list supported idx versions and their features status: advise to consider use of -u when read_directory takes too long index-pack: fix buffer overflow caused by translations index-pack: protect deepest_delta in multithread code Phil Hord (1): tag: --force does not have to warn when creating tags Ramkumar Ramachandra (1): t4018,7810,7811: remove test_config() redefinition Ramsay Jones (2): fast-import: Fix an gcc -Wuninitialized warning cat-file: Fix an gcc -Wuninitialized warning René Scharfe (4): archive-zip: fix compressed size for stored export-subst files Makefile: keep LIB_H entries together and sorted sha1_name: pass object name length to diagnose_invalid_sha1_path() submodule summary: support --summary-limit=<n> Tadeusz Andrzej Kadłubowski (2): git-filter-branch.txt: clarify ident variables usage Documentation: filter-branch env-filter example Thomas Rast (3): diff: prevent pprint_rename from underrunning input index-pack: guard nr_resolved_deltas reads by lock git-tag(1): we tag HEAD by default Torsten Bögershausen (1): remote-helpers/test-bzr.sh: do not use "grep '\s'" W. Trevor King (2): Documentation/githooks: Explain pre-rebase parameters user-manual: Standardize backtick quoting William Entriken (1): submodule update: when using recursion, show full path Version v1.8.2; changes since v1.8.2-rc3: ----------------------------------------- Antoine Pelisse (1): perf: update documentation of GIT_PERF_REPEAT_COUNT Eric Wong (1): git svn: consistent spacing after "W:" in warnings Greg Price (1): add: Clarify documentation of -A and -u Jan Pešta (1): git svn: ignore partial svn:mergeinfo Junio C Hamano (2): Update draft release notes to 1.8.2 Git 1.8.2 Kevin Bracey (2): Translate git_more_info_string consistently git.c: make usage match manual page Matthieu Moy (2): add: update pathless 'add [-u|-A]' warning to reflect change of plan git-completion.bash: zsh does not implement function redirection correctly Version v1.8.2-rc3; changes since v1.8.2-rc2: --------------------------------------------- Fredrik Gustafsson (1): gitweb/README: remove reference to git.kernel.org Jiang Xin (2): l10n: git.pot: v1.8.2 round 4 (1 changed) l10n: zh_CN.po: translate 1 new message Junio C Hamano (1): Git 1.8.2-rc3 Matthieu Moy (1): git-completion.zsh: define __gitcomp_file compatibility function Peter Krefting (1): l10n: Update Swedish translation (2009t0f0u) Ralf Thielow (4): l10n: de.po: translate 35 new messages l10n: de.po: translate 5 new messages l10n: de.po: correct translation of "bisect" messages l10n: de.po: translate 1 new message Trần Ngọc Quân (1): l10n: vi.po: Update translation (2009t0f0u) Version v1.8.2-rc2; changes since v1.8.2-rc1: --------------------------------------------- Andrew Wong (1): Documentation/githooks: Fix linkgit Brad King (1): Documentation/submodule: Add --force to update synopsis Erik Faye-Lund (1): Revert "compat: add strtok_r()" Junio C Hamano (3): Update draft release notes to 1.8.1.5 Git 1.8.1.5 Git 1.8.2-rc2 Karsten Blees (2): wincred: accept CRLF on stdin to simplify console usage wincred: improve compatibility with windows versions Michael Haggerty (1): Provide a mechanism to turn off symlink resolution in ceiling paths Thomas Rast (1): Make !pattern in .gitattributes non-fatal Version v1.8.2-rc1; changes since v1.8.2-rc0: --------------------------------------------- Adam Spiers (1): t0008: document test_expect_success_multi Greg Price (1): Documentation: "advice" is uncountable Jeff King (1): Makefile: avoid infinite loop on configure.ac change Jiang Xin (5): l10n: Update git.pot (35 new, 14 removed messages) l10n: zh_CN.po: translate 35 new messages l10n: git.pot: v1.8.2 round 3 (5 new) l10n: zh_CN.po: translate 5 new messages Bugfix: undefined htmldir in config.mak.autogen Junio C Hamano (8): doc: mention tracking for pull.default user-manual: typofix (ofthe->of the) RelNotes 1.8.2: push-simple will not be in effect in this release imap-send: move #ifdef around name-hash: allow hashing an empty string Git 1.8.1.4 Prepare for 1.8.1.5 Git 1.8.2-rc1 Martin Erik Werner (1): shell-prompt: clean up nested if-then Matthieu Moy (1): git.txt: update description of the configuration mechanism Oswald Buddenhagen (2): imap-send: the subject of SSL certificate must match the host imap-send: support subjectAltName as well Peter Krefting (2): l10n: Update Swedish translation (2004t0f0u) l10n: Update Swedish translation (2009t0f0u) Trần Ngọc Quân (2): l10n: vi.po: update new strings (2004t0u0f) l10n: vi.po: Updated 5 new messages (2009t0f0u) W. Trevor King (8): user-manual: use 'remote add' to setup push URLs user-manual: give 'git push -f' as an alternative to +master user-manual: mention 'git remote add' for remote branch config user-manual: use 'git config --global user.*' for setup user-manual: use -o latest.tar.gz to create a gzipped tarball user-manual: Reorganize the reroll sections, adding 'git rebase -i' user-manual: Use request-pull to generate "please pull" text user-manual: Flesh out uncommitted changes and submodule updates Version v1.8.2-rc0; changes since v1.8.1.6: ------------------------------------------- Aaron Schrab (3): hooks: Add function to check if a hook exists push: Add support for pre-push hooks Add sample pre-push hook script Adam Spiers (29): tests: test number comes first in 'not ok $count - $message' tests: paint known breakages in yellow tests: paint skipped tests in blue tests: change info messages from yellow/brown to cyan tests: refactor mechanics of testing in a sub test-lib tests: test the test framework more thoroughly tests: paint unexpectedly fixed known breakages in bold red api-directory-listing.txt: update to match code Improve documentation and comments regarding directory traversal API dir.c: rename cryptic 'which' variable to more consistent name dir.c: rename path_excluded() to is_path_excluded() dir.c: rename excluded_from_list() to is_excluded_from_list() dir.c: rename excluded() to is_excluded() dir.c: refactor is_excluded_from_list() dir.c: refactor is_excluded() dir.c: refactor is_path_excluded() dir.c: rename free_excludes() to clear_exclude_list() dir.c: use a single struct exclude_list per source of excludes dir.c: keep track of where patterns came from dir.c: provide clear_directory() for reclaiming dir_struct memory dir.c: improve docs for match_pathspec() and match_pathspec_depth() add.c: remove unused argument from validate_pathspec() add.c: move pathspec matchers into new pathspec.c for reuse pathspec.c: rename newly public functions for clarity add.c: extract check_path_for_gitlink() from treat_gitlinks() for reuse add.c: extract new die_if_path_beyond_symlink() for reuse setup.c: document get_pathspec() add git-check-ignore sub-command clean.c, ls-files.c: respect encapsulation of exclude_list_groups Adam Tkac (1): contrib/subtree: honor DESTDIR Alexey Shumkin (1): t7102 (reset): don't hardcode SHA-1 in expected outputs Andrew Wong (3): rebase: Handle cases where format-patch fails gitk: Refactor code for binding modified function keys gitk: Use bindshiftfunctionkey to bind Shift-F5 Antoine Pelisse (8): Use split_ident_line to parse author and committer mailmap: simplify map_user() interface mailmap: add mailmap structure to rev_info and pp pretty: use mailmap to display username and email log: add --use-mailmap option test: add test for --use-mailmap option log: grep author/committer using mailmap log: add log.mailmap configuration option Barry Wardell (1): git-svn: Simplify calculation of GIT_DIR Chris Hiestand (1): Add Auto-Submitted header to post-receive-email Chris Rorvick (10): push: return reject reasons as a bitset push: add advice for rejected tag reference push: keep track of "update" state separately push: flag updates that require force push: require force for refs under refs/tags/ push: require force for annotated tags push: clarify rejection of update to non-commit-ish push: cleanup push rules comment push: rename config variable for more general use push: allow already-exists advice to be disabled Christian Couder (4): Makefile: remove tracking of TCLTK_PATH Makefile: detect when PYTHON_PATH changes Makefile: replace "echo 1>..." with "echo >..." gitk: Ignore gitk-wish buildproduct Christoph J. Thompson (1): Honor configure's htmldir switch David A. Greene (3): contrib/subtree: remove test number comments contrib/subtree: better error handling for 'subtree add' contrib/subtree: fix synopsis David Aguilar (7): mergetools/vim: remove redundant diff command mergetool--lib: improve show_tool_help() output mergetools: simplify how we handle "vim" and "defaults" mergetool--lib: simplify command expressions mergetool--lib: improve the help text in guess_merge_tool() mergetool--lib: add functions for finding available tools doc: generate a list of valid merge tools David Michael (3): Support builds when sys/param.h is missing Detect when the passwd struct is missing pw_gecos Generalize the inclusion of strings.h Eric S. Raymond (1): Add checks to Python scripts for version dependencies. Eric Wong (1): git-svn: cleanup sprintf usage for uppercasing hex Felipe Contreras (26): remote-testgit: properly check for errors fast-export: avoid importing blob marks remote-testgit: fix direction of marks remote-helpers: fix failure message Add new remote-bzr transport helper remote-bzr: add support for pushing remote-bzr: add support for remote repositories Rename git-remote-testgit to git-remote-testpy Add new simplified git-remote-testgit remote-testgit: remove non-local functionality remote-testgit: remove irrelevant test remote-testgit: cleanup tests remote-testgit: exercise more features remote-testgit: report success after an import remote-testgit: implement the "done" feature manually fast-export: trivial cleanup fast-export: fix comparison in tests fast-export: don't handle uninteresting refs fast-export: make sure updated refs get updated remote-bzr: update working tree upon pushing remote-bzr: add simple tests remote-bzr: add support for fecthing special modes remote-bzr: add support to push special modes remote-bzr: add support for older versions of bzr remote-bzr: detect local repositories remote-hg: store converted URL Jeff King (28): fsck: warn about '.' and '..' in trees fsck: warn about ".git" in trees mailmap: refactor mailmap parsing for non-file sources mailmap: support reading mailmap from blobs mailmap: clean up read_mailmap error handling mailmap: fix some documentation loose-ends for mailmap.blob mailmap: default mailmap.blob in bare repositories make error()'s constant return value more visible silence some -Wuninitialized false positives add global --literal-pathspecs option Makefile: hoist uname autodetection to config.mak.uname config: add helper function for parsing key names archive-tar: use parse_config_key when parsing config convert some config callbacks to parse_config_key userdiff: drop parse_driver function submodule: use parse_config_key when parsing config submodule: simplify memory handling in config parsing help: use parse_config_key for man config reflog: use parse_config_key in config callback commit: drop useless xstrdup of commit message logmsg_reencode: never return NULL logmsg_reencode: lazily load missing commit buffers fetch: run gc --auto after fetching fetch-pack: avoid repeatedly re-scanning pack directory docs: clarify git-branch --list behavior branch: let branch filters imply --list Documentation/Makefile: clean up MAN*_TXT lists log: re-encode commit messages before grepping Jesper L. Nielsen (1): contrib/subtree: make the manual directory if needed Jiang Xin (1): l10n: Update git.pot (11 new, 7 removed messages) Johannes Sixt (1): t6130-pathspec-noglob: Windows does not allow a file named "f*" John Keeping (24): git-svn: teach find-rev to find near matches git_remote_helpers: allow building with Python 3 git_remote_helpers: fix input when running under Python 3 git_remote_helpers: force rebuild if python version changes git_remote_helpers: use 2to3 if building with Python 3 svn-fe: allow svnrdump_sim.py to run with Python 3 git-remote-testpy: hash bytes explicitly git-remote-testpy: don't do unbuffered text I/O git-remote-testpy: call print as a function git-mergetool: move show_tool_help to mergetool--lib git-mergetool: remove redundant assignment git-mergetool: don't hardcode 'mergetool' in show_tool_help git-difftool: use git-mergetool--lib for "--tool-help" mergetool--lib: don't call "exit" in setup_tool git-remote-testpy: fix path hashing on Python 3 CodingGuidelines: add Python coding guidelines mergetool--lib: list user configured tools in '--tool-help' graph: output padding for merge subsequent parents diff: write prefix to the correct file diff.c: make constant string arguments const diff: add diff_line_prefix function diff.c: use diff_line_prefix() where applicable combine-diff.c: teach combined diffs about line prefix rebase -i: respect core.commentchar Jonathan Nieder (2): Git::SVN::Editor::T: pass $deletions to ->A and ->D git svn: do not overescape URLs (fallback case) Junio C Hamano (52): diff: accept --no-follow option blame: pay attention to --no-follow t6006: clean up whitespace log --format: teach %C(auto,black) to respect color config git-compat-util.h: do not #include <sys/param.h> by default builtin/log.c: drop unused "numbered" parameter from make_cover_letter() builtin/log.c: drop redundant "numbered_files" parameter from make_cover_letter() builtin/log.c: stop using global patch_suffix get_patch_filename(): simplify function signature get_patch_filename(): drop "just-numbers" hack get_patch_filename(): split into two functions format-patch: add --reroll-count=$N option Start 1.8.2 cycle format-patch: document and test --reroll-count Update draft release notes to 1.8.2 format-patch: give --reroll-count a short synonym -v Update draft release notes to 1.8.2 string-list: allow case-insensitive string list Update draft release notes to 1.8.2 mailmap: remove email copy and length limitation log --use-mailmap: optimize for cases without --author/--committer search Update draft release notes to 1.8.2 clone: do not export and unexport GIT_CONFIG Update draft release notes to 1.8.2 Makefile: add description on PERL/PYTHON_PATH Update draft release notes to 1.8.2 Allow custom "comment char" push: fix "refs/tags/ hierarchy cannot be updated without --force" Update draft release notes to 1.8.2 upload-pack: share more code Update draft release notes to 1.8.2 Update draft release notes to 1.8.2 push: further clean up fields of "struct ref" push: further simplify the logic to assign rejection reason push: introduce REJECT_FETCH_FIRST and REJECT_NEEDS_FORCE push: finishing touches to explain REJECT_ALREADY_EXISTS better Update draft release notes to 1.8.2 Update draft release notes to 1.8.2 upload-pack: simplify request validation git_remote_helpers: remove GIT-PYTHON-VERSION upon "clean" Update draft release notes to 1.8.2 Documentation: describe the "repository" in repository-layout Update draft release notes to 1.8.2 apply: verify submodule commit object name better Update draft release notes to 1.8.2 upload/receive-pack: allow hiding ref hierarchies Update draft release notes to 1.8.2 Update draft release notes to 1.8.2 Update draft release notes to 1.8.2 Documentation/git-add: kill remaining <filepattern> Update draft release notes to 1.8.2 Git 1.8.2-rc0 Manlio Perillo (1): git-completion.bash: add support for path completion Marc Khouzam (1): completion: handle path completion and colon for tcsh script Marcus Karlsson (1): gitk: Fix crash when not using themed widgets Martin Erik Werner (3): shell prompt: add bash.showUntrackedFiles option t9903: add tests for bash.showUntrackedFiles t9903: add extra tests for bash.showDirtyState Martin von Zweigbergk (21): oneway_merge(): only lstat() when told to update worktree reset $pathspec: no need to discard index reset $pathspec: exit with code 0 if successful reset.c: pass pathspec around instead of (prefix, argv) pair reset: don't allow "git reset -- $pathspec" in bare repo reset.c: extract function for parsing arguments reset.c: remove unnecessary variable 'i' reset.c: extract function for updating {ORIG_,}HEAD reset.c: share call to die_if_unmerged_cache() reset --keep: only write index file once reset: avoid redundant error message reset.c: replace switch by if-else reset.c: move update_index_refresh() call out of read_from_tree() reset.c: move lock, write and commit out of update_index_refresh() reset [--mixed]: only write index file once reset.c: finish entire cmd_reset() whether or not pathspec is given reset.c: inline update_index_refresh() reset $sha1 $pathspec: require $sha1 only to be treeish reset: allow reset on unborn branch reset [--mixed]: use diff-based reset whether or not pathspec was given reset: update documentation to require only tree-ish with paths Matt Kraai (5): Make lock local to fetch_pack Port to QNX Use __VA_ARGS__ for all of error's arguments Allow building with xmlparse.h Makefile: don't run "rm" without any files Matthew Ogilvie (10): cvsserver: factor out git-log parsing logic cvsserver: cleanup extra slashes in filename arguments cvsserver: define a tag name character escape mechanism cvsserver: add misc commit lookup, file meta data, and file listing functions cvsserver: implement req_Sticky and related utilities cvsserver: generalize getmeta() to recognize commit refs cvsserver: Add version awareness to argsfromdir cvsserver: support -r and sticky tags for most operations cvsserver: add t9402 to test branch and tag refs cvsserver Documentation: new cvs ... -r support Matthieu Moy (4): add: warn when -u or -A is used without pathspec Makefile: make script-related rules usable from subdirectories git-remote-mediawiki: use toplevel's Makefile completion: support 'git config --local' Max Horn (2): remote-hg: fix handling of file perms when pushing fix clang -Wunused-value warnings for error functions Michael Haggerty (22): Add new function strbuf_add_xml_quoted() xml_entities(): use function strbuf_addstr_xml_quoted() lf_to_crlf(): NUL-terminate msg_data::data imap-send: store all_msgs as a strbuf imap-send: correctly report errors reading from stdin imap-send: change msg_data from storing (ptr, len) to storing strbuf wrap_in_html(): use strbuf_addstr_xml_quoted() wrap_in_html(): process message in bulk rather than line-by-line imap-send.c: remove msg_data::flags, which was always zero imap-send.c: remove struct msg_data iamp-send.c: remove unused struct imap_store_conf imap-send.c: remove struct store_conf imap-send.c: remove struct message imap-send.c: remove some unused fields from struct store imap-send.c: inline parse_imap_list() in parse_list() imap-send.c: remove struct imap argument to parse_imap_list_l() imap-send.c: remove namespace fields from struct imap imap-send.c: remove unused field imap_store::trashnc imap-send.c: use struct imap_store instead of struct store imap-send.c: remove unused field imap_store::uidvalidity imap-send.c: fold struct store into struct imap_store imap-send.c: simplify logic in lf_to_crlf() Michal Privoznik (3): git-completion.bash: Autocomplete --minimal and --histogram for git-diff config: Introduce diff.algorithm variable diff: Introduce --diff-algorithm command line option Nguyễn Thái Ngọc Duy (43): ctype: make sane_ctype[] const array ctype: support iscntrl, ispunct, isxdigit and isprint Import wildmatch from rsync wildmatch: remove unnecessary functions wildmatch: follow Git's coding convention Integrate wildmatch to git t3070: disable unreliable fnmatch tests wildmatch: make wildmatch's return value compatible with fnmatch wildmatch: remove static variable force_lower_case wildmatch: fix case-insensitive matching wildmatch: adjust "**" behavior wildmatch: make /**/ match zero or more directories Support "**" wildcard in .gitignore and .gitattributes pathspec: save the non-wildcard length part test-wildmatch: avoid Windows path mangling pathspec: do exact comparison on the leading non-wildcard part pathspec: apply "*.c" optimization from exclude tree_entry_interesting: do basedir compare on wildcard patterns when possible config.txt: a few lines about branch.<name>.description wildmatch: fix "**" special case wildmatch: rename constants and update prototype compat/fnmatch: respect NO_FNMATCH* even on glibc wildmatch: make dowild() take arbitrary flags wildmatch: replace variable 'special' with better named ones wildmatch: support "no FNM_PATHNAME" mode test-wildmatch: add "perf" command to compare wildmatch and fnmatch wildmatch: make a special case for "*/" with FNM_PATHNAME wildmatch: advance faster in <asterisk> + <literal> patterns Makefile: add USE_WILDMATCH to use wildmatch as fnmatch branch: delete branch description if it's empty t4014: a few more tests on cover letter using branch description format-patch: pick up correct branch name from symbolic ref format-patch: pick up branch description when no ref is specified upload-pack: only accept commits from "shallow" line fetch: add --unshallow for turning shallow repo into complete one upload-pack: fix off-by-one depth calculation in shallow clone fetch: elaborate --depth action Update :/abc ambiguity check grep: avoid accepting ambiguous revision branch: reject -D/-d without branch name branch: give a more helpful message on redundant arguments branch: mark more strings for translation status: show the branch name if possible in in-progress info Paul Mackerras (3): gitk: Fix display of branch names on some commits gitk: Improve display of list of nearby tags and heads gitk: Display important heads even when there are many Pete Wyckoff (35): git p4: test sync/clone --branch behavior git p4: rearrange and simplify hasOrigin handling git p4: add comments to p4BranchesInGit git p4: inline listExistingP4GitBranches git p4: create p4/HEAD on initial clone git p4: verify expected refs in clone --bare test git p4: clone --branch should checkout master git p4 doc: fix branch detection example git p4: allow short ref names to --branch git p4: rearrange self.initialParent use git p4: fail gracefully on sync with no master branch git p4: fix sync --branch when no master branch git p4 test: keep P4CLIENT changes inside subshells git p4: fix submit when no master branch git p4: temp branch name should use / even on windows git p4: remove unused imports git p4: generate better error message for bad depot path git p4 test: use client_view to build the initial client git p4 test: avoid loop in client_view git p4 test: use client_view in t9806 git p4 test: start p4d inside its db dir git p4 test: translate windows paths for cygwin git p4: remove unreachable windows \r\n conversion code git p4: scrub crlf for utf16 files on windows git p4 test: newline handling git p4 test: use LineEnd unix in windows tests too git p4 test: avoid wildcard * in windows git p4: cygwin p4 client does not mark read-only git p4 test: use test_chmod for cygwin git p4: disable read-only attribute before deleting git p4: avoid shell when mapping users git p4: avoid shell when invoking git rev-list git p4: avoid shell when invoking git config --get-all git p4: avoid shell when calling git config git p4: introduce gitConfigBool Peter Krefting (2): gitk: Update Swedish translation (296t) l10n: Update Swedish translation (1983t0f0u) Peter Wu (1): git-svn: do not escape certain characters in paths Ralf Thielow (6): l10n: de.po: address the user formally commit: make default of "cleanup" option configurable l10n: de.po: fix some minor issues l10n: de.po: translate 11 new messages l10n: de.po: translate "revision" consistently as "Revision" l10n: de.po: translate "reset" as "neu setzen" Ramsay Jones (1): t3070: Disable some failing fnmatch tests René Scharfe (3): t0008: avoid brace expansion pretty: use prefixcmp instead of memcmp on NUL-terminated strings refs: use strncmp() instead of strlen() and memcmp() Robin Rosenberg (1): Enable minimal stat checking Stefan Haller (6): gitk: Synchronize highlighting in file view when scrolling diff gitk: Highlight current search hit in orange gitk: Highlight first search result immediately on incremental search gitk: Work around empty back and forward images when buttons are disabled gitk: Fix error message when clicking on a connecting line gitk: When searching, only highlight files when in Patch mode Stephen Boyd (2): gpg: allow translation of more error messages run-command: be more informative about what failed Sven Strickroth (2): mergetools: support TortoiseGitMerge mergetools: teach tortoisemerge to handle filenames with SP correctly Techlive Zheng (1): contrib/subtree: use %B for split subject/body Ted Zlatanov (1): Update CodingGuidelines for Perl Thomas Ackermann (5): Documentation: avoid poor-man's small caps GIT Documentation: the name of the system is 'Git', not 'git' Documentation: do not use undefined terms git-dir and git-file Documentation: add a description for 'gitfile' to glossary Documentation: StGit is the right spelling, not StGIT Torsten Bögershausen (9): t9402: sed -i is not portable t9402: improve check_end_tree() and check_end_full_tree() t9402: Dont use test_must_fail cvs t9402: No space after IO-redirection t9402: Add missing &&; Code style t9402: Simplify git ls-tree t9402: Rename check.cvsCount and check.list t9402: Use TABs for indentation test: Add check-non-portable-shell.pl Trần Ngọc Quân (1): l10n: vi.po: updated Vietnamese translation W. Trevor King (3): submodule: add get_submodule_config helper funtion submodule update: add --remote for submodule's upstream changes submodule add: If --branch is given, record it in .gitmodules Wang Sheng (1): l10n: zh_CN.po: 800+ new translations on command usages Version v1.8.1.6; changes since v1.8.1.5: ----------------------------------------- Antoine Pelisse (4): update-index: allow "-h" to also display options diff: Fix rename pretty-print when suffix and prefix overlap tests: make sure rename pretty print works perf: update documentation of GIT_PERF_REPEAT_COUNT Christian Helmuth (1): git-commit doc: describe use of multiple `-m` options Dan Bornstein (1): Correct the docs about GIT_SSH. David Michael (1): git-compat-util.h: Provide missing netdb.h definitions Fredrik Gustafsson (1): gitweb/README: remove reference to git.kernel.org Greg Price (1): describe: Document --match pattern format Jeff King (6): avoid segfaults on parse_object failure use parse_object_or_die instead of die("bad object") pack-refs: write peeled entry for non-tags dir.c::match_pathname(): adjust patternlen when shifting pattern dir.c::match_pathname(): pay attention to the length of string parameters t: check that a pattern without trailing slash matches a directory Johannes Sixt (1): t2003: work around path mangling issue on Windows John Keeping (3): t2003: modernize style entry: fix filter lookup merge-tree: fix typo in merge-tree.c::unresolved Joshua Clayton (1): Git.pm: fix cat_blob crashes on large files Junio C Hamano (8): imap-send: support Server Name Indication (RFC4366) diff-options: unconfuse description of --color Documentation: merging a tag is a special case attr.c::path_matches(): the basename is part of the pathname attr.c::path_matches(): special case paths that end with a slash dir.c::match_basename(): pay attention to the length of string parameters Start preparing for 1.8.1.6 Git 1.8.1.6 Kacper Kornet (3): rev-parse: clarify documentation of $name@{upstream} syntax t1507: Test that branchname@{upstream} is interpreted as branch Fix revision walk for commits with the same dates Karsten Blees (1): name-hash.c: fix endless loop with core.ignorecase=true Kevin Bracey (2): Translate git_more_info_string consistently git.c: make usage match manual page Lukas Fleischer (2): bundle: Fix "verify" output if history is complete bundle: Add colons to list headings in "verify" Matthias Krüger (1): git help config: s/insn/instruction/ Michael Haggerty (2): Provide a mechanism to turn off symlink resolution in ceiling paths pack-refs: add fully-peeled trait Mihai Capotă (1): git-pull doc: fix grammo ("conflicts" is plural) Nguyễn Thái Ngọc Duy (4): index-format.txt: mention of v4 is missing in some places read-cache.c: use INDEX_FORMAT_{LB,UB} in verify_hdr() update-index: list supported idx versions and their features index-pack: fix buffer overflow caused by translations René Scharfe (2): Makefile: keep LIB_H entries together and sorted sha1_name: pass object name length to diagnose_invalid_sha1_path() Tadeusz Andrzej Kadłubowski (2): git-filter-branch.txt: clarify ident variables usage Documentation: filter-branch env-filter example Thomas Rast (2): diff: prevent pprint_rename from underrunning input git-tag(1): we tag HEAD by default Torsten Bögershausen (1): remote-helpers/test-bzr.sh: do not use "grep '\s'" W. Trevor King (1): Documentation/githooks: Explain pre-rebase parameters Version v1.8.1.5; changes since v1.8.1.4: ----------------------------------------- Andrej E Baranov (1): gitweb: refer to picon/gravatar images over the same scheme Andrew Wong (1): Documentation/githooks: Fix linkgit Asheesh Laroia (1): git-mergetool: print filename when it contains % Ben Walton (3): Move Git::SVN::get_tz to Git::get_tz_offset perl/Git.pm: fix get_tz_offset to properly handle DST boundary cases cvsimport: format commit timestamp ourselves without using strftime Brad King (1): Documentation/submodule: Add --force to update synopsis David Aguilar (3): mergetools/p4merge: Honor $TMPDIR for the /dev/null placeholder difftool--helper: fix printf usage p4merge: fix printf usage Erik Faye-Lund (1): parse-options: report uncorrupted multi-byte options Greg Price (1): Documentation: "advice" is uncountable Jeff King (2): http_request: reset "type" strbuf before adding Makefile: avoid infinite loop on configure.ac change Jiang Xin (1): Add utf8_fprintf helper that returns correct number of columns John Keeping (3): Rename {git- => git}remote-helpers.txt builtin/apply: tighten (dis)similarity index parsing t4038: add tests for "diff --cc --raw <trees>" Junio C Hamano (7): doc: mention tracking for pull.default combine-diff: lift 32-way limit of combined diff t5551: fix expected error output user-manual: typofix (ofthe->of the) Prepare for 1.8.1.5 Update draft release notes to 1.8.1.5 Git 1.8.1.5 Matthieu Moy (1): git.txt: update description of the configuration mechanism Michael J Gruber (1): git-bisect.txt: clarify that reset quits bisect Nguyễn Thái Ngọc Duy (1): clone: forbid --bare --separate-git-dir <dir> Shawn O. Pearce (1): Verify Content-Type from smart HTTP servers Thomas Rast (1): Make !pattern in .gitattributes non-fatal W. Trevor King (4): user-manual: Update for receive.denyCurrentBranch=refuse user-manual: Reorganize the reroll sections, adding 'git rebase -i' user-manual: Use request-pull to generate "please pull" text user-manual: Flesh out uncommitted changes and submodule updates Zoltan Klinger (1): git-clean: Display more accurate delete messages Version v1.8.1.4; changes since v1.8.1.3: ----------------------------------------- Junio C Hamano (2): imap-send: move #ifdef around Git 1.8.1.4 Matthieu Moy (1): Replace filepattern with pathspec for consistency Oswald Buddenhagen (2): imap-send: the subject of SSL certificate must match the host imap-send: support subjectAltName as well W. Trevor King (9): user-manual: Fix 'both: so' -> 'both; so' typo user-manual: Fix 'http' -> 'HTTP' typos user-manual: Fix 'you - Git' -> 'you--Git' typo user-manual: Rewrite git-gc section for automatic packing user-manual: use 'remote add' to setup push URLs user-manual: give 'git push -f' as an alternative to +master user-manual: mention 'git remote add' for remote branch config user-manual: use 'git config --global user.*' for setup user-manual: use -o latest.tar.gz to create a gzipped tarball Version v1.8.1.3; changes since v1.8.1.2: ----------------------------------------- Brandon Casey (3): git-completion.bash: replace zsh notation that breaks bash 3.X git-p4.py: support Python 2.5 git-p4.py: support Python 2.4 Dmitry V. Levin (1): am: invoke perl's strftime in C locale Fraser Tweedale (1): push: fix segfault when HEAD points nowhere John Keeping (1): git-cvsimport.txt: cvsps-2 is deprecated Jonathan Nieder (2): ident: do not drop username when reading from /etc/mailname Makefile: explicitly set target name for autogenerated dependencies Junio C Hamano (17): Which merge_file() function do you mean? merge-tree: lose unused "flags" from merge_list merge-tree: lose unused "resolve_directories" merge-tree: add comments to clarify what these functions are doing merge-tree: fix d/f conflicts Documentation: update "howto maintain git" howto/maintain: mark titles for asciidoc help: include <common-cmds.h> only in one file t9902: protect test from stray build artifacts howto/maintain: document "### match next" convention in jch/pu branch README: update stale and/or incorrect information INSTALL: git-p4 does not support Python 3 git-am: record full index line in the patch used while rebasing apply: simplify build_fake_ancestor() apply: diagnose incomplete submodule object name better Start preparing for 1.8.1.3 Git 1.8.1.3 Martin von Zweigbergk (2): tests: move test_cmp_rev to test-lib-functions learn to pick/revert into unborn branch Nguyễn Thái Ngọc Duy (4): attr: fix off-by-one directory component length calculation test-lib.sh: unfilter GIT_PERF_* attr: avoid calling find_basename() twice per path branch: no detached HEAD check when editing another branch's description Phil Hord (1): rebase --preserve-merges: keep all merge commits including empty ones Ramsay Jones (1): Makefile: Replace merge-file.h with merge-blobs.h in LIB_H Stephen Boyd (1): gpg: close stderr once finished with it in verify_signed_buffer() Torsten Bögershausen (3): t0050: known breakage vanished in merge (case change) t0050: honor CASE_INSENSITIVE_FS in add (with different case) t0050: Use TAB for indentation Version v1.8.1.2; changes since v1.8.1.1: ----------------------------------------- Antoine Pelisse (3): dir.c: Make git-status --ignored more consistent git-status: Test --ignored behavior status: always report ignored tracked directories Dylan Smith (1): git-completion.bash: silence "not a valid object" errors Eric S. Raymond (1): Remove the suggestion to use parsecvs, which is currently broken. John Keeping (1): git-for-each-ref.txt: 'raw' is a supported date format Jonathan Nieder (1): contrib/vim: simplify instructions for old vim support Junio C Hamano (2): Start preparing for 1.8.1.2 Git 1.8.1.2 Marc Khouzam (1): Prevent space after directories in tcsh completion Michael Haggerty (8): Introduce new static function real_path_internal() real_path_internal(): add comment explaining use of cwd Introduce new function real_path_if_valid() longest_ancestor_length(): use string_list_split() longest_ancestor_length(): take a string_list argument for prefixes longest_ancestor_length(): require prefix list entries to be normalized setup_git_directory_gently_1(): resolve symlinks in ceiling paths string_list_longest_prefix(): remove function Nguyễn Thái Ngọc Duy (1): attr: make it build with DEBUG_ATTR again Nickolai Zeldovich (1): git-send-email: treat field names as case-insensitively Peter Eisentraut (1): git-commit-tree(1): correct description of defaults René Scharfe (5): archive-zip: write uncompressed size into header even with streaming t0024, t5000: clear variable UNZIP, use GIT_UNZIP instead t0024, t5000: use test_lazy_prereq for UNZIP t5000, t5003: move ZIP tests into their own script t5003: check if unzip supports symlinks Sebastian Staudt (1): config.txt: Document help.htmlpath config parameter Version v1.8.1.1; changes since v1.8.1: --------------------------------------- Aaron Schrab (1): Use longer alias names in subdirectory tests Adam Spiers (1): api-allocation-growing.txt: encourage better variable naming Antoine Pelisse (1): merge: Honor prepare-commit-msg return code Christian Couder (1): Makefile: detect when PYTHON_PATH changes Jean-Noël AVILA (1): Add directory pattern matching to attributes Jeff King (9): run-command: drop silent_exec_failure arg from wait_or_whine launch_editor: refactor to use start/finish_command run-command: do not warn about child death from terminal launch_editor: propagate signals from editor to git completion: complete refs for "git commit -c" refs: do not use cached refs in repack_without_ref tests: turn on test-lint by default fix compilation with NO_PTHREADS run-command: encode signal death as a positive integer Jens Lehmann (1): clone: support atomic operation with --separate-git-dir John Keeping (4): git-fast-import(1): remove duplicate '--done' option git-shortlog(1): document behaviour of zero-width wrap git-fast-import(1): combine documentation of --[no-]relative-marks git-fast-import(1): reorganise options Jonathan Nieder (6): config, gitignore: failure to access with ENOTDIR is ok config: treat user and xdg config permission problems as errors doc: advertise GIT_CONFIG_NOSYSTEM config: exit on error accessing any config file build: do not automatically reconfigure unless configure.ac changed docs: manpage XML depends on asciidoc.conf Junio C Hamano (20): apply.c:update_pre_post_images(): the preimage can be truncated format_commit_message(): simplify calls to logmsg_reencode() sh-setup: work around "unset IFS" bug in some shells fetch: ignore wildcarded refspecs that update local symbolic refs xmkstemp(): avoid showing truncated template more carefully t0200: "locale" may not exist t9502: do not assume GNU tar t4014: fix arguments to grep t3600: Avoid "cp -a", which is a GNUism t9020: use configured Python to run the test helper compat/fnmatch: update old-style definition to ANSI t9200: let "cvs init" create the test repository merge --no-edit: do not credit people involved in the side branch SubmittingPatches: who am I and who cares? SubmittingPatches: mention subsystems with dedicated repositories Documentation: full-ness of a bundle is significant for cloning SubmittingPatches: remove overlong checklist SubmittingPatches: give list and maintainer addresses Prepare for 1.8.1.1 Git 1.8.1.1 Kirill Brilliantov (1): Documentation: correct example restore from bundle Mark Levedahl (1): Makefile: add comment on CYGWIN_V15_WIN32API Matthew Daley (1): gitweb: Sort projects with undefined ages last Max Horn (1): configure.ac: fix pthreads detection on Mac OS X Michael Schubert (2): git-subtree: ignore git-subtree executable git-subtree: fix typo in manpage Michał Kiedrowicz (1): graph.c: infinite loop in git whatchanged --graph -m Nguyễn Thái Ngọc Duy (4): cache-tree: remove dead i-t-a code in verify_cache() cache-tree: replace "for" loops in update_one with "while" loops cache-tree: fix writing cache-tree when CE_REMOVE is present cache-tree: invalidate i-t-a paths after generating trees Orgad Shaneh (1): gitweb: fix error in sanitize when highlight is enabled Paul Fox (1): launch_editor: ignore terminal signals while editor has control Rene Bredlau (1): http.c: Avoid username prompt for certifcate credentials René Scharfe (2): archive-tar: split long paths more carefully t1402: work around shell quoting issue on NetBSD Sebastian Schuberth (1): nedmalloc: Fix a compile warning (exposed as error) with GCC 4.7.2 Steffen Prohaska (2): shortlog: fix wrapping lines of wraplen strbuf_add_wrapped*(): Remove unused return value Sven Strickroth (3): git-svn, perl/Git.pm: add central method for prompting passwords perl/Git.pm: Honor SSH_ASKPASS as fallback if GIT_ASKPASS is not set git-svn, perl/Git.pm: extend and use Git->prompt method for querying users Thomas Ackermann (1): Remove Documentation/pt_BR/gittutorial.txt Torsten Bögershausen (2): t9810: Do not use sed -i t9020: which is not portable W. Trevor King (1): remote-hg: Fix biridectionality -> bidirectionality typos Version v1.8.1; changes since v1.8.1-rc3: ----------------------------------------- Junio C Hamano (3): git(1): show link to contributor summary page Git 1.8.0.3 Git 1.8.1 Max Horn (1): git-remote-helpers.txt: document invocation before input format Ramkumar Ramachandra (1): Documentation: move diff.wordRegex from config.txt to diff-config.txt Sebastian Leske (4): git-svn: Document branches with at-sign(@). git-svn: Recommend use of structure options. git-svn: Expand documentation for --follow-parent git-svn: Note about tags. Simon Oosthoek (1): make __git_ps1 accept a third parameter in pcmode Thomas Ackermann (1): Sort howto documents in howto-index.txt Version v1.8.1-rc3; changes since v1.8.1-rc2: --------------------------------------------- Adam Spiers (2): SubmittingPatches: add convention of prefixing commit messages Documentation: move support for old compilers to CodingGuidelines Chris Rorvick (2): Documentation/git-checkout.txt: clarify usage Documentation/git-checkout.txt: document 70c9ac2 behavior Jeff King (5): .mailmap: match up some obvious names/emails .mailmap: fix broken entry for Martin Langhoff .mailmap: normalize emails for Jeff King .mailmap: normalize emails for Linus Torvalds contrib: update stats/mailmap script John Keeping (1): Documentation: don't link to example mail addresses Junio C Hamano (5): fetch --tags: clarify documentation README: it does not matter who the current maintainer is t7004: do not create unneeded gpghome/gpg.conf when GPG is not used Documentation: Describe "git diff <blob> <blob>" separately Git 1.8.1-rc3 Nguyễn Thái Ngọc Duy (1): index-format.txt: clarify what is "invalid" Sebastian Leske (4): git-svn: Document branches with at-sign(@). git-svn: Recommend use of structure options. git-svn: Expand documentation for --follow-parent git-svn: Note about tags. Sitaram Chamarty (1): clarify -M without % symbol in diff-options Stefano Lattarini (1): README: Git is released under the GPLv2, not just "the GPL" Thomas Ackermann (3): Remove misleading date from api-index-skel.txt Remove duplicate entry in ./Documentation/Makefile Move ./technical/api-command.txt to ./howto/new-command.txt Version v1.8.1-rc2; changes since v1.8.1-rc1: --------------------------------------------- Anders Kaseorg (1): git-prompt: Document GIT_PS1_DESCRIBE_STYLE Erik Faye-Lund (7): mingw: correct exit-code for SIGALRM's SIG_DFL mingw: make fgetc raise SIGINT if apropriate compat/terminal: factor out echo-disabling compat/terminal: separate input and output handles mingw: reuse tty-version of git_terminal_prompt mingw: get rid of getpass implementation mingw_rmdir: do not prompt for retry when non-empty Jeff King (1): remote-testsvn: fix unitialized variable Junio C Hamano (5): git(1): remove a defunct link to "list of authors" Git 1.8.0.2 git-prompt.sh: update PROMPT_COMMAND documentation git(1): show link to contributor summary page Git 1.8.1-rc2 Manlio Perillo (1): git.txt: add missing info about --git-dir command-line option Marc Khouzam (1): Add file completion to tcsh git completion. Matthew Daley (1): Fix sizeof usage in get_permutations Max Horn (6): git-remote-helpers.txt: document invocation before input format git-remote-helpers.txt: document missing capabilities git-remote-helpers.txt: minor grammar fix git-remote-helpers.txt: rearrange description of capabilities git-remote-helpers.txt: clarify command <-> capability correspondences git-remote-helpers.txt: clarify options & ref list attributes Stefano Lattarini (1): Makefile: whitespace style fixes in macro definitions Sébastien Loriot (1): Documentation/git-stash.txt: add a missing verb Thomas Ackermann (1): Renumber list in api-command.txt Version v1.8.1-rc1; changes since v1.8.1-rc0: --------------------------------------------- Jiang Xin (1): l10n: Update git.pot (5 new, 1 removed messages) Junio C Hamano (3): Update draft release notes to 1.8.0.2 Documentation/diff-config: work around AsciiDoc misfortune Git 1.8.1-rc1 Matthieu Moy (1): document that statusHints affects git checkout Peter Krefting (1): l10n: Update Swedish translation (1979t0f0u) Ralf Thielow (2): l10n: de.po: translate 825 new messages l10n: de.po: translate 22 new messages Ramkumar Ramachandra (4): t4041 (diff-submodule-option): don't hardcode SHA-1 in expected outputs t4041 (diff-submodule-option): parse digests sensibly t4041 (diff-submodule-option): rewrite add_file() routine t4041 (diff-submodule-option): modernize style Trần Ngọc Quân (1): l10n: vi.po: update to git-v1.8.0.1-347-gf94c3 Version v1.8.1-rc0; changes since v1.8.0.3: ------------------------------------------- Ben Walton (1): Use character class for sed expression instead of \s Brandon Casey (1): usage.c: detect recursion in die routines and bail out immediately Chris Rorvick (1): git-cvsimport: allow author-specific timezones Dmitry Ivankov (1): vcs-svn: add fast_export_note to create notes Enrico Scholz (1): emacs: make 'git-status' work with separate git dirs Eric S. Raymond (1): Documentation: how to add a new command Felipe Contreras (32): completion: add format-patch options to send-email Add new remote-hg transport helper remote-hg: add support for pushing remote-hg: add support for remote pushing remote-hg: add support to push URLs remote-hg: make sure the encoding is correct remote-hg: match hg merge behavior remote-hg: add support for hg-git compat mode remote-hg: add compat for hg-git author fixes remote-hg: fake bookmark when there's none remote-hg: add basic tests test-lib: avoid full path to store test results remote-hg: add bidirectional tests remote-hg: add tests to compare with hg-git remote-hg: add extra author test remote-hg: add option to not track branches remote-hg: the author email can be null remote-hg: fix compatibility with older versions of hg remote-hg: try the 'tip' if no checkout present remote-hg: avoid bad refs completion: add comment for test_completion() completion: standardize final space marker in tests completion: simplify tests using test_completion_long() completion: consolidate test_completion*() tests completion: refactor __gitcomp related tests completion: simplify __gitcomp() test helper completion: add new zsh completion completion: start moving to the new zsh completion send-email: avoid questions when user has an ident remote-hg: fix for files with spaces remote-hg: fix for older versions of python completion: fix warning for zsh Florian Achleitner (15): Implement a remote helper for svn in C Add git-remote-testsvn to Makefile Add svndump_init_fd to allow reading dumps from arbitrary FDs Add argv_array_detach and argv_array_free_detached Connect fast-import to the remote-helper via pipe, adding 'bidi-import' capability Add documentation for the 'bidi-import' capability of remote-helpers When debug==1, start fast-import with "--stats" instead of "--quiet" remote-svn, vcs-svn: Enable fetching to private refs Allow reading svn dumps from files via file:// urls Create a note for every imported commit containing svn metadata remote-svn: Activate import/export-marks for fast-import remote-svn: add incremental import Add a svnrdump-simulator replaying a dump file for testing remote-svn: add marks-file regeneration Add a test script for remote-svn Jeff King (30): pager: drop "wait for output to run less" hack peel_ref: use faster deref_tag_noverify peel_ref: do not return a null sha1 peel_ref: check object type before loading upload-pack: use peel_ref for ref advertisements remote-curl: do not call run_slot repeatedly http: do not set up curl auth after a 401 strbuf: always return a non-NULL value from strbuf_detach status: add --long output format option git-sh-setup: refactor ident-parsing functions filter-branch: use git-sh-setup's ident parsing functions t1300: style updates t1300: remove redundant test t1300: test "git config --get-all" more thoroughly git-config: remove memory leak of key regexp git-config: fix regexp memory leaks on error conditions git-config: collect values instead of immediately printing git-config: do not complain about duplicate entries git-config: use git_config_with_options remote-curl: hoist gzip buffer size to top of post_rpc remote-curl: retry failed requests for auth even with gzip cvsimport: work around perl tzset issue test-lib: allow negation of prerequisites t7502: factor out autoident prerequisite ident: make user_ident_explicitly_given static ident: keep separate "explicit" flags for author and committer diff: rename "set" variable t: add tests for "git var" t9001: check send-email behavior with implicit sender status: respect advice.statusHints for ahead/behind advice Jeff Muizelaar (1): diff: diff.context configuration gives default to -U Jens Lehmann (5): submodule: teach rm to remove submodules unless they contain a git directory Teach "git submodule add" the --name option submodule add: Fail when .git/modules/<name> already exists unless forced submodule status: remove unused orig_* variables Teach rm to remove submodules when given with a trailing '/' Jiang Xin (1): l10n: Update git.pot (14 new, 3 removed messages) Joachim Schmitz (1): fix 'make test' for HP NonStop Johan Herland (1): git symbolic-ref --delete $symref Johannes Sixt (1): maybe_flush_or_die: move a too-loose Windows specific error Junio C Hamano (20): t4055: avoid use of sed 'a' command log --grep: accept --basic-regexp and --perl-regexp log: honor grep.* configuration coloured git-prompt: paint detached HEAD marker in red pretty: remove reencode_commit_message() format_note(): simplify API pretty: prepare notes message at a centralized place pretty_print_commit(): do not append notes message format-patch: append --signature after notes format-patch --notes: show notes after three-dashes Documentation: decribe format-patch --notes get_fetch_map(): tighten checks on dest refs format-patch: add a blank line between notes and diffstat Start 1.8.1 cycle Sixth batch for 1.8.1 Update draft release notes for 1.8.1 Update draft release notes to 1.8.1 Update draft release notes to 1.8.1 Update draft release notes to 1.8.1 Git 1.8.1-rc0 Karsten Blees (1): update-index/diff-index: use core.preloadindex to improve performance Krzysztof Mazur (10): git-send-email: introduce compose-encoding git-send-email: use compose-encoding for Subject git-send-email: skip RFC2047 quoting for ASCII subjects git-send-email: introduce quote_subject() git-send-email: add rfc2047 quoting for "=?" git-send-email: remove garbage after email address git-send-email: fix fallback code in extract_valid_address() git-send-email: remove invalid addresses earlier git-send-email: ask what to do with an invalid email address git-send-email: allow edit invalid email address Marc Khouzam (2): tcsh-completion re-using git-completion.bash Support for git aliasing for tcsh completion Mark Levedahl (2): Update cygwin.c for new mingw-64 win32 api headers USE CGYWIN_V15_WIN32API as macro to select api for cygwin Matt Kraai (1): docs: move submodule section Matthew Ogilvie (10): cvsserver t9400: add basic 'cvs log' test cvsserver: removed unused sha1Or-k mode from kopts_from_path cvsserver: add comments about database schema/usage cvsserver update: comment about how we shouldn't remove a user-modified file cvsserver: remove unused functions _headrev and gethistory cvsserver: clean up client request handler map comments cvsserver: split up long lines in req_{status,diff,log} cvsserver: use whole CVS rev number in-process; don't strip "1." prefix cvsserver: cvs add: do not expand directory arguments cvsserver status: provide real sticky info Matthieu Moy (1): status: add advice on how to push/pull to tracking branch Michael Haggerty (12): parse_dirstat_params(): use string_list to split comma-separated string strbuf_split_buf(): use ALLOC_GROW() strbuf_split_buf(): simplify iteration strbuf_split*(): rename "delim" parameter to "terminator" strbuf_split*(): document functions string_list: add a function string_list_remove_empty_items() Initialize sort_uniq_list using named constant combine_notes_cat_sort_uniq(): sort and dedup lines all at once notes: fix handling of colon-separated values string_list_add_refs_from_colon_sep(): use string_list_split() link_alt_odb_entries(): use string_list_split_in_place() link_alt_odb_entries(): take (char *, len) rather than two pointers Michael J Gruber (1): replace: parse revision argument for -d Nguyễn Thái Ngọc Duy (16): attr: avoid strlen() on every match attr: avoid searching for basename on every match exclude: stricten a length check in EXC_FLAG_ENDSWITH case exclude: split basename matching code into a separate function exclude: fix a bug in prefix compare optimization exclude: split pathname matching code into a separate function gitignore: make pattern parsing code a separate function attr: more matching optimizations from .gitignore tree-walk: use enum interesting instead of integer Move try_merge_command and checkout_fast_forward to libgit.a Move estimate_bisect_steps to libgit.a Move print_commit_list to libgit.a Move setup_diff_pager to libgit.a send-pack: move core code to libgit.a fetch-pack: remove global (static) configuration variable "args" fetch-pack: move core code to libgit.a Patrick Palka (1): Documentation: improve the example of overriding LESS via core.pager Pete Wyckoff (6): git p4: catch p4 describe errors git p4: handle servers without move support git p4: catch p4 errors when streaming file contents git p4 test: display unresolvable host error git p4: fix labelDetails typo in exception git p4: remove unneeded cmd initialization Peter Krefting (1): l10n: Update Swedish translation (1975t0f0u) Phil Hord (3): t7407: Fix recursive submodule test Teach --recursive to submodule sync Add tests for submodule sync --recursive Phil Pennock (1): gitweb: make remote_heads config setting work Philip Oakley (4): Doc SubmittingPatches: Mention --notes option after "cover letter" Doc notes: Include the format-patch --notes option Doc format-patch: clarify --notes use case Doc User-Manual: Patch cover letter, three dashes, and --notes Ramkumar Ramachandra (4): remote-hg: add missing config for basic tests Documentation: move diff.wordRegex from config.txt to diff-config.txt diff: introduce diff.submodule configuration variable submodule: display summary header in bold Ramsay Jones (2): builtin/config.c: Fix a sparse warning remote-curl.c: Fix a compiler warning SZEDER Gábor (1): completion: remove 'help' duplicate from porcelain commands Simon Oosthoek (3): Allow __git_ps1 to be used in PROMPT_COMMAND show color hints based on state of the git tree Fix up colored git-prompt Stefan Zager (1): submodule add: fix handling of --reference=<repo> option Stefano Lattarini (1): configure: fix some output message Torsten Bögershausen (1): Fix t9200 on case insensitive file systems Trần Ngọc Quân (2): l10n: vi.po: update to git-v1.7.12-437-g1084f l10n: vi.po: Update follow git-v1.8.0-273-g2d242 Version v1.8.0.3; changes since v1.8.0.2: ----------------------------------------- Adam Spiers (2): SubmittingPatches: add convention of prefixing commit messages Documentation: move support for old compilers to CodingGuidelines Anders Kaseorg (1): git-prompt: Document GIT_PS1_DESCRIBE_STYLE Chris Rorvick (2): Documentation/git-checkout.txt: clarify usage Documentation/git-checkout.txt: document 70c9ac2 behavior Gunnlaugur Þór Briem (1): Document git-svn fetch --log-window-size parameter Jeff King (7): pickaxe: hoist empty needle check pickaxe: use textconv for -S counting .mailmap: match up some obvious names/emails .mailmap: fix broken entry for Martin Langhoff .mailmap: normalize emails for Jeff King .mailmap: normalize emails for Linus Torvalds contrib: update stats/mailmap script John Keeping (1): Documentation: don't link to example mail addresses Junio C Hamano (6): fetch --tags: clarify documentation README: it does not matter who the current maintainer is t7004: do not create unneeded gpghome/gpg.conf when GPG is not used Documentation: Describe "git diff <blob> <blob>" separately git(1): show link to contributor summary page Git 1.8.0.3 Krzysztof Mazur (1): doc: git-reset: make "<mode>" optional Manlio Perillo (1): git.txt: add missing info about --git-dir command-line option Matthew Daley (1): Fix sizeof usage in get_permutations Max Horn (1): git-remote-helpers.txt: document invocation before input format Nguyễn Thái Ngọc Duy (1): index-format.txt: clarify what is "invalid" Ramkumar Ramachandra (1): Documentation: move diff.wordRegex from config.txt to diff-config.txt Sebastian Leske (4): git-svn: Document branches with at-sign(@). git-svn: Recommend use of structure options. git-svn: Expand documentation for --follow-parent git-svn: Note about tags. Sitaram Chamarty (1): clarify -M without % symbol in diff-options Stefano Lattarini (1): README: Git is released under the GPLv2, not just "the GPL" Thomas Ackermann (8): Split over-long synopsis in git-fetch-pack.txt into several lines Shorten two over-long lines in git-bisect-lk2009.txt by abbreviating some sha1 Change headline of technical/send-pack-pipeline.txt to not confuse its content with content from git-send-pack.txt Documentation/technical: convert plain text files to asciidoc Documentation/howto: convert plain text files to asciidoc Documentation: build html for all files in technical and howto Remove misleading date from api-index-skel.txt Sort howto documents in howto-index.txt Tom Jones (1): Add -S, --gpg-sign option to manpage of "git commit" Version v1.8.0.2; changes since v1.8.0.1: ----------------------------------------- Antoine Pelisse (1): Fix typo in remote set-head usage Eric S. Raymond (1): doc/fast-import: clarify how content states are built Johan Herland (2): t1400-update-ref: Add test verifying bug with symrefs in delete_ref() Fix failure to delete a packed ref through a symref Junio C Hamano (13): reencode_string(): introduce and use same_encoding() test: add failing tests for "diff --stat" to t4049 diff --stat: status of unmodified pair in diff-q is not zero diff --stat: use "file" temporary variable to refer to data->files[i] diff --stat: move the "total count" logic to the last loop diff --stat: do not count "unmerged" entries diff --shortstat: do not count "unmerged" entries Documentation/git-push.txt: clarify the "push from satellite" workflow Start preparing for 1.8.0.2 t4049: refocus tests Update draft release notes to 1.8.0.2 git(1): remove a defunct link to "list of authors" Git 1.8.0.2 Linus Torvalds (1): Fix "git diff --stat" for interesting - but empty - file changes Mark Szepieniec (1): Documentation: improve phrasing in git-push.txt Matthieu Moy (2): git-remote-mediawiki: escape ", \, and LF in file names git-fast-import.txt: improve documentation for quoted paths Nguyễn Thái Ngọc Duy (1): compat/fnmatch: fix off-by-one character class's length check Paul Gortmaker (1): Makefile: hide stderr of curl-config test Pete Wyckoff (1): git p4: RCS expansion should not span newlines Ralf Thielow (1): completion: add options --single-branch and --branch to "git clone" Richard Hubbell (1): gitweb.perl: fix %highlight_ext mappings Sébastien Loriot (1): Documentation/git-stash.txt: add a missing verb W. Trevor King (1): git-submodule: wrap branch option with "<>" in usage strings. Version v1.8.0.1; changes since v1.8.0: --------------------------------------- Andreas Schwab (1): commit: fixup misplacement of --no-post-rewrite description Ben Walton (1): Remove the hard coded length limit on variable names in config files Carlos Martín Nieto (1): config: don't segfault when given --path with a missing value David Aguilar (1): mergetools/p4merge: Handle "/dev/null" Jan H. Schönherr (7): utf8: fix off-by-one wrapping of text format-patch: do not wrap non-rfc2047 headers too early format-patch: do not wrap rfc2047 encoded headers too late format-patch: introduce helper function last_line_length() format-patch: make rfc2047 encoding more strict format-patch: fix rfc2047 address encoding with respect to rfc822 specials format-patch tests: check quoting/encoding in To: and Cc: headers Jeff King (3): diff_grep: use textconv buffers for add/deleted files gitweb: escape html in rss title checkout: print a message when switching unborn branches Junio C Hamano (9): builtin/grep.c: make configuration callback more reusable grep: move the configuration parsing logic to grep.[ch] grep: move pattern-type bits support to top-level grep.[ch] revisions: initialize revs->grep_filter using grep_init() log --grep: use the same helper to set -E/-F options as "git grep" test-lib: Fix say_color () not to interpret \a\b\c in the message Start preparing for 1.8.0.1 Further preparation for 1.8.0.1 Git 1.8.0.1 Marc Khouzam (1): Completion must sort before using uniq Matthieu Moy (2): Documentation: remote tracking branch -> remote-tracking branch Document 'git commit --no-edit' explicitly Michael J Gruber (1): push/pull: adjust missing upstream help text to changed interface Nguyễn Thái Ngọc Duy (1): grep: stop looking at random places for .gitattributes Phil Hord (1): git-pull: Avoid merge-base on detached head Philip Oakley (1): Doc repository-layout: Show refs/replace René Scharfe (6): refs: lock symref that is to be deleted, not its target branch: factor out check_branch_commit() branch: factor out delete_branch_config() branch: delete symref branch, not its target branch: skip commit checks when deleting symref branches branch: show targets of deleted symrefs, not sha1s Romain Francoise (1): mailmap: avoid out-of-bounds memory access Stefan Zager (1): Fix potential hang in https handshake Version v1.8.0; changes since v1.8.0-rc3: ----------------------------------------- Andrew Wong (2): git-gui: Detect full path when parsing arguments git-gui: Don't prepend the prefix if value looks like a full path Beat Bolli (2): git-gui: Fix a loose/lose mistake git-gui: remove .git/CHERRY_PICK_HEAD after committing Benjamin Kerensa (1): git-gui: fix a typo in po/ files Clemens Buchacher (1): git-gui: fix git-gui crash due to uninitialized variable Heiko Voigt (1): git-gui: open console when using --trace on windows Junio C Hamano (1): Git 1.8.0 Marcus Karlsson (1): git-gui: Use PWD if it exists on Mac OS X Pat Thoyts (2): git-gui: preserve commit messages in utf-8 git-gui 0.17 Ralf Thielow (3): git-gui: de.po: consistently add untranslated hook names within braces git-gui: de.po: translate "bare" as "bloß" git-gui: de.po: translate "remote" as "extern" Vitaly "_Vi" Shukela (1): git-gui: Fix semi-working shortcuts for unstage and revert Version v1.8.0-rc3; changes since v1.8.0-rc2: --------------------------------------------- Dylan Alex Simon (1): gitweb.cgi: fix "comitter_tz" typo in feed Jeff King (1): http: fix segfault in handle_curl_result Jiang Xin (1): l10n: Update git.pot (3 new, 6 removed messages) Junio C Hamano (3): Update draft release notes to 1.8.0 Git 1.7.12.4 Git 1.8.0-rc3 Peter Krefting (1): l10n: Update Swedish translation (1964t0f0u) Richard Fearn (1): Fix spelling error in post-receive-email hook Thomas Ackermann (1): Documentation/RelNotes: remove "updated up to this revision" markers Trần Ngọc Quân (2): l10n: vi.po: update translation upto cc76011 l10n: vi.po: update from v1.8.0-rc2-4-g42e55 Version v1.8.0-rc2; changes since v1.8.0-rc1: --------------------------------------------- Ben Walton (1): tests: "cp -a" is a GNUism Jonathan Nieder (2): git svn: work around SVN 1.7 mishandling of svn:special changes svn test: escape peg revision separator using empty peg rev Junio C Hamano (2): gitcli: parse-options lets you omit tail of long options Git 1.8.0-rc2 Nguyễn Thái Ngọc Duy (2): gitignore.txt: suggestions how to get literal # or ! at the beginning attr: a note about the order of .gitattributes lookup Ramkumar Ramachandra (1): Git url doc: mark ftp/ftps as read-only and deprecate them Ramsay Jones (1): MALLOC_CHECK: Allow checking to be disabled from config.mak Simon Ruderich (1): l10n: de.po: fix a few minor typos Øyvind A. Holm (1): configure.ac: Add missing comma to CC_LD_DYNPATH Version v1.8.0-rc1; changes since v1.8.0-rc0: --------------------------------------------- Ammon Riley (1): Make git-svn branch patterns match complete URL Eric Wong (1): git-svn: use path accessor for Git::SVN objects Jonathan Nieder (2): Git::SVN: rename private path field git-svn: keep leading slash when canonicalizing paths (fallback case) Junio C Hamano (7): log --grep-reflog: reject the option without -g Start preparing for 1.7.12.3 t1450: the order the objects are checked is undefined Update draft release notes to 1.8.0 paint_down_to_common(): parse commit before relying on its timestamp Git 1.7.12.3 Git 1.8.0-rc1 Linus Torvalds (1): mailinfo: don't require "text" mime type for attachments Michael J Gruber (1): RelNotes/1.8.0: various typo and style fixes Nguyễn Thái Ngọc Duy (3): grep: prepare for new header field filter revision: add --grep-reflog to filter commits by reflog messages revision: make --grep search in notes too if shown Peter Krefting (1): l10n: Fix to Swedish translation Ramkumar Ramachandra (1): Documentation: mention `push.default` in git-push.txt Robert Luberda (1): t9164: Add missing quotes in test Steven Walter (2): git-svn.perl: consider all ranges for a given merge, instead of only tip-by-tip git-svn.perl: keep processing all commits in parents_exclude Tobias Ulmer (1): silence git gc --auto --quiet output Version v1.8.0-rc0; changes since v1.7.12.4: -------------------------------------------- Adrian Johnson (1): Add userdiff patterns for Ada Andrew Wong (3): rebase -i: Refactor help messages for todo file rebase -i: Teach "--edit-todo" action rebase -i: Add tests for "--edit-todo" Aske Olsson (1): gitk: Fix GIT_TRACE issues Carlos Martín Nieto (4): branch: introduce --set-upstream-to branch: add --unset-upstream option branch: deprecate --set-upstream and show help if we detect possible mistaken use completion: add --set-upstream-to and --unset-upstream Chris Webb (1): cherry-pick: add --allow-empty-message option David Aguilar (12): difftool: Simplify print_tool_help() difftool: Eliminate global variables difftool: Move option values into a hash difftool: Call the temp directory "git-difftool" difftool: Use symlinks when diffing against the worktree difftool: Handle finding mergetools/ in a path with spaces difftool: Check all return codes from compare() difftool: Wrap long lines for readability difftool: Handle compare() returning -1 difftool: Disable --symlinks on cygwin mergetool,difftool: Document --tool-help consistently mergetool--lib: Allow custom commands to override built-ins Elia Pinto (1): Add MALLOC_CHECK_ and MALLOC_PERTURB_ libc env to the test suite for detecting heap corruption Erik Faye-Lund (1): contrib: add win32 credential-helper J Smith (1): grep: add a grep.patternType configuration setting Jeff King (4): remote-curl: rename is_http variable remote-curl: let users turn off smart http t9902: add a few basic completion tests t9902: add completion tests for "odd" filenames Jiang Xin (11): Fix tests under GETTEXT_POISON on relative dates Fix tests under GETTEXT_POISON on git-stash Fix tests under GETTEXT_POISON on diffstat Fix tests under GETTEXT_POISON on git-apply Fix tests under GETTEXT_POISON on pack-object Fix tests under GETTEXT_POISON on git-remote Fix tests under GETTEXT_POISON on parseopt l10n: Update git.pot (2 new, 4 removed messages) l10n: zh_CN.po: translate 2 new messages l10n: Update git.pot (825 new, 24 removed messages) l10n: zh.CN.po: msgmerge git.pot (1142t195f630u) Joachim Schmitz (8): compat: some mkdir() do not like a slash at the end Add a no-op setitimer() wrapper Document MKDIR_WO_TRAILING_SLASH in Makefile make poll available for other platforms lacking it fix some win32 specific dependencies in poll.c poll() exits too early with EFAULT if 1st arg is NULL make poll() work on platforms that can't recv() on a non-socket Port to HP NonStop Johannes Sixt (3): t0060: split absolute path test in two to exercise some of it on Windows rebase -i: fix misleading error message after 'exec no-such' instruction rebase -i: suggest using --edit-todo to fix an unknown instruction Junio C Hamano (42): daemon: --access-hook option Kick off cycle towards 1.8.0 First half of the second batch for 1.8.0 in_merge_bases(): support only one "other" commit receive-pack: use in_merge_bases() for fast-forward check http-push: use in_merge_bases() for fast-forward check Latter half of the second batch for 1.8.0 merge_bases_many(): split out the logic to paint history in_merge_bases(): use paint_down_to_common() get_merge_bases_many(): walk from many tips in parallel merge-base: "--is-ancestor A B" reduce_heads(): reimplement on top of remove_redundant() The third batch for 1.8.0 Update mailmap for a handful of folks The fourth batch for 1.8.0 Cull items fixed in maintenance branches First half of the fifth batch for 1.8.0 Second half of the fifth batch for 1.8.0 Start merging the sixth batch for 1.8.0 The sixth batch for 1.8.0 Draft release notes to 1.8.0 builtin/notes.c: mark file-scope private symbols as static commit.c: mark a file-scope private symbol as static diff.c: mark a private file-scope symbol as static graph.c: mark private file-scope symbols as static rerere.c: mark private file-scope symbols as static notes.c: mark a private file-scope symbol as static symlinks.c: mark private file-scope symbols as static sha1-array.c: mark a private file-scope symbol as static strbuf.c: mark a private file-scope symbol as static read-cache.c: mark a private file-scope symbol as static wt-status.c: mark a private file-scope symbol as static trace.c: mark a private file-scope symbol as static ident.c: mark private file-scope symbols as static sequencer.c: mark a private file-scope symbol as static The seventh batch for 1.8.0 MALLOC_CHECK: various clean-ups Revert "archive-zip: support UTF-8 paths" Update draft release notes to 1.8.0 Update draft release notes to 1.8.0 Update draft release notes to 1.8.0 Git 1.8.0-rc0 Ken Dreyer (1): cvsimport: strip all inappropriate tag strings Linus Torvalds (1): commit/commit-tree: correct latin1 to utf-8 Martin von Zweigbergk (4): remove unnecessary parameter from get_patch_ids() cherry: don't set ignored rev_info options cherry: remove redundant check for merge commit rebase usage: subcommands can not be combined with -i Matthieu Moy (1): push: start warning upcoming default change for push.default Michael G. Schwern (20): Git::SVN: use accessors internally for path Git::SVN: use accessor for URLs internally Git::SVN::Ra: use accessor for URLs use Git::SVN->path accessor globally use Git::SVN{,::RA}->url accessor globally git-svn: move canonicalization to Git::SVN::Utils git-svn: use SVN 1.7 to canonicalize when possible git-svn: factor out _collapse_dotdot function git-svn: add join_paths() to safely concatenate paths Git::SVN::Utils: remove irrelevant comment git-svn: path canonicalization uses SVN API Git::SVN{,::Ra}: canonicalize earlier t9118: workaround inconsistency between SVN versions t9107: fix typo git-svn: attempt to mimic SVN 1.7 URL canonicalization git-svn: replace URL escapes with canonicalization git-svn: canonicalize earlier git-svn: introduce add_path_to_url function git-svn: canonicalize newly-minted URLs git-svn: remove ad-hoc canonicalizations Michael Haggerty (29): t0060: move tests of real_path() from t0000 to here t0060: verify that absolute_path() fails if passed the empty string absolute_path(): reject the empty string t0060: verify that real_path() fails if passed the empty string real_path(): reject the empty string t0060: verify that real_path() works correctly with absolute paths real_path(): properly handle nonexistent top-level paths t0060: verify that real_path() removes extra slashes string_list: add function string_list_append_nodup() string_list: add two new functions for splitting strings string_list: add a new function, filter_string_list() string_list: add a new function, string_list_remove_duplicates() string_list: add a function string_list_longest_prefix() api-string-list.txt: initialize the string_list the easy way t5500: add tests of error output for missing refs t5500: add tests of fetch-pack --all --depth=N $URL $REF Rename static function fetch_pack() to http_fetch_pack() fetch_pack(): reindent function decl and defn Change fetch_pack() and friends to take string_list arguments filter_refs(): do not check the same sought_pos twice fetch_pack(): update sought->nr to reflect number of unique entries filter_refs(): delete matched refs from sought list filter_refs(): build refs list as we go filter_refs(): simplify logic cmd_fetch_pack(): return early if finish_connect() fails fetch-pack: report missing refs even if no existing refs were received cmd_fetch_pack(): simplify computation of return value fetch-pack: eliminate spurious error messages string_list API: document what "sorted" means Michael J Gruber (1): completion: complete branch name for "branch --set-upstream-to=" Miklos Vajna (1): cherry-pick: don't forget -s on failure Nguyễn Thái Ngọc Duy (74): i18n: mark "style" in OPT_COLUMN() for translation i18n: archive: mark parseopt strings for translation i18n: bisect--helper: mark parseopt strings for translation i18n: add: mark parseopt strings for translation i18n: blame: mark parseopt strings for translation i18n: branch: mark parseopt strings for translation i18n: cat-file: mark parseopt strings for translation i18n: check-attr: mark parseopt strings for translation i18n: checkout-index: mark parseopt strings for translation i18n: checkout: mark parseopt strings for translation i18n: cherry: mark parseopt strings for translation i18n: clean: mark parseopt strings for translation i18n: clone: mark parseopt strings for translation i18n: column: mark parseopt strings for translation i18n: commit: mark parseopt strings for translation i18n: count-objects: mark parseopt strings for translation i18n: config: mark parseopt strings for translation i18n: describe: mark parseopt strings for translation i18n: fast-export: mark parseopt strings for translation i18n: fetch: mark parseopt strings for translation i18n: fmt-merge-msg: mark parseopt strings for translation i18n: for-each-ref: mark parseopt strings for translation i18n: format-patch: mark parseopt strings for translation i18n: fsck: mark parseopt strings for translation i18n: gc: mark parseopt strings for translation i18n: grep: mark parseopt strings for translation i18n: hash-object: mark parseopt strings for translation i18n: help: mark parseopt strings for translation i18n: init-db: mark parseopt strings for translation i18n: log: mark parseopt strings for translation i18n: ls-files: mark parseopt strings for translation i18n: ls-tree: mark parseopt strings for translation i18n: merge-base: mark parseopt strings for translation i18n: merge-file: mark parseopt strings for translation i18n: merge: mark parseopt strings for translation i18n: mktree: mark parseopt strings for translation i18n: mv: mark parseopt strings for translation i18n: name-rev: mark parseopt strings for translation i18n: notes: mark parseopt strings for translation i18n: pack-objects: mark parseopt strings for translation i18n: pack-refs: mark parseopt strings for translation i18n: prune-packed: mark parseopt strings for translation i18n: prune: mark parseopt strings for translation i18n: push: mark parseopt strings for translation i18n: read-tree: mark parseopt strings for translation i18n: remote: mark parseopt strings for translation i18n: replace: mark parseopt strings for translation i18n: status: mark parseopt strings for translation i18n: rerere: mark parseopt strings for translation i18n: reset: mark parseopt strings for translation i18n: rev-parse: mark parseopt strings for translation i18n: revert, cherry-pick: mark parseopt strings for translation i18n: rm: mark parseopt strings for translation i18n: shortlog: mark parseopt strings for translation am: quote string for translation before passing to eval_gettextln i18n: show-branch: mark parseopt strings for translation i18n: show-ref: mark parseopt strings for translation i18n: symbolic-ref: mark parseopt strings for translation i18n: tag: mark parseopt strings for translation i18n: update-index: mark parseopt strings for translation i18n: update-ref: mark parseopt strings for translation i18n: update-server-info: mark parseopt strings for translation i18n: verify-pack: mark parseopt strings for translation i18n: verify-tag: mark parseopt strings for translation i18n: write-tree: mark parseopt strings for translation Reduce translations by using same terminologies Use imperative form in help usage to describe an action branch -v: align even when branch names are in UTF-8 checkout: pass "struct checkout_opts *" as const pointer checkout: move more parameters to struct checkout_opts i18n: mark more index-pack strings for translation status: remove i18n legos checkout: reorder option handling fetch: align per-ref summary report in UTF-8 locales Pete Wyckoff (17): git p4 test: move client_view() function to library git p4 test: add broken --use-client-spec --detect-branches tests git p4: set self.branchPrefixes in initialization git p4: do wildcard decoding in stripRepoPath git p4: make branch detection work with --use-client-spec git p4 test: remove bash-ism of combined export/assignment git p4: gracefully fail if some commits could not be applied git p4: remove submit failure options [a]pply and [w]rite git p4: move conflict prompt into run, add [q]uit input git p4: standardize submit cancel due to unchanged template git p4: test clean-up after failed submit, fix added files git p4: rearrange submit template construction git p4: revert deleted files after submit cancel git p4: accept -v for --verbose git p4: add submit --dry-run option git p4: add submit --prepare-p4-only option git-p4: add submit --conflict option and config varaiable Peter Krefting (3): l10n: Update Swedish translation (1166t0f0u) Update Swedish translation (1967t0f0u) l10n: Fixes to Swedish translation Philipp A. Hartmann (1): contrib: add credential helper for GnomeKeyring Ralf Thielow (1): l10n: de.po: translate 2 new messages Ramsay Jones (12): t3300-*.sh: Fix a TAP parse error t3902-*.sh: Skip all tests rather than each test t4016-*.sh: Skip all tests rather than each test test-lib.sh: Fix some shell coding style violations test-lib.sh: Add check for invalid use of 'skip_all' facility test-lib.sh: Suppress the "passed all ..." message if no tests run path.c: Remove the 'git_' prefix from a file scope function path.c: Don't discard the return value of vsnpath() path.c: Use vsnpath() in the implementation of git_path() Call git_pathdup() rather than xstrdup(git_path("...")) Call mkpathdup() rather than xstrdup(mkpath(...)) test-string-list.c: Fix some sparse warnings René Scharfe (4): archive-zip: support UTF-8 paths archive-zip: support UTF-8 paths archive-zip: write extended timestamp MALLOC_CHECK: enable it, unless disabled explicitly Ross Lagerwall (1): difftool: silence warning Sebastian Schuberth (1): Add Code Compare v2.80.4 as a merge / diff tool for Windows Stefano Lattarini (2): build: improve GIT_CONF_SUBST signature build: don't duplicate substitution of make variables Thomas Rast (2): gettext: do not translate empty string in_merge_bases(): omit unnecessary redundant common ancestor reduction Trần Ngọc Quân (2): l10n: vi.po & TEAMS: review Vietnamese translation l10n: vi.po: update to v1.7.12-146-g16d26 Version v1.7.12.4; changes since v1.7.12.3: ------------------------------------------- Ben Walton (1): tests: "cp -a" is a GNUism Dave Borowitz (1): Documentation/Makefile: Allow custom XMLTO binary Dylan Alex Simon (1): gitweb.cgi: fix "comitter_tz" typo in feed Jeff King (1): http: fix segfault in handle_curl_result Junio C Hamano (6): merge: teach -Xours/-Xtheirs to binary ll-merge driver attr: "binary" attribute should choose built-in "binary" merge driver ll-merge: warn about inability to merge binary files only when we can't t1450: the order the objects are checked is undefined gitcli: parse-options lets you omit tail of long options Git 1.7.12.4 Nguyễn Thái Ngọc Duy (2): gitignore.txt: suggestions how to get literal # or ! at the beginning attr: a note about the order of .gitattributes lookup Philip Oakley (5): Doc: shallow clone deepens _to_ new depth Doc: separate gitignore pattern sources Doc add: link gitignore Doc clean: add See Also link Doc branch: show -vv option and alternative Ramkumar Ramachandra (3): t/test-lib: make sure Git has already been built test-lib: use $SHELL_PATH, not $SHELL Git url doc: mark ftp/ftps as read-only and deprecate them Richard Fearn (1): Fix spelling error in post-receive-email hook Simon Ruderich (1): l10n: de.po: fix a few minor typos Version v1.7.12.3; changes since v1.7.12.2: ------------------------------------------- Jeff King (3): receive-pack: redirect unpack-objects stdout to /dev/null receive-pack: send pack-processing stderr over sideband receive-pack: drop "n/a" on unpacker errors Junio C Hamano (3): git blame: document that it always follows origin across whole-file renames Start preparing for 1.7.12.3 Git 1.7.12.3 Linus Torvalds (1): mailinfo: don't require "text" mime type for attachments Orgad Shaneh (1): commit: pay attention to submodule.$name.ignore in .gitmodules Peter Krefting (1): l10n: Fix to Swedish translation Ralf Thielow (1): clone --single: limit the fetch refspec to fetched branch Ramkumar Ramachandra (1): submodule: if $command was not matched, don't parse other args Shawn O. Pearce (2): Revert "retry request without query when info/refs?query fails" Enable info/refs gzip decompression in HTTP client Version v1.7.12.2; changes since v1.7.12.1: ------------------------------------------- Dan Johnson (1): fetch --all: pass --tags/--no-tags through to each remote David Gould (1): run-command.c: fix broken list iteration in clear_child_for_cleanup Felipe Contreras (1): completion: fix shell expansion of items Jeff King (4): argv-array: add pop function argv-array: fix bogus cast when freeing array fetch: use argv_array instead of hand-building arrays Revert "completion: fix shell expansion of items" Jens Lehmann (1): submodule: use argv_array instead of hand-building arrays Jeremy White (1): Documentation: describe subject more precisely Jonathan "Duke" Leto (1): Improve the description of GIT_PS1_SHOWUPSTREAM Junio C Hamano (11): mailinfo: strip "RE: " prefix blame $path: avoid getting fooled by case insensitive filesystems blame: allow "blame file" in the middle of a conflicted merge grep: teach --debug option to dump the parse tree log --grep/--author: honor --all-match honored for multiple --grep patterns log: document use of multiple commit limiting options grep.c: mark private file-scope symbols as static mailinfo: do not concatenate charset= attribute values from mime headers grep.c: make two symbols really file-scope static this time Start preparation for 1.7.12.2 Git 1.7.12.2 Michael J Gruber (6): grep: show --debug output only once t7810-grep: bring log --grep tests in common form t7810-grep: test multiple --grep with and without --all-match t7810-grep: test multiple --author with --all-match t7810-grep: test interaction of multiple --grep and --author options t7810-grep: test --all-match with multiple --grep and --author options Nguyễn Thái Ngọc Duy (3): remote: prefer subcommand name 'remove' to 'rm' doc: move rev-list option -<n> from git-log.txt to rev-list-options.txt Revert diffstat back to English Ralf Thielow (1): l10n: de.po: correct translation of a 'rebase' message Stefan Naewe (1): ls-remote: document the '--get-url' option Stephen Boyd (1): Documentation: Document signature showing options Thynson (2): l10n: Unify the translation for '(un)expected' l10n: Improve many translation for zh_CN Version v1.7.12.1; changes since v1.7.12: ----------------------------------------- Adam Butcher (1): Fix '\ No newline...' annotation in rewrite diffs Adam Spiers (1): Add missing -z to git check-attr usage text for consistency with man page Andreas Schwab (1): Documentation/git-filter-branch: Move note about effect of removing commits Brandon Casey (2): t/t5400: demonstrate breakage caused by informational message from prune prune.c: only print informational message in show_only or verbose mode David Aguilar (2): gitk: Teach "Reread references" to reload tags gitk: Rename 'tagcontents' to 'cached_tagcontent' Eric S. Raymond (4): fast-import: document the --done option contrib/ciabot: Get ciabot configuration from git variables Improved documentation for the ciabot scripts. Make the ciabot scripts completely self-configuring in the normal case. Felipe Contreras (1): gitk: Avoid Meta1-F5 Heiko Voigt (2): Let submodule command exit with error status if path does not exist Documentation/CodingGuidelines: spell out more shell guidelines Jay Soffian (1): gitweb: URL-decode $my_url/$my_uri when stripping PATH_INFO Jeff King (29): diff: do not use null sha1 as a sentinel value do not write null sha1s to on-disk index fsck: detect null sha1 in tree entries include agent identifier in capability string docs: monospace listings in docbook output check-docs: mention gitweb specially check-docs: update non-command documentation list command-list: add git-sh-i18n command-list: mention git-credential-* helpers check-docs: factor out command-list check-docs: list git-gui as a command check-docs: drop git-help special-case check-docs: get documented command list from Makefile send-pack: fix capability-sending logic do not send client agent unless server does first parse_feature_request: make it easier to see feature values fetch-pack: mention server version with verbose output config: warn on inaccessible files gitignore: report access errors of exclude files attr: warn on inaccessible attribute files t5550: put auth-required repo in auth/dumb t5550: factor out http auth setup t/lib-httpd: only route auth/dumb to dumb repos t/lib-httpd: recognize */smart/* repos as smart-http t: test basic smart-http authentication t: test http access to "half-auth" repositories http: factor out http error code handling http: prompt for credentials on failed POST log: fix --quiet synonym for -s Joachim Schmitz (2): http.c: don't use curl_easy_strerror prior to curl-7.12.0 sha1_file.c: introduce get_max_fd_limit() helper Junio C Hamano (34): test: rename $satisfied to $satisfied_prereq test: allow prerequisite to be evaluated lazily config: "git config baa" should exit with status 1 t7406: fix misleading "rev-parse --max-count=1 HEAD" sane_execvp(): ignore non-directory on $PATH Documentation: do not mention .git/refs/* directories receive-pack: do not leak output from auto-gc to standard output sh-setup: protect from exported IFS fetch-pack: do not ask for unadvertised capabilities send-email: validate & reconfirm interactive responses rev-list docs: clarify --topo-order description gitcli: describe abbreviation of long options Documentation: update the introductory section git-config doc: unconfuse an example precompose-utf8: do not call checks for non-ascii "utf8" warn_on_inaccessible(): a helper to warn on inaccessible paths specifying ranges: we did not mean to make ".." an empty set mergetool: style fixes Prepare for 1.7.11.6 apply: compute patch->def_name correctly under -p0 doc: "git checkout -b/-B/--orphan" always takes a branch name split_ident_line(): make best effort when parsing author/committer line Document file-glob for "git checkout -- '*.c'" gitcli: formatting fix gitcli: contrast wildcard given to shell and to git Almost 1.7.11.6 Start preparing for 1.7.12.1 Git 1.7.11.6 Further merging down for 1.7.12.1 Further merging in preparation for 1.7.12.1 attr: failure to open a .gitattributes file is OK with ENOTDIR Git 1.7.11.7 Draft release notes to 1.7.12.1 Git 1.7.12.1 Kacper Kornet (2): t6300: test sort with multiple keys for-each-ref: Fix sort with multiple keys Martin von Zweigbergk (4): add tests for 'git rebase --keep-empty' teach log --no-walk=unsorted, which avoids sorting demonstrate broken 'git cherry-pick three one two' cherry-pick/revert: respect order of revisions to pick Matthieu Moy (1): setup: clarify error messages for file/revisions ambiguity Michael Haggerty (1): git-config.txt: fix example Michael J Gruber (6): test-lib: provide case insensitivity as a prerequisite t0050: use the CASE_INSENSITIVE_FS test prereq t0050: use the SYMLINKS test prereq test-lib: provide UTF8 behaviour as a prerequisite rebase -i: use full onto sha1 in reflog t3910: use the UTF8_NFD_TO_NFC test prereq Michał Kiedrowicz (1): tests: Introduce test_seq Miklos Vajna (1): man: git pull -r is a short for --rebase Mischa POSLAWSKY (1): git-jump: ignore (custom) prefix in diff mode Nguyễn Thái Ngọc Duy (1): read_index_from: remove bogus errno assignments Paul Gortmaker (1): apply: delete unused deflate_origlen from patch struct Phil Hord (2): test: git-stash conflict sets up rerere stash: invoke rerere in case of conflict Philip Oakley (1): Doc: Improve shallow depth wording Ramkumar Ramachandra (1): t/perf: add "trash directory" to .gitignore Ramsay Jones (1): test-regex: Add a test to check for a bug in the regex routines Robin Rosenberg (1): cleanup precompose_utf8 Stefan Zager (1): Make 'git submodule update --force' always check out submodules. Stephen Boyd (1): send-email: initial_to and initial_reply_to are both optional Thomas Rast (3): send-email: improve RFC2047 quote parsing diff_setup_done(): return void merge-recursive: eliminate flush_buffer() in favor of write_in_full() Wesley J. Landaker (1): Documentation: indent-with-non-tab uses "equivalent tabs" not 8 Yacine Belkadi (1): completion: add --no-edit to git-commit Version v1.7.12; changes since v1.7.12-rc3: ------------------------------------------- Junio C Hamano (2): Documentation: update URL for formatted pages Git 1.7.12 Peter Krefting (1): l10n: Fixes to Swedish translation Version v1.7.12-rc3; changes since v1.7.12-rc2: ----------------------------------------------- Ben Walton (1): Enable HAVE_DEV_TTY for Solaris Jeff King (1): terminal: seek when switching between reading and writing Jiang Xin (2): l10n: Update one message in git.pot l10n: zh_CN.po: update one translation Junio C Hamano (2): Git 1.7.11.5 Git 1.7.12-rc3 Matthieu Moy (1): Documentation: list git-credential in plumbing commands Peter Baumann (1): git svn: reset invalidates the memoized mergeinfo caches Peter Krefting (1): l10n: Update Swedish translation (1168t0f0u) Ralf Thielow (1): l10n: de.po: translate 77 new messages Robert Luberda (1): git svn: handle errors and concurrent commits in dcommit Trần Ngọc Quân (1): l10n: vi.po: update one message Version v1.7.12-rc2; changes since v1.7.12-rc1: ----------------------------------------------- Jiang Xin (11): i18n: New keywords for xgettext extraction from sh i18n: rebase: mark messages for translation i18n: Rewrite gettext messages start with dash rebase: remove obsolete and unused LONG_USAGE which breaks xgettext i18n: am: mark more strings for translation Remove dead code which contains bad gettext block i18n: merge-recursive: mark strings for translation l10n: Update git.pot (4 new, 3 removed messages) l10n: zh_CN.po: translate 4 new messages l10n: Update git.pot (76 new, 4 removed messages) l10n: zh_CN.po: translate 76 new messages Johannes Sixt (1): Makefile: use overridable $(FIND) instead of hard-coded 'find' Junio C Hamano (3): Prepare for 1.7.11.5 Drop 1.7.11.x items from 1.7.12 release notes Git 1.7.12-rc2 Matthieu Moy (1): git-remote-mediawiki: replace TODO-list in comment by appropriate link Nguyễn Thái Ngọc Duy (1): i18n: leave \n out of translated diffstat Ralf Thielow (3): l10n: de.po: translate 4 new messages git-rebase.sh: fix typo in an error message merge-recursive: separate message for common ancestors Trần Ngọc Quân (2): l10n: vi.po: translate 4 new messages l10n: vi.po update to follow POT in 3b613 Štěpán Němec (1): doc: A few minor copy edits. Version v1.7.12-rc1; changes since v1.7.12-rc0: ----------------------------------------------- Chris Webb (1): rebase -i: handle fixup of root commit correctly Daniel Graña (2): git-submodule: work with GIT_DIR/GIT_WORK_TREE t7409: make sure submodule is initialized and updated in more detail Florian Achleitner (1): Add explanatory comment for transport-helpers refs mapping. Heiko Voigt (1): link_alt_odb_entry: fix read over array bounds reported by valgrind Jeff King (16): advice: pass varargs to strbuf_vaddf, not strbuf_addf commit: check committer identity more strictly commit: document the temporary commit message file test-lib.sh: unset XDG_CONFIG_HOME attr: make sure we have an xdg path before using it t1306: check that XDG_CONFIG_HOME works t/lib-httpd: handle running under --valgrind help.c::uniq: plug a leak checkout: don't confuse ref and object flags t7502: clean up fake_editor tests t7502: properly quote GIT_EDITOR t7502: narrow checks for author/committer name in template t7502: drop confusing test_might_fail call t7502: handle systems where auto-identity is broken t7502: test early quit from commit with bad ident t: add missing executable bit to t7409 Junio C Hamano (9): test-lib: reorder and include GIT-BUILD-OPTIONS a lot earlier mergetool: support --tool-help option like difftool does Update draft release notes to 1.7.12 Enumerate revision range specifiers in the documentation help.c::exclude_cmds(): plug a leak perl: detect new files in MakeMaker builds Update draft release notes to 1.7.12 Git 1.7.11.4 Git 1.7.12-rc1 Matthieu Moy (1): ignore: make sure we have an xdg path before using it Max Horn (1): Make <refname> documentation more consistent. Michael G. Schwern (14): Quiet warning if Makefile.PL is run with -w and no --localedir Don't lose Error.pm if $@ gets clobbered. The Makefile.PL will now find .pm files itself. Extract some utilities from git-svn to allow extracting Git::SVN. Prepare Git::SVN for extraction into its own file. Extract Git::SVN from git-svn into its own .pm file. Move initialization of Git::SVN variables into Git::SVN. Prepare Git::SVN::Log for extraction from git-svn. Extract Git::SVN::Log from git-svn. Prepare Git::SVN::Migration for extraction from git-svn. Extract Git::SVN::Migration from git-svn. Load all the modules in one place and before running code. Move Git::IndexInfo into its own file. Extract Git::SVN::GlobSpec from git-svn. Ramsay Jones (2): t1100-*.sh: Fix an intermittent test failure t7810-*.sh: Remove redundant test Version v1.7.12-rc0; changes since v1.7.11.7: --------------------------------------------- Alexander Strasser (7): t4012: modernize style for quoting t4012: Unquote git command fragment in test title t4012: Actually quote the sed script t4012: Break up pipe into serial redirections t4012: Make --shortstat test more robust t4012: Re-indent test snippets t4012: Use test_must_fail instead of if-else Andreas Schwab (1): Fix formatting in git-config(1) Chris Webb (4): rebase -i: support --root without --onto Add tests for rebase -i --root without --onto Add config variable to set HTML path for git-help --web Allow help.htmlpath to be a URL prefix David Barr (7): vcs-svn: drop no-op reset methods vcs-svn: avoid self-assignment in dummy initialization of pre_off vcs-svn: simplify cleanup in apply_one_window vcs-svn: use constcmp instead of prefixcmp vcs-svn: use strstr instead of memmem vcs-svn: suppress signed/unsigned comparison warnings vcs-svn: suppress a signed/unsigned comparison warning Felipe Contreras (2): completion: remove executable mode completion: split __git_ps1 into a separate script Gary Gibbons (2): git p4: refactor diffOpts calculation git p4: add support for 'p4 move' in P4Submit Guillaume Sasdy (4): git-remote-mediawiki: scripts to install, delete and clear a MediaWiki git-remote-mediawiki: test environment of git-remote-mediawiki git-remote-mediawiki (t9360): test git-remote-mediawiki clone git-remote-mediawiki (t9361): test git-remote-mediawiki pull and push Heiko Voigt (1): remove the impression of unexpectedness when access is denied Huynh Khoi Nguyen Nguyen (4): config: read (but not write) from $XDG_CONFIG_HOME/git/config file Let core.excludesfile default to $XDG_CONFIG_HOME/git/ignore Let core.attributesfile default to $XDG_CONFIG_HOME/git/attributes config: write to $XDG_CONFIG_HOME/git/config file when appropriate Javier Roucher Iglesias (1): add 'git credential' plumbing command Jeff King (26): docs: drop asciidoc7compatible flag docs: drop antique comment from Makefile docs/clone: mention that --local may be ignored clone: allow --no-local to turn off local optimizations move git_version_string into version.c version: add git_user_agent function http: get default user-agent from git_user_agent t1304: improve setfacl prerequisite setup Makefile: sort LIB_H list Makefile: fold MISC_H into LIB_H Makefile: do not have git.o depend on common-cmds.h Makefile: apply dependencies consistently to sparse/asm targets Makefile: do not replace @@GIT_USER_AGENT@@ in scripts Makefile: split GIT_USER_AGENT from GIT-CFLAGS Makefile: split prefix flags from GIT-CFLAGS Makefile: do not replace @@GIT_VERSION@@ in shell scripts Makefile: update scripts when build-time parameters change Makefile: build instaweb similar to other scripts Makefile: move GIT-VERSION-FILE dependencies closer to use index-pack: loop while inflating objects in unpack_data revision: avoid work after --max-count is reached status: color in-progress message like other header messages docs/credential: minor clarity fixups mw-to-git: check blank credential attributes via length credential: convert "url" attribute into its parsed subparts mw-to-git: use git-credential's URL parser Jiang Xin (2): l10n: Update git.pot (29 new messages) l10n: zh_CN.po: translate 29 new messages Johannes Sixt (3): t7400: avoid path mangling issues perl/Makefile: Fix a missing double-quote t4012: use 'printf' instead of 'dd' to generate a binary file Jon Seymour (4): submodule: additional regression tests for relative URLs submodule: document failure to handle relative superproject origin URLs submodule: fix sync handling of some relative superproject origin URLs submodule: fix handling of superproject origin URLs like foo, ./foo and ./foo/bar Jonathan Nieder (8): vcs-svn: allow import of > 4GiB files vcs-svn: suppress -Wtype-limits warning perl/Makefile: move "mkdir -p" to module installation loop for maintainability vcs-svn: suppress a signed/unsigned comparison warning vcs-svn: allow 64-bit Prop-Content-Length Makefile: fold XDIFF_H and VCSSVN_H into LIB_H Makefile: be silent when only GIT_USER_AGENT changes Makefile: document ground rules for target-specific dependencies Junio C Hamano (58): completion: warn people about duplicated function sha1_name.c: indentation fix Kick off post 1.7.11 cycle The first batch for 1.7.12 Second batch for 1.7.12 Third batch for 1.7.12 sha1_name.c: hide get_sha1_with_context_1() ugliness sha1_name.c: get rid of get_sha1_with_mode_1() sha1_name.c: get rid of get_sha1_with_mode() sha1_name.c: clarify what "fake" is for in find_short_object_filename() sha1_name.c: rename "now" to "current" sha1_name.c: refactor find_short_packed_object() sha1_name.c: correct misnamed "canonical" and "res" sha1_name.c: restructure disambiguation of short names get_sha1(): fix error status regression sha1_name.c: allow get_short_sha1() to take other flags sha1_name.c: teach get_short_sha1() a commit-only option Fourth batch for 1.7.12 Fifth batch for 1.7.12 apply: fix an incomplete comment in check_patch() apply: a bit more comments on PATH_TO_BE_DELETED apply: clear_image() clears things a bit more apply: refactor read_file_or_gitlink() apply: factor out checkout_target() helper function apply: split load_preimage() helper function out apply: refactor "previous patch" logic apply: further split load_preimage() apply: move check_to_create_blob() closer to its sole caller apply: move "already exists" logic to check_to_create() apply: accept -3/--3way command line option apply: fall back on three-way merge apply: plug the three-way merge logic in apply: move verify_index_match() higher apply: --3way with add/add conflict apply: register conflicted stages to the index apply: allow rerere() to work on --3way results apply: document --3way option sha1_name.c: get_describe_name() by definition groks only commits sha1_name.c: get_sha1_1() takes lookup flags sha1_name.c: many short names can only be committish sha1_name.c: teach lookup context to get_sha1_with_context() sha1_name.c: introduce get_sha1_committish() revision.c: allow handle_revision_arg() to take other flags revision.c: the "log" family, except for "show", takes committish sha1_name.c: add support for disambiguating other types apply: --build-fake-ancestor expects blobs commit-tree: the command wants a tree and commits reset: the command takes committish rev-parse: A and B in "rev-parse A..B" refer to committish rev-parse --disambiguate=<prefix> apply: tests for the --3way option Reduce draft release notes to 1.7.12 t1512: ignore whitespaces in wc -l output t1512: match the "other" object names Sixth batch for 1.7.12 Update draft release notes for 7th batch Update draft release notes to 1.7.12 Git 1.7.12-rc0 Lucien Kong (5): rebase -i: teach "--exec <cmd>" wt-status.*: better advices for git status added t7512-status-help.sh: better advices for git status status: don't suggest "git rm" or "git add" if not appropriate status: better advices when splitting a commit (during rebase -i) Marcin Owsiany (1): git-svn: don't create master if another head exists Martin von Zweigbergk (4): rebase: don't source git-sh-setup twice rebase --root: print usage on too many args am --rebasing: get patch body from commit, not from mailbox am: don't call mailinfo if $rebasing Matthieu Moy (24): git credential fill: output the whole 'struct credential' git-remote-mediawiki: add credential support git-remote-mediawiki: don't compute the diff when getting commit message git-remote-mediawiki: don't "use encoding 'utf8';" git-remote-mediawiki: split get_mw_pages into smaller functions git-remote-mediawiki: improve support for non-English Wikis git-remote-mediawiki: support for uploading file in test environment git-remote-mediawiki: change return type of get_mw_pages git-remote-mediawiki: refactor loop over revision ids git-remote-mediawiki: extract revision-importing loop to a function git-remote-mediawiki: more efficient 'pull' in the best case git-remote-mediawiki: be more defensive when requests fail git-remote-mediawiki: update comments to reflect credential support config: fix several access(NULL) calls git-remote-mediawiki: don't split namespaces with spaces git-remote-mediawiki: actually send empty comment when they're empty git-remote-mediawiki: make mediafiles export optional git-remote-mediawiki: get rid of O(N^2) loop git-remote-mediawiki: use --force when adding notes git-remote-mediawiki: show progress information when listing pages git-remote-mediawiki: show progress information when getting last remote revision git-remote-mediawiki: properly deal with invalid remote revisions git-remote-mediawiki: fix incorrect test usage in test git-remote-mediawiki: allow page names with a ':' Michael J Gruber (1): t3404: make test 57 work with dash and others NGUYEN Kim Thuat (2): git-remote-mediawiki: send "File:" attachments to a remote wiki git-remote-mediawiki (t9363): test 'File:' import and export Namhyung Kim (3): gitweb: Cleanup git_print_log() gitweb: Handle other types of tag in git_print_log gitweb: Add support to Link: tag Nguyễn Thái Ngọc Duy (12): index-pack: hash non-delta objects while reading from stream index-pack: use streaming interface on large blobs (most of the time) index-pack: factor out unpack core from get_data_from_pack index-pack: use streaming interface for collision test on large blobs pack-objects: use streaming interface for reading large loose blobs Unindent excluded_from_list() dir.c: get rid of the wildcard symbol set in no_wildcard() exclude: do strcmp as much as possible before fnmatch Remove i18n legos in notifying new branch tracking setup reflog: remove i18n legos in pruning message notes-merge: remove i18n legos in merge result message rerere: remove i18n legos in result message Pat Thoyts (1): Restore use of 'help.format' configuration property in 'git help' Pavel Volek (1): git-remote-mediawiki: import "File:" attachments Pete Wyckoff (13): git p4 test: wait longer for p4d to start and test its pid git p4 test: use real_path to resolve p4 client symlinks git p4 test: simplify quoting involving TRASH_DIRECTORY git p4 test: never create default test repo git p4 test: rename some "git-p4 command" strings git p4 test: check for error message in failed test git p4 test: copy source indeterminate git p4 test: cleanup_git should make a new $git git p4 test: split up big t9800 test git p4 test: fix badp4dir test git p4: remove unused P4Submit interactive setting git p4 test: refactor marshal_dump git p4: notice Jobs lines in git commit messages Peter Krefting (1): Update Swedish translation (1095t0f0u) Ralf Thielow (1): l10n: de.po: translate 29 new messages Ramsay Jones (1): vcs-svn: rename check_overflow and its arguments for clarity SZEDER Gábor (3): tests: move code to run tests under bash into a helper library tests: add tests for the bash prompt functions in the completion script completion: respect $GIT_DIR Simon Cathebras (1): git-remote-mediawiki (t9362): test git-remote-mediawiki with UTF8 characters Stefano Lattarini (7): autoconf: GIT_CONF_APPEND_LINE: change signature autoconf: GIT_CONF_APPEND_LINE -> GIT_CONF_SUBST autoconf: remove some redundant shell indirections autoconf: remove few redundant semicolons autoconf: use AC_CONFIG_COMMANDS instead of ad-hoc 'config.mak.append' build: "make clean" should not remove configure-generated files build: reconfigure automatically if configure.ac changes Thomas Gummerer (2): Replace strlen() with ce_namelen() Strip namelen out of ce_flags into a ce_namelen field Tim Henigan (1): difftool: only copy back files modified during directory diff Torsten Bögershausen (1): git on Mac OS and precomposed unicode Trần Ngọc Quân (1): l10n: Update translation for Vietnamese Vincent van Ravesteijn (1): help: use HTML as the default help format on Windows Štěpán Němec (1): doc: A few minor copy edits. Version v1.7.11.7; changes since v1.7.11.6: ------------------------------------------- David Aguilar (2): gitk: Teach "Reread references" to reload tags gitk: Rename 'tagcontents' to 'cached_tagcontent' Felipe Contreras (1): gitk: Avoid Meta1-F5 Jeff King (9): t5550: put auth-required repo in auth/dumb t5550: factor out http auth setup t/lib-httpd: only route auth/dumb to dumb repos t/lib-httpd: recognize */smart/* repos as smart-http t: test basic smart-http authentication t: test http access to "half-auth" repositories http: factor out http error code handling http: prompt for credentials on failed POST log: fix --quiet synonym for -s Junio C Hamano (8): specifying ranges: we did not mean to make ".." an empty set apply: compute patch->def_name correctly under -p0 doc: "git checkout -b/-B/--orphan" always takes a branch name split_ident_line(): make best effort when parsing author/committer line Document file-glob for "git checkout -- '*.c'" gitcli: formatting fix gitcli: contrast wildcard given to shell and to git Git 1.7.11.7 Kacper Kornet (2): t6300: test sort with multiple keys for-each-ref: Fix sort with multiple keys Ramsay Jones (1): test-regex: Add a test to check for a bug in the regex routines Version v1.7.11.6; changes since v1.7.11.5: ------------------------------------------- Adam Butcher (1): Fix '\ No newline...' annotation in rewrite diffs Ben Walton (1): Enable HAVE_DEV_TTY for Solaris Brandon Casey (1): t/t5400: demonstrate breakage caused by informational message from prune Eric S. Raymond (3): contrib/ciabot: Get ciabot configuration from git variables Improved documentation for the ciabot scripts. Make the ciabot scripts completely self-configuring in the normal case. Heiko Voigt (2): Let submodule command exit with error status if path does not exist Documentation/CodingGuidelines: spell out more shell guidelines Jay Soffian (1): gitweb: URL-decode $my_url/$my_uri when stripping PATH_INFO Jeff King (6): commit: check committer identity more strictly diff: do not use null sha1 as a sentinel value do not write null sha1s to on-disk index fsck: detect null sha1 in tree entries terminal: seek when switching between reading and writing docs: monospace listings in docbook output Junio C Hamano (13): config: "git config baa" should exit with status 1 t7406: fix misleading "rev-parse --max-count=1 HEAD" sane_execvp(): ignore non-directory on $PATH Documentation: do not mention .git/refs/* directories receive-pack: do not leak output from auto-gc to standard output sh-setup: protect from exported IFS rev-list docs: clarify --topo-order description gitcli: describe abbreviation of long options git-config doc: unconfuse an example mergetool: style fixes Prepare for 1.7.11.6 Almost 1.7.11.6 Git 1.7.11.6 Luka Perkov (1): builtin.h: remove unused cmd_<foo> declarations Martin von Zweigbergk (1): add tests for 'git rebase --keep-empty' Matthieu Moy (1): setup: clarify error messages for file/revisions ambiguity Michael Haggerty (1): git-config.txt: fix example Michael J Gruber (1): rebase -i: use full onto sha1 in reflog Michał Kiedrowicz (1): tests: Introduce test_seq Miklos Vajna (1): man: git pull -r is a short for --rebase Nguyễn Thái Ngọc Duy (1): read_index_from: remove bogus errno assignments Paul Gortmaker (1): apply: delete unused deflate_origlen from patch struct Phil Hord (2): test: git-stash conflict sets up rerere stash: invoke rerere in case of conflict Stefan Zager (1): Make 'git submodule update --force' always check out submodules. Thomas Rast (3): send-email: improve RFC2047 quote parsing diff_setup_done(): return void merge-recursive: eliminate flush_buffer() in favor of write_in_full() Version v1.7.11.5; changes since v1.7.11.4: ------------------------------------------- Heiko Voigt (1): link_alt_odb_entry: fix read over array bounds reported by valgrind Jeff King (1): checkout: don't confuse ref and object flags Jonathan Nieder (4): block-sha1: avoid pointer conversion that violates alignment constraints block-sha1: put expanded macro parameters in parentheses Makefile: fix location of listing produced by "make subdir/foo.s" Makefile: BLK_SHA1 does not require fast htonl() and unaligned loads Junio C Hamano (4): mergetool: support --tool-help option like difftool does Enumerate revision range specifiers in the documentation Prepare for 1.7.11.5 Git 1.7.11.5 Lawrence Mitchell (2): git-blame.el: Use with-current-buffer where appropriate git-blame.el: Do not use bare 0 to mean (point-min) Max Horn (1): Make <refname> documentation more consistent. Michael Schubert (1): Documentation/git-daemon: add missing word Ramkumar Ramachandra (1): commit: document a couple of options Ramsay Jones (1): t7810-*.sh: Remove redundant test René Scharfe (1): git: Wrong parsing of ssh urls with IPv6 literals ignores port Rüdiger Sonderfeld (2): git-blame.el: use mapc instead of mapcar git-blame.el: Do not use goto-line in lisp code Štěpán Němec (1): doc: A few minor copy edits. Version v1.7.11.4; changes since v1.7.11.3: ------------------------------------------- Jeff King (3): diff: test precedence of external diff drivers advice: pass varargs to strbuf_vaddf, not strbuf_addf commit: document the temporary commit message file Jens Lehmann (1): submodules: don't stumble over symbolic links when cloning recursively Junio C Hamano (7): filter-branch: do not forget the '@' prefix to force git-timestamp date.c: Fix off by one error in object-header date parsing t7003: add test to filter a branch with a commit at epoch commit-tree: resurrect command line parsing updates Revert "git-commit-tree(1): update synopsis" diff: correctly disable external_diff with --no-ext-diff Git 1.7.11.4 Paul Gortmaker (1): am: indicate where a failed patch is to be found Version v1.7.11.3; changes since v1.7.11.2: ------------------------------------------- Alex Riesen (1): Restore umasks influence on the permissions of work tree created by clone Chris Webb (2): git-checkout: disallow --detach on unborn branch Allow edit of empty message with commit --amend Jay Soffian (1): fast-export: quote paths with spaces Jeff King (3): push: don't guess at qualifying remote refs on deletion add: create ADD_EDIT.patch with mode 0666 commit: fix "--amend --only" with no pathspec Junio C Hamano (10): show: fix "range implies walking" t/test-lib.sh: export PERL_PATH for use in scripts tests: enclose $PERL_PATH in double quotes t/README: add a bit more Don'ts diff-index.c: do not pretend paths are pathspecs diff-index.c: unify handling of command line paths diff-index.c: "git diff" has no need to read blob from the standard input rerere: make rr-cache fanout directory honor umask cache_name_compare(): do not truncate while comparing paths Git 1.7.11.3 Martin von Zweigbergk (1): add test case for rebase of empty commit Thomas Rast (1): Demonstrate git-show is broken with ranges Vincent van Ravesteijn (1): t: Replace 'perl' by $PERL_PATH Version v1.7.11.2; changes since v1.7.11.1: ------------------------------------------- Carlos Martín Nieto (2): Documentation: --no-walk is no-op if range is specified git-cherry-pick.txt: clarify the use of revision range notation Heiko Voigt (1): update-index: allow overwriting existing submodule index entries Jeff King (3): fix pager.diff with diff --no-index do not run pager with diff --no-index --quiet diff: handle relative paths in no-index Junio C Hamano (15): request-pull: really favor a matching tag ls-files -i: pay attention to exclusion of leading paths ls-files -i: micro-optimize path_excluded() tweak "bundle verify" of a complete history path_excluded(): update API to less cache-entry centric builtin/add.c: use path_excluded() unpack-trees.c: use path_excluded() in check_ok_to_remove() dir.c: make excluded() file scope static revision: "simplify" options imply topo-order sort revision: note the lack of free() in simplify_merges() archive: ustar header checksum is computed unsigned revision: ignore side parents while running simplify-merges index-pack: Disable threading on cygwin blame: compute abbreviation width that ensures uniqueness Git 1.7.11.2 Leila Muhtasib (1): Documentation: Fix misspellings Matthieu Moy (2): sha1_name: do not trigger detailed diagnosis for file arguments verify_filename(): ask the caller to chose the kind of diagnosis Michał Górny (1): git-submodule.sh: fix filename in comment. Nguyễn Thái Ngọc Duy (1): clone: fix ref selection in --single-branch --branch=xxx Peter Krefting (1): Update Swedish translation (1066t0f0u) Thomas Badie (1): git-add--interactive.perl: Remove two unused variables Tim Henigan (1): diff-no-index: exit(1) if 'diff --quiet <repo file> <external file>' finds changes Version v1.7.11.1; changes since v1.7.11: ----------------------------------------- Jeff King (1): docs: always define git-relative-html-prefix attribute Junio C Hamano (2): git-commit-tree(1): update synopsis Git 1.7.11.1 Miklos Vajna (1): Documentation: spelling fixes Version v1.7.11; changes since v1.7.11-rc3: ------------------------------------------- Alexander Strasser (1): diff: Only count lines in show_shortstats Jonathan Nieder (2): perl/Makefile.PL: warn about duplicate module list in perl/Makefile perl/Makefile: install Git::SVN::* when NO_PERL_MAKEMAKER=yes, too Junio C Hamano (2): Git 1.7.10.5 Git 1.7.11 Marco Paolone (1): l10n: it.po: translate 212 new messages Ramsay Jones (1): gitweb: Skip 'modification times' tests when no date parser available SZEDER Gábor (2): completion: put main git and gitk completion functions back into git namespace completion: remove credential helpers from porcelain commands Vincent van Ravesteijn (1): Do not autosquash in case of an implied interactive rebase Version v1.7.11-rc3; changes since v1.7.11-rc2: ----------------------------------------------- Jeff King (1): docs: fix cross-directory linkgit references Jiang Xin (2): l10n: Update git.pot (27 new, 1 removed messages) l10n: zh_CN.po: translate 27 new messages Johannes Schindelin (1): fast-export: report SHA-1 instead of gibberish when marks exist already Jonathan Nieder (3): git-svn: make Git::SVN::Editor a separate file git-svn: make Git::SVN::RA a separate file git-svn: use YAML format for mergeinfo cache when possible Junio C Hamano (2): fmt-merge-msg: make attribution into comment lines Git 1.7.11-rc3 Matthieu Moy (1): api-credential.txt: document that helpers field is filled-in automatically Ralf Thielow (1): l10n: de.po: translate 27 new messages Trần Ngọc Quân (1): l10n: Update po/vi.po to v1.7.11.rc2.2.gb694fbb Version v1.7.11-rc2; changes since v1.7.11-rc1: ----------------------------------------------- Colby Ranger (1): Add persistent-https to contrib Jiang Xin (2): l10n: Update git.pot (5 new, 3 removed messages) l10n: zh_CN.po: translate 2 new, 3 fuzzy messages Junio C Hamano (3): git-svn: platform auth providers are working only on 1.6.15 or newer doc: fix xref link from api docs to manual pages Git 1.7.11-rc2 Matthieu Moy (3): api-credentials.txt: show the big picture first api-credentials.txt: mention credential.helper explicitly api-credentials.txt: add "see also" section Ralf Thielow (4): l10n: de.po: translate 265 new messages l10n: de.po: translate 41 new messages l10n: de.po: translate 2 new, 3 fuzzy messages l10n: de.po: add additional newline Ramkumar Ramachandra (1): t3510 (cherry-pick-sequence): add missing '&&' Trần Ngọc Quân (1): l10n: Update translation for Vietnamese Version v1.7.11-rc1; changes since v1.7.11-rc0: ----------------------------------------------- Erik Faye-Lund (2): rebase: report invalid commit correctly Makefile: add missing GIT-VERSION-FILE dependency Jeff King (30): ident: split setup_ident into separate functions http-push: do not access git_default_email directly fmt-merge-msg: don't use static buffer in record_person move identity config parsing to ident.c move git_default_* variables to ident.c ident: trim trailing newline from /etc/mailname format-patch: use default email for generating message ids fmt_ident: drop IDENT_WARN_ON_NO_NAME code ident: don't write fallback username into git_default_name drop length limitations on gecos-derived names and emails ident: report passwd errors with a more friendly message ident: use full dns names to generate email addresses ident: use a dynamic strbuf in fmt_ident ident: trim whitespace from default name/email format-patch: refactor get_patch_filename fetch-pack: sort incoming heads fetch-pack: avoid quadratic behavior in remove_duplicates add sorting infrastructure for list refs fetch-pack: sort the list of incoming refs fetch-pack: avoid quadratic loop in filter_refs fetch-pack: sort incoming heads list earlier ident: reword empty ident error message ident: refactor NO_DATE flag in fmt_ident ident: let callers omit name with fmt_indent format-patch: use GIT_COMMITTER_EMAIL in message ids ident: rename IDENT_ERROR_ON_NO_NAME to IDENT_STRICT ident: reject bogus email addresses with IDENT_STRICT format-patch: do not use bogus email addresses in message ids t5701: modernize style INSTALL: update asciidoc recommendation Jens Lehmann (1): submodules: print "registered for path" message only once Jiang Xin (5): l10n: Update git.pot (41 new messages) l10n: zh.CN.po: update by msgmerge git.pot l10n: zh_CN.po: translate 323 new messages l10n: Set nplurals of zh_CN.po from 1 to 2 i18n: apply: split to fix a partial i18n message Jonathan Nieder (3): git-svn: move Git::SVN::Prompt into its own file git-svn: rename SVN::Git::* packages to Git::SVN::* git-svn: make Git::SVN::Fetcher a separate file Junio C Hamano (6): refs: do not create ref_entry when searching cherry-pick: regression fix for empty commits Start preparing for 1.7.10.4 Update draft release notes to 1.7.11 Git 1.7.10.4 Git 1.7.11-rc1 Marco Paolone (1): l10n: New it.po file with 504 translations Matthieu Moy (1): Reduce cost of deletion in levenstein distance (4 -> 3) Michael Haggerty (5): free_ref_entry(): do not trigger reading of loose refs cmd_fetch_pack(): declare dest to be const cmd_fetch_pack(): handle non-option arguments outside of the loop cmd_fetch_pack(): combine the loop termination conditions cmd_fetch_pack(): respect constness of argv parameter Nguyễn Thái Ngọc Duy (2): pack-objects, streaming: turn "xx >= big_file_threshold" to ".. > .." pack-objects: refactor write_object() into helper functions Peter Krefting (1): Update Swedish translation (728t0f0u) René Scharfe (3): refs: convert parameter of search_ref_dir() to length-limited string refs: convert parameter of create_dir_entry() to length-limited string refs: use strings directly in find_containing_dir() Trần Ngọc Quân (2): Init translation for Vietnamese First release translation for Vietnamese Vincent van Ravesteijn (1): Do not autosquash in case of an implied interactive rebase Vitor Antunes (3): git-p4: Test changelists touching two branches git-p4: Verify detection of "empty" branch creation git-p4: Clean up branch test cases Version v1.7.11-rc0; changes since v1.7.10.5: --------------------------------------------- Amiel Martin (2): fixed order of assertion in tests sort assertion to make it more generic Arlen Cuss (1): Fix refspecs in given example for git subtree pull. Avery Pennarun (72): basic options parsing and whatnot. 'git subtree split' now basically works. We now copy the other stuff about a commit (changelog, author, etc). Print out the newly created commitid at the end, for use in other scripts. Add a new --rejoin option. Use information about prior splits to make sure merges work right. Added a --onto option, but it's so complicated I can't tell if it works. Hmm... can't actually filter rev-list on the subdir name. Skip over empty commits. Quick test script for generating reasonably complex merge scenarios. Prune out some extra merge commits by comparing their parents correctly. Even more aggressive commit trimming. Okay, that was a little too aggressive. Pass the path using the --prefix option instead of on the command line. Add a new 'git subtree add' command for adding subtrees from a given rev. Add 'git subtree merge' and 'git subtree pull'. Handle it successfully if a given parent commit has no parents. Change test.sh to test the new add, merge, and pull commands. todo list Add --annotate option, and create recognizable file content during tests. Typo when searching for existing splits. Clarify why we can't do 'git rev-list' with a path. Add a 'create' helper function in test.sh. Add some basic assertions to test.sh. test.sh tweak Trim some extra merge commits that don't need to go into the split tree. Only copy a commit if it has at least one nonidentical parent. test.sh: make sure no commit changes more than one file at a time. Simplify merges even more aggressively. test.sh: oops, never intended to count the raw number of commits. debug messages are off by default; use -d to enable. Abort if --rejoin fails. More to-do items based on feedback typo in comment New --branch option to split command. slightly rearrange help message for split. FIXME help for --squash option merge_msg() is really more like rejoin_msg(). Basic "subtree merge --squash" support. Don't squash-merge if the old and new commits are the same. Fix splitting after using a squash merge. Make --squash work with the 'add' command too. Add basic git-subtree manpage in asciidoc format. man page: add an EXAMPLES section. update todo Some todo items reported by pmccurdy todo Docs: when pushing to github, the repo path needs to end in .git todo todo^ todo todo: idea for a 'git subtree grafts' command Improve patch to use git --exec-path: add to PATH instead. Fix behaviour if you have a branch named the same as your --prefix Add a README that says to email me instead of using github mail. If someone provides a --prefix that ends with slash, strip the slash. Fix a minor problem in identifying squashes vs. normal splits. cmd_pull didn't support --squash correctly. Add some tips for how to install. Oops, forgot a COPYING file. It's GPLv2. Weird, I forgot to have 'make test' call test.sh. Jakub's changes broke the progress message slightly. Make tests pass with recent git (1.7.0 and up). Improve checking for existence of the --prefix directory. Oops. Apparently I didn't run 'make test' after most recent change. Some recent tests accidentally depended on very new versions of git. (Hopefully) fix PATH setting for msysgit. Another fix for PATH and msysgit. Fix typo: an -> a Fix a few typos/grammar-o's in the preceding commit. It's also okay if an expected tree object is actually a commit. Skip commit objects that should be trees, rather than copying them. Avishay Lavie (1): git-svn: support rebase --preserve-merges Ben Walton (3): add installation support to Makefile make git version dynamic when building documentation Use SHELL_PATH from build system in run_command.c:prepare_shell_cmd Bryan Larsen (1): docs: simplify example 1 Clemens Buchacher (2): merge overwrites unstaged changes in renamed file t5570: use explicit push refspec Cole Stanfield (1): Fixing eval syntax error. Dan Sabath (2): docs: add simple 'add' case to clarify setup. Docs: cleaning up example textual redundancy David A. Greene (11): Move Tests Into Subdirectory Rename Test Use Test Harness Set TEST_DIRECTORY Remove unnecessary git-subtree files Use project config files Use configure settings for git-subtree Install git-subtree from contrib Add subtree test Makefile Use git-subtree test Makefile Fix git-subtree install instructions David Aguilar (1): t7800: Test difftool passing arguments to diff Felipe Contreras (8): tests: add initial bash completion tests completion: simplify __gitcomp_1 completion: simplify by using $prev completion: add missing general options completion: simplify __git_complete_revlist_file completion: add new __git_complete helper completion: rename internal helpers _git and _gitk completion: add support for backwards compatibility Heiko Voigt (3): Teach revision walking machinery to walk multiple times sequencially Refactor submodule push check to use string list instead of integer push: teach --recurse-submodules the on-demand option Jakub Narębski (1): gitweb: Pass esc_html_hl_regions() options to esc_html() Jakub Suder (9): added -p alias for --prefix added -m/--message option for setting merge commit message allow using --branch with existing branches if it makes sense fix for subtree split not finding proper base for new commits changed alias for --prefix from -p to -P fixed bug in commit message for split added tests for recent changes added temporary test dirs to gitignore improved rev_is_descendant_of_branch() function Jared Hance (1): apply: do not leak patches and fragments Jeff King (4): checkout: suppress tracking message with "-q" teach "git branch" a --quiet option doc/config: fix inline literals status: refactor colopts handling Jesse Greenwald (2): Split cmd now processes commits in topo order. Added check to order of processed commits. Jiang Xin (4): l10n: Update git.pot (33 new, 24 deleted messages) l10n: Update Simplified Chinese translation l10n: Update git.pot (275 new, 15 removed messages) l10n: Update git.pot (8 new, 4 removed messages) Johannes Berg (1): am: support --include option Johannes Sixt (3): Do not use SHELL_PATH from build system in prepare_shell_cmd on Windows t4006: Windows do not have /dev/zero Fix t3411.3 to actually rebase something John Yani (1): docs: Description, synopsys, options and examples changes. Jon Seymour (2): git-svn: clarify the referent of dcommit's optional argument rev-parse doc: --git-dir does not always show a relative path Jonathan Nieder (15): test: use test_i18ncmp when checking --stat output test: use numstat instead of diffstat in funny-names test test: modernize funny-names test style test: test cherry-pick functionality and output separately test: use --numstat instead of --stat in "git stash show" tests test: use numstat instead of diffstat in binary-diff test diffstat summary line varies by locale: miscellany var doc: default editor and pager are configurable at build time var doc: advertise current DEFAULT_PAGER and DEFAULT_EDITOR settings test: do not rely on US English tracking-info messages test: use test_i18ncmp for "Patch format detection failed" message test: am of empty patch should not succeed fast-import doc: cat-blob and ls responses need to be consumed quickly completion: avoid trailing space for --exec-path i18n: mark relative dates for translation Junio C Hamano (45): streaming: make streaming-write-entry to be more reusable fmt-merge-msg: show those involved in a merged series apply: rename free_patch() to free_patch_list() apply: free patch->{def,old,new}_name fields apply: release memory for fn_table apply: free patch->result am -3: list the paths that needed 3-way fallback apply: free unused fragments for submodule patch varint: make it available outside the context of pack cache.h: hide on-disk index details read-cache.c: allow unaligned mapping of the index file read-cache.c: make create_from_disk() report number of bytes it consumed read-cache.c: report the header version we do not understand read-cache.c: move code to copy ondisk to incore cache to a helper function read-cache.c: move code to copy incore to ondisk cache to a helper function read-cache.c: read prefix-compressed names in index on-disk version v4 read-cache.c: write prefix-compressed names in the index update-index: upgrade/downgrade on-disk index version Kick off post 1.7.10 cycle apply: drop unused macro apply: tighten constness of line buffer apply: document buffer ownership rules across functions RelNotes: the first batch of topics graduated to 'master' RelNotes: the second batch of topics graduated to 'master' mergesort: rename it to llist_mergesort() RelNotes: the third batch RelNotes: the fourth batch of topics graduated to 'master' The fifth batch of topics graduated to 'master' push.default doc: explain simple after upstream Update draft release notes to 1.7.11 The sixth batch of topics graduated to 'master' unpack-trees: preserve the index file version of original index-v4: document the entry format The seventh batch of topics graduated to 'master' git-svn: introduce SVN version comparison function The eighth batch of topics graduated to 'master' refs: fix find_containing_dir() regression Makefile: NO_INSTALL_HARDLINKS The ninth batch of topics graduated to 'master' The tenth batch of topics Update draft release notes to 1.7.11 (11th batch) Update draft release notes for 12th batch git-sh-setup: define workaround wrappers before they are used Update draft release notes to 1.7.11 Git 1.7.11-rc0 Kacper Kornet (3): gitweb: Don't set owner if got empty value from projects.list gitweb: Option to omit column with time of the last change gitweb: Option to not display information about owner Luke Diamand (10): git p4: Fixing script editor checks git p4: import/export of labels to/from p4 git p4: fix-up "import/export of labels to/from p4" git p4: Squash P4EDITOR in test harness git p4: Ignore P4EDITOR if it is empty git p4: move verbose to base class git p4: fix unit tests git p4: add test for tag import/export enabled via config git p4: fix bug when verbose enabled with tag export git p4: fix bug when enabling tag import/export via config variables Marco Sousa (1): l10n: pt_PT.po translate new messages Matthieu Moy (5): Documentation: explain push.default option a bit more Undocument deprecated alias 'push.default=tracking' t5528-push-default.sh: add helper functions push: introduce new push.default mode "simple" push: document the future default change for push.default (matching -> simple) Matthijs Kooijman (1): git-svn: use platform specific auth providers Michael Haggerty (32): refs.c: reorder definitions more logically refs: manage current_ref within do_one_ref() do_for_each_ref_in_array(): new function do_for_each_ref_in_arrays(): new function repack_without_ref(): reimplement using do_for_each_ref_in_array() names_conflict(): simplify implementation free_ref_entry(): new function check_refname_component(): return 0 for zero-length components struct ref_entry: nest the value part in a union refs.c: rename ref_array -> ref_dir sort_ref_dir(): simplify logic refs: store references hierarchically do_for_each_ref(): only iterate over the subtree that was requested get_ref_dir(): return early if directory cannot be read get_ref_dir(): use a strbuf to hold refname get_ref_dir(): rename "base" parameter to "dirname" get_ref_dir(): require that the dirname argument ends in '/' refs.c: extract function search_for_subdir() get_ref_dir(): take the containing directory as argument do_for_each_reflog(): return early on error do_for_each_reflog(): use a strbuf to hold logfile name bisect: copy filename string obtained from git_path() find_containing_dir(): use strbuf in implementation of this function refs: wrap top-level ref_dirs in ref_entries read_loose_refs(): rename function from get_ref_dir() get_ref_dir(): add function for getting a ref_dir from a ref_entry search_for_subdir(): return (ref_dir *) instead of (ref_entry *) struct ref_dir: store a reference to the enclosing ref_cache read_loose_refs(): eliminate ref_cache argument refs: read loose references lazily t/Makefile: retain cache t/.prove across prove runs Avoid sorting if references are added to ref_cache in order Michael Schubert (1): remote: update builtin usage Michał Kiedrowicz (7): gitweb: Use descriptive names in esc_html_hl_regions() gitweb: esc_html_hl_regions(): Don't create empty <span> elements gitweb: Extract print_sidebyside_diff_lines() gitweb: Use print_diff_chunk() for both side-by-side and inline diffs gitweb: Push formatting diff lines to print_diff_chunk() gitweb: Highlight interesting parts of diff gitweb: Refinement highlightning in combined diffs Neil Horman (5): git-cherry-pick: add allow-empty option git-cherry-pick: Add keep-redundant-commits option git-cherry-pick: Add test to validate new options git-rebase: add keep_empty flag git cherry-pick: do not dereference a potential NULL pointer Nguyễn Thái Ngọc Duy (37): Add more large blob test cases cat-file: use streaming API to print blobs parse_object: avoid putting whole blob in core show: use streaming API for showing blobs fsck: use streaming API for writing lost-found blobs update-server-info: respect core.bigfilethreshold Makefile: feed all header files to xgettext strbuf: convenience format functions with \n automatically appended i18n: help: mark strings for translation i18n: make warn_dangling_symref() automatically append \n i18n: remote: mark strings for translation i18n: apply: mark strings for translation i18n: apply: update say_patch_name to give translators complete sentence i18n: index-pack: mark strings for translation i18n: bundle: mark strings for translation help: replace underlining "help -a" headers using hyphens with a blank line Add column layout skeleton and git-column Stop starting pager recursively column: add columnar layout column: add dense layout support help: reuse print_columns() for help -a branch: add --column status: add --column column: support piping stdout to external git-column process tag: add --column archive-tar: turn write_tar_entry into blob-writing only archive-tar: unindent write_tar_entry by one level archive: delegate blob reading to backend archive-tar: stream large blobs to tar file branch: remove lego in i18n tracking info strings Makefile: keep many variable list sorted index-pack: restructure pack processing into three main functions index-pack: support multithreaded delta resolving index-pack: disable threading if NO_PREAD is defined apply: remove lego in i18n string in gitdiff_verify_name i18n: parseopt: lookup help and argument translations when showing usage i18n: apply: mark parseopt strings for translation Pelle Wessman (3): Check that the type of the tree really is a tree and not a commit as it seems to sometimes become when eg. a submodule has existed in the same position previously. Use 'git merge -Xsubtree' when git version >= 1.7.0. Fixed regression with splitting out new subtree Pete Wyckoff (9): git-p4: move to toplevel git p4: update name in script git p4: use "git p4" directly in tests remove superfluous newlines in error messages remove blank filename in error message git p4: bring back files in deleted client directory git p4: test submit git p4: fix writable file after rename or copy git p4: submit files with wildcards Ralf Thielow (2): l10n: Update German translation remote: fix typo Ramsay Jones (5): compat/win32/pthread.h: Add an pthread_key_delete() implementation compat/mingw.h: Set S_ISUID to prevent a fast-import test failure git-submodule.sh: Don't use $path variable in eval_gettext string git-sh-setup.sh: Add an pwd() function for MinGW builtin/blame.c: Fix a "Using plain integer as NULL pointer" warning René Scharfe (26): add mergesort() for linked lists commit: use mergesort() in commit_list_sort_by_date() revision: insert unsorted, then sort in prepare_revision_walk() sequencer: export commit_list_append() revision: append to list instead of insert and reverse commit: remove commit_list_reverse() streaming: void pointer instead of char pointer archive-zip: remove uncompressed_size archive-zip: factor out helpers for writing sizes and CRC archive-zip: streaming for stored files archive-zip: streaming for deflated files t5000: rationalize unzip tests dir: convert to strbuf xdiff: add hunk_func() blame: use hunk_func(), part 1 blame: use hunk_func(), part 2 blame: factor out helper for calling xdi_diff() xdiff: remove emit_func() and xdi_diff_hunks() xdiff: remove unused functions dir: respect string length argument of read_directory_recursive() dir: simplify fill_directory() archive: simplify refname handling archive-tar: keep const in checksum calculation xdiff: avoid compiler warnings with XDL_FAST_HASH on 32-bit machines xdiff: avoid more compiler warnings with XDL_FAST_HASH on 32-bit machines xdiff: import new 32-bit version of count_masked_bytes() Roman Kagan (3): git-svn: use POSIX::sigprocmask to block signals git-svn: ignore SIGPIPE git-svn: drop redundant blocking of SIGPIPE SZEDER Gábor (2): tests: add tests for the __gitcomp() completion helper function completion: fix completion after 'git --option <TAB>' Sebastian Pipping (1): gitweb: Fix unintended "--no-merges" for regular Atom feed Stefano Lattarini (3): configure: move definitions of private m4 macros before AC_INIT invocation configure: avoid some code repetitions thanks to m4_{push,pop}def configure: be more idiomatic Thomas Rast (2): xdiff: load full words in the inner loop of xdl_hash_record xdiff: choose XDL_FAST_HASH code on sizeof(long) instead of __WORDSIZE Tim Henigan (8): difftool: parse options using Getopt::Long difftool: add '--no-gui' option difftool: exit(0) when usage is printed difftool: remove explicit change of PATH difftool: stop appending '.exe' to git difftool: eliminate setup_environment function difftool: teach difftool to handle directory diffs difftool: print list of valid tools with '--tool-help' W. Trevor King (3): gitweb: add `status` headers to git_feed() responses. gitweb: refactor If-Modified-Since handling gitweb: add If-Modified-Since handling to git_snapshot(). Wayne Walter (1): Added new 'push' command and 2-parameter form of 'add'. Win Treese (2): git-subtree.txt: add another example. Make sure that <prefix> exists when splitting. Zbigniew Jędrzejewski-Szmek (13): t0303: immediately bail out w/o GIT_TEST_CREDENTIAL_HELPER t0303: resurrect commit message as test documentation t1507: add tests to document @{upstream} behaviour Provide branch name in error message when using @{u} Provide better message for barnhc_wiht_tpyo@{u} Be more specific if upstream branch is not tracked i18n: mark @{upstream} error messages for translation t9002: work around shells that are unable to set COLUMNS to 1 diff --stat: use less columns for change counts test: modernize style of t4006 tests: check --[short]stat output after chmod diff --stat: report mode-only changes for binary files like text files diff --stat: do not run diff on indentical files kTln2 (1): Add explicit path of git installation by 'git --exec-path'. Ævar Arnfjörð Bjarmason (3): git-branch: remove lego in i18n messages git-commit: remove lego in i18n messages git-commit: remove lego in i18n messages Version v1.7.10.5; changes since v1.7.10.4: ------------------------------------------- Johannes Schindelin (1): fast-export: report SHA-1 instead of gibberish when marks exist already Junio C Hamano (1): Git 1.7.10.5 Vincent van Ravesteijn (1): Do not autosquash in case of an implied interactive rebase Version v1.7.10.4; changes since v1.7.10.3: ------------------------------------------- Avery Pennarun (1): checkout: no progress messages if !isatty(2). Erik Faye-Lund (2): rebase: report invalid commit correctly Makefile: add missing GIT-VERSION-FILE dependency Jeff King (3): fix off-by-one error in split_ident_line pretty: avoid buffer overflow in format_person_part avoid segfault when reading header of malformed commits Junio C Hamano (2): Start preparing for 1.7.10.4 Git 1.7.10.4 Peter Krefting (1): Update Swedish translation (728t0f0u) René Scharfe (4): grep: factor out create_grep_pat() grep: factor out do_append_grep_pat() grep: support newline separated pattern list grep: stop leaking line strings with -f Version v1.7.10.3; changes since v1.7.10.2: ------------------------------------------- Bobby Powers (2): diff --no-index: reset temporary buffer lengths on directory iteration diff --no-index: don't leak buffers in queue_diff Carlos Martín Nieto (1): pack-protocol: fix first-want separator in the examples Erik Faye-Lund (2): clone: fix progress-regression checkout: do not corrupt HEAD on empty repo Heiko Voigt (2): link to gitmodules page at the beginning of git-submodule documentation teach add_submodule_odb() to look for alternates Jan Krüger (1): log-tree: use custom line terminator in line termination mode Jeff King (10): docs: stop using asciidoc no-inline-literal t1411: add more selector index/date tests log: respect date_mode_explicit with --format:%gd reflog-walk: clean up "flag" field of commit_reflog struct reflog-walk: always make HEAD@{0} show indexed selectors commit: refactor option parsing status: refactor null_termination option status: fix null termination with "-b" status: respect "-b" for porcelain format osxkeychain: pull make config from top-level directory Jens Lehmann (1): Consistently use "superproject" instead of "supermodule" Jiang Xin (4): l10n: Update git.pot (1 new messages) l10n: zh_CN.po: translate 1 new message l10n: Update git.pot (3 new, 2 removed messages) l10n: zh_CN.po: translate 3 new messages Johannes Sixt (3): t2020-checkout-detach: check for the number of orphaned commits checkout (detached): truncate list of orphaned commits at the new HEAD t3404: begin "exchange commits with -p" test with correct preconditions Jonathan Nieder (1): config doc: remove confusion about relative GIT_DIR from FILES section Junio C Hamano (5): log-tree: the previous one is still not quite right reflog-walk: tell explicit --date=default from not having --date at all Start preparing for 1.7.10.3 Update draft release notes to 1.7.10.3 Git 1.7.10.3 Linus Torvalds (1): fmt-merge-message: add empty line between tag and signature verification Ralf Thielow (7): l10n: add new members to German translation team l10n: de.po: translate "track" as "beobachten" l10n: de.po: translate "remote" as "extern" l10n: de.po: collection of improvements l10n: de.po: unify translation of "ahead" and "behind" l10n: de.po: translate one new message l10n: de.po: translate 3 new messages Thomas Rast (4): l10n: de.po: translate "bare" as "bloß" l10n: de.po: hopefully uncontroversial fixes l10n: de.po: translate "bad" as "ungültig" ("invalid") l10n: de.po: collection of suggestions Version v1.7.10.2; changes since v1.7.10.1: ------------------------------------------- Angus Hammond (1): grep.c: remove redundant line of code Ben Walton (1): Avoid bug in Solaris xpg4/sed as used in submodule Christian Couder (1): revert: add missing va_end Christopher Tiwald (2): push: Provide situational hints for non-fast-forward errors Fix httpd tests that broke when non-ff push advice changed Clemens Buchacher (3): http auth fails with multiple curl handles properly keep track of current working directory cherry-pick: do not expect file arguments Florian Achleitner (1): Documentation/git-config: describe and clarify "--local <file>" option Heiko Voigt (1): document submdule.$name.update=none option for gitmodules Jeff King (15): clean up struct ref's nonfastforward field http-backend: respect existing GIT_COMMITTER_* variables fix http auth with multiple curl handles gc: do not explode objects which will be immediately pruned http: clean up leak in init_curl_http_auth http: use newer curl options for setting credentials argv-array: refactor empty_argv initialization argv-array: add a new "pushl" method gc: use argv-array for sub-commands config: reject bogus section names for --rename-section config: expand tildes in include.path variable send-pack: show progress when isatty(2) teach send-pack about --[no-]progress t5541: test more combinations of --progress t/gitweb-lib: use $PERL_PATH to run gitweb Jim Meyering (1): diff: avoid stack-buffer-read-overrun for very long name Johannes Sixt (2): t9300-fast-import: avoid 'exit' in test_expect_success snippets t5570: fix forwarding of git-daemon messages via cat Junio C Hamano (13): xdiff: remove XDL_PATCH_* macros xdiff: PATIENCE/HISTOGRAM are not independent option bits rebase -i: remind that the lines are top-to-bottom builtin/merge.c: remove "remoteheads" global variable builtin/merge.c: collect other parents early builtin/merge.c: reduce parents early fmt-merge-msg: discard needless merge parents t9400: fix gnuism in grep diff --no-index: use strbuf for temporary pathnames contrib/rerere-train: use installed git-sh-setup Start preparing for 1.7.10.2 Update draft release notes to 1.7.10.2 Git 1.7.10.2 Lucian Poston (5): Add output_prefix_length to diff_options Adjust stat width calculations to take --graph output into account t4052: Adjust --graph --stat output for prefixes t4052: Test diff-stat output with minimum columns Prevent graph_width of stat width from falling below min Marc Branchaud (2): fetch: Give remote_ref to update_local_ref() as well fetch: describe new refs based on where it came from Michał Kiedrowicz (1): merge tests: octopus with redundant parents Pete Wyckoff (2): git-remote-testgit: fix race when spawning fast-import git p4 doc: fix formatting Ralf Thielow (1): sequencer: remove additional blank line René Scharfe (2): unpack-trees: don't perform any index operation if we're not merging unpack-trees: plug minor memory leak Ross Lagerwall (2): rev-parse --show-prefix: add in trailing newline stash: use eval_gettextln correctly Stefano Lattarini (1): tests: modernise style: more uses of test_line_count Zbigniew Jędrzejewski-Szmek (4): t4052: test --stat output with --graph test-lib: skip test with COLUMNS=1 under mksh t4052: work around shells unable to set COLUMNS to 1 Consistently use perl from /usr/bin/ for scripts Version v1.7.10.1; changes since v1.7.10: ----------------------------------------- Adam Monsen (1): git-commit.txt: clarify -t requires editing message Byrial Jensen (2): l10n: New da.po file with 0 translations l10n: Add Danish team (da) to list of teams Ivan Todoroski (4): fetch-pack: new --stdin option to read refs from stdin remote-curl: send the refs to fetch-pack on stdin fetch-pack: test cases for the new --stdin option remote-curl: main test case for the OS command line overflow Jeff King (6): drop casts from users EMPTY_TREE_SHA1_BIN make is_empty_blob_sha1 available everywhere teach diffcore-rename to optionally ignore empty content merge-recursive: don't detect renames of empty files add--interactive: ignore unmerged entries in patch mode run-command: treat inaccessible directories as ENOENT Jens Lehmann (1): submodules: recursive fetch also checks new tags for submodule commits Jiang Xin (2): l10n: Update git.pot (2 new messages) l10n: Update Simplified Chinese translation Johan Herland (3): t3310: illustrate failure to "notes merge --commit" inside $GIT_DIR/ notes-merge: use opendir/readdir instead of using read_directory() notes-merge: Don't remove .git/NOTES_MERGE_WORKTREE; it may be the user's cwd Johannes Sixt (1): t4034: diff.*.wordregex should not be "sticky" in --word-diff John Keeping (1): rebase -i continue: don't skip commits that only change submodules Jonathan Nieder (1): bundle: remove stray single-quote from error message Junio C Hamano (16): ident.c: add split_ident_line() to parse formatted ident line t7503: does pre-commit-hook learn authorship? commit: pass author/committer info to hooks remove_dir_recursively(): Add flag for skipping removal of toplevel dir clean: preserve nested git worktree in subdirectories t7501: test the right kind of breakage commit: do not trigger bogus "has templated message edited" check commit: rephrase the error when user did not touch templated log message Documentation/git-commit: rephrase the "initial-ness" of templates push: error out when the "upstream" semantics does not make sense blame: accept --need-minimal Git 1.7.7.7 Git 1.7.8.6 Git 1.7.9.7 Start preparing for 1.7.10.1 Git 1.7.10.1 Lucian Poston (3): log --graph --stat: three-dash separator should come after graph lines log --graph: fix break in graph lines t4202: add test for "log --graph --stat -p" separator lines Marco Sousa (1): l10n: Updated pt_PT language Pete Wyckoff (1): fast-import: tighten parsing of datarefs Ralf Thielow (2): l10n: Add the German translation team and initialize de.po l10n: Initial German translation Ramsay Jones (1): compat/mingw.[ch]: Change return type of exec functions to int René Scharfe (3): combine-diff: fix loop index underflow submodule: fix prototype of gitmodules_config test-subprocess: fix segfault without arguments Thomas Rast (2): diff: refactor the word-diff setup from builtin_diff_cmd diff: tweak a _copy_ of diff_options with word-diff Version v1.7.10; changes since v1.7.10-rc4: ------------------------------------------- Felipe Contreras (1): spec: add missing build dependency Junio C Hamano (1): Git 1.7.10 Version v1.7.10-rc4; changes since v1.7.10-rc3: ----------------------------------------------- Heiko Voigt (1): string-list: document that string_list_insert() inserts unique strings Jiang Xin (1): l10n: Improve zh_CN translation for Git 1.7.10-rc3 Junio C Hamano (3): merge: backport GIT_MERGE_AUTOEDIT support Git 1.7.9.6 Git 1.7.10-rc4 Marco Sousa (1): l10n: Inital Portuguese Portugal language (pt_PT) Pat Thoyts (2): gitk: fix tabbed preferences construction when using tcl 8.4 gitk: fix setting font display with new tabbed dialog layout. René Scharfe (1): config: remove useless assignment Vincent van Ravesteijn (1): l10n: Add the Dutch translation team and initialize nl.po Version v1.7.10-rc3; changes since v1.7.10-rc2: ----------------------------------------------- Frédéric Brière (1): gitk: Skip over AUTHOR/COMMIT_DATE when searching all fields Jiang Xin (4): l10n: Update git.pot (1 new message) l10n: Update zh_CN translation for Git 1.7.10-rc1 l10n: Review zh_CN translation for Git 1.7.10-rc1 Add url of Swedish l10n team in TEAMS file Jim Meyering (3): gitk: Make "git describe" output clickable, too correct spelling: an URL -> a URL correct a few doubled-word nits in comments and documentation Jonathan Nieder (1): gitk: Use symbolic font names "sans" and "monospace" when available Junio C Hamano (3): Git 1.7.9.5 Update draft release notes to 1.7.10 Git 1.7.10-rc3 Marcus Karlsson (1): gitk: Teach gitk to respect log.showroot Mark Lodato (1): grep doc: add --break / --heading / -W to synopsis Nelson Benitez Leon (1): documentation: fix alphabetic ordered list for git-rebase man page Pat Thoyts (2): gitk: Use a tabbed dialog to edit preferences gitk: Fix the display of files when filtered by path Paul Mackerras (2): gitk: Speed up resolution of short SHA1 ids gitk: Add menu items for comparing a commit with the marked commit Peter Krefting (1): Update Swedish translation (724t0f0u). Rodrigo Silva (MestreLion) (1): Documentation: improve description of GIT_EDITOR and preference order Zbigniew Jędrzejewski-Szmek (2): gitk: Use "gitk: repo-top-level-dir" as window title tests: unset COLUMNS inherited from environment Version v1.7.10-rc2; changes since v1.7.10-rc1: ----------------------------------------------- Alex Merry (1): contrib/completion: "local var=()" is misinterpreted as func-decl by zsh D Waitzman (1): Documentation/gitweb: trivial English fixes Jonathan Nieder (2): fast-import: leakfix for 'ls' of dirty trees fast-import: don't allow 'ls' of path with empty components Junio C Hamano (4): fetch/receive: remove over-pessimistic connectivity check Update draft release notes to 1.7.10 .mailmap: unify various old mail addresses of gitster Git 1.7.10-rc2 Stefano Lattarini (1): configure: allow user to prevent $PATH "sanitization" on Solaris Tim Henigan (7): Documentation/diff-options: reword description of --submodule option contrib/diffall: comment actual reason for 'cdup' contrib/diffall: create tmp dirs without mktemp contrib/diffall: eliminate use of tar contrib/diffall: eliminate duplicate while loops contrib/diffall: fix cleanup trap on Windows Documentation/difftool: add deltawalker to list of valid diff tools Ævar Arnfjörð Bjarmason (2): Git::I18N: compatibility with perl <5.8.3 perl/Makefile: install Git::I18N under NO_PERL_MAKEMAKER Version v1.7.10-rc1; changes since v1.7.10-rc0: ----------------------------------------------- Alex Zepeda (1): verify-tag: Parse GPG configuration options. Jakub Narębski (1): gitweb: Fix fixed string (non-regexp) project search Jens Lehmann (3): submodules: always use a relative path to gitdir submodules: always use a relative path from gitdir to work tree submodules: refactor computation of relative gitdir path Jiang Xin (3): l10n: Update zh_CN translation for 1.7.9.2 l10n: Update git.pot (1 new message) l10n: Update zh_CN translation for 1.7.10-rc0 Johannes Sixt (1): submodules: fix ambiguous absolute paths under Windows Junio C Hamano (7): Update draft release notes to 1.7.10 t0204: clarify the "observe undefined behaviour" test i18n: fix auto detection of gettext scheme for shell scripts Git 1.7.9.4 Update draft release notes to 1.7.10 before -rc1 am: officially deprecate -b/--binary option Git 1.7.10-rc1 Karsten Blees (1): fix deletion of .git/objects sub-directories in git-prune/repack Martin Stenberg (1): config: report errors at the EOL with correct line number Peter Krefting (2): po/sv.po: add Swedish translation Update Swedish translation (732t0f0u). Phil Hord (1): rerere: Document 'rerere remaining' Thomas Rast (4): perf: load test-lib-functions from the correct directory perf: export some important test-lib variables p4000: use -3000 when promising -3000 git-am: error out when seeing -b/--binary Thynson (7): l10n: Improve zh_CN translation for lines insertion and deletion. l10n: Improve zh_CN translation for msg about branch deletion deny l10n: Improve zh_CN translation for empty cherry-pick msg. l10n: Improve zh_CN translation for msg that make empty commit when amend. l10n: Improve commit msg for zh_CN translation l10n: Improve zh_CN trans for msg that cannot fast-forward l10n: Improve zh_CN translation for msg "not something we can merge" Vincent van Ravesteijn (3): Documentation/git-branch: cleanups Documentation/git-branch: fix a typo Documentation/git-branch: add default for --contains Version v1.7.10-rc0; changes since v1.7.9.7: -------------------------------------------- Adrian Weimann (1): completion: --edit and --no-edit for git-merge Alex Riesen (1): add a Makefile switch to avoid gettext translation in shell scripts Bernhard R. Link (6): gitweb: move hard coded .git suffix out of git_get_projects_list gitweb: prepare git_get_projects_list for use outside 'forks'. gitweb: add project_filter to limit project list to a subdirectory gitweb: limit links to alternate forms of project_list to active project_filter gitweb: show active project_filter in project_list page header gitweb: place links to parent directories in page header Carlos Martín Nieto (1): Make git-{pull,rebase} message without tracking information friendlier Clemens Buchacher (3): git-daemon: add tests git-daemon: produce output when ready git-daemon tests: wait until daemon is ready David Barr (9): vcs-svn: set up channel to read fast-import cat-blob response vcs-svn: quote paths correctly for ls command vcs-svn: use mark from previous import for parent commit vcs-svn: pass paths through to fast-import vcs-svn: drop string_pool vcs-svn: drop treap vcs-svn: drop obj_pool vcs-svn: avoid using ls command twice vcs-svn: implement text-delta handling Dmitry Ivankov (2): vcs-svn: do not initialize report_buffer twice vcs-svn: reset first_commit_done in fast_export_init Felipe Contreras (4): remote: use a local variable in match_push_refs() remote: reorganize check_pattern_match() remote: refactor code into alloc_delete_ref() push: add '--prune' option Frédéric Heitzmann (1): completion: add --interactive option to git svn dcommit Jakub Narębski (11): gitweb: improve usability of projects search form gitweb: Make project search respect project_filter gitweb: Harden and improve $project_filter page title gitweb: Refactor checking if part of project info need filling gitweb: Option for filling only specified info in fill_project_list_info gitweb: Faster project search gitweb: Introduce esc_html_match_hl and esc_html_hl_regions gitweb: Highlight matched part of project name when searching projects gitweb: Highlight matched part of project description when searching projects gitweb: Highlight matched part of shortened project description gitweb: Fix passing parameters to git_project_search_form Jan Krüger (1): symbolic-ref --short: abbreviate the output unambiguously Jared Hance (1): Add threaded versions of functions in symlinks.c. Jeff King (20): parse_object: try internal cache before reading object db upload-pack: avoid parsing objects during ref advertisement upload-pack: avoid parsing tag destinations t0300: use write_script helper docs: add a basic description of the config API drop odd return value semantics from userdiff_config diff-highlight: make perl strict and warnings fatal diff-highlight: don't highlight whole lines diff-highlight: refactor to prepare for multi-line hunks diff-highlight: match multi-line hunks diff-highlight: document some non-optimal cases docs/api-config: minor clarifications t1300: add missing &&-chaining config: copy the return value of prefix_filename config: teach git_config_set_multivar_in_file a default path config: teach git_config_rename_section a file argument config: provide a version of git_config with more options config: stop using config_exclusive_filename config: eliminate config_exclusive_filename config: add include directive Jehan Bing (1): Add a setting to require a filter to be successful Jens Lehmann (1): test-lib: add the test_pause convenience function Jiang Xin (5): l10n: initial git.pot for 1.7.10 upcoming release l10n: po for zh_CN l10n: Update git.pot (12 new messages) l10n: update Chinese translation to the new git.po Update l10n guide: change the repository URL, etc Jonathan Nieder (23): vcs-svn: use higher mark numbers for blobs vcs-svn: save marks for imported commits vcs-svn: add a comment before each commit vcs-svn: eliminate repo_tree structure vcs-svn: handle filenames with dq correctly Makefile: list one vcs-svn/xdiff object or header per line vcs-svn: learn to maintain a sliding view of a file vcs-svn: make buffer_read_binary API more convenient vcs-svn: skeleton of an svn delta parser vcs-svn: parse svndiff0 window header vcs-svn: read the preimage when applying deltas vcs-svn: read inline data from deltas vcs-svn: read instructions from deltas vcs-svn: implement copyfrom_data delta instruction vcs-svn: verify that deltas consume all inline data vcs-svn: let deltas use data from postimage vcs-svn: let deltas use data from preimage test-svn-fe: split off "test-svn-fe -d" into a separate function vcs-svn: cap number of bytes read from sliding view vcs-svn: guard against overflow when computing preimage length vcs-svn: avoid hangs from corrupt deltas vcs-svn: allow import of > 4GiB files vcs-svn: suppress a -Wtype-limits warning Junio C Hamano (28): git-sh-i18n: restructure the logic to compute gettext.sh scheme i18n: Make NO_GETTEXT imply fallthrough scheme in shell l10n merge: use editor by default in interactive sessions push: do not let configured foreign-vcs permanently clobbered t9801: do not overuse test_must_fail i18n: Do not force USE_GETTEXT_SCHEME=fallthrough on NO_GETTEXT vcs-svn/svndiff.c: squelch false "unused" warning from gcc Kick off the post 1.7.9 cycle Update draft release notes to 1.7.10 Update draft release notes to 1.7.10 Update draft release notes to 1.7.10 Update draft release notes to 1.7.10 Update draft release notes to 1.7.10 Update draft release notes to 1.7.10 t9100: remove bogus " || test" after each test scriptlet merge: do not trust fstat(2) too much when checking interactiveness Update draft release notes to 1.7.10 Update draft release notes to 1.7.10 Update draft release notes to 1.7.10 grep: use static trans-case table fsck: --no-dangling omits "dangling object" information pickaxe: allow -i to search in patch case-insensitively Update l10n guide diff --stat: tests for long filenames and big change counts Update draft release notes to 1.7.10 Update draft release notes to 1.7.10 fsck doc: a minor typofix Git 1.7.10-rc0 Linus Torvalds (1): "git pull" doesn't know "--edit" Luke Diamand (6): git-p4: handle p4 branches and labels containing shell chars git-p4: cope with labels with empty descriptions git-p4: importing labels should cope with missing owner git-p4: add test for p4 labels git-p4: label import fails with multiple labels at the same changelist git-p4: add initial support for RCS keywords Michael Haggerty (11): pack_refs(): remove redundant check ref_array: keep track of whether references are sorted add_packed_ref(): new function in the refs API. write_remote_refs(): create packed (rather than extra) refs t5700: document a failure of alternates to affect fetch clone.c: move more code into the "if (refs)" conditional fetch-pack.c: rename some parameters from "path" to "refname" fetch-pack.c: inline insert_alternate_refs() everything_local(): mark alternate refs as complete clone: do not add alternate references to extra_refs refs: remove the extra_refs API Michał Kiedrowicz (2): pack-objects: Fix compilation with NO_PTHREDS grep -P: add tests for matching ^ and $ Nelson Benitez Leon (1): http: support proxies that require authentication Nguyễn Thái Ngọc Duy (20): clone: add --single-branch to fetch only one branch Fix incorrect ref namespace check Eliminate recursion in setting/clearing marks in commit list index-pack: eliminate recursion in find_unresolved_deltas index-pack: eliminate unlimited recursion in get_base_data() t5601: add missing && cascade clone: write detached HEAD in bare repositories clone: factor out checkout code clone: factor out HEAD update code clone: factor out remote ref writing clone: delay cloning until after remote HEAD checking clone: --branch=<branch> always means refs/heads/<branch> clone: refuse to clone if --branch points to bogus ref clone: allow --branch to take a tag clone: print advice on checking out detached HEAD clone: fix up delay cloning conditions pack-objects: do not accept "--index-version=version," pack-objects: remove bogus comment pack-objects: convert to use parse_options() cache-tree: update API to take abitrary flags Pete Wyckoff (6): git-p4: only a single ... wildcard is supported git-p4: fix verbose comment typo git-p4: clarify comment git-p4: adjust test to adhere to stricter useClientSpec git-p4: add tests demonstrating spec overlay ambiguities git-p4: Change p4 command invocation Phil Hord (1): cherry-pick: No advice to commit if --no-commit Philip Jägenstedt (2): completion: remote set-* <name> and <branch> completion: normalize increment/decrement style Ramkumar Ramachandra (2): revert: prepare to move replay_action to header sequencer: factor code out of revert builtin Ramsay Jones (3): vcs-svn: rename check_overflow arguments for clarity builtin/tag.c: Fix a sparse warning ctype.c: Fix a sparse warning René Scharfe (5): xdiff: print post-image for common records instead of pre-image test-parse-options: convert to OPT_BOOL() parse-options: allow positivation of options starting, with no- parse-options: remove PARSE_OPT_NEGHELP parse-options: typo check for unknown switches Riku (1): l10n: update zh_CN translation for "Fetching %s" Russell Myers (1): git-p4: the option to specify 'host' is -H, not -h Stefano Lattarini (1): t0000: modernise style Steven Walter (2): git-svn.perl: perform deletions before anything else git-svn.perl: fix a false-positive in the "already exists" test Thomas Rast (6): am: learn passing -b to mailinfo mailinfo: with -b, keep space after [foo] Move the user-facing test library to test-lib-functions.sh Introduce a performance testing framework Add a performance test for git-grep perf: compare diff algorithms Tim Henigan (2): contrib: add git-diffall script mergetools: add a plug-in to support DeltaWalker Tom Grennan (1): tag: add --points-at list option Vitor Antunes (2): git-p4: Search for parent commit on branch creation git-p4: Add test case for complex branch import Wei-Yin Chen (陳威尹) (1): git-svn: Fix time zone in --localtime Yichao Yu (1): l10n: fast-forward here is ff-only merge, not push Zbigniew Jędrzejewski-Szmek (11): make lineno_width() from blame reusable for others send-email: document the --smtp-debug option git-p4: missing she-bang line in t9804 confuses prove diff --stat: use the full terminal width show --stat: use the full terminal width log --stat: use the full terminal width merge --stat: use the full terminal width diff --stat: use a maximum of 5/8 for the filename part diff --stat: add a test for output with COLUMNS=40 diff --stat: enable limiting of the graph part diff --stat: add config option to limit graph width ws3389 (1): l10n: leave leading space unchanged for zh_CN.po Ævar Arnfjörð Bjarmason (2): git-svn: remove redundant porcelain option to rev-list git-svn: un-break "git svn rebase" when log.abbrevCommit=true Version v1.7.9.7; changes since v1.7.9.6: ----------------------------------------- D Waitzman (1): Documentation/gitweb: trivial English fixes Jonathan Nieder (1): bundle: remove stray single-quote from error message Junio C Hamano (4): fetch/receive: remove over-pessimistic connectivity check Git 1.7.7.7 Git 1.7.8.6 Git 1.7.9.7 Version v1.7.9.6; changes since v1.7.9.5: ----------------------------------------- Heiko Voigt (1): string-list: document that string_list_insert() inserts unique strings Junio C Hamano (2): merge: backport GIT_MERGE_AUTOEDIT support Git 1.7.9.6 Version v1.7.9.5; changes since v1.7.9.4: ----------------------------------------- Jakub Narębski (1): gitweb: Fix actionless dispatch for non-existent objects Jonathan Nieder (2): fast-import: leakfix for 'ls' of dirty trees fast-import: don't allow 'ls' of path with empty components Junio C Hamano (2): i18n of multi-line advice messages Git 1.7.9.5 Kirill Smelkov (1): t/Makefile: Use $(sort ...) explicitly where needed Mark Lodato (1): grep doc: add --break / --heading / -W to synopsis Martin Stenberg (1): config: report errors at the EOL with correct line number Nelson Benitez Leon (1): documentation: fix alphabetic ordered list for git-rebase man page Phil Hord (1): rerere: Document 'rerere remaining' Rodrigo Silva (MestreLion) (1): Documentation: improve description of GIT_EDITOR and preference order Version v1.7.9.4; changes since v1.7.9.3: ----------------------------------------- Jakub Narębski (1): gitweb: Fix fixed string (non-regexp) project search Junio C Hamano (6): am -3: allow nonstandard -p<num> option test: "am -3" can accept non-standard -p<num> t4011: modernise style t4011: illustrate "diff-index -p" on stat-dirty paths diff -p: squelch "diff --git" header for stat-dirty paths Git 1.7.9.4 Thomas Rast (5): t5510: refactor bundle->pack conversion t5510: ensure we stay in the toplevel test dir bundle: keep around names passed to add_pending_object() Document the --histogram diff option t5704: fix nonportable sed/grep usages Version v1.7.9.3; changes since v1.7.9.2: ----------------------------------------- Andrew Wong (1): rebase -m: only call "notes copy" when rewritten exists and is non-empty Carlos Martín Nieto (2): branch: don't assume the merge filter ref exists Documentation: use {asterisk} in rev-list-options.txt when needed Clemens Buchacher (1): http.proxy: also mention https_proxy and all_proxy Dmitry V. Levin (1): Makefile: add thread-utils.h to LIB_H Jakub Narębski (2): gitweb: Fix "heads" view when there is no current branch gitweb: Handle invalid regexp in regexp search Jeff King (4): disconnect from remote helpers more gently teach convert_to_git a "dry run" mode teach dry-run convert_to_git not to require a src buffer do not stream large files to pack when filters are in use Jehan Bing (1): Ignore SIGPIPE when running a filter driver Jim Meyering (1): am: don't infloop for an empty input file John Szakmeister (1): configure: don't use -lintl when there is no gettext support Jonathan Nieder (1): mergetools/meld: Use --help output to detect --output support Junio C Hamano (9): refresh_index: do not show unmerged path that is outside pathspec Documentation/merge-options.txt: group "ff" related options together Document merge.branchdesc configuration variable Git 1.7.8.5 Document accumulated fixes since 1.7.9.2 Update draft release notes to 1.7.9.3 Documentation: do not assume that n > 1 in <rev>~$n Update draft release notes to 1.7.9.3 for the last time Git 1.7.9.3 Libor Pechacek (1): Documentation fixes in git-config Matthieu Moy (1): README: point to Documentation/SubmittingPatches Michael Haggerty (2): post-receive-email: remove unused variable post-receive-email: match up $LOGBEGIN..$LOGEND pairs correctly Michael J Gruber (1): t0300: work around bug in dash 0.5.6 Michał Kiedrowicz (1): grep -P: Fix matching ^ and $ Nguyễn Thái Ngọc Duy (2): rev-list: remove BISECT_SHOW_TRIED flag rev-list: fix --verify-objects --quiet becoming --objects Pete Wyckoff (4): git-p4: set useClientSpec variable on initial clone git-p4: fix submit regression with clientSpec and subdir clone git-p4: remove bash-ism in t9809 git-p4: remove bash-ism in t9800 Philip Jägenstedt (1): remote: fix set-branches usage and documentation Stefano Lattarini (1): tests: fix spurious error when run directly with Solaris /usr/xpg4/bin/sh Thomas Rast (6): merge: add instructions to the commit message when editing bundle: put strbuf_readline_fd in strbuf.c with adjustments bundle: use a strbuf to scan the log for boundary commits strbuf: improve strbuf_get*line documentation t5704: match tests to modern style fast-import: zero all of 'struct tag' to silence valgrind Tim Henigan (2): CodingGuidelines: Add a note about spaces after redirection CodingGuidelines: do not use 'which' in shell scripts Tom Grennan (1): t5512 (ls-remote): modernize style Version v1.7.9.2; changes since v1.7.9.1: ----------------------------------------- Christian Hammerl (1): completion: Allow dash as the first character for __git_ps1 Clemens Buchacher (4): git rev-list: fix invalid typecast push/fetch/clone --no-progress suppresses progress output t5541: check error message against the real port number used do not override receive-pack errors Felipe Contreras (3): completion: work around zsh option propagation bug completion: use ls -1 instead of rolling a loop to do that ourselves completion: simplify __gitcomp and __gitcomp_nl implementations Jakub Narębski (2): gitweb: Allow UTF-8 encoded CGI query parameters and path_info gitweb: Fix 'grep' search for multiple matches in file Jeff King (12): grep: make locking flag global grep: move sha1-reading mutex into low-level code grep: refactor the concept of "grep source" into an object convert git-grep to use grep_source interface grep: drop grep_buffer's "name" parameter grep: cache userdiff_driver in grep_source grep: respect diff attributes for binary-ness grep: load file data after checking binary-ness grep: pre-load userdiff drivers when threaded standardize and improve lookup rules for external local repos prompt: clean up strbuf usage prompt: fall back to terminal if askpass fails Jiang Xin (2): i18n: git-commit whence_s "merge/cherry-pick" message i18n: format_tracking_info "Your branch is behind" message Johannes Sixt (1): Makefile: fix syntax for older make Junio C Hamano (8): mailmap: always return a plain mail address from map_user() git checkout -b: allow switching out of an unborn branch commit: ignore intent-to-add entries instead of refusing diff --stat: show bars of same length for paths with same amount of changes Update draft release notes to 1.7.9.2 Update draft release notes to 1.7.9.2 Update draft release notes to 1.7.9.2 Git 1.7.9.2 Matthieu Moy (1): fsck: give accurate error message on empty loose object files Namhyung Kim (2): ctype.c only wants git-compat-util.h ctype: implement islower/isupper macro Nguyễn Thái Ngọc Duy (3): sha1_file.c: move the core logic of find_pack_entry() into fill_pack_entry() find_pack_entry(): do not keep packed_git pointer locally Use correct grammar in diffstat summary line Philip Jägenstedt (2): completion: remove stale "to submit patches" documentation completion: use tabs for indentation Ralf Thielow (2): completion: --edit-description option for git-branch completion: --list option for git-branch Theodore Ts'o (1): Fix build problems related to profile-directed optimization Zbigniew Jędrzejewski-Szmek (2): pager: find out the terminal width before spawning the pager man: rearrange git synopsis to fit in 80 lines Дилян Палаузов (1): Makefile: introduce CHARSET_LIB to link with -lcharset Version v1.7.9.1; changes since v1.7.9: --------------------------------------- Adrian Weimann (1): completion: --edit and --no-edit for git-merge Albert Yale (1): grep: fix -l/-L interaction with decoration lines Ben Walton (1): Drop system includes from inet_pton/inet_ntop compatibility wrappers Clemens Buchacher (2): fix push --quiet: add 'quiet' capability to receive-pack dashed externals: kill children on exit David Aguilar (1): mergetool: Provide an empty file when needed Jakub Narębski (1): git.spec: Workaround localized messages not put in any RPM Jeff King (4): run-command: optionally kill children on exit imap-send: remove dead code tag: fix output of "tag -n" when errors occur tag: die when listing missing or corrupt objects Jens Lehmann (1): submodule add: fix breakage when re-adding a deep submodule Johannes Schindelin (1): add -e: do not show difference in a submodule that is merely dirty Junio C Hamano (15): server_supports(): parse feature list more carefully Making pathspec limited log play nicer with --first-parent request-pull: explicitly ask tags/$name to be pulled tests: add write_script helper function parse_date(): allow ancient git-timestamp parse_date(): '@' prefix forces git-timestamp merge: do not create a signed tag merge under --ff-only option branch --edit-description: protect against mistyped branch name Git 1.7.6.6 Prepare for 1.7.9.1 tag: do not show non-tag contents with "-n" merge: do not launch an editor on "--no-edit $tag" Update draft release notes to 1.7.9.1 Update draft release notes to 1.7.9.1 Git 1.7.9.1 Michael J Gruber (1): t5541: avoid TAP test miscounting Michael Palimaka (1): Explicitly set X to avoid potential build breakage Shawn O. Pearce (1): remote-curl: Fix push status report when all branches fail Ævar Arnfjörð Bjarmason (3): Makefile: Change the default compiler from "gcc" to "cc" Remove Git's support for smoke testing t: use sane_unset instead of unset Version v1.7.9; changes since v1.7.9-rc2: ----------------------------------------- Felipe Contreras (1): git-completion: workaround zsh COMPREPLY bug Jeff King (1): docs: minor grammar fixes for v1.7.9 release notes Junio C Hamano (2): INSTALL: warn about recent Fedora breakage Git 1.7.9 Michael Haggerty (1): Fix typo in 1.7.9 release notes Version v1.7.9-rc2; changes since v1.7.9-rc1: --------------------------------------------- Jakub Narębski (2): gitweb: Fix file links in "grep" search gitweb: Harden "grep" search against filenames with ':' Jeff King (3): unix-socket: handle long socket pathnames credential-cache: report more daemon connection errors credential-cache: ignore "connection refused" errors Jonathan Nieder (1): unix-socket: do not let close() or chdir() clobber errno during cleanup Junio C Hamano (4): pulling signed tag: add howto document Git 1.7.7.6 Git 1.7.8.4 Git 1.7.9-rc2 Michael Haggerty (2): git-show-ref: fix escaping in asciidoc source git-show-ref doc: typeset regexp in fixed width font Nguyễn Thái Ngọc Duy (3): Document limited recursion pathspec matching with wildcards diff-index: enable recursive pathspec matching in unpack_trees diff-index: enable recursive pathspec matching in unpack_trees Thomas Rast (1): word-diff: ignore '\ No newline at eof' marker Version v1.7.9-rc1; changes since v1.7.9-rc0: --------------------------------------------- Ben Walton (1): Use perl instead of sed for t8006-blame-textconv test Carlos Martín Nieto (1): archive: re-allow HEAD:Documentation on a remote invocation Clemens Buchacher (1): credentials: unable to connect to cache daemon Jeff King (5): send-email: multiedit is a boolean config option attr: don't confuse prefixes with leading directories attr: drop misguided defensive coding attr: fix leak in free_attr_elem thin-pack: try harder to use preferred base objects as base Junio C Hamano (11): attr.c: make bootstrap_attr_stack() leave early attr.c: clarify the logic to pop attr_stack Documentation: rerere's rr-cache auto-creation and rerere.enabled Prepare for 1.7.6.6 Prepare for 1.7.7.6 Prepare for 1.7.8.4 request-pull: use the real fork point when preparing the message Update draft release notes to 1.7.6.6 Update draft release notes to 1.7.7.6 Update draft release notes to 1.7.8.4 Git 1.7.9-rc1 Matthieu Moy (1): gitweb: accept trailing "/" in $project_list Michael Haggerty (3): receive-pack: move more work into write_head_info() show_ref(): remove unused "flag" and "cb_data" arguments write_head_info(): handle "extra refs" locally Nguyễn Thái Ngọc Duy (1): t2203: fix wrong commit command Sebastian Schuberth (2): t9200: On MSYS, do not pass Windows-style paths to CVS git-cvsexportcommit: Fix calling Perl's rel2abs() on MSYS Thomas Rast (1): mailinfo documentation: accurately describe non -k case Version v1.7.9-rc0; changes since v1.7.8.6: ------------------------------------------- Anders Kaseorg (2): gitk: Remove unused $cdate array gitk: Remember time zones from author and commit timestamps Bert Wesarg (14): git-gui: fix multi selected file operation git-gui: handle config booleans without value git-gui: add smart case search mode in searchbar git-gui: add regexp search mode to the searchbar git-gui: add search history to searchbar git-gui: fix unintended line break in message string git-gui: use "untracked" for files which are not known to git git-gui: new config to control staging of untracked files git-gui: fix display of path in browser title git-gui: use a tristate to control the case mode in the searchbar git-gui: span widgets over the full file output area in the blame view git-gui: include the file path in guitools confirmation dialog git-gui: make config gui.warndetachedcommit a boolean git-gui: don't warn for detached head when rebasing Dejan Ribič (1): git-gui: fix spelling error in sshkey.tcl Gary Gibbons (5): git-p4: ensure submit clientPath exists before chdir git-p4: use absolute directory for PWD env var git-p4: fix test for unsupported P4 Client Views git-p4: sort client views by reverse View number git-p4: support single file p4 client view maps Gustaf Hendeby (1): Add built-in diff patterns for MATLAB code Jakub Narębski (6): gitweb: Refactor diff body line classification gitweb: Extract formatting of diff chunk header gitweb: Give side-by-side diff extra CSS styling t9500: Add test for handling incomplete lines in diff by gitweb t9500: Add basic sanity tests for side-by-side diff in gitweb gitweb: Use href(-replay=>1,...) for formats links in "commitdiff" Jeff King (28): prune: handle --progress/no-progress reachable: per-object progress upload-archive: use start_command instead of fork test-lib: add test_config_global variant t5550: fix typo introduce credentials API credential: add function for parsing url components http: use credential API to get passwords credential: apply helper config credential: add credential.*.username credential: make relevance of http path configurable docs: end-user documentation for the credential subsystem credentials: add "cache" helper strbuf: add strbuf_add*_urlencode imap-send: avoid buffer overflow imap-send: don't check return value of git_getpass move git_getpass to its own source file refactor git_getpass into generic prompt function add generic terminal prompt function credentials: add "store" helper prompt: use git_terminal_prompt t: add test harness for external credential helpers credential: use git_prompt instead of git_getpass Makefile: linux has /dev/tty Makefile: OS X has /dev/tty contrib: add credential helper for OS X Keychain test-lib: redirect stdin of tests pretty: give placeholders to reflog identity Joey Hess (1): write first for-merge ref to FETCH_HEAD first Johannes Sixt (1): Makefile: unix sockets may not available on some platforms Jonathan Nieder (6): gitk: Make vi-style keybindings more vi-like test: add missing "&&" after echo command test: remove a porcelain test that hard-codes commit names t7501 (commit): modernize style test: commit --amend should honor --no-edit test: errors preparing for a test are not special Jonathon Mah (1): stash: Don't fail if work dir contains file named 'HEAD' Junio C Hamano (50): branch: add read_branch_desc() helper function format-patch: use branch description in cover letter branch: teach --edit-description option request-pull: modernize style request-pull: state what commit to expect request-pull: use the branch description fmt-merge-msg: use branch.$name.description write_pack_header(): a helper function create_tmp_packfile(): a helper function finish_tmp_packfile(): a helper function Split GPG interface into its own helper library merge: notice local merging of tags and keep it unwrapped fetch: allow "git fetch $there v1.0" to fetch a tag refs DWIMmery: use the same rule for both "git fetch" and others fmt-merge-msg: avoid early returns fmt-merge-msg: package options into a structure fmt-merge-msg: Add contents of merged tag in the merge message merge: make usage of commit->util more extensible merge: record tag objects without peeling in MERGE_HEAD request-pull: use the annotated tag contents commit: copy merged signed tags to headers of merge commit merge: force edit and no-ff mode when merging a tag object commit: teach --amend to carry forward extra headers commit-tree: update the command line parsing commit-tree: teach -m/-F options to read logs from elsewhere commit: teach --gpg-sign option log: --show-signature test "commit -S" and "log --show-signature" pretty: %G[?GS] placeholders gpg-interface: allow use of a custom GPG binary csum-file: introduce sha1file_checkpoint bulk-checkin: replace fast-import based implementation Kick-off the 1.7.9 cycle commit: honour --no-edit Update draft release notes for 1.7.9 Update draft release notes to 1.7.9 request-pull: update the "pull" command generation logic Update draft release notes to 1.7.9 request-pull: do not emit "tag" before the tagname Update draft release notes to 1.7.9 commit: do not lose mergetag header when not amending Update draft release notes to 1.7.9 Update draft release notes in preparation for 1.7.9-rc0 Update draft release notes to 1.7.9 verify_signed_buffer: fix stale comment commit --amend -S: strip existing gpgsig headers log-tree.c: small refactor in show_signature() log-tree: show mergetag in log --show-signature output log --show-signature: reword the common two-head merge case Git 1.7.9-rc0 Kato Kazuyoshi (2): gitweb: Add a feature to show side-by-side diff gitweb: Add navigation to select side-by-side diff Kirill A. Shutemov (1): git-tag: introduce --cleanup option Linus Torvalds (1): fetch: do not store peeled tag object names in FETCH_HEAD Martin von Zweigbergk (10): gitk: Fix file highlight when run in subdirectory gitk: Fix "show origin of this line" with separate work tree gitk: Fix "blame parent commit" with separate work tree gitk: Fix "External diff" with separate work tree gitk: Put temporary directory inside .git gitk: Run 'git rev-parse --git-dir' only once gitk: Simplify calculation of gitdir gitk: Show modified files with separate work tree t3401: modernize style t3401: use test_commit in setup Michael Haggerty (16): struct ref_entry: document name member refs: rename "refname" variables refs: rename parameters result -> sha1 clear_ref_array(): rename from free_ref_array() is_refname_available(): remove the "quiet" argument parse_ref_line(): add docstring add_ref(): add docstring is_dup_ref(): extract function from sort_ref_array() refs: change signatures of get_packed_refs() and get_loose_refs() get_ref_dir(): change signature resolve_gitlink_ref(): improve docstring Pass a (ref_cache *) to the resolve_gitlink_*() helper functions resolve_gitlink_ref_recursive(): change to work with struct ref_cache repack_without_ref(): remove temporary create_ref_entry(): extract function from add_ref() add_ref(): take a (struct ref_entry *) parameter Nguyễn Thái Ngọc Duy (14): fsck: return error code when verify_pack() goes wrong verify_packfile(): check as many object as possible in a pack fsck: avoid reading every object twice fsck: print progress prune: show progress while marking reachable objects Convert many resolve_ref() calls to read_ref*() and ref_exists() checkout,merge: disallow overwriting ignored files with --no-overwrite-ignore Copy resolve_ref() return value for longer use revert: convert resolve_ref() to read_ref_full() Convert resolve_ref+xstrdup to new resolve_refdup function Rename resolve_ref() to resolve_ref_unsafe() merge: abort if fails to commit Convert commit_tree() to take strbuf as message commit_tree(): refuse commit messages that contain NULs Pat Thoyts (11): git-gui: include the number of untracked files to stage when asking the user git-gui: theme the search and line-number entry fields on blame screen git-gui: catch invalid or complete regular expressions and treat as no match. git-gui: enable the smart case sensitive search only if gui.search.smartcase is true git-gui: set suitable extended window manager hints. git-gui: support underline style when parsing diff output git-gui: sort the numeric ansi codes git-gui: set whitespace warnings appropriate to this project git-gui: added config gui.gcwarning to disable the gc hint message git-gui: handle shell script text filters when loading for blame. git-gui 0.16 Paul Mackerras (1): gitk: Update copyright Pete Wyckoff (18): git-p4: introduce skipSubmitEdit git-p4: submit test for auto-creating clientPath git-p4: test for absolute PWD problem git-p4: fix skipSubmitEdit regression rename git-p4 tests git-p4: introduce asciidoc documentation git-p4: clone does not use --git-dir git-p4: test cloning with two dirs, clarify doc git-p4: document and test clone --branch git-p4: honor --changesfile option and test git-p4: document and test --import-local git-p4: test --max-changes git-p4: test --keep-path git-p4: test and document --use-client-spec git-p4: document and test submit options git-p4: test client view handling git-p4: rewrite view handling git-p4: view spec documentation Ramkumar Ramachandra (11): t3200 (branch): fix '&&' chaining test: fix '&&' chaining t3030 (merge-recursive): use test_expect_code t1510 (worktree): fix '&&' chaining t3040 (subprojects-basic): fix '&&' chaining, modernize style revert: free msg in format_todo() revert: make commit subjects in insn sheet optional revert: tolerate extra spaces, tabs in insn sheet revert: simplify getting commit subject in format_todo() t3510 (cherry-pick-sequencer): use exit status t3502, t3510: clarify cherry-pick -m failure Ramsay Jones (3): builtin/log.c: Fix an "Using plain integer as NULL pointer" warning environment.c: Fix an sparse "symbol not declared" warning fmt-merge-msg.c: Fix an "dubious one-bit signed bitfield" sparse error Raphael Zimmerer (1): gitk: When a commit contains a note, mark it with a yellow box René Scharfe (5): read-cache.c: allocate index entries individually cache.h: put single NUL at end of struct cache_entry use struct sha1_array in diff_tree_combined() pass struct commit to diff_tree_combined_merge() submodule: use diff_tree_combined_merge() instead of diff_tree_combined() SZEDER Gábor (9): completion: document __gitcomp() completion: optimize refs completion completion: make refs completion consistent for local and remote repos completion: improve ls-remote output filtering in __git_refs() completion: support full refs from remote repositories completion: query only refs/heads/ in __git_refs_remotes() completion: improve ls-remote output filtering in __git_refs_remotes() completion: fast initial completion for config 'remote.*.fetch' value completion: remove broken dead code from __git_heads() and __git_tags() Samuel Bronson (1): git-gui: Set both 16x16 and 32x32 icons on X to pacify Xming. Steven Walter (1): git-svn.perl: close the edit for propedits even with no mods Thomas Rast (5): grep: load funcname patterns for -W grep: enable threading with -p and -W using lazy attribute lookup grep: disable threading in non-worktree case test-terminal: set output terminals to raw mode bash completion: use read -r everywhere Tilman Vogel (1): git-gui: add config value gui.diffopts for passing additional diff options Vincent van Ravesteijn (4): Compile fix for MSVC: Do not include sys/resources.h Compile fix for MSVC: Include <io.h> MSVC: Remove unneeded header stubs Show error for 'git merge' with unset merge.defaultToUpstream Yggy King (1): gitk: Make "touching paths" search support backslashes Ævar Arnfjörð Bjarmason (5): pull: introduce a pull.rebase option to enable --rebase i18n: add infrastructure for translating Git with gettext Fix an enum assignment issue spotted by Sun Studio Fix a bitwise negation assignment issue spotted by Sun Studio Appease Sun Studio by renaming "tmpfile" Version v1.7.8.6; changes since v1.7.8.5: ----------------------------------------- Carlos Martín Nieto (1): Documentation: use {asterisk} in rev-list-options.txt when needed Clemens Buchacher (1): t5541: check error message against the real port number used D Waitzman (1): Documentation/gitweb: trivial English fixes Jakub Narębski (1): gitweb: Fix actionless dispatch for non-existent objects Johannes Sixt (1): t0090: be prepared that 'wc -l' writes leading blanks Jonathan Nieder (1): bundle: remove stray single-quote from error message Junio C Hamano (4): i18n of multi-line advice messages fetch/receive: remove over-pessimistic connectivity check Git 1.7.7.7 Git 1.7.8.6 Kirill Smelkov (1): t/Makefile: Use $(sort ...) explicitly where needed Phil Hord (1): rerere: Document 'rerere remaining' Shawn O. Pearce (1): remote-curl: Fix push status report when all branches fail Thomas Rast (13): Add test-scrap-cache-tree Test the current state of the cache-tree optimization Refactor cache_tree_update idiom from commit commit: write cache-tree data when writing index anyway reset: update cache-tree data when appropriate bundle: put strbuf_readline_fd in strbuf.c with adjustments bundle: use a strbuf to scan the log for boundary commits strbuf: improve strbuf_get*line documentation t5704: match tests to modern style t5510: refactor bundle->pack conversion t5510: ensure we stay in the toplevel test dir bundle: keep around names passed to add_pending_object() Document the --histogram diff option Version v1.7.8.5; changes since v1.7.8.4: ----------------------------------------- Andrew Wong (1): rebase -m: only call "notes copy" when rewritten exists and is non-empty Dmitry V. Levin (1): Makefile: add thread-utils.h to LIB_H Jeff King (1): imap-send: remove dead code Jim Meyering (1): am: don't infloop for an empty input file Junio C Hamano (2): Git 1.7.6.6 Git 1.7.8.5 Michał Kiedrowicz (1): grep -P: Fix matching ^ and $ Version v1.7.8.4; changes since v1.7.8.3: ----------------------------------------- Jeff King (5): send-email: multiedit is a boolean config option attr: don't confuse prefixes with leading directories attr: drop misguided defensive coding attr: fix leak in free_attr_elem thin-pack: try harder to use preferred base objects as base Junio C Hamano (11): attr.c: make bootstrap_attr_stack() leave early attr.c: clarify the logic to pop attr_stack Documentation: rerere's rr-cache auto-creation and rerere.enabled Prepare for 1.7.6.6 Prepare for 1.7.7.6 Prepare for 1.7.8.4 Update draft release notes to 1.7.6.6 Update draft release notes to 1.7.7.6 Update draft release notes to 1.7.8.4 Git 1.7.7.6 Git 1.7.8.4 Nguyễn Thái Ngọc Duy (2): t2203: fix wrong commit command diff-index: enable recursive pathspec matching in unpack_trees Version v1.7.8.3; changes since v1.7.8.2: ----------------------------------------- Brian Harring (1): fix hang in git fetch if pointed at a 0 length bundle Clemens Buchacher (2): Documentation: read-tree --prefix works with existing subtrees t5550: repack everything into one file Jack Nagel (1): Add MYMETA.json to perl/.gitignore Jakub Narębski (1): gitweb: Fix fallback mode of to_utf8 subroutine Jens Lehmann (1): docs: describe behavior of relative submodule URLs Junio C Hamano (1): Git 1.7.8.3 Jürgen Kreileder (3): gitweb: Call to_utf8() on input string in chop_and_escape_str() gitweb: esc_html() site name for title in OPML gitweb: Output valid utf8 in git_blame_common('data') Nguyễn Thái Ngọc Duy (1): Catch invalid --depth option passed to clone or fetch Thomas Rast (1): Documentation: rerere.enabled is the primary way to configure rerere Version v1.7.8.2; changes since v1.7.8.1: ----------------------------------------- Andrew Wong (1): rebase -i: interrupt rebase when "commit --amend" failed during "reword" Conrad Irwin (1): Update documentation for stripspace Eric Wong (1): enable SO_KEEPALIVE for connected TCP sockets Erik Faye-Lund (2): compat/setenv.c: update errno when erroring out compat/setenv.c: error if name contains '=' Jeff King (20): read-cache: let refresh_cache_ent pass up changed flags refresh_index: rename format variables refresh_index: make porcelain output more specific compat/snprintf: don't look at va_list twice docs: mention "-k" for both forms of "git mv" mv: honor --verbose flag mv: make non-directory destination error more clear mv: improve overwrite warning mv: be quiet about overwriting drop "match" parameter from get_remote_heads t5500: give fully-qualified refs to fetch-pack fetch-pack: match refs exactly connect.c: drop path_match function t5540: test DAV push with authentication http-push: enable "proactive auth" use custom rename score during --follow docs: brush up obsolete bits of git-fsck manpage make "git push -v" actually verbose commit, merge: initialize static strbuf remote-curl: don't pass back fake refs Jelmer Vernooij (1): Fix an incorrect reference to --set-all. Johan Herland (3): t9301: Fix testcase covering up a bug in fast-import's notes fanout handling t9301: Add 2nd testcase exposing bugs in fast-import's notes fanout handling fast-import: Fix incorrect fanout level when modifying existing notes refs Johannes Sixt (1): Compatibility: declare strtoimax() under NO_STRTOUMAX Jonathan Nieder (9): branch: allow a no-op "branch -M <current-branch> HEAD" Allow checkout -B <current-branch> to update the current branch revert: give --continue handling its own function revert: allow cherry-pick --continue to commit before resuming revert: pass around rev-list args in already-parsed form revert: allow single-pick in the middle of cherry-pick sequence revert: do not remove state until sequence is finished Revert "reset: Make reset remove the sequencer state" revert: stop creating and removing sequencer-old directory Junio C Hamano (5): checkout -m: no need to insist on having all 3 stages checkout_merged(): squelch false warning from some gcc lf_to_crlf_filter(): resurrect CRLF->CRLF hack advice: Document that they all default to true Git 1.7.8.2 Nick Alcock (2): Add strtoimax() compatibility function. Support sizes >=2G in various config options accepting 'g' sizes. Pete Harlan (1): Test 'checkout -m -- path' Thomas Jarosch (1): imap-send: Remove unused 'use_namespace' variable Thomas Rast (1): git-sh-setup: make require_clean_work_tree part of the interface Ævar Arnfjörð Bjarmason (1): t/t2023-checkout-m.sh: fix use of test_must_fail Version v1.7.8.1; changes since v1.7.8: --------------------------------------- Brandon Casey (2): t/t4131-apply-fake-ancestor.sh: fix broken test builtin/apply.c: report error on failure to recognize input Carlos Martín Nieto (2): convert: track state in LF-to-CRLF filter clone: the -o option has nothing to do with <branch> Erik Faye-Lund (1): mingw: give waitpid the correct signature Jack Nagel (1): Documentation: fix formatting error in merge-options.txt Jeff King (5): http: drop "local" member from request struct archive: don't let remote clients get unreachable commits stripspace: fix outdated comment fetch: create status table using strbuf blame: don't overflow time buffer Jens Lehmann (1): diff/status: print submodule path when looking for changes fails Junio C Hamano (9): get_tree_entry(): do not call find_tree_entry() on an empty tree unpack_object_header_buffer(): clear the size field upon error receive-pack, fetch-pack: reject bogus pack that records objects twice pack-object: tolerate broken packs that have duplicated objects Git 1.7.6.5 Git 1.7.7.5 Update draft release notes for 1.7.8.1 lf_to_crlf_filter(): tell the caller we added "\n" when draining Git 1.7.8.1 Martin von Zweigbergk (1): am: don't persist keepcr flag Michael Haggerty (1): git symbolic-ref: documentation fix Michael Schubert (2): builtin/commit: add missing '/' in help message builtin/log: remove redundant initialization Mika Fischer (3): http.c: Use curl_multi_fdset to select on curl fds instead of just sleeping http.c: Use timeout suggested by curl instead of fixed 50ms timeout http.c: Rely on select instead of tracking whether data was received Nguyễn Thái Ngọc Duy (5): tree-walk.c: do not leak internal structure in tree_entry_len() read_directory_recursive: reduce one indentation level tree_entry_interesting(): give meaningful names to return values tree_entry_interesting: make use of local pointer "item" checkout,merge: loosen overwriting untracked file check based on info/exclude Sebastian Morr (1): Add MYMETA.yml to perl/.gitignore Thomas Rast (1): userdiff: allow * between cpp funcname words Ævar Arnfjörð Bjarmason (3): apply: get rid of useless x < 0 comparison on a size_t type cast variable in call to free() in builtin/diff.c and submodule.c builtin/init-db.c: eliminate -Wformat warning on Solaris Version v1.7.8; changes since v1.7.8-rc4: ----------------------------------------- Junio C Hamano (1): Git 1.7.8 Version v1.7.8-rc4; changes since v1.7.8-rc3: --------------------------------------------- Johannes Sixt (1): Fix revert --abort on Windows Jonathan Nieder (11): do not let git_path clobber errno when reporting errors notes merge: eliminate OUTPUT macro Makefile: add missing header file dependencies Makefile: add option to disable automatic dependency generation revert: rename --reset option to --quit revert: rearrange pick_revisions() for clarity revert: improve error message for cherry-pick during cherry-pick revert: write REVERT_HEAD pseudoref during conflicted revert revert: introduce --abort to cancel a failed cherry-pick revert: remove --reset compatibility option revert --abort: do not leave behind useless sequencer-old directory Junio C Hamano (5): name-rev --all: do not even attempt to describe non-commit object Git 1.7.7.4 Hopefully final update of release notes before 1.7.8 final Update 1.7.8 draft release notes in preparation for rc4 Git 1.7.8-rc4 Marc-André Lureau (1): mailmap: xcalloc mailmap_info Nguyễn Thái Ngọc Duy (1): revert: do not pass non-literal string as format to git_path() Ramkumar Ramachandra (4): http: remove unused function hex() convert: don't mix enum with int sha1_file: don't mix enum with int git-compat-util: don't assume value for undefined variable Ramsay Jones (3): t5501-*.sh: Fix url passed to clone in setup test config.c: Fix a static buffer overwrite bug by avoiding mkpath() convert.c: Fix return type of git_path_check_eol() Thomas Hochstein (1): documentation fix: git difftool uses diff tools, not merge tools. Vincent van Ravesteijn (2): builtin-branch: Fix crash on invalid use of --force builtin-reset: Documentation update Version v1.7.8-rc3; changes since v1.7.8-rc2: --------------------------------------------- Junio C Hamano (3): Revert "upload-archive: use start_command instead of fork" refs: loosen over-strict "format" check Git 1.7.8-rc3 Ramkumar Ramachandra (1): revert: prettify fatal messages Version v1.7.8-rc2; changes since v1.7.8-rc1: --------------------------------------------- Felipe Contreras (1): remote: fix remote set-url usage Jeff King (1): docs: don't mention --quiet or --exit-code in git-log(1) Junio C Hamano (5): remote: fix set-branches usage docs: Update install-doc-quick Git 1.7.7.3 Update draft release notes to 1.7.8 Git 1.7.8-rc2 Liu Yuan (1): mktree: fix a memory leak in write_tree() SZEDER Gábor (1): completion: don't leak variable from the prompt into environment Version v1.7.8-rc1; changes since v1.7.8-rc0: --------------------------------------------- Dan McGee (4): pack-objects: mark add_to_write_order() as inline pack-objects: use unsigned int for counter and offset values pack-objects: rewrite add_descendants_to_write_order() iteratively pack-objects: don't traverse objects unnecessarily Erik Faye-Lund (4): mingw: move poll out of sys-folder compat/win32/poll.c: upgrade from upstream upload-archive: use start_command instead of fork mingw: poll.h is no longer in sys/ Johannes Sixt (1): name-hash.c: always initialize dir_next pointer Junio C Hamano (5): (squash) test for previous Git 1.7.7.2 Update draft release notes to 1.7.8 receive-pack: do not expect object 0{40} to exist Git 1.7.8-rc1 Nguyễn Thái Ngọc Duy (2): pretty.c: free get_header() return value pretty.c: use original commit message if reencoding fails Pat Thoyts (1): t7511: avoid use of reserved filename on Windows. Pete Wyckoff (1): git-p4: ignore apple filetype Sebastian Schuberth (2): blame.c: Properly initialize strbuf after calling, textconv_object() blame.c: Properly initialize strbuf after calling textconv_object(), again Stefan Naewe (2): t3200: add test case for 'branch -m' http: don't always prompt for password Tay Ray Chuan (1): branch -m: handle no arg properly Ted Percival (1): svn: Quote repository root in regex match Ævar Arnfjörð Bjarmason (2): t/t6030-bisect-porcelain.sh: use test_i18ngrep t/t7508-status.sh: use test_i18ncmp Version v1.7.8-rc0; changes since v1.7.7.7: ------------------------------------------- Bert Wesarg (7): grep: do not use --index in the short usage output grep --no-index: don't use git standard exclusions git-gui: search and linenumber input are mutual exclusive in the blame view git-gui: only accept numbers in the goto-line input git-gui: clear the goto line input when hiding git-gui: incremental goto line in blame view grep: fix the error message that mentions --exclude Brad King (2): submodule: Demonstrate known breakage during recursive merge submodule: Search for merges only at end of recursive merge Brandon Casey (8): t/t3905: use the name 'actual' for test output, swap arguments to test_cmp git-stash.sh: fix typo in error message t/t3905: add missing '&&' linkage git-stash: remove untracked/ignored directories when stashed refs.c: ensure struct whose member may be passed to realloc is initialized refs.c: abort ref search if ref array is empty refs.c: free duplicate entries in the ref array instead of leaking them t/t3000-ls-files-others.sh: use $SHELL_PATH to run git-new-workdir script Carlos Martín Nieto (1): Documentation: update [section.subsection] to reflect what git does Chris Packham (1): git-web--browse: avoid the use of eval Christoffer Pettersson (1): git-gui: Corrected a typo in the Swedish translation of 'Continue' Clemens Buchacher (5): remove prefix argument from pathspec_prefix rename pathspec_prefix() to common_prefix() and move to dir.[ch] send-email: add option -h use -h for synopsis and --help for manpage consistently use test number as port number Cord Seele (3): Add Git::config_path() use new Git::config_path() for aliasesfile send-email: Fix %config_path_settings handling Dan McGee (2): tree-walk: drop unused parameter from match_dir_prefix tree-walk: micro-optimization in tree_entry_interesting David Aguilar (1): Makefile: Improve compiler header dependency check David Fries (2): git-gui: Enable jumping to a specific line number in blame view. git-gui: Add keyboard shortcuts for search and goto commands in blame view. Dmitry Ivankov (3): Fix typo: existant->existent fast-import: don't allow to tag empty branch fast-import: don't allow to note on empty branch Drew Northup (1): gitweb: Add gitweb.conf(5) manpage for gitweb configuration files Erik Faye-Lund (2): enter_repo: do not modify input mingw: avoid using strbuf in syslog Fredrik Gustafsson (2): rev-parse: add option --resolve-git-dir <path> Move git-dir for submodules Fredrik Kuivinen (1): Makefile: Use computed header dependencies if the compiler supports it Frédéric Heitzmann (1): git svn dcommit: new option --interactive. Giuseppe Bilotta (1): am: preliminary support for hg patches Heiko Voigt (4): git-gui: warn when trying to commit on a detached head submodule: move update configuration variable further up add update 'none' flag to disable update of submodule by default git-gui: deal with unknown files when pressing the "Stage Changed" button Hui Wang (1): sha1_file: normalize alt_odb path before comparing and storing Jakub Narębski (5): gitweb: Add gitweb(1) manpage for gitweb itself Documentation: Link to gitweb(1) and gitweb.conf(5) in other manpages Documentation: Add gitweb config variables to git-config(1) gitweb: Add gitweb manpages to 'gitweb' package in git.spec Add simple test for Git::config_path() in t/t9700-perl-git.sh Jay Soffian (5): Teach '--cached' option to check-attr log --children revert.c: defer writing CHERRY_PICK_HEAD till it is safe to do so cherry-pick: do not give irrelevant advice when cherry-pick punted Teach merge the '[-e|--edit]' option Jeff King (20): url: decode buffers that are not NUL-terminated improve httpd auth tests remote-curl: don't retry auth failures with dumb protocol http: retry authentication failures for all http requests t7004: factor out gpg setup t6300: add more body-parsing tests for-each-ref: refactor subject and body placeholder parsing for-each-ref: handle multiline subjects like --pretty t3200: clean up checks for file existence fix phantom untracked files when core.ignorecase is set t1300: put git invocations inside test function t1300: test mixed-case variable retrieval pack-objects: protect against disappearing packs downgrade "packfile cannot be accessed" errors to warnings daemon: give friendlier error messages to clients http_init: accept separate URL parameter contrib: add diff highlight script tests: add missing executable bits contrib: add git-jump script completion: match ctags symbol names in grep patterns Jeremie Nikaes (1): Add a remote helper to interact with mediawiki (fetch & push) Johannes Schindelin (5): Fix is_gitfile() for files too small or larger than PATH_MAX to be a gitfile t1020: disable the pwd test on MinGW t9001: do not fail only due to CR/LF issues t9300: do not run --cat-blob-fd related tests on MinGW git grep: be careful to use mutexes only when they are initialized Johannes Sixt (2): t1402-check-ref-format: skip tests of refs beginning with slash on Windows t1300: attempting to remove a non-existent .git/config is not an error Jonathan Nieder (3): ident: check /etc/mailname if email is unknown ident: do not retrieve default ident when unnecessary Makefile: fix permissions of mergetools/ checked out with permissive umask Julian Phillips (2): Don't sort ref_list too early refs: Use binary search to lookup refs faster Junio C Hamano (47): rev-list: fix finish_object() call revision.c: add show_object_with_name() helper function revision.c: update show_object_with_name() without using malloc() list-objects: pass callback data to show_objects() rev-list --verify-object fetch: verify we have everything we need before updating our ref fetch.fsckobjects: verify downloaded objects transfer.fsckobjects: unify fetch/receive.fsckobjects test: fetch/receive with fsckobjects consolidate pathspec_prefix and common_prefix fetch: verify we have everything we need before updating our ref check_everything_connected(): refactor to use an iterator check_everything_connected(): libify receive-pack: check connectivity before concluding "git push" builtin/revert.c: make commit_list_append() static refs.c: make create_cached_refs() static send-pack: typofix error message rename "match_refs()" to "match_push_refs()" Allow git merge ":/<pattern>" ls-remote: a lone "-h" is asking for help t0003: remove extra whitespaces parse-options: deprecate OPT_BOOLEAN archive.c: use OPT_BOOL() url.c: simplify is_url() grep: teach --untracked and --exclude-standard options Post 1.7.7 first wave Update draft release notes to 1.7.8 refs.c: move dwim_ref()/dwim_log() from sha1_name.c Update draft release notes to 1.7.8 bundle: allowing to read from an unseekable fd bundle: add parse_bundle_header() helper function Update draft release notes to 1.7.8 t7800: avoid arithmetic expansion notation Update draft release notes to 1.7.8 resolve_gitlink_packed_ref(): fix mismerge Update draft release notes to 1.7.8 Makefile: ask "ls-files" to list source files if available libperl-git: refactor Git::config_* Update draft release notes to 1.7.8 resolve_ref(): expose REF_ISBROKEN flag resolve_ref(): report breakage to the caller without warning Update draft release notes to 1.7.8 builtin/grep: make lock/unlock into static inline functions builtin/grep: simplify lock_and_read_sha1_file() Update draft release notes to 1.7.8 Update draft release notes to 1.7.8 Git 1.7.8-rc0 Luke Diamand (1): git-p4: handle files with shell metacharacters Lénaïc Huard (1): gitweb: provide a way to customize html headers Matthieu Moy (6): git-remote-mediawiki: allow push to set MediaWiki metadata git-remote-mediawiki: trivial fixes git-remote-mediawiki: set 'basetimestamp' to let the wiki handle conflicts git-remote-mediawiki: obey advice.pushNonFastForward git-remote-mediawiki: allow a domain to be set for authentication git-remote-mediawiki: don't include HTTP login/password in author Michael Haggerty (36): Extract a function clear_cached_refs() Access reference caches only through new function get_cached_refs() Change the signature of read_packed_refs() Allocate cached_refs objects dynamically Store the submodule name in struct cached_refs Retain caches of submodule refs get_sha1_hex(): do not read past a NUL character t1402: add some more tests git check-ref-format: add options --allow-onelevel and --refspec-pattern Change bad_ref_char() to return a boolean value Change check_ref_format() to take a flags argument Refactor check_refname_format() Do not allow ".lock" at the end of any refname component Make collapse_slashes() allocate memory for its result Inline function refname_format_print() Change check_refname_format() to reject unnormalized refnames resolve_ref(): explicitly fail if a symlink is not readable resolve_ref(): use prefixcmp() resolve_ref(): only follow a symlink that contains a valid, normalized refname resolve_ref(): turn buffer into a proper string as soon as possible resolve_ref(): extract a function get_packed_ref() resolve_ref(): do not follow incorrectly-formatted symbolic refs remote: use xstrdup() instead of strdup() remote: avoid passing NULL to read_ref() resolve_ref(): verify that the input refname has the right format resolve_ref(): emit warnings for improperly-formatted references resolve_ref(): also treat a too-long SHA1 as invalid resolve_ref(): expand documentation add_ref(): verify that the refname is formatted correctly invalidate_ref_cache(): rename function from invalidate_cached_refs() invalidate_ref_cache(): take the submodule as parameter invalidate_ref_cache(): expose this function in the refs API clear_ref_cache(): rename parameter clear_ref_cache(): extract two new functions write_ref_sha1(): only invalidate the loose ref cache clear_ref_cache(): inline function Michael J Gruber (7): t6040: test branch -vv git-tag: introduce long forms for the options git-branch: introduce missing long forms for the options branch: introduce --list option branch: allow pattern arguments branch: -v does not automatically imply --list http: use hostname in credential description Michael W. Olson (1): git-svn: Allow certain refs to be ignored Michał Górny (1): for-each-ref: add split message parts to %(contents:*). Nguyễn Thái Ngọc Duy (6): sparse checkout: show error messages when worktree shaping fails Add explanation why we do not allow to sparse checkout to empty working tree pack-protocol: document "ERR" line daemon: return "access denied" if a service is not allowed daemon: log errors if we could not use some sockets t5403: convert leading spaces to tabs Pang Yan Han (1): receive-pack: don't pass non-existent refs to post-{receive,update} hooks Pat Thoyts (6): git-gui: updated translator README for current procedures. Fix tooltip display with multiple monitors on windows. git-gui: drop the 'n' and 'Shift-n' bindings from the last patch. mergetools: use the correct tool for Beyond Compare 3 on Windows mingw: ensure sockets are initialized before calling gethostname t9901: fix line-ending dependency on windows Pete Wyckoff (5): git-p4 tests: refactor and cleanup git-p4: handle utf16 filetype properly git-p4: recognize all p4 filetypes git-p4: stop ignoring apple filetype git-p4: keyword flattening fixes Peter Oberndorfer (1): "rebase -i": support special-purpose editor to edit insn sheet Phil Hord (3): Learn to handle gitfiles in enter_repo Teach transport about the gitfile mechanism Add test showing git-fetch groks gitfiles Ramkumar Ramachandra (18): advice: Introduce error_resolve_conflict config: Introduce functions to write non-standard file revert: Simplify and inline add_message_to_msg revert: Don't check lone argument in get_encoding revert: Rename no_replay to record_origin revert: Eliminate global "commit" variable revert: Introduce struct to keep command-line options revert: Separate cmdline parsing from functional code revert: Don't create invalid replay_opts in parse_args revert: Save data for continuing after conflict resolution revert: Save command-line options for continuing operation revert: Make pick_commits functionally act on a commit list revert: Introduce --reset to remove sequencer state reset: Make reset remove the sequencer state revert: Remove sequencer state when no commits are pending revert: Don't implicitly stomp pending sequencer operation revert: Introduce --continue to continue the operation revert: Propagate errors upwards from do_pick_commit Ramsay Jones (5): Makefile: Make dependency directory creation less noisy sparse: Fix an "Using plain integer as NULL pointer" warning obstack.c: Fix some sparse warnings Fix some "variable might be used uninitialized" warnings gitweb/Makefile: Remove static/gitweb.js in the clean target René Scharfe (23): parseopt: add OPT_NOOP_NOARG revert: use OPT_NOOP_NOARG apply: use OPT_NOOP_NOARG checkout: check for "Previous HEAD" notice in t2020 revision: factor out add_pending_sha1 checkout: use add_pending_{object,sha1} in orphan check revision: add leak_pending flag bisect: use leak_pending flag bundle: use leak_pending flag checkout: use leak_pending flag commit: factor out clear_commit_marks_for_object_array test-ctype: macrofy test-ctype: add test for is_pathspec_magic name-rev: split usage string pickaxe: plug diff filespec leak with empty needle pickaxe: plug regex leak pickaxe: plug regex/kws leak pickaxe: factor out has_changes pickaxe: pass diff_options to contains and has_changes pickaxe: give diff_grep the same signature as has_changes pickaxe: factor out pickaxe xdiff: factor out get_func_line() diff: add option to show whole functions as context SZEDER Gábor (2): completion: unite --reuse-message and --reedit-message for 'notes' completion: unite --format and --pretty for 'log' and 'show' Sebastian Schuberth (2): git-svn: On MSYS, escape and quote SVN_SSH also if set by the user inet_ntop.c: Work around GCC 4.6's detection of uninitialized variables Sitaram Chamarty (1): git-difftool: allow skipping file by typing 'n' at prompt Stefan Naewe (1): completion: fix issue with process substitution not working on Git for Windows Tay Ray Chuan (3): fetch: plug two leaks on error exit in store_updated_refs submodule: whitespace fix submodule::module_clone(): silence die() message from module_name() Teemu Matilainen (3): completion: unite --reuse-message and --reedit-message handling completion: commit --fixup and --squash completion: push --set-upstream Zbigniew Jędrzejewski-Szmek (1): send-email: auth plain/login fix Version v1.7.7.7; changes since v1.7.7.6: ----------------------------------------- Jeff King (1): imap-send: remove dead code Jonathan Nieder (1): bundle: remove stray single-quote from error message Junio C Hamano (2): Git 1.7.6.6 Git 1.7.7.7 Thomas Rast (1): Document the --histogram diff option Version v1.7.7.6; changes since v1.7.7.5: ----------------------------------------- Clemens Buchacher (1): Documentation: read-tree --prefix works with existing subtrees Jack Nagel (1): Add MYMETA.json to perl/.gitignore Jeff King (4): attr: don't confuse prefixes with leading directories attr: drop misguided defensive coding attr: fix leak in free_attr_elem thin-pack: try harder to use preferred base objects as base Jens Lehmann (1): docs: describe behavior of relative submodule URLs Junio C Hamano (8): attr.c: make bootstrap_attr_stack() leave early attr.c: clarify the logic to pop attr_stack Documentation: rerere's rr-cache auto-creation and rerere.enabled Prepare for 1.7.6.6 Prepare for 1.7.7.6 Update draft release notes to 1.7.6.6 Update draft release notes to 1.7.7.6 Git 1.7.7.6 Nguyễn Thái Ngọc Duy (2): t2203: fix wrong commit command diff-index: enable recursive pathspec matching in unpack_trees Thomas Rast (1): Documentation: rerere.enabled is the primary way to configure rerere Version v1.7.7.5; changes since v1.7.7.4: ----------------------------------------- Erik Faye-Lund (1): mingw: give waitpid the correct signature Jeff King (3): stripspace: fix outdated comment fetch: create status table using strbuf blame: don't overflow time buffer Junio C Hamano (2): Git 1.7.6.5 Git 1.7.7.5 Martin von Zweigbergk (1): am: don't persist keepcr flag Michael Haggerty (1): git symbolic-ref: documentation fix Nguyễn Thái Ngọc Duy (1): checkout,merge: loosen overwriting untracked file check based on info/exclude Sebastian Morr (1): Add MYMETA.yml to perl/.gitignore Thomas Hochstein (1): documentation fix: git difftool uses diff tools, not merge tools. Ævar Arnfjörð Bjarmason (2): apply: get rid of useless x < 0 comparison on a size_t type cast variable in call to free() in builtin/diff.c and submodule.c Version v1.7.7.4; changes since v1.7.7.3: ----------------------------------------- Jonathan Nieder (2): notes merge: eliminate OUTPUT macro Makefile: add missing header file dependencies Junio C Hamano (2): name-rev --all: do not even attempt to describe non-commit object Git 1.7.7.4 Marc-André Lureau (1): mailmap: xcalloc mailmap_info Version v1.7.7.3; changes since v1.7.7.2: ----------------------------------------- Dan McGee (4): pack-objects: mark add_to_write_order() as inline pack-objects: use unsigned int for counter and offset values pack-objects: rewrite add_descendants_to_write_order() iteratively pack-objects: don't traverse objects unnecessarily Jeff King (1): docs: don't mention --quiet or --exit-code in git-log(1) Julien Muchembled (1): gitweb: fix regression when filtering out forks Junio C Hamano (3): branch -m/-M: remove undocumented RENAMED-REF docs: Update install-doc-quick Git 1.7.7.3 Version v1.7.7.2; changes since v1.7.7.1: ----------------------------------------- Brandon Casey (4): attr.c: avoid inappropriate access to strbuf "buf" member cleanup: use internal memory allocation wrapper functions everywhere builtin/mv.c: plug miniscule memory leak attr.c: respect core.ignorecase when matching attribute patterns Carlos Martín Nieto (6): Remove 'working copy' from the documentation and C code fetch: free all the additional refspecs t5510: add tests for fetch --prune remote: separate out the remote_find_tracking logic into query_refspecs fetch: honor the user-provided refspecs when pruning refs fetch: treat --tags like refs/tags/*:refs/tags/* when pruning Christian Couder (1): bisect: fix exiting when checkout failed in bisect_start() Haitao Li (1): date.c: Support iso8601 timezone formats Jakub Narębski (1): gitweb: Strip non-printable characters from syntax highlighter output Jeff King (8): add sha1_array API docs quote.h: fix bogus comment refactor argv_array into generic code quote: provide sq_dequote_to_argv_array bisect: use argv_array API checkout: use argv_array API run_hook: use argv_array API pull,rebase: handle GIT_WORK_TREE better Jim Meyering (1): make the sample pre-commit hook script reject names with newlines, too Jonathan Nieder (2): http: remove extra newline in error message http: avoid empty error messages for some curl errors Jonathon Mah (1): mergetool: Use args as pathspec to unmerged files Junio C Hamano (5): refactor run_receive_hook() diff: teach --stat/--numstat to honor -U$num mergetool: no longer need to save standard input attr: read core.attributesfile from git_default_core_config Git 1.7.7.2 Martin von Zweigbergk (4): remote: write correct fetch spec when renaming remote 'remote' remote: "rename o foo" should not rename ref "origin/bar" remote rename: warn when refspec was not updated remote: only update remote-tracking branch if updating refspec Matthew Daley (1): send-email: Honour SMTP domain when using TLS Michael Haggerty (1): notes_merge_commit(): do not pass temporary buffer to other function Michael J Gruber (3): unpack-trees: print "Aborting" to stderr git-read-tree.txt: language and typography fixes git-read-tree.txt: correct sparse-checkout and skip-worktree description Nguyễn Thái Ngọc Duy (2): git-read-tree.txt: update sparse checkout examples Reindent closing bracket using tab instead of spaces Pat Thoyts (1): t7511: avoid use of reserved filename on Windows. Peter Stuge (1): gitweb: Fix links to lines in blobs when javascript-actions are enabled Ramsay Jones (1): t9159-*.sh: skip for mergeinfo test for svn <= 1.4 René Scharfe (1): read-cache.c: fix index memory allocation Richard Hartmann (1): clone: Quote user supplied path in a single quote pair Shawn O. Pearce (1): remote-curl: Fix warning after HTTP failure Stefan Naewe (1): Documentation/git-update-index: refer to 'ls-files' Thomas Rast (1): Documentation: basic configuration of notes.rewriteRef Version v1.7.7.1; changes since v1.7.7: --------------------------------------- Brad King (1): rev-list: Demonstrate breakage with --ancestry-path --all Brandon Casey (1): strbuf.c: remove unnecessary strbuf_grow() from strbuf_getwholeline() Ilari Liusvaara (1): Support ERR in remote archive like in fetch/push Jay Soffian (1): merge-one-file: fix "expr: non-numeric argument" Jeff King (2): fetch: avoid quadratic loop checking for updated submodules filter-branch: use require_clean_work_tree Jim Meyering (1): fix "git apply --index ..." not to deref NULL Jonathan Nieder (2): Makefile: do not set setgid bit on directories on GNU/kFreeBSD RelNotes/1.7.7.1: setgid bit patch is about fixing "git init" via Makefile setting Junio C Hamano (14): revision: keep track of the end-user input from the command line revision: do not include sibling history in --ancestry-path output rebase -i: notice and warn if "exec $cmd" modifies the index or the working tree traverse_trees(): allow pruning with pathspec unpack-trees: allow pruning with pathspec diff-index: pass pathspec down to unpack-trees machinery fsck: do not abort upon finding an empty blob Teach progress eye-candy to fetch_refs_from_bundle() apply --whitespace=error: correctly report new blank lines at end checkout $tree $path: do not clobber local changes in $path not in $tree diff: resurrect XDF_NEED_MINIMAL with --minimal Prepare for 1.7.7.1 Almost ready for 1.7.7.1 Git 1.7.7.1 Matthieu Moy (2): rebase -i: clean error message for --continue after failed exec config: display key_delim for config --bool --get-regexp Michael Schubert (1): patch-id.c: use strbuf instead of a fixed buffer Nguyễn Thái Ngọc Duy (4): merge: keep stash[] a local variable merge: use return value of resolve_ref() to determine if HEAD is invalid merge: remove global variable head[] Accept tags in HEAD or MERGE_HEAD Nicolas Morey-Chaisemartin (1): grep: Fix race condition in delta_base_cache René Scharfe (2): Revert removal of multi-match discard heuristic in 27af01 t1304: fall back to $USER if $LOGNAME is not defined Thomas Rast (2): Symlink mergetools scriptlets into valgrind wrappers t6019: avoid refname collision on case-insensitive systems Version v1.7.7; changes since v1.7.7-rc3: ----------------------------------------- Gerrit Pape (2): contrib/hooks: adapt comment about Debian install location for contrib hooks templates/hooks--*: remove sample hooks without any functionality Junio C Hamano (2): Documentation/gitnamespaces.txt: cater to older asciidoc Git 1.7.7 Version v1.7.7-rc3; changes since v1.7.7-rc2: --------------------------------------------- Allan Caffee (1): describe: Refresh the index when run with --dirty Jay Soffian (1): git-mergetool: check return value from read Jeff King (1): t4014: clean up format.thread config after each test Junio C Hamano (3): Git 1.7.6.4 merge-recursive: Do not look at working tree during a virtual ancestor merge Git 1.7.7-rc3 Version v1.7.7-rc2; changes since v1.7.7-rc1: --------------------------------------------- Bryan Jacobs (1): git-svn: teach git-svn to populate svn:mergeinfo Frédéric Heitzmann (1): Disambiguate duplicate t9160* tests Junio C Hamano (2): branch --set-upstream: regression fix Git 1.7.7-rc2 Pang Yan Han (1): format-patch: ignore ui.color Version v1.7.7-rc1; changes since v1.7.7-rc0: --------------------------------------------- Ben Walton (2): Documentation: Grammar correction, wording fixes and cleanup Mark http-fetch without -a as deprecated Brandon Casey (1): t6030: use $SHELL_PATH to invoke user's preferred shell instead of bare sh Brian Gernhardt (1): t5540-http-test: shorten grep pattern Bryan Jacobs (1): git-svn: Teach dcommit --mergeinfo to handle multiple lines Conrad Irwin (2): Prevent force-updating of the current branch Show interpreted branch name in error messages Dmitry Ivankov (11): fast-import: add input format tests fast-import: don't fail on omitted committer name fast-import: check committer name more strictly fsck: add a few committer name tests fsck: improve committer/author check fast-import: add a test for tree delta base corruption fast-import: prevent producing bad delta fast-import: count and report # of calls to diff_delta in stats fast-import: treat cat-blob as a delta base hint for next blob fast-import: add tests for tagging blobs fast-import: allow to tag newly created objects Elijah Newren (55): t6042: Add a testcase where git deletes an untracked file t6042: Add failing testcase for rename/modify/add-source conflict t6042: Add a pair of cases where undetected renames cause issues t6042: Add a testcase where undetected rename causes silent file deletion t6042: Add tests for content issues with modify/rename/directory conflicts t6042: Ensure rename/rename conflicts leave index and workdir in sane state t6042: Add failing testcases for rename/rename/add-{source,dest} conflicts t6036: Add differently resolved modify/delete conflict in criss-cross test t6036: criss-cross with weird content can fool git into clean merge t6036: tests for criss-cross merges with various directory/file conflicts t6036: criss-cross w/ rename/rename(1to2)/modify+rename/rename(2to1)/modify t6036: criss-cross + rename/rename(1to2)/add-source + modify/modify t6022: Remove unnecessary untracked files to make test cleaner t6022: New tests checking for unnecessary updates of files t6022: Add testcase for merging a renamed file with a simple change merge-recursive: Make BUG message more legible by adding a newline merge-recursive: Correct a comment merge-recursive: Mark some diff_filespec struct arguments const merge-recursive: Consolidate different update_stages functions merge-recursive: Remember to free generated unique path names merge-recursive: Avoid working directory changes during recursive case merge-recursive: Fix recursive case with D/F conflict via add/add conflict merge-recursive: Fix sorting order and directory change assumptions merge-recursive: Fix code checking for D/F conflicts still being present merge-recursive: Save D/F conflict filenames instead of unlinking them merge-recursive: Split was_tracked() out of would_lose_untracked() merge-recursive: Allow make_room_for_path() to remove D/F entries merge-recursive: Split update_stages_and_entry; only update stages at end merge-recursive: Fix deletion of untracked file in rename/delete conflicts merge-recursive: Make dead code for rename/rename(2to1) conflicts undead merge-recursive: Add comments about handling rename/add-source cases merge-recursive: Improve handling of rename target vs. directory addition merge-recursive: Consolidate process_entry() and process_df_entry() merge-recursive: Cleanup and consolidation of rename_conflict_info merge-recursive: Provide more info in conflict markers with file renames merge-recursive: When we detect we can skip an update, actually skip it merge-recursive: Fix modify/delete resolution in the recursive case merge-recursive: Introduce a merge_file convenience function merge-recursive: Fix rename/rename(1to2) resolution for virtual merge base merge-recursive: Small cleanups for conflict_rename_rename_1to2 merge-recursive: Defer rename/rename(2to1) handling until process_entry merge-recursive: Record more data needed for merging with dual renames merge-recursive: Create function for merging with branchname:file markers merge-recursive: Consider modifications in rename/rename(2to1) conflicts merge-recursive: Make modify/delete handling code reusable merge-recursive: Have conflict_rename_delete reuse modify/delete code merge-recursive: add handling for rename/rename/add-dest/add-dest merge-recursive: Fix working copy handling for rename/rename/add/add t6022: Add testcase for spurious "refusing to lose untracked" messages merge-recursive: Fix spurious 'refusing to lose untracked file...' messages t6022: Additional tests checking for unnecessary updates of files merge-recursive: Avoid unnecessary file rewrites t6036: criss-cross + rename/rename(1to2)/add-dest + simple modify merge-recursive: Fix virtual merge base for rename/rename(1to2)/add-dest merge-recursive: Don't re-sort a list whose order we depend upon Eric Wong (1): git-svn: fix fetch with moved path when using rewriteRoot Fredrik Gustafsson (1): push: Don't push a repository with unpushed submodules Fredrik Kuivinen (6): Add obstack.[ch] from EGLIBC 2.10 Add string search routines from GNU grep Adapt the kwset code to Git Use kwset in pickaxe Use kwset in grep obstack: Fix portability issues Giuseppe Bilotta (2): am: format is in $patch_format, not parse_patch am: fix stgit patch mangling Jeff King (12): t3030: fix accidental success in symlink rename t7006: modernize calls to unset test-lib: add helper functions for config t7006: use test_config helpers setup_pager: set GIT_PAGER_IN_USE diff: refactor COLOR_DIFF from a flag into an int git_config_colorbool: refactor stdout_is_tty handling color: delay auto-color decision until point of use config: refactor get_colorbool function diff: don't load color config in plumbing want_color: automatically fallback to color.ui support pager.* for external commands Jens Lehmann (1): fetch: skip on-demand checking when no submodules are configured Johannes Sixt (2): string-list: Add API to remove an item from an unsorted list t3005: do not assume a particular order of stdout and stderr of git-ls-files Jon Seymour (1): bisect: take advantage of gettextln, eval_gettextln. Jonathan Nieder (1): Documentation/remote-helpers: explain capabilities first Junio C Hamano (14): combine-diff: support format_callback read_gitfile_gently(): rename misnamed function to read_gitfile() clone: allow more than one --reference clone: clone from a repository with relative alternates Update draft release notes to 1.7.7 Documentation: clarify "git clean -e <pattern>" Update draft release notes to 1.7.7 Revert "Merge branch 'cb/maint-quiet-push' into maint" Git 1.7.6.2 Update draft release notes to 1.7.7 Minor update to how-to maintain git Prepare for 1.7.6.3 maintenance release Git 1.7.6.3 Git 1.7.7-rc1 Matthieu Moy (2): Documentation/git-remote-helpers: explain how import works with multiple refs (short) documentation for the testgit remote helper Michael Haggerty (9): Add a file comment Document struct match_attr Increment num_attr in parse_attr_line(), not parse_attr() Change parse_attr() to take a pointer to struct attr_state Determine the start of the states outside of the pass loop Change while loop into for loop Unroll the loop over passes check-ref-format --print: Normalize refnames that start with slashes Forbid DEL characters in reference names Michael J Gruber (3): git-notes.txt: clarify -C vs. copy and -F log: Do not decorate replacements with --no-replace-objects RelNotes/1.7.7: minor fixes Michael Stapelberg (1): git-daemon.txt: specify --timeout in seconds Namhyung Kim (1): branch -v: honor core.abbrev Nguyễn Thái Ngọc Duy (6): decoration: do not mis-decorate refs with same prefix Add for_each_commit_graft() to iterate all grafts Move write_shallow_commits to fetch-pack.c log: decorate grafted commits with "grafted" log: decorate "replaced" on to replaced commits clone: allow to clone from .git file Pete Wyckoff (1): git-p4: simple branch tests edits Ray Chen (1): git-svn: New flag to emulate empty directories Sverre Rabbelier (1): SubmittingPathces: remove Cogito reference Tay Ray Chuan (2): xdiff/xprepare: improve O(n*m) performance in xdl_cleanup_records() xdiff/xprepare: initialise xdlclassifier_t cf in xdl_prepare_env() Thomas Rast (8): Use memmove in ident_to_git t4014: check for empty files from git format-patch --stdout t4014: invoke format-patch with --stdout where intended t4014: "no-add-headers" is actually called "no-add-header" Document negated forms of format-patch --to --cc --add-headers strbuf_grow(): maintain nul-termination even for new buffer Documentation: clarify effects of -- <path> arguments t3903: fix misquoted rev-parse invocation Vitor Antunes (9): git-p4: Allow setting rename/copy detection threshold git-p4: Add description of rename/copy detection options git-p4: Add test case for rename detection git-p4: Add test case for copy detection git-p4: Process detectCopiesHarder with --bool git-p4: Correct branch base depot path detection git-p4: Allow filtering Perforce branches by user git-p4: Allow branch definition with git config git-p4: Add simple test case for branch import Version v1.7.7-rc0; changes since v1.7.6.6: ------------------------------------------- Allan Caffee (1): describe: Refresh the index when run with --dirty Andi Kleen (2): Add profile feedback build to git Add explanation of the profile feedback build to the README Clemens Buchacher (1): commit: allow partial commits with relative paths David Aguilar (8): setup: Provide GIT_PREFIX to built-ins git: Remove handling for GIT_PREFIX git-mergetool--lib: Make vimdiff retain the current directory t/t7503-pre-commit-hook.sh: Add GIT_PREFIX tests difftool--helper: Make style consistent with git mergetool--lib: Make style consistent with git mergetool--lib: Refactor tools into separate files mergetools/meld: Use '--output' when available David Barr (1): am: ignore leading whitespace before patch David Caldwell (1): stash: Add --include-untracked option to stash and remove all untracked files Dmitry Ivankov (4): remote-helpers: export GIT_DIR variable to helpers parse-options: export opterr, optbug Reduce parse-options.o dependencies doc/fast-import: document feature import-marks-if-exists Duncan Brown (1): http: pass http.cookiefile using CURLOPT_COOKIEFILE Erik Faye-Lund (2): verify_path: consider dos drive prefix connect: only log if all attempts failed (ipv4) Fredrik Gustafsson (2): git-sh-setup: add die_with_status submodule update: continue when a checkout fails Jakub Narębski (14): gitweb.js: No need for inProgress in blame_incremental.js gitweb.js: No need for loop in blame_incremental's handleResponse() gitweb.js: use setTimeout rather than setInterval in blame_incremental.js gitweb: Check permissions first in git_search gitweb: Split body of git_search into subroutines gitweb: Clean up code in git_search_* subroutines gitweb: Make git_search_* subroutines render whole pages gitweb: Refactor git_header_html git-instaweb: Extract configuring web server into configure_httpd git-instaweb: Use $conf, not $fqgitdir/gitweb/httpd.conf git-instaweb: Move all actions at the end of script git-instaweb: Check that correct config file exists for (re)start gitweb: Introduce common system-wide settings for convenience gitweb: Git config keys are case insensitive, make config search too Jeff King (28): t: add tests for cloning remotes with detached HEAD consider only branches in guess_remote_head make copy_ref globally available clone: always fetch remote HEAD limit "contains" traversals based on commit timestamp default core.clockskew variable to one day archive: reorder option parsing and config reading archive-tar: don't reload default config options archive: refactor list of archive formats archive: pass archiver struct to write_archive callback archive: move file extension format-guessing lower archive: refactor file extension format-guessing archive: implement configurable tar filters archive: provide builtin .tar.gz filter upload-archive: allow user to turn off filters parse-options: add OPT_STRING_LIST helper remote: use new OPT_STRING_LIST config: make git_config_parse_parameter a public function clone: accept config options on the command line git skew: a tool to find how big a clock skew exists in the history transport-helper: fix minor leak in push_refs_with_export t5800: factor out some ref tests t5800: document some non-functional parts of remote helpers git-remote-testgit: import non-HEAD refs transport-helper: don't feed bogus refs to export push git_remote_helpers: push all refs during a non-local export streaming: free git_istream upon closing docs: put listed example commands in backticks Jens Lehmann (1): Documentation/submodule: add command references and update options Jim Meyering (1): sha1_file: use the correct type (ssize_t, not size_t) for read-style function Johannes Sixt (7): sh-i18n--envsubst: do not crash when no arguments are given mingw.c: move definition of mingw_getenv down Windows: teach getenv to do a case-sensitive search rebase: do not print lots of usage hints after an obvious error message Make test number unique Skip archive --remote tests on Windows t3900: do not reference numbered arguments from the test script Jon Jensen (1): Add option hooks.diffopts to customize change summary in post-receive-email Jon Seymour (16): bisect: move argument parsing before state modification. bisect: use && to connect statements that are deferred with eval. bisect: add tests to document expected behaviour in presence of broken trees. bisect: introduce support for --no-checkout option. bisect: introduce --no-checkout support into porcelain. bisect: add tests for the --no-checkout option. bisect: add documentation for --no-checkout option. bisect: cleanup whitespace errors in git-bisect.sh. bisect: replace "; then" with "\n<tab>*then" misc-sh: fix up whitespace in some other .sh files. gettext: add gettextln, eval_gettextln to encode common idiom git-am: take advantage of gettextln and eval_gettextln. pull: take advantage of eval_gettextln stash: take advantage of eval_gettextln submodule: take advantage of gettextln and eval_gettextln. bisect: add support for bisecting bare repositories Jonathan Nieder (4): test: simplify return value of test_run_ test: cope better with use of return for errors revert: plug memory leak in "cherry-pick root commit" codepath merge-recursive: take advantage of hardcoded empty tree Josh Triplett (5): Fix prefix handling in ref iteration functions ref namespaces: infrastructure ref namespaces: Support remote repositories via upload-pack and receive-pack ref namespaces: documentation ref namespaces: tests Junio C Hamano (52): index-pack: group the delta-base array entries also by type write_idx_file: introduce a struct to hold idx customization options index-pack: --verify write_idx_file: need_large_offset() helper function index-pack --verify: read anomalous offsets from v2 idx file packed_object_info_detail(): do not return a string sha1_object_info_extended(): expose a bit more info sha1_object_info_extended(): hint about objects in delta-base cache unpack_object_header(): make it public write_entry(): separate two helper functions out streaming: a new API to read from the object store streaming_write_entry(): use streaming API in write_entry() convert: CRLF_INPUT is a no-op in the output codepath streaming_write_entry(): support files with holes streaming: read non-delta incrementally from a pack sha1_file.c: expose helpers to read loose objects streaming: read loose objects incrementally checkout: make advice when reattaching the HEAD less loud merge: reword the final message convert.h: move declarations for conversion from cache.h Add streaming filter API stream filter: add "no more input" to the filters Add LF-to-CRLF streaming conversion streaming filter: ident filter streaming: filter cascading t0021: test application of both crlf and ident diff --stat-count: finishing touches index-pack: a miniscule refactor index-pack: start learning to emulate "verify-pack -v" index-pack: show histogram when emulating "verify-pack -v" verify-pack: use index-pack --verify verify_path(): simplify check at the directory boundary git-submodule.sh: clarify the "should we die now" logic Add option to disable NORETURN Start 1.7.7 cycle core: log offset pack data accesses happened pack-objects: optimize "recency order" diff-lib: simplify do_diff_cache() diff-lib: refactor run_diff_index() and do_diff_cache() Revert clock-skew based attempt to optimize tag --contains traversal Update draft release notes to 1.7.7 Update draft release notes to 1.7.7 bisect: further style nitpicks filter-branch.sh: de-dent usage string Update draft release notes to 1.7.7 test: consolidate definition of $LF Sync with "maint" Update draft release notes to 1.7.7 Update draft release notes to 1.7.7 commit: reduce use of redundant global variables Update draft release notes to 1.7.7 Git 1.7.7-rc0 Ludwig Nussel (1): gitweb: allow space as delimiter in mime.types Markus Duft (1): Update the Interix default build configuration. Michael Haggerty (29): doc: Add a link from gitattributes(5) to git-check-attr(1) doc: Correct git_attr() calls in example code Remove anachronism from comment Disallow the empty string as an attribute name git-check-attr: Add missing "&&" git-check-attr: Add tests of command-line parsing Provide access to the name attribute of git_attr git-check-attr: Use git_attr_name() Teach prepare_attr_stack() to figure out dirlen itself Extract a function collect_all_attrs() Remove redundant call to bootstrap_attr_stack() Remove redundant check Allow querying all attributes on a file git-check-attr: Extract a function output_attr() git-check-attr: Introduce a new variable git-check-attr: Extract a function error_with_usage() git-check-attr: Handle each error separately git-check-attr: Process command-line args more systematically git-check-attr: Error out if no pathnames are specified git-check-attr: Add an --all option to show all attributes git-check-attr: Drive two tests using the same raw data git-check-attr: Fix command-line handling to match docs Rename git_checkattr() to git_check_attr() git-check-attr: test that no output is written to stderr git-check-attr: Demonstrate problems with unnormalized paths git-check-attr: Demonstrate problems with relative paths git-check-attr: Normalize paths test-path-utils: Add subcommand "absolute_path" test-path-utils: Add subcommand "prefix_path" Michael J Gruber (3): diff.c: omit hidden entries from namelen calculation with --stat diff: introduce --stat-lines to limit the stat lines diff-options.txt: describe --stat-{width,name-width,count} Pete Wyckoff (4): git-p4: use test_when_finished in tests git-p4: add missing && in test git-p4: one test missing config git-p4.skipSubmitEditCheck git-p4: commit time should be most recent p4 change time Ramsay Jones (3): help.c: Fix detection of custom merge strategy on cygwin t1301-*.sh: Fix the 'forced modes' test on cygwin config.c: Make git_config() work correctly when called recursively René Scharfe (6): t0021-conversion.sh: fix NoTerminatingSymbolAtEOF test grep: fix coloring of hunk marks between files grep: add --break grep: add --heading grep: add option to show whole function as context grep: long context options Roberto Tyley (1): Tolerate zlib deflation with window size < 32Kb Sverre Rabbelier (14): t5800: use skip_all instead of prereq remote-curl: accept empty line as terminator git-remote-testgit: only push for non-local repositories git-remote-testgit: fix error handling fast-import: introduce 'done' command fast-export: support done feature transport-helper: factor out push_update_refs_status transport-helper: check status code of finish_command transport-helper: use the new done feature where possible transport-helper: update ref status after push with export transport-helper: change import semantics transport-helper: Use capname for refspec capability too transport-helper: implement marks location as capability transport-helper: die early on encountering deleted refs Tay Ray Chuan (13): xdiff/xprepare: use memset() xdiff/xprepare: refactor abort cleanups xdiff/xpatience: factor out fall-back-diff function t4033-diff-patience: factor out tests teach --histogram to diff xdiff/xprepare: skip classification xdiff/xprepare: use a smaller sample size for histogram diff xdiff: do away with xdl_mmfile_next() http.c: fix an invalid free() Makefile: some changes for http-related flag documentation xdiff/xhistogram: rework handling of recursed results xdiff/xhistogram: rely on xdl_trim_ends() xdiff/xhistogram: drop need for additional variable Theo Niessink (3): A Windows path starting with a backslash is absolute real_path: do not assume '/' is the path seperator verify_dotfile(): do not assume '/' is the path seperator Thomas Cort (1): Makefile: add Minix configuration options. maximilian attems (2): am: pass exclude down to apply am: Document new --exclude=<path> option Ævar Arnfjörð Bjarmason (48): i18n: git-am add git-sh-i18n i18n: git-am one-line gettext $msg; echo i18n: git-am multi-line getttext $msg; echo i18n: git-am eval_gettext messages i18n: git-am gettext + gettext to stderr message i18n: git-am die messages i18n: git-am cannot_fallback messages i18n: git-am clean_abort messages i18n: git-am "Apply?" message i18n: git-am "Falling back" say message i18n: git-am core say messages i18n: git-am printf(1) message to eval_gettext i18n: git-pull add git-sh-i18n i18n: git-pull die messages i18n: git-pull eval_gettext + die message i18n: git-pull eval_gettext + warning message i18n: git-submodule add git-sh-i18n i18n: git-submodule echo + eval_gettext messages i18n: git-submodule say + eval_gettext messages i18n: git-submodule die + eval_gettext messages i18n: git-submodule $update_module say + die messages i18n: git-submodule "cached cannot be used" message i18n: git-submodule "Submodule change[...]" messages i18n: git-submodule $errmsg messages i18n: git-submodule "Entering [...]" message i18n: git-submodule "[...] path is ignored" message i18n: git-submodule "path not initialized" message i18n: git-submodule "blob" and "submodule" messages i18n: git-stash add git-sh-i18n i18n: git-stash echo + gettext message i18n: git-stash say + gettext messages i18n: git-stash die + gettext messages i18n: git-stash die + eval_gettext messages i18n: git-stash die + eval_gettext $* messages i18n: git-stash die + eval_gettext $1 messages i18n: git-stash "unknown option" message i18n: git-stash drop_stash say/die messages i18n: git-bisect add git-sh-i18n i18n: git-bisect gettext + echo message i18n: git-bisect echo + gettext messages i18n: git-bisect echo + eval_gettext message i18n: git-bisect die + gettext messages i18n: git-bisect die + eval_gettext messages i18n: git-bisect bisect_run + $@ messages i18n: git-bisect bisect_reset + $1 messages i18n: git-bisect bisect_replay + $1 messages i18n: git-bisect [Y/n] messages i18n: git-bisect bisect_next_check "You need to" message 张忠山 (1): gitweb: pass string after encoding in utf-8 to syntax highlighter Version v1.7.6.6; changes since v1.7.6.5: ----------------------------------------- Clemens Buchacher (1): Documentation: read-tree --prefix works with existing subtrees Jack Nagel (1): Add MYMETA.json to perl/.gitignore Jeff King (5): attr: don't confuse prefixes with leading directories attr: drop misguided defensive coding attr: fix leak in free_attr_elem thin-pack: try harder to use preferred base objects as base imap-send: remove dead code Junio C Hamano (6): attr.c: make bootstrap_attr_stack() leave early attr.c: clarify the logic to pop attr_stack Documentation: rerere's rr-cache auto-creation and rerere.enabled Prepare for 1.7.6.6 Update draft release notes to 1.7.6.6 Git 1.7.6.6 Nguyễn Thái Ngọc Duy (1): t2203: fix wrong commit command Thomas Rast (1): Documentation: rerere.enabled is the primary way to configure rerere Version v1.7.6.5; changes since v1.7.6.4: ----------------------------------------- Haitao Li (1): date.c: Support iso8601 timezone formats Jeff King (3): stripspace: fix outdated comment fetch: create status table using strbuf blame: don't overflow time buffer Jim Meyering (1): make the sample pre-commit hook script reject names with newlines, too Jonathon Mah (1): mergetool: Use args as pathspec to unmerged files Junio C Hamano (3): mergetool: no longer need to save standard input name-rev --all: do not even attempt to describe non-commit object Git 1.7.6.5 Marc-André Lureau (1): mailmap: xcalloc mailmap_info Martin von Zweigbergk (4): remote: write correct fetch spec when renaming remote 'remote' remote: "rename o foo" should not rename ref "origin/bar" remote rename: warn when refspec was not updated remote: only update remote-tracking branch if updating refspec Michael Haggerty (1): notes_merge_commit(): do not pass temporary buffer to other function Michael J Gruber (3): unpack-trees: print "Aborting" to stderr git-read-tree.txt: language and typography fixes git-read-tree.txt: correct sparse-checkout and skip-worktree description Nguyễn Thái Ngọc Duy (2): git-read-tree.txt: update sparse checkout examples Reindent closing bracket using tab instead of spaces Peter Stuge (1): gitweb: Fix links to lines in blobs when javascript-actions are enabled Ramsay Jones (1): t9159-*.sh: skip for mergeinfo test for svn <= 1.4 Sebastian Morr (1): Add MYMETA.yml to perl/.gitignore Stefan Naewe (1): Documentation/git-update-index: refer to 'ls-files' Thomas Rast (1): Documentation: basic configuration of notes.rewriteRef Version v1.7.6.4; changes since v1.7.6.3: ----------------------------------------- Allan Caffee (1): describe: Refresh the index when run with --dirty Clemens Buchacher (1): ls-files: fix pathspec display on error Giuseppe Bilotta (1): am: format is in $patch_format, not parse_patch Jay Soffian (1): git-mergetool: check return value from read Johannes Sixt (1): t3005: do not assume a particular order of stdout and stderr of git-ls-files Junio C Hamano (4): read_gitfile_gently(): rename misnamed function to read_gitfile() clone: allow more than one --reference clone: clone from a repository with relative alternates Git 1.7.6.4 Michael Haggerty (2): check-ref-format --print: Normalize refnames that start with slashes Forbid DEL characters in reference names Michael J Gruber (1): branch.c: use the parsed branch name Nguyễn Thái Ngọc Duy (1): clone: allow to clone from .git file Version v1.7.6.3; changes since v1.7.6.2: ----------------------------------------- Dave Zarzycki (1): Do not log unless all connect() attempts fail Jeff King (9): status: fix bug with missing --ignore files tag: speed up --contains calculation strbuf_split: add a max parameter fix "git -c" parsing of values with equals signs config: die on error in command-line config config: avoid segfault when parsing command-line config strbuf: allow strbuf_split to work on non-strbufs config: use strbuf_split_str instead of a temporary strbuf reset: give better reflog messages Jens Lehmann (1): fetch: skip on-demand checking when no submodules are configured Jonathan Nieder (2): Documentation: quote double-dash for AsciiDoc Documentation/i18n: quote double-dash for AsciiDoc Junio C Hamano (4): git status --ignored: tests and docs mergetool: check return value from read Prepare for 1.7.6.3 maintenance release Git 1.7.6.3 Michael Schubert (1): reflog: actually default to subcommand 'show' Sverre Rabbelier (1): SubmittingPathces: remove Cogito reference Vitaliy Ivanov (1): tests: cleanup binary test vector files Version v1.7.6.2; changes since v1.7.6.1: ----------------------------------------- Junio C Hamano (3): whitespace: have SP on both sides of an assignment "=" Revert "Merge branch 'cb/maint-quiet-push' into maint" Git 1.7.6.2 Pang Yan Han (1): update-ref: whitespace fix Thomas Rast (1): Documentation: clarify effects of -- <path> arguments Version v1.7.6.1; changes since v1.7.6: --------------------------------------- Alex Neronskiy (2): Fix documentation of fetch-pack that implies that the client can disconnect after sending wants. Document the underlying protocol used by shallow repositories and --depth commands. Andrew Wong (1): rebase -i -p: include non-first-parent commits in todo list Bert Wesarg (1): Documentation: clearly specify what refs are honored by core.logAllRefUpdates Brandon Casey (2): t/t7407: demonstrate that the command called by 'submodule foreach' loses stdin git-submodule.sh: preserve stdin for the command spawned by foreach Brian Harring (1): get_indexed_object can return NULL if nothing is in that slot; check for it Carlos Martín Nieto (1): Documentation: clarify the invalidated tree entry format Clemens Buchacher (3): error_routine: use parent's stderr if exec fails propagate --quiet to send-pack/receive-pack notice error exit from pager Dmitry Ivankov (1): doc/fast-import: clarify notemodify command Emilio G. Cota (2): Documentation: ignore *.pdf files Documentation/Makefile: add *.pdf to `clean' target Erik Faye-Lund (1): connect: correctly number ipv6 network adapter Fredrik Kuivinen (1): Makefile: Track changes to LDFLAGS and relink when necessary Heiko Voigt (2): add gitignore entry to description about how to write a builtin add technical documentation about ref iteration Jack Nagel (1): Documentation: minor grammatical fix in rev-list-options.txt Jakub Narębski (2): gitweb: Serve text/* 'blob_plain' as text/plain with $prevent_xss gitweb: Serve */*+xml 'blob_plain' as text/plain with $prevent_xss Jeff King (10): combine-diff: split header printing into its own function combine-diff: calculate mode_differs earlier combine-diff: handle binary files as binary refactor get_textconv to not require diff_filespec combine-diff: respect textconv attributes tag: accept multiple patterns for --list docs: document --textconv diff option t7400: fix bogus test failure with symlinked trash fast-export: quote paths in output am: refresh the index at start and --resolved Jens Lehmann (7): submodule add: test failure when url is not configured in superproject submodule add: allow relative repository path even when no url is set submodule add: clean up duplicated code fetch: Also fetch submodules in subdirectories in on-demand mode submodule add: always initialize .git/config entry tests: print failed test numbers at the end of the test run submodule: update and add must honor --quiet flag Johannes Schindelin (1): get_pwd_cwd(): Do not trust st_dev/st_ino blindly Jon Seymour (2): Add a test to check that git ls-tree sets non-zero exit code on error. Ensure git ls-tree exits with a non-zero exit code if read_tree_recursive fails. Julian Phillips (1): remote-curl: Add a format check to parsing of info/refs Junio C Hamano (29): diff-index --quiet: learn the "stop feeding the backend early" logic checkout -b <name>: correctly detect existing branch sha1_file.c: "legacy" is really the current format zlib wrapper: refactor error message formatter zlib: wrap remaining calls to direct inflate/inflateEnd zlib: wrap inflateInit2 used to accept only for gzip format zlib: wrap deflate side of the API zlib: wrap deflateBound() too zlib: zlib can only process 4GB at a time zlib: allow feeding more than 4GB in one go t/gitweb-lib.sh: skip gitweb tests when perl dependencies are not met cygwin: trust executable bit by default git-remote.txt: avoid sounding as if loose refs are the only ones in the world check-ref-format doc: de-emphasize the implementation detail of a ref git.txt: de-emphasize the implementation detail of a ref glossary: update description of "tag" glossary: update description of head and ref glossary: clarify description of HEAD submodule sync: do not auto-vivify uninteresting submodule "branch -d" can remove more than one branches test: skip clean-up when running under --immediate mode checkout: do not write bogus reflog entry out reset [<commit>] paths...: do not mishandle unmerged paths diff -c/--cc: do not mistake "resolved as deletion" as "use working tree" receive-pack: do not overstep command line argument array helping smart-http/stateless-rpc fetch race Prepare for 1.7.6.1 Update draft release notes for 1.7.6.1 Git 1.7.6.1 Martin von Zweigbergk (2): Documentation: use [verse] for SYNOPSIS sections rebase: clarify "restore the original branch" Michael Haggerty (6): git-svn: Demonstrate a bug with root commits in mergeinfo ranges git-svn: Disambiguate rev-list arguments to improve error message git-svn: Correctly handle root commits in mergeinfo ranges gitattributes: Clarify discussion of attribute macros gitattributes: Reword "attribute macro" to "macro attribute" Do not use C++-style comments Michael Schubert (1): help_unknown_cmd: do not propose an "unknown" cmd Michael Witten (1): filter-branch: Export variable `workdir' for --commit-filter Namhyung Kim (1): git-remote.txt: fix wrong remote refspec Nguyễn Thái Ngọc Duy (3): Break down no-lstat() condition checks in verify_uptodate() checkout-index: remove obsolete comment fetch-pack: check for valid commit from server Ori Avtalion (1): pull: remove extra space from reflog message Pavan Kumar Sunkara (1): git-config: Remove extra whitespaces Peter Collingbourne (1): Documentation: git-filter-branch honors replacement refs Version v1.7.6; changes since v1.7.6-rc3: ----------------------------------------- Junio C Hamano (1): Git 1.7.6 Namhyung Kim (1): completion: replace core.abbrevguard to core.abbrev Version v1.7.6-rc3; changes since v1.7.6-rc2: --------------------------------------------- Andreas Schwab (1): builtin/gc.c: add missing newline in message Brandon Casey (1): sh-i18n--envsubst.c: do not #include getopt.h Christof Krüger (1): Documentation: git diff --check respects core.whitespace Dmitry Ivankov (1): Fix typo: existant->existent Jakub Narębski (1): gitweb: 'pickaxe' and 'grep' features requires 'search' to be enabled Jeff King (2): t/Makefile: pass test opts to valgrind target properly tests: link shell libraries into valgrind directory Jim Meyering (1): plug a few coverity-spotted leaks Junio C Hamano (2): t7810: avoid unportable use of "echo" Git 1.7.6-rc3 Version v1.7.6-rc2; changes since v1.7.6-rc1: --------------------------------------------- Jonathan Nieder (1): gitweb: do not misparse nonnumeric content tag files that contain a digit Junio C Hamano (1): Git 1.7.6-rc2 Version v1.7.6-rc1; changes since v1.7.6-rc0: --------------------------------------------- Alex Riesen (1): t3703: skip more tests using colons in file names on Windows Brandon Casey (2): t7508: demonstrate status's failure to use --porcelain format with -z builtin/commit.c: set status_format _after_ option parsing Jakub Narębski (4): gitweb: Move information about installation from README to INSTALL gitweb: Describe CSSMIN and JSMIN in gitweb/INSTALL gitweb: Move "Requirements" up in gitweb/INSTALL gitweb: Fix usability of $prevent_xss Jeff King (1): diff_tree: disable QUICK optimization with diff filter Jim Meyering (1): fetch: do not leak a refspec Junio C Hamano (2): diff: futureproof "stop feeding the backend early" logic Git 1.7.6-rc1 Version v1.7.6-rc0; changes since v1.7.5.4: ------------------------------------------- Boris Faure (1): Do not strip empty lines / trailing spaces from a commit message template Carlos Martín Nieto (1): log: convert to parse-options Conrad Irwin (5): Use a temporary index for git commit --interactive Allow git commit --interactive with paths Add support for -p/--patch to git-commit Add commit to list of config.singlekey commands Test atomic git-commit --interactive Csaba Henk (1): rebase: create HEAD reflog entry when aborting Dan McGee (4): Share color list between graph and show-branch http: make curl callbacks match contracts from curl header http-push: use const for strings in signatures http-push: refactor curl_easy_setup madness Elijah Newren (3): t6022: New test checking for unnecessary updates of renamed+modified files t6022: New test checking for unnecessary updates of files in D/F conflicts merge-recursive: When we detect we can skip an update, actually skip it Erik Faye-Lund (2): strbuf: make sure buffer is zero-terminated config: support values longer than 1023 bytes Heiko Voigt (1): test that git status works with merge conflict in, .gitmodules Ingo Molnar (1): hashcmp(): inline memcmp() by hand to optimize Jakub Narębski (13): gitweb: Restructure projects list generation gitweb: Change the way "content tags" ('ctags') are handled gitweb: Mark matched 'ctag' / contents tag (?by_tag=foo) gitweb: Split JavaScript for maintability, combining on build gitweb.js: Update and improve comments in JavaScript files gitweb.js: Provide default values for padding in padLeftStr and padLeft gitweb.js: Extract and improve datetime handling gitweb.js: Introduce code to handle cookies from JavaScript gitweb.js: Provide getElementsByClassName method (if it not exists) gitweb: Refactor generating of long dates into format_timestamp_html gitweb: Unify the way long timestamp is displayed gitweb: Make JavaScript ability to adjust timezones configurable gitweb: Refactor reading and parsing config file into read_config_file Jay Soffian (2): "git log -h": typofix misspelled 'suppress' Add log.abbrevCommit config variable Jeff King (26): notes: make expand_notes_ref globally accessible revision.c: refactor notes ref expansion notes: refactor display notes extra refs field notes: refactor display notes default handling revision.c: support --notes command-line option revision.c: make --no-notes reset --notes list format-patch: wrap email addresses after long names add tests for various blame formats blame: refactor porcelain output blame: add --line-porcelain output format t7501.8: feed a meaningful command fetch: avoid repeated commits in mark_complete Makefile: sort TEST_PROGRAMS list refactor refs_from_alternate_cb to allow passing extra data bisect: refactor sha1_array into a generic sha1 list receive-pack: eliminate duplicate .have refs doc: discuss textconv versus external diff drivers remote: allow "-t" with fetch mirrors read_in_full: always report errors t: test subject handling in format-patch / am pipeline mailinfo: always clean up rfc822 header folding pretty: add pp_commit_easy function for simple callers clean up calling conventions for pretty.c functions format-patch: preserve subject newlines with -k rebase: write a reflog entry when finishing format-patch: make zero-length subject prefixes prettier Jens Lehmann (3): Submodules: Don't parse .gitmodules when it contains, merge conflicts unpack-trees: add the dry_run flag to unpack_trees_options Teach read-tree the -n|--dry-run option Jim Meyering (2): diffcore-rename.c: avoid set-but-not-used warning plug a DIR buffer leak in rerere.c Johan Herland (10): log/pretty-options: Document --[no-]notes and deprecate old notes options Make "git notes add" more user-friendly when there are existing notes Add several testcases for --dirstat and friends Make --dirstat=0 output directories that contribute < 0.1% of changes Refactor --dirstat parsing; deprecate --cumulative and --dirstat-by-file Add config variable for specifying default --dirstat behavior Allow specifying --dirstat cut-off percentage as a floating point number New --dirstat=lines mode, doing dirstat analysis based on diffstat Improve error handling when parsing dirstat parameters Mark dirstat error messages for translation Johannes Sixt (3): t3703: Skip tests using directory name ":" on Windows Tweak t3102-ls-tree-wildcards to run on Windows Windows: add a wrapper for the shutdown() system call John 'Warthog9' Hawley (2): gitweb: JavaScript ability to adjust time based on timezone gitweb.js: Add UI for selecting common timezone to display dates Jon Seymour (1): git: add --info-path and --man-path options Jonathan Nieder (15): revisions: split out handle_revision_pseudo_opt function revisions: allow --glob and friends in parse_options-enabled commands Documentation: clarify meaning of --html-path, --man-path, and --info-path tests: eliminate unnecessary setup test assertions tests: teach verify_parents to check for extra parents tests: check git does not barf on merge.ff values for future versions of git completion: move private shopt shim for zsh to __git_ namespace t4018 (funcname patterns): make .gitattributes state easier to track t4018 (funcname patterns): make configuration easier to track t4018 (funcname patterns): minor cleanups userdiff/perl: anchor "sub" and "package" patterns on the left userdiff/perl: match full line of POD headers userdiff/perl: catch sub with brace on second line tests: make test_expect_code quieter on success userdiff/perl: tighten BEGIN/END block pattern to reject here-doc delimiters Junio C Hamano (53): merge-recursive: tweak magic band-aid git diff -D: omit the preimage of deletes pathspec: rename per-item field has_wildcard to use_wildcard magic pathspec: add tentative ":/path/from/top/level" pathspec support merge: allow "-" as a short-hand for "previous branch" magic pathspec: futureproof shorthand form magic pathspec: add ":(icase)path" to match case insensitively Start 1.7.6 cycle Update draft release notes to 1.7.6 Update draft release notes to 1.7.6 Update draft release notes to 1.7.6 Update draft release notes to 1.7.6 merge: introduce merge.ff configuration variable rerere: libify rerere_clear() and rerere_gc() index_fd(): turn write_object and format_check arguments into one flag index_fd(): split into two helper functions convert: rename the "eol" global variable to "core_eol" convert: give saner names to crlf/eol variables, types and functions convert: make it safer to add conversion attributes convert: make it harder to screw up adding a conversion attribute git-grep: do not die upon -F/-P when grep.extendedRegexp is set. Revert "magic pathspec: add ":(icase)path" to match case insensitively" pathspec: drop "lone : means no pathspec" from get_pathspec() grep: use get_pathspec() correctly fix overstrict :<path> diagnosis fix overslow :/no-such-string-ever-existed diagnostics rev/path disambiguation: further restrict "misspelled index entry" diag Revert "completion: don't declare 'local words' to make zsh happy" Update draft release notes to 1.7.6 revision.c: leave a note for "a lone :" enhancement Update draft release notes to 1.7.6 Bigfile: teach "git add" to send a large file straight to a pack Declare lookup_replace_object() in cache.h, not in commit.h t6050: make sure we test not just commit replacement read_sha1_file(): get rid of read_sha1_file_repl() madness inline lookup_replace_object() calls read_sha1_file(): allow selective bypassing of replacement mechanism Sync release notes for 1.7.6 to exclude what are in maintenance track git-grep: update tests now regexp type is "last one wins" Makefile: Pass USE_LIBPCRE down in GIT-BUILD-OPTIONS Update release notes to 1.7.6 notes remove: allow removing more than one notes remove: --ignore-missing notes remove: --stdin reads from the standard input show: --ignore-missing Revert "Merge branch 'en/merge-recursive'" Update draft release notes to 1.7.6 Update 1.7.6 draft release notes require-work-tree wants more than what its name says compat/fnmatch/fnmatch.c: give a fall-back definition for NULL Update 1.7.6 draft release notes log: --quiet should serve as synonym to -s Update draft release notes to 1.7.6 Luke Diamand (3): git-p4: add option to preserve user names git-p4: small improvements to user-preservation git-p4: warn if git authorship won't be retained Marius Storm-Olsen (1): Automatically autoload bashcompinit for ZSH, when needed Martin von Zweigbergk (34): rebase: clearer names for directory variables rebase: refactor reading of state rebase: read state outside loop rebase: remove unused rebase state 'prev_head' rebase: improve detection of rebase in progress rebase: act on command line outside parsing loop rebase: stricter check of standalone sub command rebase: align variable names rebase: align variable content rebase: factor out command line option processing rebase -i: remove now unnecessary directory checks rebase: reorder validation steps rebase: factor out reference parsing rebase: factor out clean work tree check rebase: factor out call to pre-rebase hook rebase -i: support --stat rebase: remove $branch as synonym for $orig_head rebase: extract merge code to new source file rebase: extract am code to new source file rebase: show consistent conflict resolution hint rebase -i: align variable names rebase: make -v a tiny bit more verbose rebase: factor out sub command handling rebase: extract code for writing basic state rebase: remember verbose option rebase: remember strategy and strategy options rebase -m: remember allow_rerere_autoupdate option rebase -m: don't print exit code 2 when merge fails git-rebase--am: remove unnecessary --3way option rebase -i: don't read unused variable preserve_merges rebase -i: remove unnecessary state rebase-root rebase: use @{upstream} if no upstream specified Makefile: do not install sourced rebase scripts rebase: define options in OPTIONS_SPEC Mathias Lafeldt (1): t/test-lib.sh: minor readability improvements Michael Haggerty (1): git-svn: add an option to skip the creation of empty directories Michael J Gruber (7): contrib/completion: --notes, --no-notes rev-list --count: separate count for --cherry-mark t1020: test !alias in subdirectory handle_alias: provide GIT_PREFIX to !alias config: define and document exit codes config: Give error message when not changing a multivar sh-18n: quell "unused variable" warning Michael Schubert (2): tag: disallow '-' as tag name ls-remote: the --exit-code option reports "no matching refs" Michał Kiedrowicz (11): Documentation: Add --line-number to git-grep synopsis contrib/completion: --line-number to git grep grep: Put calls to fixmatch() and regmatch() into patmatch() grep: Fix a typo in a comment grep: Extract compile_regexp_failed() from compile_regexp() git-grep: Learn PCRE configure: Check for libpcre grep: Add basic tests git-grep: Bail out when -P is used with -F or -E git-grep: Update tests (mainly for -P) git-grep: Fix problems with recently added tests Namhyung Kim (1): blame: add --abbrev command line option and make it honor core.abbrev Nguyễn Thái Ngọc Duy (8): Reimplement read_tree_recursive() using tree_entry_interesting() Convert read_tree{,_recursive} to support struct pathspec Improve tree_entry_interesting() handling code setup: return correct prefix if worktree is '/' Kill off get_relative_cwd() t1011: fix sparse-checkout initialization and add new file sparse checkout: do not eagerly decide the fate for whole directory t3703, t4208: add test cases for magic pathspec Nicolas Morey-Chaisemartin (1): submodule: Add --force option for git submodule update Rafael Gieschke (1): ident: add NO_GECOS_IN_PWENT for systems without pw_gecos in struct passwd Ramsay Jones (9): Makefile: Use cgcc rather than sparse in the check target sparse: Fix an "symbol 'cmd_index_pack' not declared" warning sparse: Fix some "Using plain integer as NULL pointer" warnings sparse: Fix an "symbol 'format_subject' not declared" warning sparse: Fix an "symbol 'merge_file' not decared" warning sparse: Fix errors due to missing target-specific variables sparse: Fix some "symbol not declared" warnings setup.c: Fix some "symbol not declared" sparse warnings config.c: Remove unused git_config_global() function René Scharfe (1): strbuf: clarify assertion in strbuf_setlen() SZEDER Gábor (3): completion: don't modify the $cur variable in completion functions completion: remove unnecessary _get_comp_words_by_ref() invocations completion: don't declare 'local words' to make zsh happy Sebastien Cevey (3): gitweb: Split git_project_list_body in two functions gitweb: Modularized git_get_project_description to be more generic gitweb: Optional grouping of projects by category Tay Ray Chuan (1): t5541-http-push: add test for chunked Ævar Arnfjörð Bjarmason (5): git-sh-i18n--envsubst: our own envsubst(1) for eval_gettext() git-sh-i18n.sh: add no-op gettext() and eval_gettext() wrappers git-sh-i18n.sh: add GIT_GETTEXT_POISON support Makefile: add xgettext target for *.sh files git-sh-i18n--envsubst: add SYNOPSIS section to the documentation Version v1.7.5.4; changes since v1.7.5.3: ----------------------------------------- Brandon Casey (2): Documentation/technical/api-diff.txt: correct name of diff_unmerge() git-submodule.sh: separate parens by a space to avoid confusing some shells Jeff King (8): config: make environment parsing routines static git_config: don't peek at global config_parameters config: always parse GIT_CONFIG_PARAMETERS during git_config read_gitfile_gently: use ssize_t to hold read result docs: minor grammar fixes to git-status docs: update status --porcelain format docs: make sure literal "->" isn't converted to arrow docs: fix some antique example output Jim Meyering (3): rerere.c: diagnose a corrupt MERGE_RR when hitting EOF between TAB and '\0' remove tests of always-false condition diffcore-rename.c: avoid set-but-not-used warning Jonathan Nieder (3): tests: check error message from run_command run-command: handle short writes and EINTR in die_child Documentation: do not misinterpret refspecs as bold text Junio C Hamano (26): builtin/diff.c: remove duplicated call to diff_result_code() diffcore-rename: refactor "too many candidates" logic diffcore-rename: record filepair for rename src diffcore-rename: fall back to -C when -C -C busts the rename limit i18n: do not overuse C_LOCALE_OUTPUT i18n: .git file is not a human readable message (t5601) i18n: use test_i18ncmp in t1200 and t2200 i18n: do not overuse C_LOCALE_OUTPUT (grep) i18n: use test_i18ngrep in lib-httpd and t2019 i18n: use test_i18ngrep in t2020, t2204, t3030, and t3200 i18n: use test_i18ncmp and test_i18ngrep in t3203, t3501 and t3507 i18n: use test_i18ncmp and test_i18ngrep in t3700, t4001 and t4014 i18n: use test_i18ncmp and test_i18ngrep in t5541, t6040, t6120, t7004, t7012 and t7060 i18n: use test_i18ncmp and test_i18ngrep in t7102 and t7110 i18n: use test_i18ngrep in t7201 i18n: use test_i18ncmp in t7500 i18n: use test_i18ngrep in t7501 i18n: use test_i18ngrep and test_i18ncmp in t7502 i18n: use test_i18ngrep in t7506 i18n: use test_i18n{grep,cmp} in t7508 i18n: use test_i18n{cmp,grep} in t7600, t7607, t7611 and t7811 handle_options(): do not miscount how many arguments were used userformat_find_requirements(): find requirement for the correct format config.mak.in: allow "configure --sysconfdir=/else/where" Start 1.7.5.4 draft release notes Git 1.7.5.4 Mathias Lafeldt (1): t/README: unify documentation of test function args Ramkumar Ramachandra (4): Documentation: Add filter.<driver>.* to config Documentation: Move diff.<driver>.* from config.txt to diff-config.txt Documentation: Add diff.<driver>.* to config Documentation: Allow custom diff tools to be specified in 'diff.tool' Thomas Rast (1): add -i: ignore terminal escape sequences Valentin Haenel (5): config.txt: 'interactive.singlekey; is used by... git-add.txt: document 'interactive.singlekey' git-stash.txt: better docs for '--patch' git-checkout.txt: better docs for '--patch' git-reset.txt: better docs for '--patch' Ævar Arnfjörð Bjarmason (7): i18n: mark merge "Could not read from" message for translation i18n: mark merge "upstream" messages for translation i18n: mark merge CHERRY_PICK_HEAD messages for translation i18n: mark clone nonexistent repository message for translation i18n: mark checkout --detach messages for translation i18n: mark checkout plural warning for translation i18n: mark init-db messages for translation Version v1.7.5.3; changes since v1.7.5.2: ----------------------------------------- Felipe Contreras (1): git-completion: fix regression in zsh support Fraser Tweedale (1): gitweb: supply '-n' to gzip for identical output Jeff King (8): send-pack: unbreak push over stateless rpc cherry-pick: handle root commits with external strategies revert: allow reverting a root commit t3503: test cherry picking and reverting root commits connect: treat generic proxy processes like ssh processes connect: let callers know if connection is a socket send-pack: avoid deadlock on git:// push with failed pack-objects test core.gitproxy configuration Jim Meyering (1): do not read beyond end of malloc'd buffer Johannes Sixt (3): Documentation/format-patch: suggest Toggle Word Wrap add-on for Thunderbird send-pack: avoid deadlock when pack-object dies early Honor $(prefix) set in config.mak* when defining ETC_GIT* Jonathan Nieder (5): Revert "t0081 (line-buffer): add buffering tests" Documentation: explain how to check for patch corruption Documentation: hints for sending patches inline with Thunderbird Documentation: publicize KMail hints for sending patches inline Documentation: publicize hints for sending patches with GMail Junio C Hamano (4): Revert "Honor $(prefix) set in config.mak* when defining ETC_GIT* and sysconfdir" setup_revisions(): take pathspec from command line and --stdin correctly sideband_demux(): fix decl-after-stmt Git 1.7.5.3 Kacper Kornet (1): Honor $(prefix) set in config.mak* when defining ETC_GIT* and sysconfdir Michael J Gruber (2): config.txt,diff-options.txt: porcelain vs. plumbing for color.diff git-svn: Fix git svn log --show-commit Nguyễn Thái Ngọc Duy (1): init/clone: remove short option -L and document --separate-git-dir Rafael Gieschke (1): copy_gecos: fix not adding nlen to len when processing "&" Stefan Sperling (1): remove noise and inaccuracies from git-svn docs Version v1.7.5.2; changes since v1.7.5.1: ----------------------------------------- Andrew Wong (1): git-rebase--interactive.sh: preserve-merges fails on merges created with no-ff Brian Gernhardt (1): t/annotate-tests: Use echo & cat instead of sed Carlos Martín Nieto (2): format-patch: don't pass on the --quiet flag format-patch: document --quiet option Ciaran Jessup (1): Pass empty file to p4merge where no base is suitable. Dima Sharov (1): shell: add missing initialization of argv0_path Guy Rouillier (1): Look for password in both CVS and CVSNT password files. Jakub Narębski (2): git-instaweb: Simplify build dependency on gitweb Remove gitweb/gitweb.cgi and other legacy targets from main Makefile Jeff King (3): pretty: quote rfc822 specials in email addresses add tests for merge-index / merge-one-file merge-one-file: fix broken merges with alternate work trees Jim Meyering (1): Documentation/git-fsck.txt: fix typo: unreadable -> unreachable Johan Herland (1): t5400: Fix a couple of typos Jonathan Nieder (4): Restructure documentation for git-merge-base. Documentation: describe the format of messages with inline patches add, merge, diff: do not use strcasecmp to compare config variable names provide a copy of the LGPLv2.1 Jonathon Mah (1): mergetool: Teach about submodules Josh Stone (1): blame: tolerate bogus e-mail addresses a bit better João Britto (1): Remove duplicated "is a" Junio C Hamano (19): test: use $_z40 from test-lib diff.c: return filepair from diff_unmerge() diff: remove often unused parameters from diff_unmerge() diff-files: show unmerged entries correctly Fix "add -u" that sometimes fails to resolve unmerged paths add -p: 'q' should really quit t3701: Editing a split hunk in an "add -p" session add--interactive.perl: factor out repeated --recount option "add -p": work-around an old laziness that does not coalesce hunks t3701: fix here document merge: make branch.<name>.mergeoptions correctly override merge.<option> t3701: add-p-fix makes the last test to pass t1507: avoid "${parameter<op>'word'}" inside double-quotes Prepare for 1.7.5.2 sha1_file: typofix git_open_noatime(): drop unused parameter Update draft release notes to 1.7.5.2 Update draft release notes to 1.7.5.2 Git 1.7.5.2 Martin von Zweigbergk (1): diffcore-rename: don't consider unmerged path as source Michael J Gruber (1): git-fast-import.txt: --relative-marks takes no parameter Sebastian Schuberth (1): doc: Clarify that "cherry-pick -x" does not use "git notes" Sverre Rabbelier (1): fast-import: fix option parser for no-arg options Valentin Haenel (3): git-svn.txt: fix usage of --add-author-from git-svn.txt: move option descriptions git-svn.txt: small typeface improvements Vincent van Ravesteijn (1): Documentation: update to git-merge-base --octopus Version v1.7.5.1; changes since v1.7.5: --------------------------------------- Alex Riesen (1): clean: unreadable directory may still be rmdir-able if it is empty Dan McGee (2): stash: add two more tests for --no-keep-index stash: ensure --no-keep-index and --patch can be used in any order Jeff King (3): stash: fix accidental apply of non-existent stashes stash: drop dirty worktree check on apply upload-pack: start pack-objects before async rev-list Johan Herland (4): --dirstat: Describe non-obvious differences relative to --stat or regular diff --dirstat-by-file: Make it faster and more correct Teach --dirstat not to completely ignore rearranged lines within a file --dirstat: In case of renames, use target filename instead of source filename Jon Seymour (1): stash: fix false positive in the invalid ref test. Junio C Hamano (4): Teach core.bigfilethreashold to pack-objects http: clear POSTFIELDS when initializing a slot Start 1.7.5.1 maintenance track Git 1.7.5.1 Michael J Gruber (6): builtin/log.c: separate default and setup of cmd_log_init() t/t1411: test reflog with formats reflog: fix overriding of command line options t1506: factor out test for "Did you mean..." sha1_name: Suggest commit:./file for path in subdir date: avoid "X years, 12 months" in relative dates Sylvain Rabot (1): git-send-email: fix missing space in error message Valentin Haenel (1): git-add.txt: document 'add.ignoreErrors' Version v1.7.5; changes since v1.7.5-rc3: ----------------------------------------- Junio C Hamano (1): Git 1.7.5 Version v1.7.5-rc3; changes since v1.7.5-rc2: --------------------------------------------- Junio C Hamano (3): Revert "run-command: prettify -D_FORTIFY_SOURCE workaround" Git 1.7.4.5 Git 1.7.5-rc3 Michael J Gruber (3): git.txt: fix list continuation t3306,t5304: avoid clock skew issues git-svn.txt: Document --mergeinfo René Scharfe (1): archive: document limitation of tar.umask config setting Version v1.7.5-rc2; changes since v1.7.5-rc1: --------------------------------------------- Alejandro R. Sedeño (1): git-svn: Add a svn-remote.<name>.pushurl config key Anders Kaseorg (2): gitk: Take only numeric version components when computing $git_version gitk: Update cherry-pick error message parsing Andrew Garber (1): git-p4: replace each tab with 8 spaces for consistency James Y Knight (1): git-svn: Cache results of running the executable "git config" Jim Meyering (1): remove doubled words, e.g., s/to to/to/, and fix related typos Johannes Sixt (2): t0001: guard a new test with SYMLINKS prerequisite t2021: mark a test as fixed Junio C Hamano (1): Git 1.7.5-rc2 Pat Thoyts (1): gitk: Quote tag names in event bindings to avoid problems with % chars Paul Mackerras (1): gitk: Allow user to control how much of the SHA1 ID gets auto-selected Ramkumar Ramachandra (1): revert: Hide '-r' option in default usage Ramsay Jones (1): i18n: avoid parenthesized string as array initializer Skip (1): gitk: spelling fixes in Russian translation Ævar Arnfjörð Bjarmason (1): Makefile: extract Q_() source strings as ngettext() Version v1.7.5-rc1; changes since v1.7.5-rc0: --------------------------------------------- Dan McGee (2): Remove old binaries from .gitignore Fix two unused variable warnings in gcc 4.6 Jakub Narębski (1): gitweb: Fix parsing of negative fractional timezones in JavaScript Jared Hance (1): merge: match the help text with the documentation Jeff King (7): merge: merge unborn index before setting ref pull: do not clobber untracked files on initial pull remote: disallow some nonsensical option combinations remote: separate the concept of push and fetch mirrors remote: deprecate --mirror docs: fix filter-branch subdir example for exotic repo names pull: do not clobber untracked files on initial pull Jens Lehmann (7): fetch/pull: recurse into submodules when necessary fetch/pull: Add the 'on-demand' value to the --recurse-submodules option config: teach the fetch.recurseSubmodules option the 'on-demand' value Submodules: Add 'on-demand' value for the 'fetchRecurseSubmodule' option fetch/pull: Don't recurse into a submodule when commits are already present submodule update: Don't fetch when the submodule commit is already present fetch/pull: Describe --recurse-submodule restrictions in the BUGS section Joe Ratterman (1): grep: allow -E and -n to be turned on by default via configuration Jonathan Nieder (1): compat: add missing #include <sys/resource.h> Junio C Hamano (8): merge: merge with the default upstream branch without argument "log --cherry-pick" documentation regression fix Doc: mention --delta-base-offset is the default for Porcelain commands Git 1.7.4.3 Update release notes Start preparing for 1.7.4.4 Git 1.7.4.4 Git 1.7.5-rc1 Lawrence Mitchell (1): git.el: Don't use font-lock-compile-keywords Michael J Gruber (3): revisions.txt: consistent use of quotes revisions.txt: structure with a labelled list revisions.txt: language improvements Nguyễn Thái Ngọc Duy (2): git-init.txt: move description section up init, clone: support --separate-git-dir for .git file Nicolas Morey-Chaisemartin (1): submodule: process conflicting submodules only once SZEDER Gábor (1): Documentation: trivial grammar fix in core.worktree description Stephen Boyd (2): Makefile: Cover more files with make check sparse: Fix errors and silence warnings Ævar Arnfjörð Bjarmason (70): i18n: git-init basic messages i18n: git-init "Initialized [...] repository" message i18n: git-clone basic messages i18n: git-clone "Cloning into" message i18n: git-clone "Cloning into" message i18n: git-add basic messages i18n: git-add "The following paths are ignored" message i18n: git-add "did not match any files" message i18n: git-add "remove '%s'" message i18n: git-add "Unstaged changes" message i18n: git-branch basic messages i18n: git-branch "remote branch '%s' not found" message i18n: git-branch "Deleted branch [...]" message i18n: git-branch "git branch -v" messages i18n: git-branch "(no branch)" message i18n: git-checkout basic messages i18n: git-checkout: our/their version message i18n: git-checkout describe_detached_head messages i18n: git-checkout "HEAD is now at" message i18n: git-checkout "Switched to a .. branch" message i18n: git-commit basic messages i18n: git-commit "middle of a merge" message i18n: git-commit formatting messages i18n: git-commit print_summary messages i18n: git-commit "enter the commit message" message i18n: git-commit advice messages i18n: git-diff basic messages i18n: git-fetch basic messages i18n: git-fetch formatting messages i18n: git-fetch update_local_ref messages i18n: git-fetch split up "(non-fast-forward)" message i18n: git-grep basic messages i18n: git-grep "--open-files-in-pager" message i18n: git-log basic messages i18n: git-log "--OPT does not make sense" messages i18n: git-merge basic messages i18n: git-merge "Updating %s..%s" message i18n: git-merge "You have not concluded your merge" messages i18n: git-merge "Wonderful" message i18n: git-mv basic messages i18n: git-mv "bad" messages i18n: git-rm basic messages i18n: git-reset basic messages i18n: git-reset reset_type_names messages i18n: git-reset "Unstaged changes after reset" message i18n: git-tag basic messages i18n: git-tag tag_template message i18n: git-push basic messages i18n: git-push "prevent you from losing" message i18n: git-status basic messages i18n: git-status "nothing to commit" messages i18n: git-status shortstatus messages i18n: git-status "Changes to be committed" message i18n: git-status "Initial commit" message i18n: git-status "renamed: " message i18n: git-archive basic messages i18n: git-bundle basic messages i18n: git-clean basic messages i18n: git-clean clean.requireForce messages i18n: git-describe basic messages i18n: git-gc basic messages i18n: git-gc "Auto packing the repository" message i18n: git-notes basic commands i18n: git-notes GIT_NOTES_REWRITE_MODE error message i18n: git-revert basic messages i18n: git-revert "Your local changes" message i18n: git-revert literal "me" messages i18n: git-revert split up "could not revert/apply" message i18n: git-shortlog basic messages t2019-checkout-ambiguous-ref.sh: depend on C_LOCALE_OUTPUT Version v1.7.5-rc0; changes since v1.7.4.5: ------------------------------------------- Alex Riesen (2): git-gui: update russian translation git-gui: update russian translation Alexandre Erwin Ittner (1): git-gui: add Brazilian Portuguese (pt-BR) translation Bert Wesarg (16): git-gui: fix ANSI-color parsing git-gui: respect conflict marker size git-gui: fix browsers [Up To Parent] in sub-sub-directories. git-gui: Fix use of renamed tag. git-gui: Fix use of hunk tag for non-hunk content. git-gui: fix typo in image data git-gui: remove 'no such variable' for s error when encounter unknown file states git-gui: learn more type change states git-gui: rework handling of diff header git-gui: handle index lines only in the diff header git-gui: name also new symlinks so git-gui: there is no "mode *" diff header line git-gui: move 3way diff autodetect up git-gui: always reset the current tag git-gui: handle special content lines only in the diff header section git-gui: handle meta diff header lines only in the header section Carlo Marcelo Arenas Belon (1): setup: translate symlinks in filename when using absolute paths Carlos Martín Nieto (1): Name make_*_path functions more accurately David Barr (8): vcs-svn: Allow simple v3 dumps (no deltas yet) vcs-svn: Implement Prop-delta handling fast-import: add 'ls' command vcs-svn: use strbuf for revision log vcs-svn: use strbuf for author, UUID, and URL vcs-svn: implement perfect hash for node-prop keys vcs-svn: implement perfect hash for top-level keys vcs-svn: use strchr to find RFC822 delimiter Drew Northup (1): Documentation: "rebase <onto> <that>" stays on <that> branch upon exit Elijah Newren (2): Make rev-list --objects work together with pathspecs Add testcases showing how pathspecs are handled with rev-list --objects Erik Faye-Lund (1): alias: use run_command api to execute aliases Giuseppe Bilotta (1): Improve test for pthreads flag Heiko Voigt (13): git gui: keep selected branch when remote is changed in push dialog git-gui: scroll down to default selection for push dialog git-gui: instead of defaulting to home directory use working directory mingw: move unlink wrapper to mingw.c mingw: work around irregular failures of unlink on windows mingw: make failures to unlink or move raise a question mingw: add fallback for rmdir in case directory is in use git-gui: fix deleting item from all_remotes variable git-gui: always default to the last merged branch in remote delete git-gui: refactor remote submenu creation into subroutine git-gui: teach fetch/prune menu to do it for all remotes git-gui: fetch/prune all entry only for more than one entry git-gui: fetch/prune all entry appears last Ian Wienand (1): Obey p4 views when using client spec Jakob Pfender (2): object.h: Remove obsolete struct object_refs git-completion: Add git help completion for aliases Jakub Narębski (1): gitweb: Make i18n (encoding) tests in t9500 leave clean state Jay Soffian (4): git-checkout.txt: improve detached HEAD documentation Introduce CHERRY_PICK_HEAD bash: teach __git_ps1 about CHERRY_PICK_HEAD Teach commit about CHERRY_PICK_HEAD Jeff King (23): merge: improve inexact rename limit warning bump rename limit defaults (again) commit: stop setting rename limit add inexact rename detection progress infrastructure merge: enable progress reporting for rename detection pull: propagate --progress to merge compat: provide a fallback va_copy definition strbuf: add strbuf_vaddf trace: add trace_vprintf trace: refactor to support multiple env variables trace: factor out "do we want to trace" logic trace: add trace_strbuf add packet tracing debug code trace: give repo_setup trace its own key doc: drop author/documentation sections from most pages doc: add missing git footers docs: point git.txt author credits to git-scm.com checkout: add basic tests for detached-orphan warning checkout: clear commit marks after detached-orphan check checkout: tweak detached-orphan warning format t7607: mark known breakage in test 11 as fixed t7607: clean up stray untracked file tests: kill backgrounded processes more robustly Jens Lehmann (1): tests: fix overeager scrubbing of environment variables Johannes Schindelin (2): mingw_rmdir: set errno=ENOTEMPTY when appropriate Remove unused variables Johannes Sixt (1): rerere forget: deprecate invocation without pathspec Jonathan Nieder (75): vcs-svn: Check for errors from open() vcs-svn: Eliminate node_ctx.srcRev global vcs-svn: Eliminate node_ctx.mark global vcs-svn: Unclutter handle_node by introducing have_props var vcs-svn: Use mark to indicate nodes with included text vcs-svn: handle_node: Handle deletion case early vcs-svn: Replace = Delete + Add vcs-svn: Combine repo_replace and repo_modify functions vcs-svn: Delay read of per-path properties vcs-svn: Reject path nodes without Node-action vcs-svn: More dump format sanity checks vcs-svn: Make source easier to read on small screens vcs-svn: Split off function for handling of individual properties vcs-svn: Sharpen parsing of property lines vcs-svn: Allow change nodes for root of tree (/) cherry-pick/revert: add support for -X/--strategy-option unpack-trees: handle lstat failure for existing directory unpack-trees: handle lstat failure for existing file userdiff: simplify word-diff safeguard t4034 (diff --word-diff): style suggestions glossary: define pathspec checkout: split off a function to peel away branchname arg checkout: rearrange update_refs_for_switch for clarity t3507: introduce pristine-detach helper checkout: add missing const to describe_detached_head update-index --refresh --porcelain: add missing const vcs-svn: eliminate global byte_buffer vcs-svn: replace buffer_read_string memory pool with a strbuf vcs-svn: collect line_buffer data in a struct vcs-svn: teach line_buffer to handle multiple input files vcs-svn: make test-line-buffer input format more flexible tests: give vcs-svn/line_buffer its own test script vcs-svn: tweak test-line-buffer to not assume line-oriented input t0081 (line-buffer): add buffering tests vcs-svn: add binary-safe read function vcs-svn: allow character-oriented input vcs-svn: allow input from file descriptor vcs-svn: teach line_buffer about temporary files fast-import: make code "-Wpointer-arith" clean vcs-svn: introduce repo_read_path to check the content at a path vcs-svn: handle_node: use repo_read_path vcs-svn: simplify repo_modify_path and repo_copy vcs-svn: allow input errors to be detected promptly compat: fall back on __va_copy if available wt-status: add helpers for printing wt-status lines commit: refer to commit template as s->fp commit, status: use status_printf{,_ln,_more} helpers i18n: do not poison translations unless GIT_GETTEXT_POISON envvar is set wt-status: add helpers for printing wt-status lines commit: refer to commit template as s->fp commit, status: use status_printf{,_ln,_more} helpers i18n: add stub Q_() wrapper for ngettext i18n: "make distclean" should clean up after "make pot" tests: stop worrying about obsolete environment variables tests: suppress system gitattributes gitattributes: drop support for GIT_ATTR_NOGLOBAL config: drop support for GIT_CONFIG_NOGLOBAL tests: scrub environment of GIT_* variables declare 1-bit bitfields to be unsigned vcs-svn: remove spurious semicolons mktag: avoid %td in format string unbreak and eliminate NO_C99_FORMAT run-command: prettify -D_FORTIFY_SOURCE workaround vcs-svn: improve support for reading large files vcs-svn: make buffer_skip_bytes return length read vcs-svn: make buffer_copy_bytes return length read vcs-svn: improve reporting of input errors tests: avoid nonportable {foo,bar} glob vcs-svn: make reading of properties binary-safe vcs-svn: remove buffer_read_string vcs-svn: avoid unnecessary copying of log message and author vcs-svn: handle log message with embedded NUL vcs-svn: add missing cast to printf argument vcs-svn: add missing cast to printf argument tests: make sure input to sed is newline terminated Junio C Hamano (29): unpack-trees.c: cosmetic fix unpack_trees(): skip trees that are the same in all input t4034 (diff --word-diff): add a minimum Perl drier test vector t6004: add pathspec globbing test for log family checkout: introduce --detach synonym for "git checkout foo^{commit}" Rename t2019 with typo "amiguous" that meant "ambiguous" Revert "unpack_trees(): skip trees that are the same in all input" grep --no-index: honor pathspecs correctly rev-list: --left/right-only are mutually exclusive commit: give final warning when reattaching HEAD to leave commits behind Start preparing release notes to 1.7.5 Update Release Notes to 1.7.5 Update draft release notes to 1.7.5 refs_from_alternate: helper to use refs from alternates fetch-pack: objects in our alternates are available to us fetch-pack: factor out hardcoded handshake window size fetch-pack: progressively use larger handshake windows fetch-pack: use smaller handshake window for initial request Update drart release notes to 1.7.5 Update draft release notes to 1.7.5 rerere: make sure it works even in a workdir attached to a young repository Update draft release note to 1.7.5 Revert "upload-pack: Implement no-done capability" Revert "fetch-pack: Implement no-done capability" enable "no-done" extension only when fetching over smart-http Fix potential local deadlock during fetch-pack enable "no-done" extension only when serving over smart-http Revert two "no-done" reverts Git 1.7.5-rc0 Kevin Cernekee (1): gitweb: fix #patchNN anchors when path_info is enabled Martin von Zweigbergk (2): rerere "remaining" mergetool: don't skip modify/remove conflicts Matthieu Moy (2): push: better error messages when push.default = tracking push: better error message when no remote configured Michael Horowitz (1): git-p4 submit: prevent 'Jobs' section from being removed from p4 change log Michael J Gruber (14): revlist.c: introduce --left/right-only for unsymmetric picking t6007: Make sure we test --cherry-pick rev-list: documentation and test for --left/right-only git-add: make -A description clearer vs. -u rev-list/log: factor out revision mark generation revision.c: introduce --cherry-mark rev-list: documentation and test for --cherry-mark log --cherry: a synonym t6007: test rev-list --cherry git-log: put space after commit mark RelNotes/1.7.5.txt: typo and language fixes t6009: use test_commit() from test-lib.sh revision.c: introduce --min-parents and --max-parents options rev-list --min-parents,--max-parents: doc, test and completion Michael Witten (1): vcs-svn: a void function shouldn't try to return something Nguyễn Thái Ngọc Duy (22): Add struct pathspec diff-no-index: use diff_tree_setup_paths() Convert struct diff_options to use struct pathspec tree_entry_interesting(): remove dependency on struct diff_options Move tree_entry_interesting() to tree-walk.c and export it diff-tree: convert base+baselen to writable strbuf tree_entry_interesting(): refactor into separate smaller functions tree_entry_interesting(): support depth limit tree_entry_interesting(): fix depth limit with overlapping pathspecs tree_entry_interesting(): support wildcard matching tree_entry_interesting(): optimize wildcard matching when base is matched pathspec: add match_pathspec_depth() struct rev_info: convert prune_data to struct pathspec Convert ce_path_match() to use struct pathspec Convert ce_path_match() to use match_pathspec_depth() grep: convert to use struct pathspec grep: use match_pathspec_depth() for cache/worktree grepping grep: use writable strbuf from caller for grep_tree() grep: drop pathspec_matches() in favor of tree_entry_interesting() t7810: overlapping pathspecs and depth limit Make hash-object more robust against malformed objects git.c: reorder builtin command list Nicolas Kaiser (1): transport-helper.c: fix check for (size_t < 0) Pat Thoyts (2): git-gui: Include version check and test for tearoff menu entry git-gui: detect the use of MUI langauge packs on Windows Pete Wyckoff (12): git-p4: test script git-p4: fix key error for p4 problem git-p4: add missing newline in initial import message git-p4: accommodate new move/delete type in p4 git-p4: reinterpret confusing p4 message git-p4: better message for "git-p4 sync" when not cloned git-p4: decode p4 wildcard characters git-p4: support clone --bare git-p4: fix clone @all regression git-p4: test clone @all git-p4: fix sync new branch regression git-p4: test sync new branch Piotr Krukowiecki (1): Documentation: running test with --debug keeps "trash" directory Ramkumar Ramachandra (1): fast-import: Introduce --import-marks-if-exists René Scharfe (2): repo-config: add deprecation warning grep: read patterns from stdin with -f - SZEDER Gábor (2): bash: fix misindented esac statement in __git_complete_file() bash: complete 'git diff ...branc<TAB>' Sebastian Schuberth (4): mergetool--lib: Sort tools alphabetically for easier lookup mergetool--lib: Add Beyond Compare 3 as a tool mergetool--lib: Sort tools alphabetically for easier lookup mergetool--lib: Add Beyond Compare 3 as a tool Serge Ziryukin (1): git-gui: fix russian translation typos Shawn O. Pearce (6): smart-http: Don't use Expect: 100-Continue smart-http: Really never use Expect: 100-continue fetch-pack: Finish negotation if remote replies "ACK %s ready" upload-pack: More aggressively send 'ACK %s ready' fetch-pack: Implement no-done capability upload-pack: Implement no-done capability Skip (1): git-gui: spelling fixes in russian translation Stefan Naewe (1): git-gui: use --exclude-standard to check for untracked files Stephen Boyd (1): Fix sparse warnings Thomas Rast (2): Exhibit merge bug that clobbers index&WT t4034: bulk verify builtin word regex sanity Tor Arvid Lund (3): git-p4: Teach gitConfig method about arguments. Teach git-p4 to ignore case in perforce filenames if configured. git-p4: Fix error message crash in P4Sync.commit. Uwe Kleine-König (2): get_remote_url(): use the same data source as ls-remote to get remote urls git-request-pull: open-code the only invocation of get_remote_url Vitor Antunes (2): git-p4: Improve rename detection support git-p4: Add copy detection support Ævar Arnfjörð Bjarmason (4): gitignore: add test-mktemp to ignore list i18n: add no-op _() and N_() wrappers i18n: add GETTEXT_POISON to simulate unfriendly translator i18n: Makefile: "pot" target to extract messages marked for translation Version v1.7.4.5; changes since v1.7.4.4: ----------------------------------------- Johannes Sixt (1): t2021: mark a test as fixed Junio C Hamano (2): "log --cherry-pick" documentation regression fix Git 1.7.4.5 Michael J Gruber (3): git.txt: fix list continuation t3306,t5304: avoid clock skew issues git-svn.txt: Document --mergeinfo René Scharfe (1): archive: document limitation of tar.umask config setting Version v1.7.4.4; changes since v1.7.4.3: ----------------------------------------- Jakub Narębski (2): git-instaweb: Change how gitweb.psgi is made runnable as standalone app gitweb: Fix parsing of negative fractional timezones in JavaScript Jeff King (4): strbuf: add fixed-length version of add_wrapped_text format-patch: wrap long header lines format-patch: rfc2047-encode newlines in headers pull: do not clobber untracked files on initial pull Jonathan Nieder (1): compat: add missing #include <sys/resource.h> Junio C Hamano (6): list-objects.c: don't add an unparsed NULL as a pending tree Rename core.abbrevlength back to core.abbrev diff/status: refactor opportunistic index update update $GIT_INDEX_FILE when there are racily clean entries Start preparing for 1.7.4.4 Git 1.7.4.4 Libor Pechacek (2): Sanity-check config variable names Disallow empty section and variable names Linus Torvalds (1): Make the default abbrev length configurable Matthieu Moy (1): log: fix --max-count when used together with -S or -G Michael J Gruber (2): git-log.txt,rev-list-options.txt: -n/--max-count is commit limiting git-log.txt,rev-list-options.txt: put option blocks in proper order Nicolas Morey-Chaisemartin (1): submodule: process conflicting submodules only once SZEDER Gábor (1): Documentation: trivial grammar fix in core.worktree description Version v1.7.4.3; changes since v1.7.4.2: ----------------------------------------- Alex Riesen (1): HOME must be set before calling git-init when creating test repositories Carlos Martín Nieto (1): Documentation/config.txt: make truth value of numbers more explicit Clemens Buchacher (1): do not overwrite untracked symlinks Fabian Keil (1): git-cvsimport.perl: Bail out right away when reading from the server fails Jeff King (1): docs: fix filter-branch subdir example for exotic repo names Joe Ratterman (1): grep: Add the option '--line-number' Johan Herland (1): branch/checkout --track: Ensure that upstream branch is indeed a branch Johannes Sixt (3): Demonstrate breakage: checkout overwrites untracked symlink with directory stash: fix incorrect quoting in cleanup of temporary files stash: copy the index using --index-output instead of cp -p Junio C Hamano (9): checkout: fix bug with ambiguous refs apply: do not patch lines that were already patched apply -v: show offset count when patch did not apply exactly diff --quiet: disable optimization when --diff-filter=X is used doc: technical details about the index file format t8001: check the exit status of the command being tested parse-remote: typofix Doc: mention --delta-base-offset is the default for Porcelain commands Git 1.7.4.3 Maxin john (1): contrib/thunderbird-patch-inline: do not require bash to run the script Michael J Gruber (2): git-bisect.txt: streamline run presentation git-bisect.txt: example for bisecting with hot-fix Michael Witten (3): git tag documentation grammar fixes and readability updates Typos: t/README strbuf.h: remove a tad stale docs-in-comment and reference api-doc instead Nguyễn Thái Ngọc Duy (1): doc: technical details about the index file format Piotr Krukowiecki (2): git stash: show status relative to current directory Add test: git stash shows status relative to current dir Stephen Boyd (2): parse-remote: replace unnecessary sed invocation git-pack-objects.txt: fix grammatical errors Version v1.7.4.2; changes since v1.7.4.1: ----------------------------------------- Adam Monsen (1): diff format documentation: clarify --cc and -c Alexei Sholik (3): Documentation: remove redundant colons in git-for-each-ref.txt Add Author and Documentation sections to git-for-each-ref.txt docs: fix grammar in gitattributes.txt Arnout Engelen (1): Improve error messages when temporary file creation fails Ben Walton (1): Work around broken ln on solaris as used in t8006 Carlos Martín Nieto (3): valgrind: ignore SSE-based strlen invalid reads make_absolute_path: return the input path if it points to our buffer t/README: Add a note about running commands under valgrind Clemens Buchacher (1): Documentation: clarify -u<mode> option defaults Eric Hanchrow (1): branch_merged: fix grammar in warning Erik Faye-Lund (1): mingw: add minimum getrlimit() compatibility stub Jakub Narębski (2): gitweb: Always call parse_date with timezone parameter gitweb: Fix handling of fractional timezones in parse_date Jay Soffian (1): merge: honor prepare-commit-msg hook Jeff King (5): string_list_append: always set util pointer to NULL clone: die when trying to clone missing local path diff: handle diffstat of rewritten binary files diff: don't retrieve binary blobs for diffstat bisect: visualize with git-log if gitk is unavailable Johan Herland (1): push.default: Rename 'tracking' to 'upstream' Jonathan Nieder (9): correct type of EMPTY_TREE_SHA1_BIN tests: skip terminal output tests on OS X commit: error out for missing commit message template enums: omit trailing comma for portability compat: make gcc bswap an inline function standardize brace placement in struct definitions branch: split off function that writes tracking info and commit subject cherry: split off function to print output lines diff --submodule: split into bite-sized pieces Junio C Hamano (8): CodingGuidelines: downcase placeholders in usage messages verify-pack: add --stat-only to the synopsis section SubmittingPatches: clarify the expected commit log description Revert "core.abbrevguard: Ensure short object names stay unique a bit longer" Prepare draft release notes to 1.7.4.2 bisect: explain the rationale behind 125 Update draft release notes to 1.7.4.2 Git 1.7.4.2 Kevin Cernekee (1): gitweb: highlight: replace tabs with spaces Linus Torvalds (3): for_each_hash: allow passing a 'void *data' pointer to callback diffcore-rename: properly honor the difference between -M and -C diffcore-rename: improve estimate_similarity() heuristics Masatake Osanai (1): perl: command_bidi_pipe() method should set-up git environmens Mathias Lafeldt (1): Fix typo in t/README Michael J Gruber (16): commit,tag: use same wording for -F commit,status: describe --porcelain just like push clone,init: describe --template using the same wording commit,merge,tag: describe -m likewise add: describe --patch like checkout, reset commit,status: describe -u likewise git-tag.txt: list all modes in the description pull: do not display fetch usage on --help-all Make <identifier> lowercase as per CodingGuidelines Make <identifier> lowercase as per CodingGuidelines Make <identifier> lowercase as per CodingGuidelines Make <identifier> lowercase in Documentation git-patch-id: test for "no newline" markers git-patch-id: do not trip over "no newline" markers mergetool-lib: call vim in readonly mode for diffs rev-list-options.txt: typo fix Michal Rokos (2): Makefile: add NO_FNMATCH_CASEFOLD to HP-UX section git-compat-util.h: Honor HP C's noreturn attribute Michał Kiedrowicz (1): Documentation: fix a typo in git-apply.txt Nguyễn Thái Ngọc Duy (2): parse_tag_buffer(): do not prefixcmp() out of range init: remove unnecessary check Piotr Krukowiecki (1): ls-remote documentation: <refs> argument is optional Ralf Wildenhues (1): configure: use AC_LANG_PROGRAM consistently SZEDER Gábor (1): git-am.txt: advertise 'git am --abort' instead of 'rm .git/rebase-apply' Shawn O. Pearce (2): Limit file descriptors used by packs sha1_file.c: Don't retain open fds on small packs Spencer E. Olson (2): submodule: no [--merge|--rebase] when newly cloned t7406: "git submodule update {--merge|--rebase]" with new submodules Ævar Arnfjörð Bjarmason (4): gitweb/gitweb.perl: remove use of qw(...) as parentheses gitweb/gitweb.perl: don't call S_ISREG() with undef t/gitweb-lib.sh: Ensure that errors are shown for --debug --immediate t/t7500-commit.sh: use test_cmp instead of test Version v1.7.4.1; changes since v1.7.4: --------------------------------------- Chris Packham (1): clone: fixup recurse_submodules option Jakub Narębski (1): gitweb: Mention optional Perl modules in INSTALL Jens Lehmann (2): t5526: Fix wrong argument order in "git config" pull: Document the "--[no-]recurse-submodules" options Johannes Sixt (2): start_command: flush buffers in the WIN32 code path as well t4120-apply-popt: help systems with core.filemode=false Jonathan Nieder (5): quote.h: simplify the inclusion fast-import: clarify documentation of "feature" command fast-import: introduce "feature notes" command compat: helper for detecting unsigned overflow svn-fe: warn about experimental status Junio C Hamano (3): fsck: drop unused parameter from traverse_one_object() fsck: do not give up too early in fsck_dir() Git 1.7.4.1 Nguyễn Thái Ngọc Duy (4): diff: support --cached on unborn branches Add const to parse_{commit,tag}_buffer() sha1_file.c: move find_cached_object up so sha1_object_info can use it sha1_object_info: examine cached_object store too Pat Thoyts (2): t3509: use unconstrained initial test to setup repository. t7407: fix line endings for mingw build Shawn O. Pearce (1): bundle: Use OFS_DELTA in bundle files Sitaram Chamarty (1): post-receive-email: suppress error if description file missing Uwe Kleine-König (1): Documentation/merge subtree How-To: fix typo Version v1.7.4; changes since v1.7.4-rc3: ----------------------------------------- Adam Tkac (1): Don't pass "--xhtml" to hightlight in gitweb.perl script. Jeff King (3): rebase: use explicit "--" with checkout rebase: give a better error message for bogus branch tests: sanitize more git environment variables Jonathan Nieder (2): fast-import: treat filemodify with empty tree as delete rebase -i: clarify in-editor documentation of "exec" Junio C Hamano (1): Git 1.7.4 Version v1.7.4-rc3; changes since v1.7.4-rc2: --------------------------------------------- Alexey Shumkin (1): userdiff: match Pascal class methods Björn Steinbrink (1): Correctly report corrupted objects Erik Faye-Lund (1): exec_cmd: remove unused extern Johannes Sixt (2): Fix expected values of setup tests on Windows t/README: hint about using $(pwd) rather than $PWD in tests Jonathan Nieder (9): ll-merge: simplify opts == NULL case Documentation/fast-import: capitalize beginning of sentence remote-ext: do not segfault for blank lines Documentation/fast-import: put explanation of M 040000 <dataref> "" in context tests: cosmetic improvements to the repo-setup test tests: compress the setup tests Documentation: do not treat reset --keep as a special case Subject: setup: officially support --work-tree without --git-dir t1510: fix typo in the comment of a test Junio C Hamano (2): Documentation updates for 'GIT_WORK_TREE without GIT_DIR' historical usecase Git 1.7.4-rc3 Ramsay Jones (1): svndump.c: Fix a printf format compiler warning Version v1.7.4-rc2; changes since v1.7.4-rc1: --------------------------------------------- Anders Kaseorg (1): Mark gitk script executable Brandon Casey (3): trace.c: ensure NULL is not passed to printf t0001,t1510,t3301: use sane_unset which always returns with status 0 t3032: limit sed branch labels to 8 characters Jeff King (1): docs: explain diff.*.binary option Jonathan Nieder (3): diff: funcname and word patterns for perl gitweb: make logo optional t9010: svnadmin can fail even if available Junio C Hamano (2): userdiff/perl: catch BEGIN/END/... and POD as headers Git 1.7.4-rc2 Matthieu Moy (1): commit: suggest --amend --reset-author to fix commiter identity Michael J Gruber (1): RelNotes/1.7.4: minor fixes Ramsay Jones (7): lib-git-svn.sh: Move web-server handling code into separate function t9157-*.sh: Add an svn version check t6038-*.sh: Pass the -b (--binary) option to sed on cygwin t3032-*.sh: Pass the -b (--binary) option to sed on cygwin t3032-*.sh: Do not strip CR from line-endings while grepping on MinGW t4135-*.sh: Skip the "backslash" tests on cygwin t9157-*.sh: Make the svn version check more precise StephenB (1): git svn: fix the final example in man page Sylvain Rabot (2): gitweb: add extensions to highlight feature map gitweb: remove unnecessary test when closing file descriptor Thomas Rast (4): Documentation/git-archive: spell --worktree-attributes correctly Documentation/githooks: post-rewrite-copy-notes never existed submodule: fix relative url parsing for scp-style origin t0000: quote TAP snippets in test code Version v1.7.4-rc1; changes since v1.7.4-rc0: --------------------------------------------- Antonio Ospite (1): t/t9001-send-email.sh: fix '&&' chain in some tests Jonathan Nieder (3): vcs-svn: Error out for v3 dumps gitweb: skip logo in atom feed when there is none daemon: support <directory> arguments again Junio C Hamano (3): t0021: avoid getting filter killed with SIGPIPE Git 1.7.3.5 Git 1.7.4-rc1 Michael J Gruber (2): cvsimport: partial whitespace cleanup cvsimport: handle the parsing of uppercase config options Pete Wyckoff (1): convert filter: supply path to external driver Ralf Wildenhues (1): Fix typos in the documentation Robin H. Johnson (1): t9001: Fix test prerequisites Version v1.7.4-rc0; changes since v1.7.3.5: ------------------------------------------- Aleksi Aalto (1): status: show branchname with a configurable color Alexander Sulfrian (2): daemon: add helper function named_sock_setup daemon: allow more than one host address given via --listen Alexandre Erwin Ittner (1): gitk: Add Brazilian Portuguese (pt-BR) translation Anders Kaseorg (4): describe: Use for_each_rawref describe: Do not use a flex array in struct commit_name describe: Store commit_names in a hash table by commit SHA1 describe: Delay looking up commits until searching for an inexact match Antonio Ospite (1): git-send-email.perl: make initial In-Reply-To apply only to first email Brandon Casey (3): diffcore-pickaxe.c: a void function shouldn't try to return something Makefile: add NO_FNMATCH_CASEFOLD to IRIX sections t9001: use older Getopt::Long boolean prefix '--no' rather than '--no-' Brian Gernhardt (1): t6022: Use -eq not = to test output of wc -l Christopher Wilson (1): Enable highlight executable path as a configuration option Clemens Buchacher (6): t7607: use test-lib functions and check MERGE_HEAD t7607: add leading-path tests add function check_ok_to_remove() lstat_cache: optionally return match_len do not overwrite files in leading path use persistent memory for rejected paths Dan McGee (3): mergetool-lib: combine vimdiff and gvimdiff run blocks mergetool-lib: add a three-way diff view for vim/gvim mergetool-lib: make the three-way diff the default for vim/gvim David Barr (3): fast-import: Allow filemodify to set the root fast-import: insert new object entries at start of hash bucket fast-import: let importers retrieve blobs Elijah Newren (53): Document pre-condition for tree_entry_interesting tree-walk: Correct bitrotted comment about tree_entry() tree_entry_interesting(): Make return value more specific diff_tree(): Skip skip_uninteresting() when all remaining paths interesting t3509: Add rename + D/F conflict testcase that recursive strategy fails merge-recursive: D/F conflicts where was_a_dir/file -> was_a_dir t6032: Add a test checking for excessive output from merge t6022: Add test combinations of {content conflict?, D/F conflict remains?} t6022: Add tests for reversing order of merges when D/F conflicts present t6022: Add tests with both rename source & dest involved in D/F conflicts t6022: Add paired rename+D/F conflict: (two/file, one/file) -> (one, two) t6022: Add tests for rename/rename combined with D/F conflicts t6020: Modernize style a bit t6020: Add a testcase for modify/delete + directory/file conflict t6036: Test index and worktree state, not just that merge fails t6036: Add a second testcase similar to the first but with content changes t6036: Add testcase for undetected conflict merge-recursive: Small code clarification -- variable name and comments merge-recursive: Rename conflict_rename_rename*() for clarity merge-recursive: Nuke rename/directory conflict detection merge-recursive: Move rename/delete handling into dedicated function merge-recursive: Move delete/modify handling into dedicated function merge-recursive: Move process_entry's content merging into a function merge-recursive: New data structures for deferring of D/F conflicts merge-recursive: New function to assist resolving renames in-core only merge-recursive: Have process_entry() skip D/F or rename entries merge-recursive: Structure process_df_entry() to handle more cases merge-recursive: Update conflict_rename_rename_1to2() call signature merge-recursive: Update merge_content() call signature merge-recursive: Avoid doubly merging rename/add conflict contents merge-recursive: Move handling of double rename of one file to two merge-recursive: Move handling of double rename of one file to other file merge-recursive: Delay handling of rename/delete conflicts merge-recursive: Delay content merging for renames merge-recursive: Delay modify/delete conflicts if D/F conflict present conflict_rename_delete(): Check whether D/F conflicts are still present conflict_rename_rename_1to2(): Fix checks for presence of D/F conflicts merge_content(): Check whether D/F conflicts are still present handle_delete_modify(): Check whether D/F conflicts are still present merge-recursive: Make room for directories in D/F conflicts merge-recursive: Remove redundant path clearing for D/F conflicts t4017 (diff-retval): replace manual exit code check with test_expect_code t100[12] (read-tree-m-2way, read_tree_m_u_2way): add missing && t4002 (diff-basic): use test_might_fail for commands that might fail t4202 (log): Replace '<git-command> || :' with test_might_fail t4019 (diff-wserror): add lots of missing && t4026 (color): remove unneeded and unchained command t5602 (clone-remote-exec): add missing && t6016 (rev-list-graph-simplify-history): add missing && t7001 (mv): add missing && t7601 (merge-pull-config): add missing && t7800 (difftool): add missing && Introduce sane_unset and use it to ensure proper && chaining Eric Sunshine (5): Side-step sed line-ending "corruption" leading to t6038 failure. Side-step MSYS-specific path "corruption" leading to t5560 failure. Fix 'clone' failure at DOS root directory. Fix Windows-specific macro redefinition warning. Add MinGW-specific execv() override. Erik Faye-Lund (20): mingw: do not crash on open(NULL, ...) inet_ntop: fix a couple of old-style decls mingw: use real pid mingw: support waitpid with pid > 0 and WNOHANG mingw: add kill emulation daemon: use run-command api for async serving daemon: use full buffered mode for stderr daemon: get remote host address from root-process mingw: import poll-emulation from gnulib mingw: use poll-emulation from gnulib daemon: use socklen_t daemon: make --inetd and --detach incompatible daemon: opt-out on features that require posix msvc: opendir: fix malloc-failure msvc: opendir: allocate enough memory msvc: opendir: do not start the search win32: dirent: handle errors msvc: opendir: handle paths ending with a slash win32: use our own dirent.h help: always suggest common-cmds if prefix of cmd Giuseppe Bilotta (15): gitweb: use fullname as hash_base in heads link gitweb: introduce remote_heads feature gitweb: git_get_heads_list accepts an optional list of refs gitweb: separate heads and remotes lists gitweb: nagivation menu for tags, heads and remotes gitweb: allow action specialization in page header gitweb: remotes view for a single remote gitweb: refactor repository URL printing gitweb: provide a routine to display (sub)sections gitweb: group remote heads by remote git instaweb: enable remote_heads web--browse: coding style web--browse: split valid_tool list web--browse: support opera, seamonkey and elinks web--browse: better support for chromium Greg Brockman (4): Allow creation of arbitrary git-shell commands Add interactive mode to git-shell for user-friendliness Add sample commands for git-shell shell: Display errors from improperly-formatted command lines Ilari Liusvaara (4): Add bidirectional_transfer_loop() git-remote-fd git-remote-ext remote-fd/ext: finishing touches after code review Jakub Narębski (12): t/gitweb-lib.sh: Use GIT_BUILD_DIR t/gitweb-lib.sh: Use tabs for indent consistently gitweb: Move call to evaluate_git_version after evaluate_gitweb_config t/gitweb-lib.sh: Add support for GITWEB_TEST_INSTALLED gitweb/Makefile: Add 'test' and 'test-installed' targets gitweb/Makefile: Include gitweb/config.mak gitweb: Fix test of highlighting support in t9500 gitweb: Fix bug in evaluate_path_info gitweb: Improve behavior for actionless path_info gitweb URLs gitweb: Time::HiRes is in core for Perl 5.8 gitweb: selectable configurations that change with each request gitweb: Fix handling of whitespace in generated links Jan Krüger (1): read-tree: deprecate syntax without tree-ish args Jeff King (13): tests: factor out terminal handling from t7006 tests: test terminal output to both stdout and stderr push: pass --progress down to git-pack-objects config: treat non-existent config files as empty diff: report bogus input to -C/-M/-B docs: clarify git diff modes of operation allow command-specific pagers in pager.<cmd> docs: default to more modern toolset default color.status.branch to "same as header" tests: add some script lint checks tests: flip executable bit on t9158 handle arbitrary ints in git_config_maybe_bool t2107: mark passing test as success Jens Lehmann (5): clone: Add the --recurse-submodules option as alias for --recursive fetch/pull: Add the --recurse-submodules option Add the 'fetch.recurseSubmodules' config setting Submodules: Add the "fetchRecurseSubmodules" config option git submodule: Remove now obsolete tests before cloning a repo Joe Perches (1): git-send-email.perl: Add --to-cmd Johan Herland (23): notes.c: Hexify SHA1 in die() message from init_notes() (trivial) notes.h: Minor documentation fixes to copy_notes() notes.h: Make default_notes_ref() available in notes API notes.c: Reorder functions in preparation for next commit notes.h/c: Allow combine_notes functions to remove notes notes.h/c: Propagate combine_notes_fn return value to add_note() and beyond (trivial) t3303: Indent with tabs instead of spaces for consistency notes.c: Use two newlines (instead of one) when concatenating notes builtin/notes.c: Split notes ref DWIMmery into a separate function git notes merge: Initial implementation handling trivial merges only builtin/notes.c: Refactor creation of notes commits. git notes merge: Handle real, non-conflicting notes merges git notes merge: Add automatic conflict resolvers (ours, theirs, union) Documentation: Preliminary docs on 'git notes merge' git notes merge: Manual conflict resolution, part 1/2 git notes merge: Manual conflict resolution, part 2/2 git notes merge: List conflicting notes in notes merge commit message git notes merge: --commit should fail if underlying notes ref has moved git notes merge: Add another auto-resolving strategy: "cat_sort_uniq" git notes merge: Add testcases for merging notes trees at different fanouts Provide 'git notes get-ref' to easily retrieve current notes ref cmd_merge(): Parse options before checking MERGE_HEAD Provide 'git merge --abort' as a synonym to 'git reset --merge' Johannes Schindelin (1): merge-octopus: Work around environment issue on Windows Johannes Sixt (4): t7300: add a missing SYMLINKS prerequisite apply --whitespace=fix: fix tab-in-indent Make the tab width used for whitespace checks configurable Avoid duplicate test number t7609 Jonathan Nieder (52): merge-recursive: expose merge options for builtin merge ll-merge: replace flag argument with options struct commit-tree: free commit message before exiting test-lib: allow test code to check the list of declared prerequisites test_terminal: catch use without TTY prerequisite test_terminal: ensure redirections work reliably fast-import: filemodify after M 040000 <tree> "" crashes fast-import: tighten M 040000 syntax t9300 (fast-import): another test for the "replace root" feature fast-import: do not clear notes in do_change_note_fanout() user-manual: remote-tracking can be checked out, with detached HEAD tests: add missing && tests: add missing &&, batch 2 test-lib: introduce test_line_count to measure files t6022 (renaming merge): chain test commands with && t1502 (rev-parse --parseopt): test exit code from "-h" t1400 (update-ref): use test_must_fail t3301 (notes): use test_expect_code for clarity t3404 (rebase -i): unroll test_commit loops t3404 (rebase -i): move comment to description t3404 (rebase -i): introduce helper to check position of HEAD t4124 (apply --whitespace): use test_might_fail wrapper: move xmmap() to sha1_file.c wrapper: move odb_* to environment.c path helpers: move git_mkstemp* to wrapper.c strbuf: move strbuf_branchname to sha1_name.c wrapper: give zlib wrappers their own translation unit pack-objects: mark file-local variable static Remove pack file handling dependency from wrapper.o Describe various forms of "be quiet" using OPT__QUIET fast-import: treat SIGUSR1 as a request to access objects early git-rev-parse.txt: clarify --git-dir gitweb: document $per_request_config better fast-import: stricter parsing of integer options fast-import: clarify documentation of "feature" command fast-import: Allow cat-blob requests at arbitrary points in stream git submodule -b ... of current HEAD fails Makefile: dependencies for vcs-svn tests parse-options: clearer reporting of API misuse parse-options: move NODASH sanity checks to parse_options_check parse-options: sanity check PARSE_OPT_NOARG flag parse-options: never suppress arghelp if LITERAL_ARGHELP is set parse-options: allow git commands to invent new option types parse-options: make resuming easier after PARSE_OPT_STOP_AT_NON_OPTION update-index: migrate to parse-options API treap: make treap_insert return inserted node vcs-svn: fix intermittent repo_tree corruption Makefile: transport-helper uses thread-utils.h t9300: avoid short reads from dd bash: simple reimplementation of _get_comp_words_by_ref t9300: use perl "head -c" clone in place of "dd bs=1 count=16000" kluge t0001: test git init when run via an alias Joshua Jensen (6): Add string comparison functions that respect the ignore_case variable. Case insensitivity support for .gitignore via core.ignorecase Add case insensitivity support for directories when using git status Add case insensitivity support when using git ls-files Support case folding for git add when core.ignorecase=true Support case folding in git fast-import when core.ignorecase=true Junio C Hamano (31): gitdiffcore doc: update pickaxe description diff: pass the entire diff-options to diffcore_pickaxe() git log/diff: add -G<regexp> that greps in the patch text diff/log -G<pattern>: tests grep: move logic to compile header pattern into a separate helper log --author: take union of multiple "author" requests disallow branch names that start with a hyphen Start 1.7.4 cycle merge-recursive: Restructure showing how to chain more process_* functions Martin Langhoff has a new e-mail address Make test script t9157 executable merge-recursive:make_room_for_directories - work around dumb compilers core.abbrevguard: Ensure short object names stay unique a bit longer read_sha1_file(): report correct name of packfile with a corrupt object A loose object is not corrupt if it cannot be read due to EMFILE t9001: send-email interation with --in-reply-to and --chain-reply-to t3404: do not use 'describe' to implement test_cmp_rev Update draft release notes to 1.7.4 Update draft release notes to 1.7.4 t9300: remove unnecessary use of /dev/stdin t9119: do not compare "Text Last Updated" line from "svn info" t9010 fails when no svn is available get_sha1: teach ":$n:<path>" the same relative path logic Documentation/git.txt: update list of maintenance releases fetch_populated_submodules(): document dynamic allocation thread-utils.h: simplify the inclusion Relnotes: remove items fixed on 'maint' get_sha1_oneline: fix lifespan rule of temp_commit_buffer variable Update draft release notes to 1.7.4 set_try_to_free_routine(NULL) means "do nothing special" Git 1.7.4-rc0 Justin Frankel (2): merge-recursive --patience merge-recursive: options to ignore whitespace changes Kevin Ballard (9): merge-recursive: option to specify rename threshold diff: add synonyms for -M, -C, -B completion: Support the DWIM mode for git checkout blame: Add option to show author email instead of name submodule: preserve all arguments exactly when recursing submodule: only preserve flags across recursive status/update invocations rebase: better rearranging of fixup!/squash! lines with --autosquash rebase: teach --autosquash to match on sha1 in addition to message diff: add --detect-copies-harder as a synonym for --find-copies-harder Kirill Smelkov (1): gitk: Show notes by default (like git log does) Mark Lodato (2): completion: make compatible with zsh completion: fix zsh check under bash with 'set -u' Markus Duft (2): add support for the SUA layer (interix; windows) Interix: add configure checks Martin Storsjö (1): Improve the mingw getaddrinfo stub to handle more use cases Martin von Zweigbergk (3): rebase: support --verify Use reflog in 'pull --rebase . foo' completion: add missing configuration variables Matthieu Moy (9): Better "Changed but not updated" message in git-status Replace "remote tracking" with "remote-tracking" Change remote tracking to remote-tracking in non-trivial places everyday.txt: change "tracking branch" to "remote-tracking branch" Change "tracking branch" to "remote-tracking branch" Change incorrect uses of "remote branch" meaning "remote-tracking" Change incorrect "remote branch" to "remote tracking branch" in C code user-manual.txt: explain better the remote(-tracking) branch terms git-branch.txt: mention --set-upstream as a way to change upstream configuration Michael J Gruber (4): t5503: fix typo test: allow running the tests under "prove" t800?-blame.sh: retitle uniquely t1020-subdirectory: test alias expansion in a subdirectory Mike Pape (3): mingw: add network-wrappers for daemon mingw: implement syslog compat: add inet_pton and inet_ntop prototypes Nguyễn Thái Ngọc Duy (64): branch -h: show usage even in an invalid repository checkout-index -h: show usage even in an invalid repository commit/status -h: show usage even with broken configuration gc -h: show usage even with broken configuration ls-files -h: show usage even with corrupt index merge -h: show usage even with corrupt index update-index -h: show usage even with corrupt index add: do not rely on dtype being NULL behavior get_cwd_relative(): do not misinterpret root path builtins: print setup info if repo is found Add t1510 and basic rules that run repo setup t1510: setup case #0 t1510: setup case #1 t1510: setup case #2 t1510: setup case #3 t1510: setup case #4 t1510: setup case #5 t1510: setup case #6 t1510: setup case #7 t1510: setup case #8 t1510: setup case #9 t1510: setup case #10 t1510: setup case #11 t1510: setup case #12 t1510: setup case #13 t1510: setup case #14 t1510: setup case #15 t1510: setup case #16 t1510: setup case #17 t1510: setup case #18 t1510: setup case #19 t1510: setup case #20 t1510: setup case #21 t1510: setup case #22 t1510: setup case #23 t1510: setup case #24 t1510: setup case #25 t1510: setup case #26 t1510: setup case #27 t1510: setup case #28 t1510: setup case #29 t1510: setup case #30 t1510: setup case #31 cache.h: realign and use (1 << x) form for CE_* constants dir.c: add free_excludes() unpack-trees: move all skip-worktree checks back to unpack_trees() unpack-trees: fix sparse checkout's "unable to match directories" Revert "excluded_1(): support exclude files in index" setup: save prefix (original cwd relative to toplevel) in startup_info Make prefix_path() return char* without const get_sha1: support relative path ":path" syntax get_sha1_oneline: make callers prepare the commit list to traverse get_sha1: support $commit^{/regex} syntax get_sha1: handle special case $commit^{/} Add git_config_early() Use git_config_early() instead of git_config() during repo setup setup: limit get_git_work_tree()'s to explicit setup case only setup: clean up setup_bare_git_dir() setup: clean up setup_discovered_git_dir() setup: rework setup_explicit_git_dir() Remove all logic from get_git_work_tree() Revert "Documentation: always respect core.worktree if set" git.txt: correct where --work-tree path is relative to setup_work_tree: adjust relative $GIT_WORK_TREE after moving cwd Pascal Obry (3): Minor indentation fix. Remove @smtp_host_parts variable as not used. New send-email option smtpserveroption. Pat Notz (6): commit: helper methods to reduce redundant blocks of code pretty.c: teach format_commit_message() to reencode the output commit: --fixup option for use with rebase --autosquash add tests of commit --fixup commit: --squash option for use with rebase --autosquash add tests of commit --squash Pat Thoyts (13): MinGW: fix stat() and lstat() implementations for handling symlinks MinGW: Report errors when failing to launch the html browser. Skip t1300.70 and 71 on msysGit. Do not strip CR when grepping HTTP headers. Skip 'git archive --remote' test on msysGit git-am: fix detection of absolute paths for windows git-gui: show command-line errors in a messagebox on Windows git-gui: enable the Tk console when tracing/debugging on Windows git-gui: generic version trimming git-gui: use full dialog width for old name when renaming branch git-gui: correct assignment of work-tree git-gui: use wordprocessor tab style to ensure tabs work as expected git-gui: apply color information from git diff output Peter Krefting (1): gitk: Update Swedish translation (290t) Peter van der Does (1): bash: get --pretty=m<tab> completion to work with bash v4 Petr Onderka (1): Add global and system-wide gitattributes Ralf Thielow (1): commit.c: Remove backward goto in read_craft_line() Ramkumar Ramachandra (10): shell: Rewrite documentation and improve error message t4014-format-patch: Call test_tick before committing format-patch: Don't go over merge commits fmt_merge_msg: Change fmt_merge_msg API to accept shortlog_len merge: Make '--log' an integer option for number of shortlog entries merge: Make 'merge.log' an integer or boolean option t6200-fmt-merge-msg: Exercise 'merge.log' to configure shortlog length t6200-fmt-merge-msg: Exercise '--log' to configure shortlog length Porcelain scripts: Rewrite cryptic "needs update" error message t9010 (svn-fe): Eliminate dependency on svn perl bindings Ramsay Jones (10): msvc: Fix compilation errors in compat/win32/sys/poll.c msvc: git-daemon.exe: Fix linker "unresolved externals" error msvc: Fix build by adding missing INTMAX_MAX define msvc: Fix macro redefinition warnings t3600-rm.sh: Don't pass a non-existent prereq to test #15 t9142: Move call to start_httpd into the setup test lib-git-svn.sh: Avoid setting web server variables unnecessarily lib-git-svn.sh: Add check for mis-configured web server variables t9501-*.sh: Fix a test failure on Cygwin difftool: Fix failure on Cygwin René Scharfe (7): add description parameter to OPT__VERBOSE add description parameter to OPT__DRY_RUN add description parameter to OPT__QUIET add OPT__FORCE archive: improve --verbose description branch: improve --verbose description verify-tag: document --verbose SZEDER Gábor (7): bisect: improve error message of 'bisect log' while not bisecting bisect: improve error msg of 'bisect reset' when original HEAD is deleted bisect: check for mandatory argument of 'bisect replay' bash: offer refs for 'git bisect start' bash: not all 'git bisect' subcommands make sense when not bisecting bash: support more 'git notes' subcommands and their options bash: support pretty format aliases Santi Béjar (1): parse-remote: handle detached HEAD Schalk, Ken (1): t3030: Add a testcase for resolvable rename/add conflict with symlinks Sebastian Schuberth (3): MinGW: Use pid_t more consequently, introduce uid_t for greater compatibility MinGW: Add missing file mode bit defines On Windows, avoid git-gui to call Cygwin's nice utility Shawn O. Pearce (2): Use git_open_noatime when accessing pack data Work around EMFILE when there are too many pack files Stefan Haller (2): gitk: Prevent the text pane from becoming editable gitk: Make text selectable on Mac Stephen Boyd (4): send-email: Use To: headers in patch files send-email: Don't leak To: headers between patches parse-options: Don't call parse_options_check() so much parse-options: do not infer PARSE_OPT_NOARG from option type Steven Walter (1): git-svn: allow the mergeinfo property to be set Sven Eckelmann (1): contrib/ciabot: git-describe commit instead of HEAD Tay Ray Chuan (4): t5523-push-upstream: add function to ensure fresh upstream repo t5523-push-upstream: test progress messages format-patch: page output with --stdout bash completion: add basic support for git-reflog Thiago Farina (3): commit: Add commit_list prefix in two function names. builtin/branch.c: Use ALLOC_GROW instead of alloc_nr and xrealloc. builtin/rm.c: Use ALLOC_GROW instead of alloc_nr and xrealloc. Thomas Rast (3): {cvs,svn}import: use the new 'git read-tree --empty' t0003: properly quote $HOME gitk: Add the equivalent of diff --color-words Torsten Bögershausen (1): t9143: do not fail when unhandled.log.gz is not created Yann Dirson (1): diff: use "find" instead of "detect" as prefix for long forms of -M and -C Ævar Arnfjörð Bjarmason (22): send-email: use catfile() to concatenate files send-email: use lexical filehandle for opendir send-email: use lexical filehandles for $compose send-email: use lexical filehandles during sending send-email: get_patch_subject doesn't need a prototype send-email: file_declares_8bit_cte doesn't need a prototype send-email: unique_email_list doesn't need a prototype send-email: cleanup_compose_files doesn't need a prototype send-email: use \E***\Q instead of \*\*\* send-email: sanitize_address use $foo, not "$foo" send-email: sanitize_address use qq["foo"], not "\"foo\"" send-email: use (?:) instead of () if no match variables are needed send-email: send_message die on $!, not $? send-email: make_message_id use "require" instead of "use" send-email: use Perl idioms in while loop send-email: is_rfc2047_quoted use qr// regexes send-email: extract_valid_address use qr// regexes Makefile & configure: add a NO_FNMATCH flag Makefile & configure: add a NO_FNMATCH_CASEFOLD flag test-lib: make test_expect_code a test command t7004-tag.sh: re-arrange git tag comment for clarity tests: use test_cmp instead of piping to diff(1) Štěpán Němec (2): CodingGuidelines: Add a section on writing documentation diff,difftool: Don't use the {0,2} notation in usage strings Version v1.7.3.5; changes since v1.7.3.4: ----------------------------------------- Brandon Casey (1): test-lib.sh/test_decode_color(): use octal not hex in awk script Jakub Narębski (1): gitweb: Include links to feeds in HTML header only for '200 OK' response Jeff King (1): ident: die on bogus date format Jiang Xin (1): Fix typo in git-gc document. Jonathan Nieder (2): t0050: fix printf format strings for portability gitweb: skip logo in atom feed when there is none Junio C Hamano (5): commit: die before asking to edit the log message am --abort: keep unrelated commits since the last failure and warn rebase --skip: correctly wrap-up when skipping the last patch Prepare for 1.7.3.5 Git 1.7.3.5 Kevin Ballard (1): status: Quote paths with spaces in short format Kirill Smelkov (2): t/t8006: Demonstrate blame is broken when cachetextconv is on fill_textconv(): Don't get/put cache if sha1 is not valid Mark Lodato (1): fsck docs: remove outdated and useless diagnostic Michael J Gruber (2): git-difftool.txt: correct the description of $BASE and describe $MERGED difftool: provide basename to external tools Ramsay Jones (1): t3419-*.sh: Fix arithmetic expansion syntax error René Scharfe (1): close file on error in read_mmfile() Robin H. Johnson (2): Fix false positives in t3404 due to SHELL=/bin/false t9001: Fix test prerequisites Thomas Rast (1): userdiff: fix typo in ruby and python word regexes Vasyl' Vavrychuk (1): trace.c: mark file-local function static Version v1.7.3.4; changes since v1.7.3.3: ----------------------------------------- Alan Raison (1): contrib/hooks/post-receive-email: fix return values from prep_for_email Alejandro R. Sedeño (1): Add --force to git-send-email documentation Anders Kaseorg (1): apply: Recognize epoch timestamps with : in the timezone Christoph Mallon (1): diff --check: correct line numbers of new blank lines at EOF Clemens Buchacher (6): t7607: use test-lib functions and check MERGE_HEAD t7607: add leading-path tests add function check_ok_to_remove() lstat_cache: optionally return match_len do not overwrite files in leading path use persistent memory for rejected paths Federico Cuello (1): Fix git-apply with -p greater than 1 Gabriel Corona (2): t5550: test HTTP authentication and userinfo decoding Fix username and password extraction from HTTP URLs Jakub Narębski (1): gitweb: Introduce esc_attr to escape attributes of HTML elements Jari Aalto (1): git-pull.txt: Mention branch.autosetuprebase Jeff King (2): log.decorate: accept 0/1 bool values reflogs: clear flags properly in corner case Jonathan "Duke" Leto (1): Correct help blurb in checkout -p and friends Jonathan Nieder (4): apply: handle patches with funny filename and colon in timezone cherry-pick/revert: transparently refresh index Documentation: split gitignore page into sections Documentation: point to related commands from gitignore Junio C Hamano (5): test: git-apply -p2 rename/chmod only Do not link with -lcrypto under NO_OPENSSL Prepare for 1.7.3.4 Prepare for 1.7.3.4 Git 1.6.4.5 Kirill Smelkov (1): setup: make sure git_dir path is in a permanent buffer, getenv(3) case Martin von Zweigbergk (2): rebase --abort: do not update branch ref rebase: only show stat if configured to true Michael J Gruber (6): t/t7004-tag: test handling of rfc1991 signatures verify-tag: factor out signature detection tag: factor out sig detection for body edits tag: factor out sig detection for tag display tag: recognize rfc1991 signatures git-rm.txt: Fix quoting Nguyễn Thái Ngọc Duy (1): entry.c: remove "checkout-index" from error messages Nicolas Pitre (2): diff: don't presume empty file when corresponding object is missing make pack-objects a bit more resilient to repo corruption Tay Ray Chuan (10): smart-http: Don't change POST to GET when following redirect t5550-http-fetch: add missing '&&' t5550-http-fetch: add test for http-fetch shift end_url_with_slash() from http.[ch] to url.[ch] url: add str wrapper for end_url_with_slash() http-backend: use end_url_with_slash() http-push: Normalise directory names when pushing to some WebDAV servers http-push: check path length before using it http-push: add trailing slash at arg-parse time, instead of later on http-fetch: rework url handling Ævar Arnfjörð Bjarmason (2): perl: bump the required Perl version to 5.8 from 5.6.[21] perl: use "use warnings" instead of -w Version v1.7.3.3; changes since v1.7.3.2: ----------------------------------------- Andreas Köhler (1): submodule sync: Update "submodule.<name>.url" for empty directories Andrew Waters (1): Fix handling of git-p4 on deleted files Brandon Casey (2): userdiff.c: add builtin fortran regex patterns builtin/revert.c: don't dereference a NULL pointer Brian Gernhardt (1): t/gitweb-lib: Don't pass constant to decode_utf8 Clemens Buchacher (3): add rebase patch id tests do not search functions for patch ID do not overwrite untracked during merge from unborn branch Daniel Knittl-Frank (1): bash: Match lightweight tags in prompt David Kågedal (1): git-blame.el: Add (require 'format-spec) Diego Elio Pettenò (1): imap-send: link against libcrypto for HMAC and others Erik Faye-Lund (1): mingw: do not set errno to 0 on success Giuseppe Bilotta (1): CodingGuidelines: mention whitespace preferences for shell scripts Jan Krüger (2): repack: add -F flag to let user choose between --no-reuse-delta/object Documentation: pack.compression: explain how to recompress Jari Aalto (1): git-commit.txt: (synopsis): move -i and -o before "--" Jeff King (6): diff: don't use pathname-based diff drivers for symlinks rev-list: handle %x00 NUL in user format docs: give more hints about how "add -e" works apply: don't segfault on binary files with missing data docs: give more hints about how "add -e" works document sigchain api Jens Lehmann (1): pull: Remove --tags option from manpage Jim Meyering (1): mailmap: fix use of freed memory Joe Perches (1): git-send-email.perl: Deduplicate "to:" and "cc:" entries with names Jonathan Nieder (5): t4203 (mailmap): stop hardcoding commit ids and dates send-pack: avoid redundant "pack-objects died with strange error" Documentation: document show -s add: introduce add.ignoreerrors synonym for add.ignore-errors Documentation: do not misinterpret pull refspec as bold text Junio C Hamano (5): t4203: do not let "git shortlog" DWIM based on tty t3402: test "rebase -s<strategy> -X<opt>" Documentation: Fix mark-up of lines with more than one tilde Git 1.7.0.8 Git 1.7.3.3 Kevin Ballard (2): test-lib: extend test_decode_color to handle more color codes diff: handle lines containing only whitespace and tabs better Kevin P. Fleming (1): post-receive-email: ensure sent messages are not empty Kirill Smelkov (3): blame,cat-file: Prepare --textconv tests for correctly-failing conversion program blame,cat-file: Demonstrate --textconv is wrongly running converter on symlinks blame,cat-file --textconv: Don't assume mode is ``S_IFREF | 0664'' Martin von Zweigbergk (2): rebase -X: do not clobber strategy Documentation/git-pull: clarify configuration Michael J Gruber (6): git-reset.txt: clarify branch vs. branch head git-reset.txt: reset does not change files in target git-reset.txt: reset --soft is not a no-op git-reset.txt: use "working tree" consistently git-reset.txt: point to git-checkout git-reset.txt: make modes description more consistent Nathan W. Panike (1): Fix a formatting error in git-merge.txt Nguyễn Thái Ngọc Duy (3): dir.c: fix EXC_FLAG_MUSTBEDIR match in sparse checkout clean: avoid quoting twice clean: remove redundant variable baselen René Scharfe (1): diff: avoid repeated scanning while looking for funcname Thomas Rast (4): send-email: Refuse to send cover-letter template subject prefix_filename(): safely handle the case where pfx_len=0 merge-file: correctly find files when called in subdir repack: place temporary packs under .git/objects/pack/ Uwe Kleine-König (1): get_author_ident_from_commit(): remove useless quoting Yann Dirson (3): Fix copy-pasted comments related to tree diff handling. Keep together options controlling the behaviour of diffcore-rename. Document that rev-list --graph triggers parent rewriting. Ævar Arnfjörð Bjarmason (1): Makefile: add CC to TRACK_CFLAGS Version v1.7.3.2; changes since v1.7.3.1: ----------------------------------------- Andreas Gruenbacher (1): Clarify and extend the "git diff" format documentation Antonio Ospite (1): t/t9001-send-email.sh: fix stderr redirection in 'Invalid In-Reply-To' Bert Wesarg (1): Documentation: update-index: -z applies also to --index-info Brandon Casey (1): diffcore-pickaxe.c: remove unnecessary curly braces Cliff Frey (1): documentation: git-config minor cleanups Elijah Newren (1): t3020 (ls-files-error-unmatch): remove stray '1' from end of file Eric Wong (1): Documentation/git-svn: discourage "noMetadata" Erik Faye-Lund (1): do not depend on signed integer overflow Johannes Schindelin (2): Make sure that git_getpass() never returns NULL Fix typo in pack-objects' usage Jon Seymour (1): stash: simplify parsing fixes Jonathan Nieder (10): t0004 (unwritable files): simplify error handling environment.c: remove unused variable setup: make sure git dir path is in a permanent buffer init: plug tiny one-time memory leak xdiff: cast arguments for ctype functions to unsigned char Documentation: No argument of ALLOC_GROW should have side-effects Documentation: gitrevisions is in section 7 Documentation: diff can compare blobs Documentation: expand 'git diff' SEE ALSO section Documentation: update implicit "--no-index" behavior in "git diff" Junio C Hamano (4): MinGW: avoid collisions between "tags" and "TAGS" CodingGuidelines: reword parameter expansion section shell portability: no "export VAR=VAL" Git 1.7.3.2 Kevin Ballard (1): Update test script annotate-tests.sh to handle missing/extra authors Kirill Smelkov (1): user-manual: be consistent in illustrations to 'git rebase' Mathias Lafeldt (1): git-svn: fix processing of decorated commit hashes Matthieu Moy (1): diff: trivial fix for --output file error message Michael J Gruber (4): remote-helpers: build in platform independent directory user-manual: fix anchor name Finding-comments-With-given-Content rev-list-options: clarify --parents and --children git-show-ref.txt: clarify the pattern matching Ramkumar Ramachandra (1): SubmittingPatches: Document some extra tags used in commit messages René Scharfe (1): work around buggy S_ISxxx(m) implementations Steven Walter (1): git-svn: check_cherry_pick should exclude commits already in our history Tony Luck (1): Better advice on using topic branches for kernel development Uwe Kleine-König (1): Documentation/git-clone: describe --mirror more verbosely Yann Dirson (1): t/t3415: use && where applicable. Štěpán Němec (6): Use angles for placeholders consistently Fix odd markup in --diff-filter documentation Use parentheses and `...' where appropriate Remove stray quotes in --pretty and --format documentation Put a space between `<' and argument in pack-objects usage string Fix {update,checkout}-index usage strings Version v1.7.3.1; changes since v1.7.3: --------------------------------------- Brandon Casey (3): t/t3903-stash: improve testing of git-stash show wt-status.c: don't leak directory entries when processing untracked,ignored git-send-email.perl: ensure $domain is defined before using it Brian Gernhardt (1): git-stash: fix flag parsing Christian Couder (1): t6050 (replace): fix bogus "fetch branch with replacement" test Daniel Knittl-Frank (1): Improvements to `git checkout -h` Jeff King (1): prefer test -h over test -L in shell scripts Jon Seymour (1): stash: fix git stash branch regression when branch creation fails Junio C Hamano (2): CodingGuidelines: spell Arithmetic Expansion with $(($var)) Git 1.7.3.1 Linus Torvalds (1): Fix missing 'does' in man-page for 'git checkout' Matthieu Moy (1): update comment and documentation for :/foo syntax Michael J Gruber (1): contrib/completion: --no-index option to git diff Pat Notz (2): strbuf.h: fix comment typo dir.c: squelch false uninitialized memory warning Ramsay Jones (1): t1503: Fix arithmetic expansion syntax error when using dash Tomas Carnecky (1): stash drops the stash even if creating the branch fails because it already exists Wesley J. Landaker (1): Documentation: Refer to git-commit-tree in git-filter-branch help Version v1.7.3; changes since v1.7.3-rc2: ----------------------------------------- Brandon Casey (1): t/t7300: workaround ancient touch by rearranging arguments Brian Gernhardt (1): t7003: Use test_commit instead of custom function Chris Johnsen (1): git-rebase--interactive.sh: replace cut with ${v%% *} Jay Soffian (1): git-ls-files.txt: clarify -x/--exclude option Junio C Hamano (2): ls-files documentation: reword for consistency Git 1.7.3 Version v1.7.3-rc2; changes since v1.7.3-rc1: --------------------------------------------- Csaba Henk (2): bundle: detect if bundle file cannot be created filter-branch: retire --remap-to-ancestor Jens Lehmann (2): Several tests: cd inside subshell instead of around t1020: Get rid of 'cd "$HERE"' at the start of each test Jonathan Nieder (5): tests: subshell indentation stylefix t1450 (fsck): remove dangling objects t2105 (gitfile): add missing && t1302 (core.repositoryversion): style tweaks t2016 (checkout -p): add missing && Junio C Hamano (3): t3101: modernise style ls-tree $di $dir: do not mistakenly recurse into directories Git 1.7.3 rc2 Matthieu Moy (1): git-gui: use shell to launch textconv filter in "blame" Oded Shimon (1): Add --src/dst-prefix to git-formt-patch in git-rebase.sh Pat Thoyts (6): git-gui: Make usage statement visible on Windows. git-gui: display error launching blame as a message box. git-gui: handle textconv filter on Windows and in development git-gui: ensure correct application termination in git-gui--askpass git-gui: avoid mis-encoding the copyright message on Windows. git-gui 0.13 Peter Krefting (1): git-gui: Update Swedish translation (521t). Ramsay Jones (1): vcs-svn: Fix some printf format compiler warnings René Scharfe (1): compat/nedmalloc: don't force NDEBUG on the rest of git Schalk, Ken (1): RE: [PATCH] Avoid rename/add conflict when contents are identical Version v1.7.3-rc1; changes since v1.7.3-rc0: --------------------------------------------- Anselm Kruis (1): Add a new option 'core.askpass'. Brandon Casey (10): t/t5510: demonstrate failure to fetch when current branch has merge ref builtin/fetch.c: ignore merge config when not fetching from branch's remote t/t7008: workaround broken handling of \000 by printf on IRIX Makefile: use compat regex on IRIX 6.5 builtin/fetch.c: comment that branch->remote_name is usable when has_merge t/t5510-fetch.sh: improve testing with explicit URL and merge spec diff.c: call regfree to free memory allocated by regcomp when necessary xdiff-interface.c: always trim trailing space from xfuncname matches t/t4018: test whether the word_regex patterns compile t/t4018: avoid two unnecessary sub-shell invocations Elijah Newren (2): cache_tree_free: Fix small memory leak revert: Fix trivial comment style issue Jeff King (3): pass "git -c foo=bar" params through environment tests: make test_must_fail more verbose tests: make test_must_fail fail on missing commands Jens Lehmann (1): t3404 & t7508: cd inside subshell instead of around Johan Herland (1): notes: Don't create (empty) commit when removing non-existing notes Johannes Sixt (1): fast-export: ensure that a renamed file is printed after all references Jonathan Nieder (3): do not pass "git -c foo=bar" params to transport helpers tests: make test_might_fail more verbose tests: make test_might_fail fail on missing commands Junio C Hamano (3): install-webdoc: keep installed RelNotes-*.txt Prepare for 1.7.3 rc1 Git 1.7.3 rc1 Knut Franke (2): Allow core.askpass to override SSH_ASKPASS. Extend documentation of core.askpass and GIT_ASKPASS. Mark Lodato (1): config.txt: fix placement of diff.noprefix Nicolas Pitre (1): Documentation: move RelNotes into a directory of their own Thiago Farina (2): builtin.h: Move two functions definitions to help.h. builtin/clean.c: Use STRING_LIST_INIT_NODUP. Version v1.7.3-rc0; changes since v1.7.2.5: ------------------------------------------- Alejandro R. Sedeño (1): gitweb: move highlight config out of guess_file_syntax() Alex Riesen (2): Add a for_each_string_list_item macro Convert the users of for_each_string_list to for_each_string_list_item macro Alexander Gladysh (1): Add a rename + D/F conflict testcase Anders Kaseorg (1): gitweb: Don't die_error in git_tag after already printing headers Brandon Casey (2): git-rebase--interactive.sh: rework skip_unnecessary_picks git-rebase--interactive.sh: use printf instead of echo to print commit message Brian Gernhardt (2): t7610: cd inside subshell instead of around t7606: Avoid using head as a file name Charles Bailey (1): mergetool: Remove explicit references to /dev/tty Christian Couder (11): revert: report success when using option --strategy revert: refactor commit code into a new run_git_commit() function revert: don't print "Finished one cherry-pick." if commit failed revert: improve success message by adding abbreviated commit sha1 t3508: add check_head_differs_from() helper function and use it revert: fix off by one read when searching the end of a commit subject revert: refactor code to find commit subject in find_commit_subject() revert: rename variables related to subject in get_message() bisect: use find_commit_subject() instead of custom code merge-recursive: use find_commit_subject() instead of custom code blame: use find_commit_subject() instead of custom code Clemens Buchacher (1): hash binary sha1 into patch id David Aguilar (1): mergetool: Skip autoresolved paths David Barr (5): Add memory pool library Add string-specific memory pool Add stream helper library Infrastructure to write revisions in fast-export format SVN dump parser David D. Kilzer (3): git svn: fix dcommit to work with touched files git-svn: fix regex to remove "tail" from svn tags git-svn: fix fetch with deleted tag Diane Gasselin (2): merge-recursive: porcelain messages for checkout t7609: test merge and checkout error messages Dmitry Statyvka (1): git svn: add an option to recode pathnames Elijah Newren (13): Add additional testcases for D/F conflicts merge-recursive: Fix D/F conflicts merge_recursive: Fix renames across paths below D/F conflicts fast-export: Fix output order of D/F changes fast-import: Improve robustness when D->F changes provided in wrong order fast-export: Fix dropping of files with --import-marks and path limiting fast-export: Add a --full-tree option upload-pack: Improve error message when bad ref requested Mark tests that use symlinks as needing SYMLINKS prerequisite merge-recursive: Fix typo t6031: Add a testcase covering multiple renames across a D/F conflict merge-recursive: Fix multiple file rename across D/F conflict merge-recursive: Avoid excessive output for and reprocessing of renames Eric Wong (4): instaweb: fix WEBrick server support instaweb: minimize moving parts for WEBrick instaweb: add access+error logging for WEBrick t9155: fix compatibility with older SVN Eyvind Bernhardsen (3): Avoid conflicts when merging branches with mixed normalization Try normalizing files to avoid delete/modify conflicts when merging Don't expand CRLFs when normalizing text during merge Frank Li (1): Change regerror() declaration from K&R style to ANSI C (C89) Greg Brockman (1): split_cmdline: Allow caller to access error string Heiko Voigt (4): Teach ref iteration module about submodules setup_revisions(): Allow walking history in a submodule Implement automatic fast-forward merge for submodules add configuration variable for --autosquash option of interactive rebase Jakub Narębski (1): gitweb: Fix typo in run() subroutine Jared Hance (5): Convert "! git" to "test_must_fail git" Add -e/--exclude to git-clean. Add test for git clean -e. builtin/push.c: remove useless temporary variable Document git-instaweb start/stop/restart Jason Evans (1): Add treap implementation Jeff King (1): docs: fix Makefile dependency for user manual Jens Lehmann (7): Submodules: Add the new "ignore" config option for diff and status Submodules: Use "ignore" settings from .gitmodules too for diff and status Add tests for the diff.ignoreSubmodules config option checkout: Add test for diff.ignoreSubmodules checkout: Use submodule.*.ignore settings from .git/config and .gitmodules t7405: cd inside subshell instead of around t7406 & t7407: add missing && at end of lines Johan Herland (2): Make graph_next_line() available in the graph.h API Enable custom schemes for column colors in the graph API Johannes Schindelin (2): Add the 'diff.ignoreSubmodules' config setting checkout: respect diff.ignoreSubmodules setting Johannes Sixt (1): Fix compat/regex ANSIfication on MinGW Jon Seymour (14): detached-stash: introduce parse_flags_and_revs function detached-stash: work around git rev-parse failure to detect bad log refs detached-stash: simplify stash_apply detached-stash: simplify stash_drop detached-stash: refactor git stash pop implementation detached-stash: simplify git stash branch detached-stash: simplify git stash show detached-stash: tests of git stash with stash-like arguments detached-stash: update Documentation rev-parse: exit with non-zero status if ref@{n} is not valid. sha1_name.c: use warning in preference to fprintf(stderr rev-parse: tests git rev-parse --verify master@{n}, for various n t1503: fix broken test_must_fail calls t3903: fix broken test_must_fail calls Jonathan Nieder (89): Teach fast-import to import subtrees named by tree id Export parse_date_basic() to convert a date string to timestamp t1501 (rev-parse): clarify tests: try git apply from subdir of toplevel setup: split off $GIT_DIR-set case from setup_git_directory_gently setup: split off a function to checks working dir for .git file setup: split off code to handle stumbling upon a repository setup: split off a function to handle hitting ceiling in repo search setup: split off get_device_or_die helper t1011 (sparse checkout): style nitpicks gitweb: allow configurations that change with each request t4111 (apply): refresh index before applying patches to it diff: split off a function for --stat-* option parsing t6038 (merge.renormalize): style nitpicks t6038 (merge.renormalize): try checkout -m and cherry-pick t6038 (merge.renormalize): check that it can be turned off merge-trees: push choice to renormalize away from low level merge-trees: let caller decide whether to renormalize Documentation/technical: document ll_merge ll-merge: make flag easier to populate ll-merge: let caller decide whether to renormalize t4200 (rerere): modernize style rerere: migrate to parse-options API rerere: never renormalize merge-recursive --renormalize Introduce vcs-svn lib Update svn-fe manual svn-fe manual: Clarify warning about deltas in dump files vcs-svn: remove build artifacts on "make clean" treap: style fix compat: add strtok_r() vcs-svn: Rename dirent pool to build on Windows vcs-svn: Avoid %z in format string t9010 (svn-fe): use Unix-style path in URI t9010 (svn-fe): avoid symlinks in test Eliminate “Finished cherry-pick/revert” message Introduce advise() to print hints cherry-pick/revert: Use error() for failure message cherry-pick/revert: Use advise() for hints t7606 (merge-theirs): modernize style merge: let custom strategies intervene in trivial merges t7006 (pager): add missing TTY prerequisites merge: do not mistake (ancestor of) tag for branch t7600 (merge): modernize style t7600 (merge): do not launch gitk for --debug t7600 (merge): check reflog entry t7600 (merge): test merge from branch yet to be born t6010 (merge-base): modernize style t6200 (fmt-merge-msg): style nitpicks Documentation: add a SEE ALSO section for merge-base merge-base --octopus to mimic show-branch --merge-base merge-base --independent to print reduced parent list in a merge fmt-merge-msg -m to override merge title merge script: --squash, --ff from unborn branch are errors merge script: tweak unmerged files message to match builtin merge script: refuse to merge during merge merge script: improve log message subject merge script: merge -X<option> merge script: allow custom strategies merge script: forbid merge -s index merge script: handle -m --log correctly merge script: handle many-way octopus merge script: --ff-only to disallow true merge merge script: handle --no-ff --no-commit correctly merge script: notice @{-1} shorthand merge script: learn --[no-]rerere-autoupdate autoconf: don't use platform regex if it lacks REG_STARTEND Documentation: set a !DOCTYPE for user manual Documentation: tweak description of log.date Documentation: quoting trouble in "git rm" discussion Documentation: unbreak regex in show-ref manual Documentation: clarify quoting in "git add" example Documentation: add missing quotes to "git grep" examples Documentation: clarify quoting in "git rm" example Documentation: clarify quoting in gitignore docs Documentation: remove backslashes in manpage synopses Documentation/technical: avoid stray backslash in parse-options API docs Documentation: remove stray backslash from "git bundle" manual Documentation: remove backslash before ~ in fast-import manual Documentation: remove stray backslashes in rev-parse manual Documentation: avoid stray backslashes in core tutorial Documentation: avoid stray backslash in user manual Documentation: do not convert ... operator to ellipses Documentation: remove stray backslashes from "Fighting regressions" article Documentation: remove stray backslash in show-branch discussion apply: split quoted filename handling into new function tests: exercise "git apply" with weird filenames apply: handle traditional patches with space in filename tests: simplify "missing PREREQ" message Junio C Hamano (6): cvs tests: do not touch test CVS repositories shipped with source compat/regex: get rid of old-style definition autoconf: regex library detection typofix Work around em-dash handling in newer AsciiDoc install-webdoc: filter timestamp-only changes correctly Prepare for 1.7.3 Kevin P. Fleming (1): post-receive-email: optional message line count limit Matthieu Moy (14): diff: parse separate options like -S foo diff: parse separate options --stat-width n, --stat-name-width n log: parse separate options like git log --grep foo log: parse separate option for --glob rebase -i: add exec command to launch a shell command test-lib: user-friendly alternatives to test [-d|-f|-e] Turn unpack_trees_options.msgs into an array + enum merge-recursive: distinguish "removed" and "overwritten" messages unpack_trees: group error messages by type tests: factor HOME=$(pwd) in test-lib.sh Move set_porcelain_error_msgs to unpack-trees.c and rename it setup_unpack_trees_porcelain: take the whole options struct as parameter Move "show_all_errors = 1" to setup_unpack_trees_porcelain() t7609-merge-co-error-msgs: test non-fast forward case too. Michael J Gruber (3): git-bundle.txt: Cleanup git-bundle.txt: whitespace cleanup git-bundle.txt: Clarify rev-list-args restrictions Mike Lundy (1): rebase: support -X to pass through strategy options Nguyễn Thái Ngọc Duy (22): upload-pack: remove unused "create_full_pack" code in do_rev_list setup: do not forget working dir from subdir of gitdir Revert "rehabilitate 'git index-pack' inside the object store" setup: split off a function to handle ordinary .git directories unpack-trees: only clear CE_UPDATE|CE_REMOVE when skip-worktree is always set unpack-trees: let read-tree -u remove index entries outside sparse area unpack-trees: do not check for conflict entries too early unpack-trees: mark new entries skip-worktree appropriately git wrapper: introduce startup_info struct setup: remember whether repository was found git wrapper: allow setup_git_directory_gently() be called earlier shortlog: run setup_git_directory_gently() sooner grep: run setup_git_directory_gently() sooner apply: run setup_git_directory_gently() sooner bundle: run setup_git_directory_gently() sooner config: run setup_git_directory_gently() sooner index-pack: run setup_git_directory_gently() sooner ls-remote: run setup_git_directory_gently() sooner var: run setup_git_directory_gently() sooner merge-file: run setup_git_directory_gently() sooner clone: warn users --depth is ignored in local clones parse_object: pass on the original sha1, not the replaced one Petr Onderka (1): Userdiff patterns for C# Ralf Wildenhues (1): Typos in code comments, an error message, documentation Ramkumar Ramachandra (1): builtin/checkout: Fix message when switching to an existing branch Spencer E. Olson (1): Allow HTTP user agent string to be modified. Steven Walter (1): git svn: URL-decode left-hand side of svn refspec Sverre Rabbelier (1): config: add --local option Tay Ray Chuan (4): add tests for checkout -b builtin/checkout: reword hint for -b builtin/checkout: learn -B builtin/checkout: handle -B from detached HEAD correctly Thiago Farina (2): string_list: Add STRING_LIST_INIT macro and make use of it. object.h: Add OBJECT_ARRAY_INIT macro and make use of it. Thomas Rast (4): Do not unquote + into ' ' in URLs ls-files: learn a debugging dump format Makefile: make gcov invocation configurable test: Introduce $GIT_BUILD_DIR Ævar Arnfjörð Bjarmason (59): sha1_file: Show the the type and path to corrupt objects tests: Ignore the Test::Harness .prove file t/t6035-merge-dir-to-symlink.sh: Remove TODO on passing test SubmittingPatches: Clarify the Signed-off-by rules SubmittingPatches: Cite the 50 char subject limit perl/Makefile: Unset INSTALL_BASE when making perl.mak test-lib: Don't write test-results when HARNESS_ACTIVE test-lib: Add support for multiple test prerequisites test-lib: Print missing prerequisites in test output t/README: Document the predefined test prerequisites tests: A SANITY test prereq for testing if we're root test-lib: Multi-prereq support only checked the last prereq tests: Infrastructure for Git smoke testing t/README: Document the Smoke testing t/Makefile: Can't include GIT-BUILD-OPTIONS, it's a .sh t/README: Add SMOKE_{COMMENT,TAGS}= to smoke_report target gitignore: Ignore files generated by "make coverage" Makefile: Include subdirectories in "make cover" reports Makefile: Split out the untested functions target Makefile: Add cover_db target Makefile: Add cover_db_html target t/README: A new section about test coverage t/README: Add a note about the dangers of coverage chasing tests: implicitly skip SYMLINKS tests using <prereq> t/t4004-diff-rename-symlink.sh: use three-arg <prereq> t/t5800-remote-helpers.sh: Skip with prereq on python <2.4 t/t7800-difftool.sh: Skip with prereq on no PERL t/README: Update "Skipping tests" to align with best practices t/t1304-default-acl: change from skip_all=* to prereq skip t/t5705-clone-2gb: change from skip_all=* to prereq skip t/t7005-editor: change from skip_all=* to prereq skip t/t5503-tagfollow: change from skip_all=* to prereq skip t/t4016-diff-quote: change from skip_all=* to prereq skip t/t3902-quoted: change from skip_all=* to prereq skip t/t3300-funny-names: change from skip_all=* to prereq skip git-notes: Run partial expensive test everywhere t/Makefile: Create test-results dir for smoke target tests: Move FILEMODE prerequisite to lib-prereq-FILEMODE.sh t/t3701-add-interactive.sh: change from skip_all=* to prereq skip lib-patch-mode tests: change from skip_all=* to prereq skip t/t9600-cvsimport.sh: change from skip_all=* to prereq skip t/t9001-send-email.sh: Remove needless PROG=* assignment t/t9001-send-email.sh: change from skip_all=* to prereq skip t/t9001-send-email.sh: convert setup code to tests t/t7105-reset-patch.sh: Add a PERL prerequisite t/t9601-cvsimport-vendor-branch.sh: Add a PERL prerequisite t/t9602-cvsimport-branches-tags.sh: Add a PERL prerequisite tests: fix syntax error in "Use advise() for hints" test compat/regex: use the regex engine from gawk for compat compat/regex: get the gawk regex engine to compile within git compat/regex: define out variables only used under RE_ENABLE_I18N t/t9010-svn-fe.sh: add an +x bit to this test t/t7008-grep-binary.sh: un-TODO a test that needs REG_STARTEND reset: suggest what to do upon "git reset --mixed <paths>" test-lib: Use $TEST_DIRECTORY or $GIT_BUILD_DIR instead of $(pwd) and ../ test-lib: Use "$GIT_BUILD_DIR" instead of "$TEST_DIRECTORY"/../ test-lib: Allow overriding of TEST_DIRECTORY t/t0000-basic.sh: Run the passing TODO test inside its own test-lib test-lib: use subshell instead of cd $new && .. && cd $old Version v1.7.2.5; changes since v1.7.2.4: ----------------------------------------- Jakub Narębski (1): gitweb: Introduce esc_attr to escape attributes of HTML elements Junio C Hamano (1): Git 1.6.4.5 Version v1.7.2.4; changes since v1.7.2.3: ----------------------------------------- Brandon Casey (2): diff.c: call regfree to free memory allocated by regcomp when necessary xdiff-interface.c: always trim trailing space from xfuncname matches Daniel Knittl-Frank (1): bash: Match lightweight tags in prompt Elijah Newren (2): cache_tree_free: Fix small memory leak revert: Fix trivial comment style issue Jared Hance (1): Fix whitespace issue in object.c Jari Aalto (1): git-commit.txt: (synopsis): move -i and -o before "--" Jens Lehmann (1): t5505: add missing && Jonathan Nieder (1): add: introduce add.ignoreerrors synonym for add.ignore-errors Junio C Hamano (3): tag.c: whitespace breakages fix t3101: modernise style Git 1.7.0.8 Mark Lodato (1): config.txt: fix placement of diff.noprefix René Scharfe (1): compat/nedmalloc: don't force NDEBUG on the rest of git Version v1.7.2.3; changes since v1.7.2.2: ----------------------------------------- Brandon Casey (2): Makefile: link builtins residing in bin directory to main git binary too Makefile: make hard/symbolic links for non-builtins too Dan Johnson (1): fetch: allow command line --tags to override config David Aguilar (1): submodule sync: Update "submodule.<name>.url" Elijah Newren (3): t5520-pull: Add testcases showing spurious conflicts from git pull --rebase pull --rebase: Avoid spurious conflicts and reapplying unnecessary patches tree-walk: Correct bitrotted comment about tree_entry() Greg Price (1): pack-refs: remove newly empty directories Jay Soffian (1): for-each-ref: fix objectname:short bug Jens Lehmann (1): t7403: add missing &&'s Jonathan Nieder (12): t4150 (am): style fix t4150 (am): futureproof against failing tests t3400 (rebase): whitespace cleanup archive: abbreviate substituted commit ids again checkout, commit: remove confusing assignments to rev.abbrev examples/commit: use --abbrev for commit summary Documentation: flesh out “git pull” description core: Stop leaking ondisk_cache_entrys read-tree: stop leaking tree objects write-tree: Avoid leak when index refers to an invalid object t3302 (notes): Port to Solaris parse-options: clarify PARSE_OPT_NOARG description Junio C Hamano (6): Teach "apply --index-info" to handle rename patches rebase: protect against diff.renames configuration diff --follow: do not waste cycles while recursing diff --follow: do call diffcore_std() as necessary Prepare for 1.7.2.3 Git 1.7.2.3 Linus Torvalds (1): Fix 'git log' early pager startup error case Mark Rada (1): Tell ignore file about generate files in /gitweb/static Matthieu Moy (2): xmalloc: include size in the failure message t0003: add missing && at end of lines Nicolas Pitre (1): fix >4GiB source delta assertion failure Ralf Wildenhues (1): Typos in code comments, an error message, documentation SZEDER Gábor (2): mingw_utime(): handle NULL times parameter rerere: fix overeager gc Thiago Farina (1): builtin/merge_recursive.c: Add an usage string and make use of it. Thomas Rast (5): Documentation/git-reset: reorder modes for soft-mixed-hard progression Documentation/reset: separate options by mode Documentation/reset: promote 'examples' one section up Documentation/reset: reorder examples to match description Documentation/reset: move "undo permanently" example behind "make topic" Ville Skyttä (1): Documentation: spelling fixes Ævar Arnfjörð Bjarmason (1): log: test for regression introduced in v1.7.2-rc0~103^2~2 Version v1.7.2.2; changes since v1.7.2.1: ----------------------------------------- Brad King (1): Documentation: cite git-am from git-apply Brandon Casey (1): t/t7003: replace \t with literal tab in sed expression Clément Poulain (1): git-gui: use textconv filter for diff and blame David D. Kilzer (1): Fix git rebase --continue to work with touched files Heiko Voigt (5): git-gui: check whether systems nice command works or disable it git-gui: fix usage of themed widgets variable git-gui: fix usage of _gitworktree when creating shortcut for windows git-gui: fix PATH environment for mingw development environment git-gui: fix shortcut creation on cygwin Jakub Narębski (1): diff: strip extra "/" when stripping prefix Jonathan Nieder (7): check-ref-format: handle subcommands in separate functions Allow "check-ref-format --branch" from subdirectory Makefile: add missing dependencies on url.h Makefile: add missing dependency on http.h Documentation: add a FILES section for show-ref gitweb: clarify search results page when no matching commit found Standardize do { ... } while (0) style Junio C Hamano (4): Fix DIFF_QUEUE_CLEAR refactoring Documentation: reporting bugs sha1_name.c: fix parsing of ":/token" syntax Git 1.7.2.2 Markus Heidelberg (1): git-gui: fix "Explore Working Copy" for Windows again Matthieu Moy (5): Document ls-files -t as semi-obsolete. pretty-options.txt: match --format's documentation with implementation. Document -B<n>[/<m>], -M<n> and -C<n> variants of -B, -M and -C post-receive-email: remove spurious commas in email subject push: mention "git pull" in error message for non-fast forwards Michael J Gruber (1): Documentation/git-log: Clarify --full-diff Nelson Elhage (1): index-pack: Don't follow replace refs. Pat Thoyts (4): git-gui: Handle failure of core.worktree to identify the working directory. git-gui: Avoid using the <<Copy>> binding as a menu accelerator on win32 git-gui: mc cannot be used before msgcat has been loaded git-gui: fix size and position of window panes on startup Raja R Harinath (1): fast-import: export correctly marks larger than 2^20-1 Ramkumar Ramachandra (2): contrib/svn-fe: Fix IncludePath contrib/svn-fe: Add the svn-fe target to .gitignore René Scharfe (2): notes: allow --dry-run for -n and --verbose for -v prune: allow --dry-run for -n and --verbose for -v Shawn O. Pearce (1): smart-http: Don't deadlock on server failure Thomas Rast (3): xsize_t: check whether we lose bits Documentation/rev-parse: quoting is required with --parseopt t7003: fix subdirectory-filter test Willy Tarreau (1): git-rebase: fix typo when parsing --force-rebase Ævar Arnfjörð Bjarmason (4): test-lib: Ignore --quiet under a TAP harness test-lib: Remove 3 year old no-op --no-python option imap-send: Fix sprintf usage t/lib-git-svn.sh: use $PERL_PATH for perl, not perl from $PATH Version v1.7.2.1; changes since v1.7.2: --------------------------------------- Brandon Casey (1): git-rebase--interactive.sh: use printf instead of echo to print commit message Dan McGee (3): git-instaweb: Fix custom apache log placement git-instaweb: Fix Apache environment variable passing git-instaweb: Don't assume Apache executable is named apache2 Greg Brockman (1): Check size of path buffer before writing into it Johannes Sixt (1): t3700-add: fix dependence on stdout and stderr buffering Jon Seymour (1): INSTALL: configure /etc/xml/catalog to build docs on Cygwin Jonathan Nieder (1): config --get --path: check for unset $HOME Junio C Hamano (3): Git 1.7.0.7 Git 1.7.1.2 Git 1.7.2.1 Matthieu Moy (1): Clarify help message when no remote is specified in fetch/pull. Nathan W. Panike (1): Add a google-chrome option for web--browse Nguyễn Thái Ngọc Duy (1): git-read-tree.txt: acknowledge the directory matching bug in sparse checkout Stephen Boyd (2): request-pull.txt: Document -p option commit: remove full stop from usage help for -u Thomas Rast (5): Cast execl*() NULL sentinels to (char *) Document receive.denyDeleteCurrent Documentation/git-push: Explain status output in more detail Fix 'git' wrapper usage string Makefile: add check-docs exception for gitrevisions Version v1.7.2; changes since v1.7.2-rc3: ----------------------------------------- Brandon Casey (6): Makefile: remove some unnecessary curly braces Makefile: work around ksh's failure to handle missing list argument to for loop t/README: clarify test_must_fail description t/t3700: convert two uses of negation operator '!' to use test_must_fail t/{t5541,lib-httpd}: replace problematic '!()' notation with test_must_fail t/: work around one-shot variable assignment with test_must_fail David Aguilar (1): Documentation: Explain git-mergetool's use of temporary files Eli Barzilay (1): Reorganize `git-log' man page to clarify common diff options. Greg Brockman (1): Check size of path buffer before writing into it Jay Soffian (1): MERGE_RR is in .git, not .git/rr-cache Jens Lehmann (2): git add: Add the "--ignore-missing" option for the dry run git submodule add: Require the new --force option to add ignored paths Jonathan Nieder (9): t7006 (pager): introduce helper for parameterized tests t7006: test pager configuration for several git commands tests: local config file should be honored from subdirs of toplevel t3000 (ls-files -o): modernize style git --paginate: paginate external commands again gitmodules.5: url can be a relative path Documentation: add submodule.* to the big configuration variable list Add a sample user for the svndump library t/README: correct an exception when breaking a && chain in tests Junio C Hamano (7): rebase-i: style fix rebase-i: do not get fooled by a log message ending with backslash do not write out index when status does not have to diff A...B: give one possible diff when there are more than one merge-base diff A...B: do not limit the syntax too narrowly tests: correct "does reflog exist?" tests Git 1.7.2 Michael J Gruber (3): Documentation: split off rev doc into include file Documentation: gitrevisions Documentation: link to gitrevisions rather than git-rev-parse Nazri Ramliy (1): grep -O: Do not pass color sequences as filenames to pager Nguyễn Thái Ngọc Duy (1): git --paginate: do not commit pager choice too early Nicolas Sebrecht (1): merge-recursive: use "up-to-date" instead of "uptodate" in error message for consistency Pavan Kumar Sunkara (1): gitweb: fix esc_url Ralf Thielow (1): update-server-info: Shorten read_pack_info_file() Sergey Vlasov (1): git-svn: write memoized data explicitly to avoid Storable bug Thomas Rast (1): Only run aggregate-results over actual counts Will Palmer (2): add basic tests for merge-tree merge-tree: fix where two branches share no changes Ævar Arnfjörð Bjarmason (3): git submodule: add submodules with git add -f <path> git submodule add: Remove old docs about implicit -f git add: Add --ignore-missing to SYNOPSIS Version v1.7.2-rc3; changes since v1.7.2-rc2: --------------------------------------------- Bo Yang (1): diff.c: fix a graph output bug Fredrik Skolmli (1): Documentation: Spelling fix in protocol-capabilities.txt Johannes Sixt (1): t0005: work around strange $? in ksh when program terminated by a signal Jonathan Nieder (1): t9118 (git-svn): prevent early failure from taking down later tests Junio C Hamano (2): Fix "read-tree -m A B" priming the cache-tree Git 1.7.2-rc3 Michael J Gruber (3): t9118: avoid PEG revision identifier in tests test-lib: simplify GIT_SKIP_TESTS loop test-lib: TAP compliance for skipping tests on request Miklos Vajna (1): format-patch: document the format.to configuration setting Nicolas Sebrecht (1): checkout: accord documentation to what git does Oren Held (1): git fetch documentation: describe short '-p' synonym to '--prune' option Raja R Harinath (1): Use dev_t for device id (st_dev) from stat in setup_git_directory_gently() Ævar Arnfjörð Bjarmason (1): tests: Use skip_all=* to skip tests Version v1.7.2-rc2; changes since v1.7.2-rc1: --------------------------------------------- Brandon Casey (2): t/t9700/test.pl: don't access private object members, use public access methods t/t0006: specify timezone as EST5 not EST to comply with POSIX Chris Packham (1): Documentation/git-gc.txt: add reference to githooks Dylan Reid (1): xdiff: optimise for no whitespace difference when ignoring whitespace. Heiko Voigt (1): add missing && to submodule-merge testcase Jakub Narębski (1): gitweb: Move evaluate_gitweb_config out of run_request Jeff King (3): t0006: test timezone parsing parse_date: fix signedness in timezone calculation test-date: fix sscanf type conversion Jonathan Nieder (1): t/README: document more test helpers Junio C Hamano (4): Updates from the list to 1.7.2 Release Notes t/README: proposed rewording... backmerge a few more fixes to 1.7.1.X series Git 1.7.2-rc2 Michael J Gruber (1): rerere.txt: Document forget subcommand Pierre Habouzit (1): fix git branch -m in presence of cross devices Uwe Kleine-König (1): rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option Ævar Arnfjörð Bjarmason (13): test-lib: Adjust output to be valid TAP format test-lib: Make the test_external_* functions TAP-aware test-lib: output a newline before "ok" under a TAP harness tests: Skip tests in a way that makes sense under TAP tests: Say "pass" rather than "ok" on empty lines for TAP t9700: Use Test::More->builder, not $Test::Builder::Test t/README: The trash is in 't/trash directory.$name' t/README: Typo: paralell -> parallel t/README: Document the prereq functions, and 3-arg test_* t/README: Document test_external* t/README: Document test_expect_code t/README: Add a section about skipping tests t/README: Document the do's and don'ts of tests Version v1.7.2-rc1; changes since v1.7.2-rc0: --------------------------------------------- Andrew Sayers (2): bash-completion: Fix __git_ps1 to work with "set -u" bash completion: Support "divergence from upstream" messages in __git_ps1 Brandon Casey (4): t/lib-pager.sh: remove unnecessary '^' from 'expr' regular expression t/t7811-grep-open.sh: ensure fake "less" is made executable t/t7811-grep-open.sh: remove broken/redundant creation of fake "less" script t/t9001: use egrep when regular expressions are involved Brian Gernhardt (1): t4027,4041: Use test -s to test for an empty file Christian Couder (1): revert: accept arbitrary rev-list options Jeff King (1): notes: check number of parameters to "git notes copy" Jens Lehmann (4): git diff: rename test that had a conflicting name Add optional parameters to the diff option "--ignore-submodules" git submodule: ignore dirty submodules for summary and status Add the option "--ignore-submodules" to "git status" Johannes Schindelin (3): Unify code paths of threaded greps grep: Add the option '--open-files-in-pager' grep -O: allow optional argument specifying the pager (or editor) Jonathan Nieder (3): grep: refactor grep_objects loop into its own function t3508 (cherry-pick): futureproof against unmerged files revert: do not rebuild argv on heap Julian Phillips (6): string_list: Fix argument order for print_string_list string_list: Fix argument order for for_each_string_list string_list: Fix argument order for string_list_insert string_list: Fix argument order for string_list_insert_at_index string_list: Fix argument order for string_list_lookup string_list: Fix argument order for string_list_append Junio C Hamano (5): url_decode: URL scheme ends with a colon and does not require a slash Update draft release notes to 1.7.1.1 Git 1.7.1.1 git.spec.in: Add gitweb subpackage Git 1.7.2-rc1 Michael J Gruber (4): t6018: add tests for rev-list's --branches and --tags t6018: make sure all tested symbolic names are different revs git-rev-parse.txt: Document ":path" specifier git-rev-parse.txt: Add more examples for caret and colon Nazri Ramliy (5): commit.h: add 'type' to struct name_decoration log-tree.c: Use struct name_decoration's type for classifying decoration log --decorate: Colorize commit decorations Allow customizable commit decorations colors Add test for correct coloring of git log --decoration Ramsay Jones (2): msvc: Select the "fast" definition of the {get,put}_be32() macros notes: Initialise variable to appease gcc Thomas Rast (1): rev-list: introduce --count option Version v1.7.2-rc0; changes since v1.7.1.4: ------------------------------------------- Alex Riesen (2): Allow passing of configuration parameters in the command line Use strbufs instead of open-coded string manipulation Axel Bonnet (3): textconv: make the API public textconv: support for blame t/t8006: test textconv support for blame Bo Yang (9): Add a macro DIFF_QUEUE_CLEAR. Make diffcore_std only can run once before a diff_flush Make git log --follow find copies among unmodified files. Add a prefix output callback to diff output Output the graph columns at the end of the commit message diff.c: Output the text graph padding before each diff line Emit a whole line in one go graph.c: register a callback for graph output Make --color-words work well with --graph Brandon Casey (7): t/t5800: skip if python version is older than 2.5 git-request-pull.sh: remove -e switch to shell interpreter which breaks ksh t/t5150: remove space from sed script t/t7006: ignore return status of shell's unset builtin t/aggregate-results: accomodate systems with small max argument list length Makefile: add PYTHON_PATH to GIT-BUILD-OPTIONS Remove python 2.5'isms Brian Gernhardt (1): Makefile: Simplify handling of python scripts Chris Webb (5): whitespace: add tab-in-indent error class whitespace: tests for git-diff --check with tab-in-indent error class whitespace: replumb ws_fix_copy to take a strbuf *dst instead of char *dst whitespace: add tab-in-indent support for --whitespace=fix whitespace: tests for git-apply --whitespace=fix with tab-in-indent Christian Couder (13): revert: use strbuf to refactor the code that writes the merge message revert: refactor merge recursive code into its own function merge: refactor code that calls "git merge-STRATEGY" merge: make function try_merge_command non static revert: add "--strategy" option to choose merge strategy revert: cleanup code for -x option revert: use run_command_v_opt() instead of execv_git_cmd() revert: refactor code into a do_pick_commit() function revert: change help_msg() to take no argument revert: allow cherry-picking more than one commit revert: add tests to check cherry-picking many commits Documentation/cherry-pick: describe passing more than one commit Documentation/revert: describe passing more than one commit Clément Poulain (3): sha1_name: add get_sha1_with_context() textconv: support for cat_file t/t8007: test textconv support for cat-file Daniel Knittl-Frank (1): Show branch information in short output of git status Eli Barzilay (1): Add `%B' in format strings for raw commit body in `git log' and friends Eli Collins (1): diff: add configuration option for disabling diff prefixes. Eric Wong (1): git svn: avoid unnecessary '/' in paths for SVN Erick Mattos (6): git checkout: create unparented branch by --orphan Documentation: alter checkout --orphan description refs: split log_ref_write logic into log_ref_setup checkout --orphan: respect -l option always t3200: test -l with core.logAllRefUpdates options bash completion: add --orphan to 'git checkout' Erik Faye-Lund (1): mingw: use _commit to implement fsync Eyvind Bernhardsen (4): Add tests for per-repository eol normalization Add per-repository eol normalization Rename the "crlf" attribute "text" Add "core.eol" config variable Finn Arne Gangstad (1): autocrlf: Make it work also for un-normalized repositories Gary V. Vaughan (17): Makefile: pass CPPFLAGS through to fllow customization Rewrite dynamic structure initializations to runtime assignment Makefile: -lpthread may still be necessary when libc has only pthread stubs enums: omit trailing comma for portability Do not use "diff" found on PATH while building and installing tests: use "test_cmp", not "diff", when verifying the result test_cmp: do not use "diff -u" on platforms that lack one git-compat-util.h: some platforms with mmap() lack MAP_FAILED definition Makefile: some platforms do not have hstrerror anywhere Make NO_{INET_NTOP,INET_PTON} configured independently Some platforms lack socklen_t type Allow disabling "inline" inline declaration does not work on AIX Makefile: SunOS 5.6 portability fix Makefile: HPUX11 portability fixes Makefile: HP-UX 10.20 portability fixes Makefile: Tru64 portability fix Giuseppe Scrivano (1): print the usage string on stdout instead of stderr Henrik Grubbström (2): convert: Safer handling of $Id$ contraction. convert: Keep foreign $Id$ on checkout. Jakub Narębski (16): Export more test-related variables when running external tests gitweb: href(..., -path_info => 0|1) gitweb: Use nonlocal jump instead of 'exit' in die_error gitweb: Add custom error handler using die_error gitweb: Move generating page title to separate subroutine gitweb: Silence 'Variable VAR may be unavailable' warnings gitweb: Improve installation instructions in gitweb/INSTALL gitweb: Create install target for gitweb in Makefile gitweb: Refactor syntax highlighting support gitweb: Put all per-connection code in run() subroutine git-instaweb: Remove pidfile after stopping web server git-instaweb: Wait for server to start before running web browser git-instaweb: Add support for running gitweb via 'plackup' gitweb: Run in FastCGI mode if gitweb script has .fcgi extension gitweb: Fix typo in hash key name in %opts in git_header_html gitweb: Return or exit after done serving request Jan Krüger (1): git-am: suggest what to do with superfluous patches Jay Soffian (1): t5516-fetch-push.sh: style cleanup Jeff King (11): make commit_tree a library function introduce notes-cache interface textconv: refactor calls to run_textconv diff: cache textconv output diff: avoid useless filespec population script with rev-list instead of log tests: rename duplicate t4205 tests: chmod +x t5150 make url-related functions reusable decode file:// and ssh:// URLs Makefile: default pager on AIX to "more" Johan Herland (5): diff.c: Ensure "index $from..$to" line contains unambiguous SHA1s Documentation/rev-list-options.txt: Fix missing line in example history graph Documentation/rev-list-options.txt: Explain --ancestry-path revision: Fix typo in --ancestry-path error message revision: Turn off history simplification in --ancestry-path mode Johannes Schindelin (1): gitweb: Syntax highlighting support Johannes Sixt (11): Modernize t5530-upload-pack-error. Make report() from usage.c public as vreportf() and use it. Fix signature of fcntl() compatibility dummy Windows: more pthreads functions Reimplement async procedures using pthreads Dying in an async procedure should only exit the thread, not the process. Enable threaded async procedures whenever pthreads is available Have set_try_to_free_routine return the previous routine Do not call release_pack_memory in malloc wrappers when GIT_TRACE is used Recent MinGW has a C99 implementation of snprintf functions merge-recursive: demonstrate an incorrect conflict with submodule Jonathan Nieder (17): t7400: split setup into multiple tests t7400: clarify 'submodule add' tests t7400: clarify submodule update tests t5800: testgit helper requires Python support tests for request-pull request-pull: protect against OPTIONS_KEEPDASHDASH from environment fsck: check ident lines in commit objects adapt request-pull tests for new pull request format pretty: initialize new cmt_fmt_map to 0 Makefile: fix header dependency checker to allow NO_CURL builds Makefile: let header dependency checker override COMPUTE_HEADER_DEPENDENCIES git svn: avoid uninitialized var in 'reset' Add git remote set-branches fsck: fix bogus commit header check rebase: improve error message when upstream argument is missing DWIM 'git show -5' to 'git show --do-walk -5' git-svn: strip off leading slashes on --trunk argument Junio C Hamano (31): git_config_maybe_bool() log.decorate: usability fixes whitespace: we cannot "catch all errors known to git" anymore GIT_ONE_FILESYSTEM: flip the default to stop at filesystem boundaries Rename ONE_FILESYSTEM to DISCOVERY_ACROSS_FILESYSTEM log --pretty/--oneline: ignore log.decorate war on "sleep" in tests reflog --expire-unreachable: avoid merge-base computation log.decorate: only ignore it under "log --pretty=raw" wt-status: remove unused workdir_untracked member wt-status: plug memory leak while collecting untracked files wt-status: collect ignored files wt-status: rename and restructure status-print-untracked status: --ignored option shows ignored files Document gc.<pattern>.reflogexpire variables more war on "sleep" in tests reflog --expire-unreachable: special case entries in "HEAD" reflog revision: --ancestry-path wt-status: fix 'fprintf' compilation warning t5150: protect backslash with backslash in shell Start 1.7.2 cycle fixup: do not unconditionally disable "diff -u" build: propagate $DIFF to scripts test-lib: use DIFF definition from GIT-BUILD-OPTIONS Update draft release notes to 1.7.2 Update draft release notes to 1.7.2 Update draft release notes to 1.7.2 Drop items that are 1.7.1.1 fixes from the 1.7.1 release notes Update draft release notes to 1.7.2 url.c: "<scheme>://" part at the beginning should not be URL decoded Git 1.7.2-rc0 Lars R. Damerow (3): config.c: remove static keyword from git_env_bool() truncate cwd string before printing error message Add support for GIT_ONE_FILESYSTEM Linus Torvalds (1): Make :/ accept a regex rather than a fixed pattern Michael J Gruber (5): for-each-ref: Field with abbreviated objectname notes: dry-run and verbose options for prune Documentation+t5708: document and test status -s -b pretty: Introduce ' ' modifier to add space if non-empty git-cat-file.txt: Document --textconv Michael J. Kiwala (1): git svn: fix empty directory creation Paolo Bonzini (2): patch-id: extract parsing one diff out of generate_id_list patch-id: Add support for mbox format Pavan Kumar Sunkara (6): gitweb: Use @diff_opts while using format-patch gitweb: Move static files into seperate subdirectory gitweb: Set default destination directory for installing gitweb in Makefile git-instaweb: Put httpd logs in a "$httpd_only" subdirectory git-instaweb: Configure it to work with new gitweb structure git-web--browse: Add support for google chrome and chromium Ramkumar Ramachandra (4): git am: Set cmdline globally git am: Display some help text when patch is empty git am: Remove stray error message from sed Refactor parse_date for approxidate functions René Scharfe (8): grep: add test script for binary file handling grep: grep: refactor handling of binary mode options grep: --count over binary grep: --name-only over binary grep: use memmem() for fixed string search grep: continue case insensitive fixed string search after NUL chars grep: use REG_STARTEND for all matching if available grep: support NUL chars in search strings for -F Sam Vilain (2): gitweb: Add support for FastCGI, using CGI::Fast git-cvsserver: use a password file cvsserver pserver Samuel Tardieu (2): Honor "tagopt = --tags" configuration option remote add: add a --[no-]tags option Simo Melenius (2): branch: exit status now reflects if branch listing finds an error branch: don't fail listing branches if one of the commits wasn't found Stephen Boyd (2): format-patch: Add a signature option (--signature) completion: Add --signature and format.signature Steven Drake (1): Add `log.decorate' configuration variable. Sverre Rabbelier (7): clone: pass the remote name to remote_get clone: also configure url for bare clones fast-import: always create marks_file directories remote-helpers: allow requesing the path to the .git directory remote-helpers: add support for an export command remote-helpers: add testgit helper remote-helpers: add tests for testgit helper Tay Ray Chuan (2): ls-remote: fall-back to default remotes when no remote specified ls-remote: print URL when no repo is specified Thomas Rast (5): diff: add --word-diff option that generalizes --color-words Complete prototype of git_config_from_parameters() fast-import: die_nicely() back to vsnprintf (reverts part of ebaa79f) log_ref_setup: don't return stack-allocated array parseopt: wrap rev-parse --parseopt usage for eval consumption Torsten Schmutzler (1): git-svn: mangle refnames forbidden in git Will Palmer (4): pretty: make it easier to add new formats pretty: add infrastructure for commit format aliases pretty: add aliases for pretty formats diff-options: make --patch a synonym for -p Ævar Arnfjörð Bjarmason (12): Add option to git-commit to allow empty log messages git-svn documentation: minor grammar fix git-svn: Remove unused use of File::Temp git-cvsserver: authentication support for pserver git-cvsserver: indent & clean up authdb code git-cvsserver: Improved error handling for pserver git-cvsserver: document making a password without htpasswd git-cvsserver: test for pserver authentication support git-submodule foreach: Add $toplevel variable Makefile: remove redundant munging of @@INSTLIBDIR@@ git-cvsserver: typo in a comment: bas -> has git-cvsserver: fix error for invalid password formats Version v1.7.1.4; changes since v1.7.1.3: ----------------------------------------- Jakub Narębski (1): gitweb: Introduce esc_attr to escape attributes of HTML elements Junio C Hamano (1): Git 1.6.4.5 Version v1.7.1.3; changes since v1.7.1.2: ----------------------------------------- Jonathan Nieder (1): add: introduce add.ignoreerrors synonym for add.ignore-errors Junio C Hamano (1): Git 1.7.0.8 Matthieu Moy (1): t0003: add missing && at end of lines Version v1.7.1.2; changes since v1.7.1.1: ----------------------------------------- Brandon Casey (1): t/README: clarify test_must_fail description Chris Packham (1): Documentation/git-gc.txt: add reference to githooks David Aguilar (1): Documentation: Explain git-mergetool's use of temporary files Dylan Reid (1): xdiff: optimise for no whitespace difference when ignoring whitespace. Fredrik Skolmli (1): Documentation: Spelling fix in protocol-capabilities.txt Greg Brockman (2): Check size of path buffer before writing into it Check size of path buffer before writing into it Heiko Voigt (1): add missing && to submodule-merge testcase Jay Soffian (2): receive-pack: switch global variable 'commands' to a parameter receive-pack: detect aliased updates which can occur with symrefs Jeff King (2): t0006: test timezone parsing test-date: fix sscanf type conversion Johannes Sixt (1): t0005: work around strange $? in ksh when program terminated by a signal Jonathan Nieder (3): gitmodules.5: url can be a relative path Documentation: add submodule.* to the big configuration variable list config --get --path: check for unset $HOME Junio C Hamano (3): backmerge a few more fixes to 1.7.1.X series Git 1.7.0.7 Git 1.7.1.2 Michael J Gruber (3): git-rev-parse.txt: Document ":path" specifier git-rev-parse.txt: Add more examples for caret and colon rerere.txt: Document forget subcommand Miklos Vajna (1): format-patch: document the format.to configuration setting Nicolas Sebrecht (1): checkout: accord documentation to what git does Oren Held (1): git fetch documentation: describe short '-p' synonym to '--prune' option Pavan Kumar Sunkara (1): gitweb: fix esc_url Pierre Habouzit (1): fix git branch -m in presence of cross devices Ralf Thielow (1): update-server-info: Shorten read_pack_info_file() Stephen Boyd (1): request-pull.txt: Document -p option Thomas Rast (1): check_aliased_update: strcpy() instead of strcat() to copy Uwe Kleine-König (1): rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option Version v1.7.1.1; changes since v1.7.1: --------------------------------------- Alexey Mahotkin (1): xdiff/xmerge.c: use memset() instead of explicit for-loop Bert Wesarg (1): diff: fix coloring of extended diff headers Björn Gustavsson (1): apply: Allow blank *trailing* context lines to match beyond EOF Björn Steinbrink (1): diff: Support visibility modifiers in the PHP hunk header regexp Bo Yang (1): blame-options.txt: Add default value for `-M/-C` options. Brandon Casey (1): t/t9001: use egrep when regular expressions are involved Brian Downing (1): unpack-trees: Make index lookahead less pessimal Brian Gernhardt (4): send-email: Cleanup { style send-email: Don't use FQDNs without a '.' Document send-email --smtp-domain send-email: Cleanup smtp-domain and add config Charles Bailey (2): stash: Don't overwrite files that have gone from the index stash tests: stash can lose data in a file removed from the index Chris Webb (1): exec_cmd.c: replace hard-coded path list with one from <paths.h> Christian Couder (3): diff: fix "git show -C -C" output when renaming a binary file commit: use value of GIT_REFLOG_ACTION env variable as reflog message Documentation: grep: fix asciidoc problem with -- Clemens Buchacher (7): do not overwrite files marked "assume unchanged" Documentation: git-add does not update files marked "assume unchanged" test get_git_work_tree() return value for NULL get_cwd_relative(): do not misinterpret suffix as subdirectory setup: document prefix quote.c: separate quoting and relative path generation ls-files: allow relative pathspec Dmitry Potapov (1): hash_object: correction for zero length file Gary V. Vaughan (1): git-compat-util.h: use apparently more common __sgi macro to detect SGI IRIX Gerrit Pape (1): git-submodule.sh: properly initialize shell variables Henrik Grubbström (3): attr: Fixed debug output for macro expansion. attr: Allow multiple changes to an attribute on the same line. attr: Expand macros immediately when encountered. Ian McLean (1): Fix "Out of memory? mmap failed" for files larger than 4GB on Windows Ian Ward Comfort (1): rebase -i: Abort cleanly if new base cannot be checked out Jakub Narębski (1): autoconf: Check if <paths.h> exists and set HAVE_PATHS_H Jay Soffian (3): commit.txt: clarify how --author argument is used am: use get_author_ident_from_commit instead of mailinfo when rebasing gitweb/Makefile: fix typo in gitweb.min.css rule Jeff King (7): handle "git --bare init <dir>" properly docs: clarify meaning of -M for git-log remove over-eager caching in sha1_file_name pull: do nothing on --dry-run commit: give advice on empty amend Makefile: default pager on AIX to "more" notes: check number of parameters to "git notes copy" Johannes Sixt (1): Thread-safe xmalloc and xrealloc needs a recursive mutex Jonathan Nieder (25): t7006: guard cleanup with test_expect_success t5704 (bundle): add tests for bundle --stdin fix "bundle --stdin" segfault test-lib: Let tests specify commands to be run at end of test commit --amend: cope with missing display name Documentation/shortlog: scripted users should not rely on implicit HEAD t4201 (shortlog): guard setup with test_expect_success t4201 (shortlog): Test output format with multiple authors shortlog: Document and test --format option test-lib: some shells do not let $? propagate into an eval cherry-pick: do not dump core when iconv fails Documentation/notes: document format of notes trees Documentation/notes: describe content of notes blobs Documentation/notes: add configuration section Documentation/notes: simplify treatment of default notes ref Documentation/log: add a CONFIGURATION section Documentation/notes: simplify treatment of default display refs Documentation/notes: clean up description of rewriting configuration Documentation/notes: nitpicks post-receive-email: document command-line mode Documentation/checkout: clarify description gitignore.5: Clarify matching rules rebase -i -p: document shortcomings Documentation/checkout: clarify description add-interactive: Clarify “remaining hunks in the file” Junio C Hamano (10): am -3: recover the diagnostic messages for corrupt patches clone: quell the progress report from init and report on clone t9129: fix UTF-8 locale detection common_prefix: simplify and fix scanning for prefixes Prepare draft release notes to 1.7.1.1 Update draft release notes to 1.7.1.1 tests: remove unnecessary '^' from 'expr' regular expression Update draft release notes to 1.7.1.1 Update draft release notes to 1.7.1.1 Git 1.7.1.1 Leif Arne Storset (1): Documentation/config.txt: GIT_NOTES_REWRITE_REF overrides notes.rewriteRef Marcus Comstedt (1): Add "Z" as an alias for the timezone "UTC" Markus Heidelberg (4): t7508: add test for "git status" refreshing the index git status: refresh the index if possible t7508: add a test for "git status" in a read-only repository Documentation: rebase -i ignores options passed to "git am" Michael J Gruber (10): index-pack: fix trivial typo in usage string t7508: test advice.statusHints wt-status: take advice.statusHints seriously Documentation: fix minor inconsistency Documentation/gitdiffcore: fix order in pickaxe description Documentation/SubmittingPatches: clarify GMail section and SMTP completion: --set-upstream option for git-branch Makefile: reenable install with NO_CURL Documentation/config: describe status.submodulesummary Documentation: A...B shortcut for checkout and rebase Michal Sojka (1): test-lib.sh: Add explicit license detail, with change from GPLv2 to GPLv2+. Nazri Ramliy (1): Documentation/pretty-{formats,options}: better reference for "format:<string>" Nicolas Pitre (4): Make xmalloc and xrealloc thread-safe index-pack: smarter memory usage when resolving deltas index-pack: rationalize unpack_entry_data() index-pack: smarter memory usage when appending objects Pete Harlan (1): clone: reword messages to match the end-user perception Peter Collingbourne (4): Generalise the unlink_or_warn function Implement the rmdir_or_warn function Introduce remove_or_warn function Remove a redundant errno test in a usage of remove_path Philippe Bruhat (1): Git.pm: better error message Ping Yin (1): Documentation/git-send-email: Add "Use gmail as the smtp server" Ramkumar Ramachandra (1): SubmittingPatches: Add new section about what to base work on Ramsay Jones (4): Makefile: Fix 'clean' target to remove all gitweb build files msvc: Fix some "expr evaluates to function" compiler warnings msvc: Fix some compiler warnings notes: Initialise variable to appease gcc René Scharfe (3): git diff too slow for a file remove ecb parameter from xdi_diff_outf() Fix checkout of large files to network shares on Windows XP Scott Chacon (1): Prompt for a username when an HTTP request 401s Shawn O. Pearce (16): tag.c: Correct indentation tag.h: Remove unused signature field tag.c: Refactor parse_tag_buffer to be saner to program tag.c: Parse tagger date (if present) describe: Break annotated tag ties by tagger date http.c: Remove bad free of static block t5550-http-fetch: Use subshell for repository operations http.c: Tiny refactoring of finish_http_pack_request http.c: Drop useless != NULL test in finish_http_pack_request http.c: Don't store destination name in request structures http.c: Remove unnecessary strdup of sha1_to_hex result Introduce close_pack_index to permit replacement Extract verify_pack_index for reuse from verify_pack Allow parse_pack_index on temporary files http-fetch: Use index-pack rather than verify-pack to check packs http-fetch: Use temporary files for pack-*.idx until verified Sverre Rabbelier (1): Gitweb: ignore built file Tay Ray Chuan (18): t5541-http-push: add test for URLs with trailing slash http: make end_url_with_slash() public remote-curl: ensure that URLs have a trailing slash http.c::new_http_pack_request: do away with the temp variable filename t7604-merge-custom-message: shift expected output creation t7604-merge-custom-message: show that --log doesn't append to -m merge: update comment merge: rename variable fmt-merge-msg: minor refactor of fmt_merge_msg() fmt-merge-msg: refactor merge title formatting fmt-merge-msg: add function to append shortlog only merge: --log appends shortlog to message if specified GIT-VERSION-GEN: restrict tags used t7502-commit: fix spelling show-branch: use DEFAULT_ABBREV instead of 7 t7502-commit: add tests for summary output t7502-commit: add summary output tests for empty and merge commits commit::print_summary(): don't use format_commit_message() Thomas Rast (2): t/README: document --root option send-email: ask about and declare 8bit mails Tim Henigan (1): Documentation/SubmittingPatches: Fix typo in GMail section Tor Arntsen (1): Change C99 comments to old-style C comments Will Palmer (1): pretty: Respect --abbrev option Zhang Le (1): git-mailinfo documentation: clarify -u/--encoding bert Dvornik (1): start_command: close cmd->err descriptor when fork/spawn fails Ævar Arnfjörð Bjarmason (3): Move t6000lib.sh to lib-* Turn setup code in t2007-checkout-symlink.sh into a test notes: Initialize variable to appease Sun Studio Version v1.7.1; changes since v1.7.1-rc2: ----------------------------------------- Eric Raymond (1): Documentation improvements for the description of short format. Johannes Sixt (1): MSVC: Fix build by adding missing termios.h dummy Jonathan Nieder (1): Documentation/Makefile: fix interrupted builds of user-manual.xml Junio C Hamano (2): Git 1.7.0.6 Git 1.7.1 Michael J Gruber (1): t7012: Mark missing tests as TODO SZEDER Gábor (1): reflog: remove 'show' from 'expire's usage string Version v1.7.1-rc2; changes since v1.7.1-rc1: --------------------------------------------- Charles Bailey (1): Documentation: Describe other situations where -z affects git diff Chris Webb (1): git-instaweb: pass through invoking user's path to gitweb CGI scripts Jay Soffian (1): Documentation/config.txt: default gc.aggressiveWindow is 250, not 10 Jeff King (2): diff: use large integers for diffstat calculations rebase-interactive: silence warning when no commits rewritten Jens Lehmann (2): gitk: Add Ctrl-W shortcut for closing the active window gitk: Display dirty submodules correctly Johannes Gilger (1): pretty: Initialize notes if %N is used Johannes Sixt (1): Windows: start_command: Support non-NULL dir in struct child_process Jonathan Nieder (5): gitk: Add comments to explain encode_view_opts and decode_view_opts gitk: Don't clobber "Remember this view" setting Add .depend directories to .gitignore Document new "already-merged" rule for branch -d tag -v: use RUN_GIT_CMD to run verify-tag Junio C Hamano (6): SubmittingPatches: update GMail section blame documentation: -M/-C notice copied lines as well as moved ones Git 1.7.0.5 gitweb: simplify gitweb.min.* generation and clean-up rules t3301: add tests to use --format="%N" Git 1.7.1-rc2 Marc Branchaud (1): Docs: Add -X option to git-merge's synopsis. Mark Hills (4): gitk: Remove forced use of sans-serif font gitk: Set the font for all spinbox widgets gitk: Set the font for all listbox widgets gitk: Use consistent font for all text input fields Matthew Ogilvie (1): t6006: do not write to /tmp Michael J Gruber (1): t1010-mktree: Adjust expected result to code and documentation Pat Thoyts (3): gitk: Avoid calling tk_setPalette on Windows gitk: Add emacs editor variable block gitk: Fix display of copyright symbol Ramkumar Ramachandra (5): Documentation/remote-helpers: Rewrite description Documentation/urls: Rewrite to accomodate <transport>::<address> Documentation/remote-helpers: Add invocation section Fixup: Second argument may be any arbitrary string Documentation/remote-helpers: Fix typos and improve language Stephen Boyd (1): t3507: Make test executable Thomas Rast (1): combined diff: correctly handle truncated file Will Palmer (1): documentation: clarify direction of core.autocrlf Version v1.7.1-rc1; changes since v1.7.1-rc0: --------------------------------------------- Brandon Casey (1): notes.h: declare bit field as unsigned to silence compiler complaints Jeff King (4): fix const-correctness of write_sha1_file fix textconv leak in emit_rewrite_diff fix typos and grammar in 1.7.1 draft release notes docs: clarify "branch -l" Jens Lehmann (2): Let check_preimage() use memset() to initialize "struct checkout" Teach diff --submodule and status to handle .git files in submodules Jonathan Nieder (1): Teach mailinfo %< as an alternative scissors mark Junio C Hamano (2): diff.c: work around pointer constness warnings Git 1.7.1-rc1 Mark Rada (6): Gitweb: add ignore and clean rules for minified files Gitweb: add support for minifying gitweb.css Gitweb: add autoconfigure support for minifiers instaweb: add minification awareness gitweb: add documentation to INSTALL regarding gitweb.js gitweb: update INSTALL to use shorter make target Michael J Gruber (2): t3301-notes: Test the creation of reflog entries refs.c: Write reflogs for notes just like for branch heads Tay Ray Chuan (2): branch: say "Reset to" in reflog entries for 'git branch -f' operations fetch/push: fix usage strings Version v1.7.1-rc0; changes since v1.7.0.9: ------------------------------------------- Aaron Crane (1): cvsimport: new -R option: generate .git/cvs-revisions mapping Anders Kaseorg (1): everyday: fsck and gc are not everyday operations Ben Walton (2): Make templates honour SHELL_PATH and PERL_PATH Modernize git calling conventions in hook templates Benjamin C Meyer (1): Fix a spelling mistake in a git-p4 console message Bert Wesarg (4): make union merge an xdl merge favor refactor merge flags into xmparam_t merge-file: add option to specify the marker size merge-file: add option to select union merge favor Brandon Casey (9): t/t1304: avoid -d option to setfacl t/t1304: set the Default ACL base entries t/t1304: use 'test -r' to test readability rather than looking at mode bits t/t1304: set the ACL effective rights mask t/t1304: make a second colon optional in the mask ACL check notes.c: remove inappropriate call to return t5505: remove unnecessary subshell invocations t5505: add missing && t/t5505-remote.sh: escape * to prevent interpretation by shell as glob Brian Gernhardt (1): Use test_expect_success for test setups Chris Webb (1): imap-send: suppress warning about cleartext password with CRAM-MD5 Christian Couder (8): reset: add option "--keep" to "git reset" reset: add test cases for "--keep" option Documentation: reset: describe new "--keep" option reset: disallow "reset --keep" outside a work tree reset: disallow using --keep when there are unmerged entries cherry-pick: add tests for new --ff option Documentation: describe new cherry-pick --ff option rebase -i: use new --ff cherry-pick option Dave Olszewski (1): rebase--interactive: don't require what's rebased to be a branch Eric Blake (1): Makefile: update defaults for modern Cygwin Eric S. Raymond (1): Integrate version 3 ciabot scripts into contrib/. Erik Faye-Lund (5): hash-object: support --stdin-paths with --no-filters git-svn: support fetch with autocrlf on Revert "git-svn: always initialize with core.autocrlf=false" cherry: support --abbrev option ls: remove redundant logic Frank Li (3): fallback SSH_ASKPASS when GIT_ASKPASS not set git-svn: Support retrieving passwords with GIT_ASKPASS git-core: Support retrieving passwords with GIT_ASKPASS Hitoshi Mitake (1): imap-send: support CRAM-MD5 authentication Ian Ward Comfort (1): RPM spec: include bash completion support Ilari Liusvaara (1): Allow '+', '-' and '.' in remote helper names Jakub Narębski (2): gitweb: esc_html (short) error message in die_error gitweb: Protect escaping functions against calling on undef Jari Aalto (3): git-send-email.perl: improve error message in send_message() git-send-email.perl: add option --smtp-debug git-send-email.perl - try to give real name of the calling host to HELO/EHLO Jeff King (1): submodule summary: do not shift a non-existent positional variable Jens Lehmann (6): git diff --submodule: Show detailed dirty status of submodules git status: Show detailed dirty status of submodules in long format git submodule summary: Handle HEAD as argument when on an unborn branch Refactor dirty submodule detection in diff-lib.c git status: Fix false positive "new commits" output for dirty submodules git status: ignoring untracked files must apply to submodules too Johan Herland (32): Minor cosmetic fixes to notes.c Notes API: get_commit_notes() -> format_note() + remove the commit restriction Add tests for checking correct handling of $GIT_NOTES_REF and core.notesRef Notes API: init_notes(): Initialize the notes tree from the given notes ref Notes API: add_note(): Add note objects to the internal notes tree structure Notes API: remove_note(): Remove note objects from the notes tree structure Notes API: get_note(): Return the note annotating the given object Notes API: for_each_note(): Traverse the entire notes tree with a callback Notes API: write_notes_tree(): Store the notes tree in the database Notes API: Allow multiple concurrent notes trees with new struct notes_tree Refactor notes concatenation into a flexible interface for combining notes Builtin-ify git-notes t3301: Verify successful annotation of non-commits t3305: Verify that adding many notes with git-notes triggers increased fanout Teach notes code to properly preserve non-notes in the notes tree Teach builtin-notes to remove empty notes builtin-notes: Add "remove" subcommand for removing existing notes t3305: Verify that removing notes triggers automatic fanout consolidation Notes API: prune_notes(): Prune notes that belong to non-existing objects builtin-notes: Add "prune" subcommand for removing notes for missing objects Documentation: Generalize git-notes docs to 'objects' instead of 'commits' builtin-notes: Add "list" subcommand for listing note objects builtin-notes: Add --message/--file aliases for -m/-F options builtin-notes: Add "add" subcommand for adding notes to objects builtin-notes: Add "append" subcommand for appending to note objects builtin-notes: Deprecate the -m/-F options for "git notes edit" builtin-notes: Refactor handling of -F option to allow combining -m and -F builtin-notes: Add -c/-C options for reusing notes builtin-notes: Misc. refactoring of argc and exit value handling builtin-notes: Add "copy" subcommand for copying notes between objects submodule summary: Don't barf when invoked in an empty repo builtin-notes: Minor (mostly parse_options-related) fixes Johannes Sixt (2): Print RUNTIME_PREFIX warning only when GIT_TRACE is set Windows: redirect f[re]open("/dev/null") to f[re]open("nul") Jonathan Nieder (33): Makefile: add missing header file dependencies Makefile: make sure test helpers are rebuilt when headers change Makefile: remove wt-status.h from LIB_H Makefile: clean up http-walker.o dependency rules Makefile: drop dependency on $(wildcard */*.h) Makefile: transport.o depends on branch.h now Makefile: rearrange dependency rules Makefile: disable default implicit rules Makefile: list generated object files in OBJECTS Makefile: lazily compute header dependencies Makefile: list standalone program object files in PROGRAM_OBJS Teach Makefile to check header dependencies Do not install shell libraries executable Makefile: tuck away generated makefile fragments in .depend Makefile: always remove .depend directories on 'make clean' Makefile: clarify definition of TEST_OBJS Makefile: Fix occasional GIT-CFLAGS breakage revert: fix tiny memory leak in cherry-pick --ff tests: document format of conflicts from checkout -m tests: document cherry-pick behavior in face of conflicts xdl_merge(): add optional ancestor label to diff3-style output xdl_merge(): move file1 and file2 labels to xmparam structure merge-file --diff3: add a label for ancestor ll_merge(): add ancestor label parameter for diff3-style output checkout --conflict=diff3: add a label for ancestor merge_file(): add comment explaining behavior wrt conflict style merge_trees(): add ancestor label parameter for diff3-style output checkout -m --conflict=diff3: add a label for ancestor compat: add mempcpy() revert: clarify label on conflict hunks cherry-pick, revert: add a label for ancestor merge-recursive: add a label for ancestor Makefile: future-proof Cygwin version check Junio C Hamano (25): builtin-for-each-ref.c: comment fixes builtin-for-each-ref.c: check if we need to peel onion while parsing the format for-each-ref --format='%(symref) %(symref:short)' for-each-ref --format='%(flag)' Start 1.7.1 cycle Resurrect "git grep --no-index" Update draft release notes to 1.7.1 notes: fix malformed tree entry wrap-for-bin: do not export an empty GIT_TEMPLATE_DIR submodule summary: do not fail before the first commit parse-options: add parse_options_concat() to concat options builtin/merge: make checkout_fast_forward() non static revert: add --ff option to allow fast forward when cherry-picking Update draft release notes to 1.7.1 Documentation: improve description of "git reset --keep" t4013: add tests for log -p -m --first-parent revision: introduce setup_revision_opt show -c: show patch text show --first-parent/-m: do not default to --cc Makefile: update check-docs target t5516: Use test_cmp when appropriate Update draft release notes to 1.7.1 Update draft release notes to 1.7.1 Revert "Link against libiconv on IRIX" Git 1.7.1-rc0 Larry D'Anna (4): git-push: fix an advice message so it goes to stderr git-push: send "To <remoteurl>" messages to the standard output in --porcelain mode git-push: make git push --porcelain print "Done" git-push: add tests for git push --porcelain Linus Torvalds (1): Move 'builtin-*' into a 'builtin/' subdirectory Marc Branchaud (1): Teach rebase the --no-ff option. Mark Lodato (4): Add an optional argument for --color options Add GIT_COLOR_BOLD_* and GIT_COLOR_BG_* grep: Colorize filename, line number, and separator grep: Colorize selected, context, and function lines Markus Heidelberg (2): builtin/commit: fix duplicated sentence in a comment builtin/commit: remove unnecessary variable definition Michael J Gruber (4): git-svn: req_svn when needed t9119-git-svn-info.sh: test with svn 1.6.* as well Documentation: fix a few typos in git-notes.txt git-svn: make git svn --version work again Michael Lukashov (4): connect.c: move duplicated code to a new function 'get_host_and_port' refactor duplicated code in builtin-send-pack.c and transport.c refactor duplicated fill_mm() in checkout and merge-recursive refactor duplicated encode_header in pack-objects and fast-import Michele Ballabio (1): shortlog: warn the user when there is no input Miklos Vajna (1): request-pull: avoid mentioning that the start point is a single commit Nguyễn Thái Ngọc Duy (5): make_absolute_path(): Do not append redundant slash init-db, rev-parse --git-dir: do not append redundant slash Move offset_1st_component() to path.c Support working directory located at root Add test for using Git at root of file system Nicolas Pitre (1): move encode_in_pack_object_header() to a better place Petr Baudis (1): git log -p -m: document -m and honor --first-parent René Scharfe (2): setenv(GIT_DIR) clean-up grep: enable threading for context line printing SZEDER Gábor (4): bash: improve aliased command recognition bash: support user-supplied completion scripts for user's git commands bash: support user-supplied completion scripts for aliases bash: completion for gitk aliases Stefan-W. Hahn (4): documentation: 'git-mailsplit --keep-cr' is not hidden anymore git-am: Add command line parameter `--keep-cr` passing it to git-mailsplit git-am: Add am.keepcr and --no-keep-cr to override it git-am: Add tests for `--keep-cr`, `--no-keep-cr` and `am.keepcr` Stephen Boyd (11): format-patch: use a string_list for headers format-patch: add --no-cc, --no-to, and --no-add-headers send-email: add --no-cc, --no-to, and --no-bcc notes: rework subcommands and parse options fmt-merge-msg: be quiet if nothing to merge t6200: modernize with test_tick t6200: test fmt-merge-msg more fmt-merge-msg: use pretty.c routines string-list: add unsorted_string_list_lookup() fmt-merge-msg: remove custom string_list implementation fmt-merge-msg: hide summary option Steven Drake (5): Add `init.templatedir` configuration variable. Add a "TEMPLATE DIRECTORY" section to git-init[1]. init: having keywords without value is not a global error. t/t0001-init.sh: add test for 'init with init.templatedir set' Add 'git format-patch --to=' option and 'format.to' configuration variable. Tay Ray Chuan (17): Documentation/git-clone: mention progress in -v Documentation/git-pull: put verbosity options before merge/fetch ones Documentation/git-push: put --quiet before --verbose fetch: refactor verbosity option handling into transport.[ch] push: support multiple levels of verbosity clone: support multiple levels of verbosity transport->progress: use flag authoritatively push: learn --progress fetch and pull: learn --progress transport: update flags to be in running order t5541-http-push: check that ref is unchanged for non-ff test t554[01]-http-push: refactor, add non-ff tests http-push: remove "|| 1" to enable verbose check http-walker: cleanup more thoroughly http: init and cleanup separately from http-walker remote-curl: use http_fetch_ref() instead of walker wrapper remote-curl: init walker only when needed Thomas Rast (14): test-lib: unset GIT_NOTES_REF to stop it from influencing tests Support showing notes from more than one notes tree Documentation: document post-rewrite hook commit --amend: invoke post-rewrite hook rebase: invoke post-rewrite hook rebase -i: invoke post-rewrite hook notes: implement 'git notes copy --stdin' notes: implement helpers needed for note copying during rewrite rebase: support automatic notes copying commit --amend: copy notes to the new commit notes: add shorthand --ref to override GIT_NOTES_REF notes: track whether notes_trees were changed at all git-notes(1): add a section about the meaning of history rebase -i: make post-rewrite work for 'edit' Tuomas Suutari (5): t9151: Fix a few commits in the SVN dump t9151: Add two new svn:mergeinfo test cases git-svn: Fix discarding of extra parents from svn:mergeinfo git-svn: Fix merge detecting with rewrite-root t9150,t9151: Add rewrite-root option to init YONETANI Tomokazu (1): Fix _XOPEN_SOURCE problem on DragonFly josh robb (1): git svn: delay importing SVN::Base until it is needed Version v1.7.0.9; changes since v1.7.0.8: ----------------------------------------- Jakub Narębski (1): gitweb: Introduce esc_attr to escape attributes of HTML elements Junio C Hamano (1): Git 1.6.4.5 Version v1.7.0.8; changes since v1.7.0.7: ----------------------------------------- Jonathan Nieder (1): add: introduce add.ignoreerrors synonym for add.ignore-errors Junio C Hamano (1): Git 1.7.0.8 Version v1.7.0.7; changes since v1.7.0.6: ----------------------------------------- Eric Raymond (1): Documentation improvements for the description of short format. Gerrit Pape (1): git-submodule.sh: properly initialize shell variables Greg Brockman (1): Check size of path buffer before writing into it Jonathan Nieder (1): config --get --path: check for unset $HOME Junio C Hamano (1): Git 1.7.0.7 Michael J Gruber (3): index-pack: fix trivial typo in usage string Makefile: reenable install with NO_CURL Documentation/config: describe status.submodulesummary René Scharfe (1): remove ecb parameter from xdi_diff_outf() Stephen Boyd (1): request-pull.txt: Document -p option Uwe Kleine-König (1): rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option Version v1.7.0.6; changes since v1.7.0.5: ----------------------------------------- Charles Bailey (1): Documentation: Describe other situations where -z affects git diff David Aguilar (1): Makefile: Remove usage of deprecated Python "has_key" method Jay Soffian (1): Documentation/config.txt: default gc.aggressiveWindow is 250, not 10 Jeff King (1): diff: use large integers for diffstat calculations Johannes Sixt (1): MSVC: Fix build by adding missing termios.h dummy Jonathan Nieder (2): Document new "already-merged" rule for branch -d Documentation/Makefile: fix interrupted builds of user-manual.xml Junio C Hamano (1): Git 1.7.0.6 Marc Branchaud (1): Docs: Add -X option to git-merge's synopsis. Michael J Gruber (3): rev-list: use default abbrev length when abbrev-commit is in effect t1010-mktree: Adjust expected result to code and documentation t7012: Mark missing tests as TODO SZEDER Gábor (1): reflog: remove 'show' from 'expire's usage string Thomas Rast (1): combined diff: correctly handle truncated file Will Palmer (1): documentation: clarify direction of core.autocrlf Version v1.7.0.5; changes since v1.7.0.4: ----------------------------------------- Brandon Casey (1): daemon.c: avoid accessing ss_family member of struct sockaddr_storage Erik Faye-Lund (1): rev-list: fix --pretty=oneline with empty message Gustaf Hendeby (1): Improve error messages from 'git stash show' Jeff King (1): docs: clarify "branch -l" Jens Lehmann (1): Let check_preimage() use memset() to initialize "struct checkout" Junio C Hamano (3): diff --check: honor conflict-marker-size attribute blame documentation: -M/-C notice copied lines as well as moved ones Git 1.7.0.5 Michael J Gruber (2): .mailmap: Entries for Alex Bennée, Deskin Miller, Vitaly "_Vi" Shukela send-email: lazily assign editor variable R. Tyler Ballance (1): Correct references to /usr/bin/python which does not exist on FreeBSD Ramkumar Ramachandra (1): imap-send: Remove limitation on message body Shawn O. Pearce (1): http-backend: Don't infinite loop during die() Tay Ray Chuan (4): pack-protocol.txt: fix spelling pack-protocol.txt: fix pkt-line lengths branch: say "Reset to" in reflog entries for 'git branch -f' operations fetch/push: fix usage strings Version v1.7.0.4; changes since v1.7.0.3: ----------------------------------------- Björn Gustavsson (5): apply: Don't unnecessarily update line lengths in the preimage apply: Remove the quick rejection test apply: Allow blank context lines to match beyond EOF t4124: Add additional tests of --whitespace=fix t3417: Add test cases for "rebase --whitespace=fix" Chris Packham (1): test for add with non-existent pathspec David Aguilar (1): difftool: Fix '--gui' when diff.guitool is unconfigured Greg Bacon (1): Documentation: Clarify support for smart HTTP backend Holger Weiß (3): Don't redefine htonl and ntohl on big-endian Link against libiconv on IRIX Documentation: show-ref <pattern>s are optional Jakub Narębski (1): gitweb: git_get_project_config requires only $git_dir, not also $project Jan Stępień (1): Updated the usage string of git reset Jeff King (1): dir: fix COLLECT_IGNORED on excluded prefixes Johannes Sixt (2): diff: fix textconv error zombies Windows: fix utime() for read-only files Junio C Hamano (8): git add -u: die on unmatched pathspec color: allow multiple attributes t0050: mark non-working test as such tests for "git add ignored-dir/file" without -f refs: ref entry with NULL sha1 is can be a dangling symref t9350: fix careless use of "cd" Prepare for 1.7.0.4 Git 1.7.0.4 Kevin Ballard (1): format-patch: Squelch 'fatal: Not a range." error Markus Heidelberg (1): Documentation: explain the meaning of "-g" in git-describe output Sverre Rabbelier (1): fast-export: don't segfault when marks file cannot be opened Version v1.7.0.3; changes since v1.7.0.2: ----------------------------------------- Adam Simpkins (2): prune: honor --expire=never reflog: honor gc.reflogexpire=never Andreas Gruenbacher (3): fetch: Check for a "^{}" suffix with suffixcmp() fetch: Future-proof initialization of a refspec on stack fetch: Fix minor memory leak Dave Olszewski (1): don't use default revision if a rev was specified Filippo Negroni (1): Fix gitmkdtemp: correct test for mktemp() return value Giuseppe Bilotta (5): Refactor list of of repo-local env vars rev-parse: --local-env-vars option shell setup: clear_local_git_env() function submodules: ensure clean environment when operating in a submodule is_submodule_modified(): clear environment properly Ian Ward Comfort (1): bash: complete *_HEAD refs if present Imre Deak (1): daemon: parse_host_and_port SIGSEGV if port is specified Jeff King (2): add-interactive: fix bogus diff header line ordering push: fix segfault for odd config Jonathan Nieder (1): Makefile: Fix CDPATH problem Junio C Hamano (12): "log --author=me --grep=it" should find intersection, not union Reword "detached HEAD" notification mailinfo: do not strip leading spaces even for a header line t5521: fix and modernize builtin-fetch --all/--multi: propagate options correctly fetch --all/--multiple: keep all the fetched branch information pack-objects documentation: reword "objects that appear in the standard input" Merge accumulated fixes to prepare for 1.7.0.3 t9400: Use test_cmp when appropriate t/Makefile: remove test artifacts upon "make clean" Update draft release notes to 1.7.0.3 Git 1.7.0.3 Mark Lodato (4): grep docs: pluralize "Example" section grep docs: use AsciiDoc literals consistently grep docs: --cached and <tree>... are incompatible grep docs: document --no-index option Matthieu Moy (6): Add a testcase for ACL with restrictive umask. Move gitmkstemps to path.c git_mkstemp_mode, xmkstemp_mode: variants of gitmkstemps with mode argument. Use git_mkstemp_mode and xmkstemp_mode in odb_mkstemp, not chmod later. git_mkstemps_mode: don't set errno to EINVAL on exit. Use git_mkstemp_mode instead of plain mkstemp to create object files Michael J Gruber (7): Documentation/git-read-tree: fix table layout Documentation/git-read-tree: clarify 2-tree merge Documentation/git-reflog: Fix formatting of command lists Documentation/gitdiffcore: Remove misleading date in heading Documentation/urls: Remove spurious example markers Documentation/git-clone: Transform description list into item list .mailmap: Map the the first submissions of MJG by e-mail Michael Wookey (1): run-command.c: fix build warnings on Ubuntu Nelson Elhage (2): Documentation: pack-objects: Clarify --local's semantics. pack-objects documentation: Fix --honor-pack-keep as well. René Scharfe (2): blame: fix indent of line numbers for_each_recent_reflog_ent(): use strbuf, fix offset handling Stephen Boyd (1): pull: replace unnecessary sed invocation Thomas Rast (1): Documentation: receive.denyCurrentBranch defaults to 'refuse' Version v1.7.0.2; changes since v1.7.0.1: ----------------------------------------- Bert Wesarg (1): unset GREP_OPTIONS in test-lib.sh Christian Couder (1): bisect: error out when passing bad path parameters Dmitry Potapov (1): hash-object: don't use mmap() for small files Erik Faye-Lund (1): run-command: support custom fd-set in async Gabriel Filion (1): require_work_tree broken with NONGIT_OK Hitoshi Mitake (1): git-imap-send: Convert LF to CRLF before storing patch to draft box Jakub Narębski (2): gitweb: Die if there are parsing errors in config file gitweb: Fix project-specific feature override behavior Jonathan Nieder (8): Fix 'git var' usage synopsis Make 'git var GIT_PAGER' always print the configured pager git.1: Clarify the behavior of the --paginate option git svn: Fix launching of pager am: Fix launching of pager tests: Add tests for automatic use of pager t7006-pager: if stdout is not a terminal, make a new one tests: Fix race condition in t7006-pager Junio C Hamano (6): t6000lib: Fix permission lib-patch-mode.sh: Fix permission status: preload index to optimize lstat(2) calls Start preparing for 1.7.0.2 Update draft release notes to 1.7.0.2 Git 1.7.0.2 Larry D'Anna (2): git diff --quiet -w: check and report the status git-diff: add a test for git diff --quiet -w Matthieu Moy (1): stash: suggest the correct command line for unknown options. Michal Sojka (1): Remove extra '-' from git-am(1) Nicolas Pitre (8): fast-import: start using struct pack_idx_entry fast-import: use sha1write() for pack data fast-import: use write_idx_file() instead of custom code fast-import: make default pack size unlimited fast-import: honor pack.indexversion and pack.packsizelimit config vars fast-import: use the diff_delta() max_delta_size argument sha1_file: don't malloc the whole compressed result when writing out objects sha1_file: be paranoid when creating loose objects René Scharfe (4): utf8.c: remove print_wrapped_text() utf8.c: remove print_spaces() utf8.c: remove strbuf_write() utf8.c: speculatively assume utf-8 in strbuf_add_wrapped_text() Shawn O. Pearce (7): run-command: Allow stderr to be a caller supplied pipe send-pack: demultiplex a sideband stream with status data receive-pack: Refactor how capabilities are shown to the client receive-pack: Wrap status reports inside side-band-64k receive-pack: Send hook output over side band #2 t5401: Use a bare repository for the remote peer receive-pack: Send internal errors over side-band #2 Stephen Boyd (1): t7406: Fix submodule init config tests Sylvain Rabot (1): gitweb multiple project roots documentation Tay Ray Chuan (1): transport: add got_remote_refs flag Thomas Rast (1): cherry_pick_list: quit early if one side is empty Version v1.7.0.1; changes since v1.7.0: --------------------------------------- Bert Wesarg (2): Documentation: mention conflict marker size argument (%L) for merge driver rerere: fix memory leak if rerere images can't be read Evan Powers (1): git-p4: fix bug in symlink handling Jacob Helwig (1): Documentation: Fix indentation problem in git-commit(1) Jeff King (9): accept "git grep -- pattern" cherry-pick: rewrap advice message cherry-pick: refactor commit parsing code cherry-pick: format help message as strbuf cherry-pick: show commit name instead of sha1 cherry-pick: prettify the advice message dwim_ref: fix dangling symref warning docs: don't talk about $GIT_DIR/refs/ everywhere rm: fix bug in recursive subdirectory removal Johannes Sixt (1): t3301-notes: insert a shbang line in ./fake_editor.sh Jonathan Nieder (1): am: remove rebase-apply directory before gc Junio C Hamano (6): Typofixes outside documentation area Start 1.7.0 maintenance track Fix use of mutex in threaded grep Prepare 1.7.0.1 release notes Update 1.7.0.1 release notes Git 1.7.0.1 Larry D'Anna (1): diff: make sure --output=/bad/path is caught Mark Lodato (2): grep documentation: clarify what files match Remove reference to GREP_COLORS from documentation Markus Heidelberg (1): sha1_name: fix segfault caused by invalid index access Matt Kraai (1): commit: quote the user name in the example Pete Harlan (1): Remove hyphen from "git-command" in two error messages René Scharfe (1): fix minor memory leak in get_tree_entry() Stephen Boyd (1): Documentation: describe --thin more accurately Thomas Rast (2): stash pop: remove 'apply' options during 'drop' invocation t1450: fix testcases that were wrongly expecting failure Version v1.7.0; changes since v1.7.0-rc2: ----------------------------------------- Brian Gernhardt (1): t3902: Protect against OS X normalization Jacob Helwig (1): filter-branch: Fix error message for --prune-empty --commit-filter Jay Soffian (1): blame: prevent a segv when -L given start > EOF Jeff King (1): am: switch --resolved to --continue Junio C Hamano (11): git-add documentation: Fix shell quoting example Fix parsing of imap.preformattedHTML and imap.sslverify git-push: document all the status flags used in the output check-ref-format documentation: fix enumeration mark-up t8003: check exit code of command and error message separately Git 1.6.6.2 Update draft release notes to 1.7.0 one more time archive documentation: attributes are taken from the tree by default Re-fix check-ref-format documentation mark-up Fix typo in 1.6.6.2 release notes Git 1.7.0 Michael J Gruber (1): Documentation: minor fixes to RelNotes-1.7.0 Nicolas Pitre (1): Revert "pack-objects: fix pack generation when using pack_size_limit" SZEDER Gábor (1): bash: support 'git am's new '--continue' option Thomas Rast (1): Documentation: quote braces in {upstream} notation Version v1.7.0-rc2; changes since v1.7.0-rc1: --------------------------------------------- Andrew Myrick (1): git-svn: persistent memoization Ben Walton (2): configure: Allow GIT_ARG_SET_PATH to handle --without-PROGRAM configure: Allow --without-python Björn Gustavsson (1): bash: support the --autosquash option for rebase Brian Gernhardt (2): t9501: Skip testing load if we can't detect it t9501: Re-fix max load test Christian Stimming (1): git-gui: Update German translation (12 new or changed strings). Dan McGee (1): Make NO_PTHREADS the sole thread configuration variable Emmanuel Trillaud (1): git-gui: update french translation Giuseppe Bilotta (4): git-gui: handle non-standard worktree locations git-gui: handle bare repos correctly git-gui: update shortcut tools to use _gitworktree git-gui: set GIT_DIR and GIT_WORK_TREE after setup Heiko Voigt (1): git-gui: fix shortcut for menu "Commit/Revert Changes" Jakub Narębski (1): gitweb: Make running t9501 test with '--debug' reliable and usable Jeff Epler (1): git-gui: Support applying a range of changes at once Jeff King (3): mention new shell execution behavior in release notes docs: fix filter-branch example for quoted paths Fix invalid read in quote_c_style_counted Jens Lehmann (5): git-gui: Use git diff --submodule when available git-gui: Add a special diff popup menu for submodules git-gui: Quote git path when starting another gui in a submodule Fix memory leak in submodule.c Updates for dirty submodules in release notes and user manual John 'Warthog9' Hawley (7): gitweb: Load checking gitweb: Makefile improvements gitweb: Check that $site_header etc. are defined before using them gitweb: add a "string" variant of print_local_time gitweb: add a "string" variant of print_sort_th gitweb: Add optional extra parameter to die_error, for extended explanation gitweb: Simplify (and fix) chop_str Junio C Hamano (7): RPM packaging: use %global inside %{!?...} Update draft release notes to 1.7.0 build: make code "-Wpointer-arith" clean fast-import.c: Fix big-file-threshold parsing bug fast-import: count --max-pack-size in bytes Revert 30816237 and 7e62265 Update draft release notes to 1.7.0 Michael J Gruber (1): git-clean: fix the description of the default behavior Michal Sojka (2): filter-branch: Fix to allow replacing submodules with another content filter-branch: Add tests for submodules in tree-filter Michele Ballabio (1): git-gui: update Italian translation Nanako Shiraishi (1): git-gui: update Japanese translation Nicolas Pitre (4): fix multiple issues with t5300 pack-objects: fix pack generation when using pack_size_limit make --max-pack-size argument to 'git pack-object' count in bytes update git-repack documentation wrt repack.UseDeltaBaseOffset Pal-Kristian Engstad (1): git-p4: Fix sync errors due to new server version Pat Thoyts (1): git-gui: use themed tk widgets with Tk 8.5 Paul Mackerras (1): gitk: Fix copyright symbol in About box message Peter Krefting (1): git-gui: Update Swedish translation (520t0f0u) Peter Oberndorfer (1): git-gui: use different icon for new and modified files in the index Ralf Wildenhues (1): Fix typos in technical documentation. René Scharfe (2): grep: simplify assignment of ->fixed archive: simplify archive format guessing Shawn O. Pearce (4): git-gui: Remove unused icon file_parttick git-gui: Update translation template fast-import: Stream very large blobs directly to pack Correct spelling of 'REUC' extension Wesley J. Landaker (1): Update git fsck --full short description to mention packs Version v1.7.0-rc1; changes since v1.7.0-rc0: --------------------------------------------- Alejandro Riveira Fernández (1): Add test-run-command to .gitignore Benjamin Kramer (1): grep: use REG_STARTEND (if available) to speed up regexec Christian Couder (1): gitk: Add "--no-replace-objects" option Christian Stimming (1): gitk: Update German translation Dan McGee (1): grep: Fix two memory leaks Dave Dulson (2): gitk: Enable gitk to create tags with messages gitk: Fix display of newly-created tags Emmanuel Trillaud (1): gitk: Add French translation Fredrik Kuivinen (1): Threaded grep Gerrit Pape (1): git-cvsserver: allow regex metacharacters in CVSROOT Ilari Liusvaara (7): Support addresses with ':' in git-daemon Allow use of []-wrapped addresses in git:// Add xmallocz() Fix integer overflow in patch_delta() Fix integer overflow in unpack_sha1_rest() Fix integer overflow in unpack_compressed_entry() Fix remote.<remote>.vcs Jeff King (8): t0101: use absolute date rerere: fix too-short initialization test combinations of @{} syntax fix parsing of @{-1}@{u} combination reject @{-1} not at beginning of object name fix memcpy of overlapping area fix off-by-one allocation error add shebang line to git-mergetool--lib.sh Jens Lehmann (2): git diff: Don't test submodule dirtiness with --ignore-submodules Teach diff --submodule that modified submodule directory is dirty Johan Herland (1): builtin-config: Fix crash when using "-f <relative path>" from non-root dir Johannes Sixt (2): git_connect: use use_shell instead of explicit "sh", "-c" Implement pthread_cond_broadcast on Windows Junio C Hamano (13): Make ce_uptodate() trustworthy again grep: expose "status-only" feature via -q Fix log -g this@{upstream} approxidate_careful() reports errorneous date string work around an obnoxious bash "safety feature" on OpenBSD Update @{bogus.timestamp} fix not to die() t0101: use a fixed timestamp when searching in the reflog transport_get(): drop unnecessary check for !remote tests: update tests that used to fail grep --quiet: finishing touches Update draft release notes to 1.7.0 RPM packaging: don't include foreign-scm-helper bits yet is_submodule_modified(): fix breakage with external GIT_INDEX_FILE Kirill Smelkov (1): gitk: Display submodule diffs with appropriate encoding Laszlo Papp (1): gitk: Add Hungarian translation Markus Heidelberg (2): gitk: Adjust two equal strings which differed in whitespace rebase: don't invoke the pager for each commit summary Michele Ballabio (1): gitk: update Italian translation Miklos Vajna (1): gitk: Update Hungarian translation Peter Krefting (1): gitk: Update Swedish translation SZEDER Gábor (2): bash: don't offer remote transport helpers as subcommands bash: support 'git notes' and its subcommands Sebastian Schuberth (1): If deriving SVN_SSH from GIT_SSH on msys, also add quotes Stephen Boyd (6): rebase: replace antiquated sed invocation commit-tree: remove unused #define tests: consolidate CR removal/addition functions t0022: replace non-portable literal CR am: fix patch format detection for Thunderbird "Save As" emails fix portability issues with $ in double quotes Tay Ray Chuan (1): t5541-http-push: make grep expression check for one line only Version v1.7.0-rc0; changes since v1.6.6.3: ------------------------------------------- Andreas Gruenbacher (2): builtin-apply.c: Skip filenames without enough components builtin-apply.c: fix the --- and +++ header filename consistency check Andrew Myrick (3): git-svn: ignore changeless commits when checking for a cherry-pick git-svn: handle merge-base failures git-svn: update svn mergeinfo test suite Andrzej K. Haczewski (1): MSVC: Windows-native implementation for subset of Pthreads API Avery Pennarun (3): git merge -X<option> Teach git-pull to pass -X<option> to git-merge Extend merge-subtree tests to test -Xsubtree=dir. Bart Trojanowski (1): hg-to-git: fix COMMITTER type-o Ben Walton (3): cvsimport: modernize callouts to git subcommands cvsimport: standarize open() calls to external git tools cvsimport: standarize system() calls to external git tools Brad King (2): Test update-index for a gitlink to a .git file Handle relative paths in submodule .git files Christian Couder (8): reset: improve mixed reset error message when in a bare repo Documentation: reset: add some tables to describe the different options reset: add a few tests for "git reset --merge" Documentation: reset: add some missing tables t7111: check that reset options work as described in the tables help: fix configured help format taking over command line one t7111: fix bad HEAD in tests with unmerged entries Documentation: rev-list: fix synopsys for --tags and and --remotes Daniel Barkalow (9): Fix memory leak in helper method for disconnect Allow programs to not depend on remotes having urls Use a function to determine whether a remote is valid Allow fetch to modify refs Add a config option for remotes to specify a foreign vcs Add support for "import" helper command Allow helper to map private ref names into normal names Allow helpers to report in "list" command that the ref is unchanged Replace parse_blob() with an explanatory comment David Aguilar (11): t7800-difftool: Set a bogus tool for use by tests git-difftool: Add '--gui' for selecting a GUI tool difftool--helper: Update copyright and remove distracting comments difftool--helper: Remove use of the GIT_MERGE_TOOL variable difftool: Allow specifying unconfigured commands with --extcmd git-diff.txt: Link to git-difftool t7800-difftool.sh: Simplify the --extcmd test difftool: Add '-x' and as an alias for '--extcmd' difftool: Use eval to expand '--extcmd' expressions difftool: Update copyright notices to list each year separately t7800-difftool.sh: Test mergetool.prompt fallback Erik Faye-Lund (2): daemon: consider only address in kill_some_child() Windows: disable Python Felipe Contreras (1): General --quiet improvements Greg Bacon (1): No diff -b/-w output for all-whitespace changes Horst H. von Brand (1): git-rebase.txt: Fix spelling Igor Mironov (4): git-svn: fix mismatched src/dst errors for branch/tag git-svn: respect commiturl option for branch/tag git-svn: add --username/commit-url options for branch/tag git-svn: document --username/commit-url for branch/tag Ilari Liusvaara (15): Add remote helper debug mode Support mandatory capabilities Pass unknown protocols to external protocol handlers Refactor git transport options parsing Support taking over transports Support remote helpers implementing smart transports Support remote archive from all smart transports Remove special casing of http, https and ftp Reset possible helper before reusing remote structure Improve error message when a transport helper was not found Add push --set-upstream Add git remote set-url Add branch --set-upstream rev-parse --glob rev-parse --branches/--tags/--remotes=pattern Jakub Narębski (1): gitweb.js: Workaround for IE8 bug James P. Howard, II (1): commit: support commit.status, --status, and --no-status Jan Krüger (1): builtin-push: add --delete as syntactic sugar for :foo Jay Soffian (2): git-svn: allow UUID to be manually remapped via rewriteUUID git-svn: allow subset of branches/tags to be specified in glob spec Jeff King (20): status: typo fix in usage status: refactor short-mode printing to its own function status: refactor format option parsing status: add --porcelain output format commit: support alternate status formats docs: note that status configuration affects only long format tests: rename duplicate t1009 status: disable color for porcelain format status: reduce duplicated setup code tests: handle NO_PYTHON setting run-command: add "use shell" option run-command: convert simple callsites to use_shell run-command: optimize out useless shell calls editor: use run_command's shell feature textconv: use shell to run helper diff: run external diff helper with shell strbuf_expand: convert "%%" to "%" strbuf: add strbuf_addbuf_percentquote commit: show interesting ident information in summary commit: allow suppression of implicit identity advice Jens Lehmann (3): Show submodules as modified when they contain a dirty work tree git status: Show uncommitted submodule changes too when enabled Performance optimization for detection of modified submodules Jim Meyering (1): diff.c: fix typoes in comments Johan Herland (4): Basic build infrastructure for Python scripts fast-import: Proper notes tree manipulation Rename t9301 to t9350, to make room for more fast-import tests Add more testcases to test fast-import of notes Johannes Schindelin (2): Allow specifying the remote helper in the url Introduce <branch>@{upstream} notation Johannes Sixt (16): Make test case number unique filter-branch: remove an unnecessary use of 'git read-tree' t0021: use $SHELL_PATH for the filter script t4030, t4031: work around bogus MSYS bash path conversion start_command: report child process setup errors to the parent's stderr run-command: move wait_or_whine earlier start_command: detect execvp failures early Windows: boost startup by avoiding a static dependency on shell32.dll Windows: simplify the pipe(2) implementation Windows: avoid the "dup dance" when spawning a child process Do not use date.c:tm_to_time_t() from compat/mingw.c Makefile: honor NO_CURL when setting REMOTE_CURL_* variables Make test case numbers unique Make 'rerere forget' work from a subdirectory. merge-tree: remove unnecessary call of git_extract_argv0_path Make test numbers unique Jonathan Nieder (15): Makefile: make ppc/sha1ppc.o depend on GIT-CFLAGS Makefile: regenerate assembler listings when asked Makefile: use target-specific variable to pass flags to cc Makefile: learn to generate listings for targets requiring special flags Makefile: consolidate .FORCE-* targets Documentation: git gc packs refs by default now Documentation: tiny git config manual tweaks Documentation: merge: move configuration section to end Documentation: suggest `reset --merge` in How Merge Works section Documentation: merge: move merge strategy list to end Documentation: merge: add an overview Documentation: emphasize when git merge terminates early Documentation: merge: add a section about fast-forward Documentation: simplify How Merge Works Documentation: merge: use MERGE_HEAD to refer to the remote branch Junio C Hamano (96): Refuse updating the current branch in a non-bare repository via push Refuse deleting the current branch via push diff: change semantics of "ignore whitespace" options diff: Rename QUIET internal option to QUICK git stat: the beginning of "status that is not a dry-run of commit" git stat -s: short status output git status: not "commit --dry-run" anymore send-email: make --no-chain-reply-to the default "checkout A...B" switches to the merge base between A and B "rebase --onto A...B" replays history on the merge base between A and B git-merge-file --ours, --theirs Teach --[no-]rerere-autoupdate option to merge, revert and friends commit/status: check $GIT_DIR/MERGE_HEAD only once commit/status: "git add <path>" is not necessarily how to resolve status/commit: do not suggest "reset HEAD <path>" while merging builtin-merge.c: use standard active_cache macros resolve-undo: record resolved conflicts in a new index extension section resolve-undo: basic tests resolve-undo: allow plumbing to clear the information resolve-undo: "checkout -m path" uses resolve-undo information resolve-undo: teach "update-index --unresolve" to use resolve-undo info rerere: remove silly 1024-byte line limit Kick off 1.7.0 cycle Remove http.authAny branch -d: base the "already-merged" safety on the branch it merges with "reset --merge": fix unmerged case tests: move convenience regexp to match object names to test-lib.sh more D/F conflict tests traverse_trees(): handle D/F conflict case sanely Aggressive three-way merge: fix D/F case Fix bit assignment for CE_CONFLICTED .gitattributes: detect 8-space indent in shell scripts unpack-trees.c: prepare for looking ahead in the index unpack-trees.c: look ahead in the index read-tree --debug-unpack Describe second batch for 1.7.0 in draft release notes ident.c: remove unused variables t3001: test ls-files -o ignored/dir read_directory_recursive(): refactor handling of a single path into a separate function read_directory(): further split treat_path() ls-files: fix overeager pathspec optimization ident.c: check explicit identity for name and email separately ident.c: treat $EMAIL as giving user.email identity explicitly rerere: refactor rerere logic to make it independent from I/O rerere forget path: forget recorded resolution bisect.c: mark file-local function static builtin-rev-list.c: mark file-local function static pretty.c: mark file-local function static grep: optimize built-in grep by skipping lines that do not hit http.c: mark file-local functions static entry.c: mark file-local function static parse-options.c: mark file-local function static read-cache.c: mark file-local functions static remote-curl.c: mark file-local function static quote.c: mark file-local function static submodule.c: mark file-local function static utf8.c: mark file-local function static mailmap.c: remove unused function sha1_file.c: remove unused function strbuf.c: remove unused function grep: rip out support for external grep grep: rip out pessimization to use fixmatch() t7502: test commit.status, --status and --no-status strbuf_addbuf(): allow passing the same buf to dst and src grep: prepare to run outside of a work tree grep --no-index: allow use of "git grep" outside a git repository Teach diff that modified submodule directory is dirty git_attr(): fix function signature xdl_merge(): introduce xmparam_t for merge specific parameters xdl_merge(): allow passing down marker_size in xmparam_t merge-tree: use ll_merge() not xdl_merge() rerere: use ll_merge() instead of using xdl_merge() conflict-marker-size: new attribute commit.c::print_summary: do not release the format string too early rerere: prepare for customizable conflict marker length rerere: honor conflict-marker-size attribute user_ident_sufficiently_given(): refactor the logic to be usable from elsewhere user_ident_sufficiently_given(): refactor the logic to be usable from elsewhere Update COPYING with GPLv2 with new FSF address Update draft release notes to 1.7.0 pull: Fix parsing of -X<option> Make "subtree" part more orthogonal to the rest of merge-recursive. Document that merge strategies can now take their own options object.c: remove unused functions symlinks.c: remove unused functions Update draft release notes to 1.7.0 Fix "checkout A..." synonym for "checkout A...HEAD" on Windows t1506: more test for @{upstream} syntax Teach @{upstream} syntax to strbuf_branchanme() date.c: mark file-local function static Update draft release notes to 1.7.0 conflict-marker-size: add test and docs git-mv: fix moving more than one source to a single destination Update draft release notes to 1.7.0 rebase -i: Export GIT_AUTHOR_* variables explicitly pull: re-fix command line generation Linus Torvalds (11): Remove diff machinery dependency from read-cache slim down "git show-index" make "git merge-tree" a built-in make "git hash-object" a built-in make "git var" a built-in make "git patch-id" a built-in make "merge-index" a built-in make "mktag" a built-in make "git unpack-file" a built-in make "git pack-redundant" a built-in make "index-pack" a built-in Martin Storsjö (2): Add an option for using any HTTP authentication scheme, not only basic Allow curl to rewind the RPC read buffer Matthew Ogilvie (3): build dashless "bin-wrappers" directory similar to installed bindir run test suite without dashed git-commands in PATH INSTALL: document a simpler way to run uninstalled builds Matthieu Moy (6): Detailed diagnosis when parsing an object name fails. builtin-config: add --path option doing ~ and ~user expansion. push: spell 'Note about fast-forwards' section name correctly in error message. Be more user-friendly when refusing to do something because of conflict. lockfile: show absolute filename in unable_to_lock_message branch: warn and refuse to set a branch as a tracking branch of itself. Michael Haggerty (25): t3404: Use test_commit to set up test repository Add a command "fixup" to rebase --interactive lib-rebase: Provide clearer debugging info about what the editor did lib-rebase: Allow comments and blank lines to be added to the rebase script rebase-i: Ignore comments and blank lines in peek_next_command rebase -i: Make the condition for an "if" more transparent rebase -i: Remove dead code rebase -i: Inline expression rebase -i: Use "test -n" instead of "test ! -z" rebase -i: Use symbolic constant $MSG consistently rebase -i: Document how temporary files are used rebase -i: Introduce a constant AUTHOR_SCRIPT rebase -i: Introduce a constant AMEND t3404: Test the commit count in commit messages generated by "rebase -i" rebase -i: Improve consistency of commit count in generated commit messages rebase -i: Simplify commit counting for generated commit messages rebase -i: Extract a function "commit_message" rebase -i: Handle the author script all in one place in do_next rebase -i: Extract function do_with_author rebase -i: Change function make_squash_message into update_squash_message rebase -i: For fixup commands without squashes, do not start editor t3404: Set up more of the test repo in the "setup" step rebase -i: Retain user-edited commit messages after squash/fixup conflicts rebase -i: Avoid non-portable "test X -a Y" rebase -i: Enclose sed command substitution in quotes Michael J Gruber (7): status -s: respect the status.relativePaths option t7508-status.sh: Add tests for status -s builtin-commit: refactor short-status code into wt-status.c status -s: obey color.status t7508-status: status --porcelain ignores relative paths setting t7508-status: test all modes with color tag -d: print sha1 of deleted tag Michael Lukashov (1): Windows: Remove dependency on pthreadGC2.dll Miklos Vajna (2): builtin-commit: add --date option Document date formats accepted by parse_date() Nanako Shiraishi (3): rebase -i --autosquash: auto-squash commits rebase: fix --onto A...B parsing and add tests rebase -i: teach --onto A...B syntax Nguyễn Thái Ngọc Duy (27): update-index: refactor mark_valid() in preparation for new options Add test-index-version Introduce "skip-worktree" bit in index, teach Git to get/set this bit Teach Git to respect skip-worktree bit (reading part) Teach Git to respect skip-worktree bit (writing part) Avoid writing to buffer in add_excludes_from_file_1() Read .gitignore from index if it is skip-worktree unpack-trees(): carry skip-worktree bit over in merged_entry() excluded_1(): support exclude files in index dir.c: export excluded_1() and add_excludes_from_file_1() Introduce "sparse checkout" unpack-trees(): add CE_WT_REMOVE to remove on worktree alone unpack-trees.c: generalize verify_* functions unpack-trees(): "enable" sparse checkout and load $GIT_DIR/info/sparse-checkout unpack_trees(): apply $GIT_DIR/info/sparse-checkout to the final index unpack-trees(): ignore worktree check outside checkout area read-tree: add --no-sparse-checkout to disable sparse checkout support Add tests for sparse checkout sparse checkout: inhibit empty worktree ie_match_stat(): do not ignore skip-worktree bit with CE_MATCH_IGNORE_VALID commit: correctly respect skip-worktree bit grep: do not do external grep on skip-worktree entries t7002: set test prerequisite "external-grep" if supported t7002: test for not using external grep on skip-worktree paths status: only touch path we may need to check rm: only refresh entries that we may touch Fix memory corruption when .gitignore does not end by \n Nicolas Pitre (1): fix git-p4 editor invocation Peter Collingbourne (1): Remove empty directories when checking out a commit with fewer submodules Phil Miller (1): CVS Server: Support reading base and roots from environment Ramkumar Ramachandra (1): Documentation: Update git core tutorial clarifying reference to scripts Ramsay Jones (5): MSVC: Fix an "incompatible pointer types" compiler warning engine.pl: Fix a recent breakage of the buildsystem generator msvc: Fix an "unrecognized option" linker warning msvc: Fix a compiler warning due to an incorrect pointer cast msvc: Add a definition of NORETURN compatible with msvc compiler Robert Zeh (1): Add completion for git-svn mkdirs,reset,and gc Sebastian Schuberth (1): Make difftool.prompt fall back to mergetool.prompt Sergei Organov (1): cvsserver: make the output of 'update' more compatible with cvs. Shawn O. Pearce (1): bash completion: add space between branch name and status flags Stephan Beyer (1): reset: use "unpack_trees()" directly instead of "git read-tree" Steven Drake (2): Add 'git rev-parse --show-toplevel' option. Use $(git rev-parse --show-toplevel) in cd_to_toplevel(). Sverre Rabbelier (9): Fix various memory leaks in transport-helper.c Add Python support library for remote helpers fast-import: put option parsing code in separate functions fast-import: put marks reading in its own function fast-import: add feature command fast-import: add option command fast-import: test the new option command fast-import: allow for multiple --import-marks= arguments fast-import: add (non-)relative-marks feature Tarmigan Casebolt (7): t/lib-http.sh: Restructure finding of default httpd location Smart-http: check if repository is OK to export before serving it Smart-http tests: Improve coverage in test t5560 Smart-http tests: Break test t5560-http-backend into pieces Smart-http tests: Test http-backend without curl or a webserver Test t5560: Fix test when run with dash ident.c: replace fprintf with fputs to suppress compiler warning Tay Ray Chuan (12): http: maintain curl sessions builtin-push: don't access freed transport->url check stderr with isatty() instead of stdout when deciding to show progress git-clone.txt: reword description of progress behaviour clone: set transport->verbose when -v/--verbose is used clone: use --progress to force progress reporting t5541-http-push.sh: add tests for non-fast-forward pushes t5541-http-push.sh: add test for unmatched, non-fast-forwarded refs refactor ref status logic for pushing transport.c::transport_push(): make ref status affect return value transport-helper.c::push_refs(): ignore helper-reported status if ref is not to be pushed transport-helper.c::push_refs(): emit "no refs" error message Thiago Farina (2): Use warning function instead of fprintf(stderr, "Warning: ..."). string-list: rename the include guard to STRING_LIST_H Thomas Rast (9): Documentation/git-merge: reword references to "remote" and "pull" Documentation: warn prominently against merging with dirty trees Documentation: format full commands in typewriter font Documentation: spell 'git cmd' without dash throughout Documentation: show-files is now called git-ls-files Documentation: emphasise 'git shortlog' in its synopsis Documentation: improve description of --glob=pattern and friends Documentation: add missing :: in config.txt Documentation: move away misplaced 'push --upstream' description Version v1.6.6.3; changes since v1.6.6.2: ----------------------------------------- Christian Couder (1): bisect: error out when passing bad path parameters Erik Faye-Lund (1): run-command: support custom fd-set in async Gabriel Filion (1): require_work_tree broken with NONGIT_OK Greg Brockman (1): Check size of path buffer before writing into it Hitoshi Mitake (1): git-imap-send: Convert LF to CRLF before storing patch to draft box Jacob Helwig (1): filter-branch: Fix error message for --prune-empty --commit-filter Jakub Narębski (1): gitweb: Introduce esc_attr to escape attributes of HTML elements Jeff King (2): dwim_ref: fix dangling symref warning rm: fix bug in recursive subdirectory removal Johannes Sixt (2): t3301-notes: insert a shbang line in ./fake_editor.sh MSVC: Fix build by adding missing termios.h dummy Junio C Hamano (5): t6000lib: Fix permission lib-patch-mode.sh: Fix permission Re-fix check-ref-format documentation mark-up Fix typo in 1.6.6.2 release notes Git 1.6.4.5 Larry D'Anna (1): diff: make sure --output=/bad/path is caught Michael J Gruber (4): Documentation/git-reflog: Fix formatting of command lists Documentation/gitdiffcore: Remove misleading date in heading Documentation/urls: Remove spurious example markers Documentation/git-clone: Transform description list into item list Michal Sojka (1): Remove extra '-' from git-am(1) Pete Harlan (1): Remove hyphen from "git-command" in two error messages René Scharfe (5): fix minor memory leak in get_tree_entry() utf8.c: remove print_wrapped_text() utf8.c: remove print_spaces() utf8.c: remove strbuf_write() utf8.c: speculatively assume utf-8 in strbuf_add_wrapped_text() Shawn O. Pearce (7): run-command: Allow stderr to be a caller supplied pipe send-pack: demultiplex a sideband stream with status data receive-pack: Refactor how capabilities are shown to the client receive-pack: Wrap status reports inside side-band-64k receive-pack: Send hook output over side band #2 t5401: Use a bare repository for the remote peer receive-pack: Send internal errors over side-band #2 Stephen Boyd (1): request-pull.txt: Document -p option Thomas Rast (2): stash pop: remove 'apply' options during 'drop' invocation cherry_pick_list: quit early if one side is empty Uwe Kleine-König (1): rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option Version v1.6.6.2; changes since v1.6.6.1: ----------------------------------------- Christopher Beelby (1): git-gui: Keep repo_config(gui.recentrepos) and .gitconfig in sync Gerrit Pape (1): git-cvsserver: allow regex metacharacters in CVSROOT Giuseppe Bilotta (1): git-gui: work from the .git dir Ilari Liusvaara (4): Add xmallocz() Fix integer overflow in patch_delta() Fix integer overflow in unpack_sha1_rest() Fix integer overflow in unpack_compressed_entry() Jay Soffian (1): blame: prevent a segv when -L given start > EOF Jeff Epler (1): git-gui: Fix applying a line when all following lines are deletions Jeff King (1): fix memcpy of overlapping area Jens Lehmann (1): git-gui: Correct file_states when unstaging partly staged entry Johan Herland (1): builtin-config: Fix crash when using "-f <relative path>" from non-root dir Jonathan Nieder (1): git-gui: Makefile: consolidate .FORCE-* targets Junio C Hamano (15): checkout -m path: fix recreating conflicts status: don't require the repository to be writable Fix "log" family not to be too agressive about showing notes Fix "log --oneline" not to show notes merge-recursive: do not return NULL only to cause segfault ignore duplicated slashes in make_relative_path() approxidate_careful() reports errorneous date string Update @{bogus.timestamp} fix not to die() t0101: use a fixed timestamp when searching in the reflog git-add documentation: Fix shell quoting example Fix parsing of imap.preformattedHTML and imap.sslverify git-push: document all the status flags used in the output check-ref-format documentation: fix enumeration mark-up t8003: check exit code of command and error message separately Git 1.6.6.2 Nguyễn Thái Ngọc Duy (1): Add missing #include to support TIOCGWINSZ on Solaris Pat Thoyts (1): git-gui: handle really long error messages in updateindex. Peter Krefting (1): git-gui: Fix gitk for branch whose name matches local file René Scharfe (2): archive: complain about path specs that don't match anything archive: simplify archive format guessing SZEDER Gábor (1): bash: don't offer remote transport helpers as subcommands Shawn O. Pearce (1): fast-import: Stream very large blobs directly to pack Tay Ray Chuan (1): retry request without query when info/refs?query fails Vitaly "_Vi" Shukela (1): git-gui: Add hotkeys for "Unstage from commit" and "Revert changes" Wesley J. Landaker (1): Update git fsck --full short description to mention packs Version v1.6.6.1; changes since v1.6.6: --------------------------------------- Andreas Gruenbacher (3): base85 debug code: Fix length byte calculation base85: encode_85() does not use the decode table base85: Make the code more obvious instead of explaining the non-obvious Andreas Schwab (1): git count-objects: handle packs bigger than 4G Björn Gustavsson (4): Documentation: 'git add -A' can remove files git-add/rm doc: Consistently back-quote Fix "git remote update" with remotes.defalt set git-rm doc: Describe how to sync index & work tree David Ripton (1): bisect: fix singular/plural grammar nit Dmitry Potapov (1): fast-import: tag may point to any object type Greg Price (1): commit: --cleanup is a message option Jeff King (2): reset: unbreak hard resets with GIT_WORK_TREE textconv: stop leaking file descriptors Jim Meyering (1): grep: NUL terminate input from a file Jonathan Nieder (2): Documentation: git gc packs refs by default now Documentation: tiny git config manual tweaks Junio C Hamano (10): t1200: work around a bug in some implementations of "find" t4019 "grep" portability fix Start 1.6.6.X maintenance track Makefile: FreeBSD (both 7 and 8) needs OLD_ICONV checkout -m: do not try to fall back to --merge from an unborn branch grep: -L should show empty files Update draft release notes to 1.6.6.1 Fix mis-backport of t7002 Git 1.6.5.8 Git 1.6.6.1 Matthieu Moy (3): SubmittingPatches: hints to know the status of a submitted patch. branch: die explicitly why when calling "git branch [-a|-r] branchname". stash: mention --patch in usage string. Michael Haggerty (1): rebase--interactive: Ignore comments and blank lines in peek_next_command Nathaniel W Filardo (1): read_index(): fix reading extension size on BE 64-bit archs Nguyễn Thái Ngọc Duy (2): Documentation: always respect core.worktree if set t7102: make the test fail if one of its check fails Ramkumar Ramachandra (1): Document git-blame triple -C option Richard Weinberger (1): Fix uninitialized variable in get_refs_via_rsync(). Shawn O. Pearce (2): fast-import: Document author/committer/tagger name is optional remote-curl: Fix Accept header for smart HTTP connections Stephen Boyd (3): octopus: make merge process simpler to follow octopus: reenable fast-forward merges octopus: remove dead code Tarmigan Casebolt (1): Add git-http-backend to command-list. Thomas Rast (1): bash completion: factor submodules into dirty state Version v1.6.6; changes since v1.6.6-rc4: ----------------------------------------- Andrew Myrick (1): git-svn: Remove obsolete MAXPARENT check David Reiss (1): Prevent git blame from segfaulting on a missing author name Eric Wong (4): git svn: fix --revision when fetching deleted paths update release notes for git svn in 1.6.6 git svn: lookup new parents correctly from svn:mergeinfo git svn: branch/tag commands detect username in URLs Junio C Hamano (1): Git 1.6.6 Robert Zeh (1): git svn: add test for a git svn gc followed by a git svn mkdirs Sam Vilain (5): git-svn: expand the svn mergeinfo test suite, highlighting some failures git-svn: memoize conversion of SVN merge ticket info to git commit ranges git-svn: fix some mistakes with interpreting SVN mergeinfo commit ranges git-svn: exclude already merged tips using one rev-list call git-svn: detect cherry-picks correctly. Version v1.6.6-rc4; changes since v1.6.6-rc3: --------------------------------------------- Björn Gustavsson (1): rebase -i: abort cleanly if the editor fails to launch Eric Wong (2): git svn: make empty directory creation gc-aware t9146: use 'svn_cmd' wrapper Junio C Hamano (1): Git 1.6.6-rc4 Stephen Boyd (2): api-strbuf.txt: fix typos and document launch_editor() technical-docs: document hash API Version v1.6.6-rc3; changes since v1.6.6-rc2: --------------------------------------------- Björn Gustavsson (1): bash: Support new 'git fetch' options Jeff King (1): ignore unknown color configuration Johannes Sixt (1): help.autocorrect: do not run a command if the command given is junk Junio C Hamano (7): Remove post-upload-hook Fix archive format with -- on the command line Git 1.6.5.6 Update Release Notes for 1.6.6 to remove old bugfixes worktree: don't segfault with an absolute pathspec without a work tree Git 1.6.5.7 Git 1.6.6-rc3 Nanako Shiraishi (1): Illustrate "filter" attribute with an example Version v1.6.6-rc2; changes since v1.6.6-rc1: --------------------------------------------- Alex Vandiver (3): git-svn: sort svk merge tickets to account for minimal parents git-svn: Set svn.authorsfile to an absolute path when cloning git-svn: set svn.authorsfile earlier when cloning Alexander Gavrilov (1): git-gui: Increase blame viewer usability on MacOS. Bernt Hansen (1): gitk: Skip translation of "wrong Tcl version" message Brandon Casey (2): t4201: use ISO8859-1 rather than ISO-8859-1 t9001: use older Getopt::Long boolean prefix '--no' rather than '--no-' Clemens Buchacher (1): git-gui: search 4 directories to improve statistic of gc hint Eric Wong (1): git svn: log removals of empty directories Greg Price (1): git svn: Don't create empty directories whose parents were deleted Guillermo S. Romero (1): gitk: Add configuration for UI colour scheme Heiko Voigt (1): git gui: make current branch default in "remote delete branch" merge check Jakub Narębski (1): gitweb: Describe (possible) gitweb.js minification in gitweb/README Jan Krüger (1): pull: clarify advice for the unconfigured error case Jeff King (3): rerere: don't segfault on failure to open rr-cache reset: improve worktree safety valves add-interactive: fix deletion of non-empty files Jens Lehmann (2): gitk: Fix diffing committed -> staged (typo in diffcmd) gitk: Use the --submodule option for displaying diffs when available Jindrich Makovicka (1): git-gui: suppress RenderBadPicture X error caused by Tk bug Johan Herland (1): Fix crasher on encountering SHA1-like non-note in notes tree Junio C Hamano (9): Documentation/Makefile: allow man.base.url.for.relative.link to be set from Make Unconditionally set man.base.url.for.relative.links Git 1.6.5.4 Documentation: xmlto 0.0.18 does not know --stringparam Prepare for 1.6.5.5 Git 1.6.5.5 Revert recent "git merge <msg> HEAD <commit>..." deprecation Update draft release notes to 1.6.6 before -rc2 Git 1.6.6-rc2 Linus Torvalds (1): Fix diff -B/--dirstat miscounting of newly added contents Markus Heidelberg (1): gitk: Fix "git gui blame" invocation when called from top-level directory Mizar (2): gitk: Add Japanese translation gitk: Update Japanese translation Pat Thoyts (4): gitk: Use themed tk widgets gitk: Fix errors in the theme patch gitk: Default to the system colours on Windows gitk: Fix selection of tags Paul Mackerras (5): gitk: Restore scrolling position of diff pane on back/forward in history gitk: Add a user preference to enable/disable use of themed widgets gitk: Show diff of commits at end of compare-commits output gitk: Don't compare fake children when comparing commits gitk: Improve appearance of radiobuttons and checkbuttons René Scharfe (1): archive: clarify description of path parameter SZEDER Gábor (1): bash: update 'git commit' completion Sitaram Chamarty (1): gitk: Disable checkout of remote branches Todd Zullinger (1): Documentation: Avoid use of xmlto --stringparam Version v1.6.6-rc1; changes since v1.6.6-rc0: --------------------------------------------- Avery Pennarun (1): builtin-merge.c: call exclude_cmds() correctly. Benjamin Kramer (1): Explicitly truncate bswap operand to uint32_t Bert Wesarg (2): Give the hunk comment its own color get_ref_states: strdup entries and free util in stale list Björn Gustavsson (11): Teach the --all option to 'git fetch' Teach the --multiple option to 'git fetch' Add the configuration option skipFetchAll Add missing test for 'git remote update --prune' Re-implement 'git remote update' using 'git fetch' Clarify and correct -z apply: apply works outside a repository apply: Format all options using back-quotes apply: Use the term "working tree" consistently Fix over-simplified documentation for 'git log -z' gitworkflows: Consistently back-quote git commands Brian Gernhardt (1): t/gitweb-lib: Split HTTP response with non-GNU sed Christian Couder (6): Documentation: add "Fighting regressions with git bisect" article replace: use a GIT_NO_REPLACE_OBJECTS env variable Documentation: fix typos and spelling in replace documentation Documentation: talk a little bit about GIT_NO_REPLACE_OBJECTS bisect: simplify calling visualizer using '--bisect' option Documentation: update descriptions of revision options related to '--bisect' David Aguilar (1): help: Do not unnecessarily look for a repository David Soria Parra (1): Documentation: Document --branch option in git clone synopsis Erick Mattos (1): commit -c/-C/--amend: reset timestamp and authorship to committer with --reset-author Felipe Contreras (3): format-patch: fix parsing of "--" on the command line format-patch: add test for parsing of "--" send-email: automatic envelope sender Horst H. von Brand (1): git-pull.sh: Fix call to git-merge for new command format Jakub Narębski (10): gitweb: Add optional "time to generate page" info in footer gitweb: Incremental blame (using JavaScript) gitweb: Colorize 'blame_incremental' view during processing gitweb: Create links leading to 'blame_incremental' using JavaScript gitweb: Minify gitweb.js if JSMIN is defined t/gitweb-lib.sh: Split gitweb output into headers and body gitweb: Document current snapshot rules via new tests gitweb.js: Harden setting blamed commit info in incremental blame gitweb: Make linking to actions requiring JavaScript a feature gitweb: Add link to other blame implementation in blame views Jay Soffian (4): remote: refactor some logic into get_stale_heads() teach warn_dangling_symref to take a FILE argument builtin-fetch: add --prune option builtin-fetch: add --dry-run option Jeff King (1): prune-packed: only show progress when stderr is a tty Johannes Sixt (2): t4014-format-patch: do not assume 'test' is available as non-builtin Add a notice that only certain functions can print color escape codes Jonathan Nieder (1): Makefile: do not clean arm directory Junio C Hamano (19): mailinfo: -b option keeps [bracketed] strings that is not a [PATCH] marker Pretty-format: %[+-]x to tweak inter-item newlines read_revision_from_stdin(): use strbuf Teach --stdin option to "log" family setup_revisions(): do not call get_pathspec() too early Make --stdin option to "log" family read also pathspecs t9001: test --envelope-sender option of send-email Add trivial tests for --stdin option to log family Protect scripted Porcelains from GREP_OPTIONS insanity builtin-apply.c: pay attention to -p<n> when determining the name Remove dead code from "git am" emit_line(): don't emit an empty <SET><RESET> followed by a newline Update draft release notes to 1.6.6 before merging topics for -rc1 git-merge: a deprecation notice of the ancient command line syntax Update draft release notes to 1.6.6 before -rc1 Do not misidentify "git merge foo HEAD" as an old-style invocation merge: do not add standard message when message is given with -m option Prepare for 1.6.5.4 Git 1.6.6-rc1 Mark Rada (2): gitweb: check given hash before trying to create snapshot gitweb: Smarter snapshot names Martin Storsjö (3): Disable CURLOPT_NOBODY before enabling CURLOPT_PUT and CURLOPT_POST Refactor winsock initialization into a separate function Enable support for IPv6 on MinGW Matthew Ogilvie (5): cvsserver doc: database generally can not be reproduced consistently config documentation: some configs are auto-set by git-init t2300: use documented technique to invoke git-sh-setup t3409 t4107 t7406 t9150: use dashless commands t/README: Document GIT_TEST_INSTALLED and GIT_TEST_EXEC_PATH Matthieu Moy (4): merge-recursive: point the user to commit when file would be overwritten. user-manual: Document that "git merge" doesn't like uncommited changes. merge-recursive: make the error-message generation an extern function builtin-merge: show user-friendly error messages for fast-forward too. Michael J Gruber (1): Documentation: Fix a few i.e./e.g. mix-ups Nanako Shiraishi (2): t1200: fix a timing dependent error prepare send-email for smoother change of --chain-reply-to default Nicolas Pitre (1): pack-objects: split implications of --all-progress from progress activation Ramsay Jones (1): git-count-objects: Fix a disk-space under-estimate on Cygwin René Scharfe (2): strbuf_add_wrapped_text(): skip over colour codes mergetool--lib: simplify guess_merge_tool() Stephen Boyd (3): gitweb.js: fix null object exception in initials calculation instaweb: restart server if already running gitweb.js: fix padLeftStr() and its usage Tay Ray Chuan (1): remote-curl.c: fix rpc_out() Uwe Kleine-König (1): shortlog: respect commit encoding Version v1.6.6-rc0; changes since v1.6.5.9: ------------------------------------------- Alex Riesen (1): git-gui: Update russian translation Alexey Borzenkov (1): git-gui: store wm state and fix wm geometry Anders Kaseorg (1): bisect reset: Allow resetting to any commit, not just a branch Ben Walton (2): configure: add macro to set arbitrary make variables configure: add settings for gitconfig, editor and pager Björn Gustavsson (10): Teach 'rebase -i' the command "reword" bash: complete more options for 'git rebase' Teach 'git merge' and 'git pull' the option --ff-only format-patch: Always generate a patch format-patch documentation: Remove diff options that are not useful format-patch documentation: Fix formatting format-patch: Add "--no-stat" as a synonym for "-p" bash: add the merge option --ff-only Fix truncated usage messages User Manual: Write "Git" instead of "GIT" Christian Couder (1): git: add --no-replace-objects option to disable replacing Clemens Buchacher (2): remote-helpers: return successfully if everything up-to-date set httpd port before sourcing lib-httpd Dan Zwell (1): git-gui: Limit display to a maximum number of files David Aguilar (1): submodule.c: Squelch a "use before assignment" warning David Brown (1): commit: More generous accepting of RFC-2822 footer lines. David Kågedal (1): git-blame.el: Change how blame information is shown. Eric Wong (6): git svn: fix fetch where glob is on the top-level URL git svn: read global+system config for clone+init git svn: add authorsfile test case for ~/.gitconfig git svn: attempt to create empty dirs on clone+rebase git svn: always reuse existing remotes on fetch git svn: strip leading path when making empty dirs Erik Faye-Lund (6): imap-send: use separate read and write fds imap-send: use run-command API for tunneling imap-send: fix compilation-error on Windows imap-send: build imap-send on Windows mingw: wrap SSL_set_(w|r)fd to call _get_osfhandle mingw: enable OpenSSL Felipe Contreras (2): diff.c: stylefix Use 'fast-forward' all over the place Heiko Voigt (1): git-gui: remove warning when deleting correctly merged remote branch Ingmar Vanhassel (1): import-tars: Add support for tarballs compressed with lzma, xz Jakub Narębski (4): gitweb: Add 'show-sizes' feature to show blob sizes in tree view gitweb: Refactor 'log' action generation, adding git_log_body() gitweb: Refactor common parts of 'log' and 'shortlog' views gitweb: Make 'history' view (re)use git_log_generic() Jean Privat (1): Teach "git describe" --dirty option Jeff King (3): imap-send: remove useless uid code gitignore: root most patterns at the top-level directory t915{0,1}: use $TEST_DIRECTORY Jens Lehmann (5): git-gui: display summary when showing diff of a submodule git-gui: fix diff for partially staged submodule changes git submodule add: make the <path> parameter optional git-gui: fix use of uninitialized variable add tests for git diff --submodule Jimmy Angelakos (1): git-gui: Added Greek translation & glossary Johan Herland (9): Teach "-m <msg>" and "-F <file>" to "git notes edit" fast-import: Add support for importing commit notes t3302-notes-index-expensive: Speed up create_repo() Add flags to get_commit_notes() to control the format of the note string Teach notes code to free its internal data structures on request Teach the notes lookup code to parse notes trees with various fanout schemes Add selftests verifying that we can parse notes trees with various fanouts Refactor notes code to concatenate multiple notes annotating the same object Add selftests verifying concatenation of multiple notes for the same commit Johannes Schindelin (8): print_wrapped_text(): allow hard newlines Add strbuf_add_wrapped_text() to utf8.[ch] Introduce commit notes Add a script to edit/inspect notes Speed up git notes lookup Add an expensive test for git-notes Add '%N'-format for pretty-printing commit notes Add the --submodule option to the diff option family Johannes Sixt (1): Windows: use BLK_SHA1 again Jonathan Nieder (34): Add tests for git check-ref-format check-ref-format: simplify --print implementation Handle more shell metacharacters in editor names Retire fetch--tool helper to contrib/examples Show usage string for 'git grep -h' Show usage string for 'git cherry -h' Show usage string for 'git commit-tree -h' Show usage string for 'git merge-ours -h' Show usage string for 'git show-ref -h' http-fetch: add missing initialization of argv0_path Show usage string for 'git check-ref-format -h' Show usage string for 'git fast-import -h' Show usage string for 'git get-tar-commit-id -h' Show usage string for 'git imap-send -h' Show usage string for 'git mailsplit -h' Show usage string for 'git merge-one-file -h' Show usage string for 'git rev-parse -h' Show usage string for 'git show-index -h' Show usage string for 'git unpack-file -h' Show usage string for 'git stripspace -h' Let 'git http-fetch -h' show usage outside any git repository Show usage string for 'git http-push -h' Let 'git <command> -h' show usage without a git dir Introduce usagef() that takes a printf-style format merge-{recursive,subtree}: use usagef() to print usage diff --no-index: make the usage string less scary Do not use VISUAL editor on dumb terminals Suppress warnings from "git var -l" Teach git var about GIT_EDITOR Teach git var about GIT_PAGER add -i, send-email, svn, p4, etc: use "git var GIT_EDITOR" am -i, git-svn: use "git var GIT_PAGER" Provide a build time default-editor setting Speed up bash completion loading Julian Phillips (4): fetch: Speed up fetch by rewriting find_non_local_tags remote: Make ref_remove_duplicates faster for large numbers of refs fetch: Speed up fetch of large numbers of refs remote: fix use-after-free error detected by glibc in ref_remove_duplicates Junio C Hamano (20): diff-lib.c: fix misleading comments on oneway_diff() unpack-trees: typofix unpack_callback(): use unpack_failed() consistently git check-ref-format --print Start 1.6.6 cycle check_filename(): make verify_filename() callable without dying DWIM "git checkout frotz" to "git checkout -b frotz origin/frotz" format_commit_message(): fix function signature fsck: default to "git fsck --full" git checkout --no-guess Teach --wrap to only indent without wrapping Update draft release notes to 1.6.6 Revert "Don't create the $GIT_DIR/branches directory on init" t1200: further modernize test script style t1200: prepare for merging with Fast-forward bikeshedding builtin-commit.c: fix logic to omit empty line before existing footers git-describe.txt: formatting fix Provide a build time default-pager setting Update draft release notes to 1.6.6 Git v1.6.6-rc0 Linus Torvalds (1): Add '--bisect' revision machinery argument Marius Storm-Olsen (1): MSVC: Enable OpenSSL, and translate -lcrypto Mark Lodato (5): http-backend: add GIT_PROJECT_ROOT environment var http-backend: reword some documentation http-backend: use mod_alias instead of mod_rewrite http-backend: add example for gitweb on same URL http-backend: more explict LocationMatch Mark Rada (1): instaweb: support mod_cgid for apache2 Markus Heidelberg (1): bash completion: difftool accepts the same options as diff Michael J Gruber (1): Make t9150 and t9151 test scripts executable Nicolas Pitre (1): pack-objects: move thread autodetection closer to relevant code Ramsay Jones (2): Makefile: keep MSVC and Cygwin configuration separate MSVC: Add support for building with NO_MMAP René Scharfe (6): describe: load refnames before calling describe() Implement wrap format %w() as if it is a mode switch log --format: don't ignore %w() at the start of format string grep: unset GREP_OPTIONS before spawning external grep strbuf_add_wrapped_text(): factor out strbuf_add_indented_text() log --format: document %w Robin Rosenberg (1): Don't create the $GIT_DIR/branches directory on init SZEDER Gábor (1): Documentation: add 'git replace' to main git manpage Sam Vilain (5): git-svn: add test data for SVK merge, with script. git-svn: allow test setup script to support PERL env. var git-svn: convert SVK merge tickets to extra parents git-svn: add test data for SVN 1.5+ merge, with script. git-svn: convert SVN 1.5+ / svnmerge.py svn:mergeinfo props to parents Scott Chacon (2): mergetool--lib: add p4merge as a pre-configured mergetool option Update packfile transfer protocol documentation Sebastian Schuberth (2): Use faster byte swapping when compiling with MSVC Make the MSVC projects use PDB/IDB files named after the project Shawn O. Pearce (27): git-gui: Ensure submodule path is quoted properly pkt-line: Add strbuf based functions pkt-line: Make packet_read_line easier to debug fetch-pack: Use a strbuf to compose the want list Move "get_ack()" back to fetch-pack Add multi_ack_detailed capability to fetch-pack/upload-pack remote-curl: Refactor walker initialization fetch: Allow transport -v -v -v to set verbosity to 3 remote-helpers: Fetch more than one ref in a batch remote-helpers: Support custom transport options Move WebDAV HTTP push under remote-curl Git-aware CGI to provide dumb HTTP transport Add stateless RPC options to upload-pack, receive-pack Smart fetch and push over HTTP: server side Discover refs via smart HTTP server when available Smart push over HTTP: client side Smart fetch over HTTP: client side Smart HTTP fetch: gzip requests http tests: use /dumb/ URL prefix test smart http fetch and push http-backend: Use http.getanyfile to disable dumb HTTP serving http-backend: Test configuration options Git-aware CGI to provide dumb HTTP transport http-backend: Protect GIT_PROJECT_ROOT from /../ requests t5551-http-fetch: Work around some libcurl versions t5551-http-fetch: Work around broken Accept header in libcurl http-backend: Fix bad treatment of uintmax_t in Content-Length Stephen Boyd (7): rebase -i: fix reword when using a terminal editor gitweb: linkify author/committer names with search t1402: Make test executable t1200: cleanup and modernize test style t1200: Make documentation and test agree t3101: test more ls-tree options ls-tree: migrate to parse-options Tarmigan Casebolt (3): Check the format of more printf-type functions http-backend: Fix access beyond end of string. http-backend: Let gcc check the format of more printf-type functions. Tay Ray Chuan (2): http-push: fix check condition on http.c::finish_http_pack_request() t5540-http-push: remove redundant fetches Thiago Farina (1): Documentation: update pt-BR Thomas Rast (14): bash completion: complete refs for git-grep Let --decorate show HEAD position Refactor pretty_print_commit arguments into a struct reflog-walk: refactor the branch@{num} formatting Introduce new pretty formats %g[sdD] for reflog information stash list: use new %g formats instead of sed stash list: drop the default limit of 10 stashes describe: when failing, tell the user about options that work filter-branch: stop special-casing $filter_subdir argument filter-branch: nearest-ancestor rewriting outside subdir filter Documentation: clarify 'ours' merge strategy rebase docs: clarify --merge and --strategy Document git-svn's first-parent rule describe: do not use unannotated tag even if exact match Toby Allsopp (1): git svn: handle SVN merges from revisions past the tip of the branch Vietor Liu (1): git-gui: adjust the minimum height of diff pane for shorter screen height Štěpán Němec (1): git-update-index.txt: Document the --really-refresh option. Version v1.6.5.9; changes since v1.6.5.8: ----------------------------------------- Björn Gustavsson (3): Documentation: 'git add -A' can remove files git-add/rm doc: Consistently back-quote git-rm doc: Describe how to sync index & work tree Greg Brockman (1): Check size of path buffer before writing into it Jakub Narębski (1): gitweb: Introduce esc_attr to escape attributes of HTML elements Jay Soffian (1): blame: prevent a segv when -L given start > EOF Jeff King (2): fix memcpy of overlapping area dwim_ref: fix dangling symref warning Junio C Hamano (2): t8003: check exit code of command and error message separately Git 1.6.4.5 Larry D'Anna (1): diff: make sure --output=/bad/path is caught Michal Sojka (1): Remove extra '-' from git-am(1) Stephen Boyd (4): octopus: make merge process simpler to follow octopus: reenable fast-forward merges octopus: remove dead code request-pull.txt: Document -p option Thomas Rast (1): stash pop: remove 'apply' options during 'drop' invocation Uwe Kleine-König (1): rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option Version v1.6.5.8; changes since v1.6.5.7: ----------------------------------------- Andreas Gruenbacher (3): base85 debug code: Fix length byte calculation base85: encode_85() does not use the decode table base85: Make the code more obvious instead of explaining the non-obvious Andreas Schwab (1): git count-objects: handle packs bigger than 4G Björn Gustavsson (1): rebase -i: abort cleanly if the editor fails to launch David Reiss (1): Prevent git blame from segfaulting on a missing author name Dmitry Potapov (1): fast-import: tag may point to any object type Greg Price (1): commit: --cleanup is a message option Jeff King (2): reset: unbreak hard resets with GIT_WORK_TREE textconv: stop leaking file descriptors Jim Meyering (1): grep: NUL terminate input from a file Junio C Hamano (3): checkout -m: do not try to fall back to --merge from an unborn branch Fix mis-backport of t7002 Git 1.6.5.8 Matthieu Moy (1): branch: die explicitly why when calling "git branch [-a|-r] branchname". Nguyễn Thái Ngọc Duy (1): t7102: make the test fail if one of its check fails Stephen Boyd (2): api-strbuf.txt: fix typos and document launch_editor() technical-docs: document hash API Thomas Rast (1): bash completion: factor submodules into dirty state Version v1.6.5.7; changes since v1.6.5.6: ----------------------------------------- Jeff King (1): ignore unknown color configuration Johannes Sixt (1): help.autocorrect: do not run a command if the command given is junk Junio C Hamano (2): worktree: don't segfault with an absolute pathspec without a work tree Git 1.6.5.7 Nanako Shiraishi (1): Illustrate "filter" attribute with an example Version v1.6.5.6; changes since v1.6.5.5: ----------------------------------------- Jan Krüger (1): pull: clarify advice for the unconfigured error case Jeff King (1): add-interactive: fix deletion of non-empty files Junio C Hamano (3): Remove post-upload-hook Fix archive format with -- on the command line Git 1.6.5.6 Matthieu Moy (2): merge-recursive: make the error-message generation an extern function builtin-merge: show user-friendly error messages for fast-forward too. Version v1.6.5.5; changes since v1.6.5.4: ----------------------------------------- Avery Pennarun (1): builtin-merge.c: call exclude_cmds() correctly. Brandon Casey (1): t4201: use ISO8859-1 rather than ISO-8859-1 Brian Collins (1): grep: Allow case insensitive search of fixed-strings Felipe Contreras (2): format-patch: fix parsing of "--" on the command line format-patch: add test for parsing of "--" Jeff King (4): diffcore-break: free filespec data as we go diffcore-break: save cnt_data for other phases rerere: don't segfault on failure to open rr-cache reset: improve worktree safety valves Junio C Hamano (7): diffcore-rename: reduce memory footprint by freeing blob data early Documentation: avoid xmlto input error Protect scripted Porcelains from GREP_OPTIONS insanity Remove dead code from "git am" Documentation: xmlto 0.0.18 does not know --stringparam Prepare for 1.6.5.5 Git 1.6.5.5 Linus Torvalds (1): Fix diff -B/--dirstat miscounting of newly added contents Lukas Sandström (1): git am/mailinfo: Don't look at in-body headers when rebasing Matthew Ogilvie (1): core.autocrlf documentation: mention the crlf attribute Matthieu Moy (4): Expand ~ and ~user in core.excludesfile, commit.template expand_user_path: expand ~ to $HOME, not to the actual homedir. merge-recursive: point the user to commit when file would be overwritten. user-manual: Document that "git merge" doesn't like uncommited changes. Nicolas Pitre (1): give priority to progress messages Philippe Bruhat (1): Make sure $PERL_PATH is defined when the test suite is run. Raman Gupta (1): Add branch management for releases to gitworkflows Ramsay Jones (3): Makefile: merge two Cygwin configuration sections into one t9700-perl-git.sh: Fix a test failure on Cygwin git-count-objects: Fix a disk-space under-estimate on Cygwin René Scharfe (2): mergetool--lib: simplify guess_merge_tool() archive: clarify description of path parameter Tim Henigan (2): Update 'git remote update' usage string to match man page. git remote: Separate usage strings for subcommands Todd Zullinger (1): Documentation: Avoid use of xmlto --stringparam Uwe Kleine-König (1): shortlog: respect commit encoding Version v1.6.5.4; changes since v1.6.5.3: ----------------------------------------- David Aguilar (1): help: Do not unnecessarily look for a repository David Soria Parra (1): Documentation: Document --branch option in git clone synopsis Greg Price (1): Documentation: undocument gc'd function graph_release() Jeff King (1): prune-packed: only show progress when stderr is a tty Junio C Hamano (7): builtin-apply.c: pay attention to -p<n> when determining the name Do not misidentify "git merge foo HEAD" as an old-style invocation merge: do not add standard message when message is given with -m option Prepare for 1.6.5.4 Documentation/Makefile: allow man.base.url.for.relative.link to be set from Make Unconditionally set man.base.url.for.relative.links Git 1.6.5.4 Michael J Gruber (1): Documentation: Fix a few i.e./e.g. mix-ups Nicolas Pitre (1): pack-objects: split implications of --all-progress from progress activation Stephen Boyd (1): instaweb: restart server if already running Version v1.6.5.3; changes since v1.6.5.2: ----------------------------------------- Björn Gustavsson (1): git-clone.txt: Fix grammar and formatting Björn Steinbrink (1): pre-commit.sample: Diff against the empty tree when HEAD is invalid Clemens Buchacher (1): modernize fetch/merge/pull examples Daniel Barkalow (2): Require a struct remote in transport_get() Allow curl helper to work without a local repository Dmitry V. Levin (1): Makefile: add compat/bswap.h to LIB_H Gerrit Pape (1): help -i: properly error out if no info viewer can be found Gisle Aas (2): More precise description of 'git describe --abbrev' Fix documentation grammar typo Giuseppe Bilotta (1): gitweb: fix esc_param Jakub Narębski (1): gitweb: Do not show 'patch' link for merge commits Jan Krüger (1): rebase -i: more graceful handling of invalid commands Jari Aalto (3): Documentation/fetch-options.txt: order options alphabetically Documentation/git-pull.txt: Add subtitles above included option files Documentation/merge-options.txt: order options in alphabetical groups Jeff King (6): cvsimport: fix relative argument filenames push: always load default config add-interactive: handle deletion of empty files ls-files: unbreak "ls-files -i" push: fix typo in usage format-patch: make "-p" suppress diffstat Johannes Schindelin (3): blame: make sure that the last line ends in an LF help -a: do not unnecessarily look for a repository diff --color-words -U0: fix the location of hunk headers Jonathan Nieder (4): clone: detect extra arguments Add intermediate build products to .gitignore check-ref-format: update usage string merge: do not setup worktree twice Junio C Hamano (22): apply --whitespace=fix: fix handling of blank lines at the eof apply --whitespace=fix: detect new blank lines at eof correctly apply.c: split check_whitespace() into two apply --whitespace=warn/error: diagnose blank at EOF apply --whitespace: warn blank but not necessarily empty lines at EOF diff.c: the builtin_diff() deals with only two-file comparison diff --whitespace=warn/error: obey blank-at-eof diff --whitespace=warn/error: fix blank-at-eof check diff --color: color blank-at-eof core.whitespace: split trailing-space into blank-at-{eol,eof} diff --whitespace: fix blank lines at end diff.c: shuffling code around diff.c: split emit_line() from the first char and the rest of the line diff.c: emit_add_line() takes only the rest of the line diff -B: colour whitespace errors info/grafts: allow trailing whitespaces at the end of line gc --auto --quiet: make the notice a bit less verboase receive-pack: run "gc --auto --quiet" and optionally "update-server-info" clone: fix help on options diff --color-words: bit of clean-up check-ref-format -h: it does not know the --print option yet Git 1.6.5.3 Markus Heidelberg (1): t4034-diff-words: add a test for word diff without context Petr Baudis (1): gitweb: Fix blob linenr links in pathinfo mode Sebastian Schuberth (1): Do not try to remove directories when removing old links Stephen Boyd (1): git-add.txt: fix formatting of --patch section Thomas Rast (1): Quote ' as \(aq in manpages Todd Zullinger (1): Makefile: Ensure rpm packages can be read by older rpm versions Vietor Liu (1): imap-send.c: fix compiler warnings for OpenSSL 1.0 Version v1.6.5.2; changes since v1.6.5.1: ----------------------------------------- Andreas Schwab (1): Work around option parsing bug in the busybox tar implementation Carlos R. Mafra (1): Makefile: clean block-sha1/ directory instead of mozilla-sha1/ Jeff King (2): ls-files: excludes should not impact tracked files document push's new quiet option Joe Perches (1): git-send-email.perl: fold multiple entry "Cc:" and multiple single line "RCPT TO:"s Johannes Sixt (2): Remove a left-over file from t/t5100 Mark files in t/t5100 as UTF-8 Jonathan Nieder (1): Documentation: describe check-ref-format --branch Junio C Hamano (4): Fix incorrect error check while reading deflated pack data Do not fail "describe --always" in a tag-less repository Fix list of released versions in the toc document GIT 1.6.5.2 Markus Heidelberg (1): t7800-difftool: fix the effectless GIT_DIFFTOOL_PROMPT test Matt Kraai (1): Documentation/git-gc.txt: change "references" to "reference" Nanako Shiraishi (2): git push: remove incomplete options list from help text git push: say that --tag can't be used with --all or --mirror in help text Nasser Grainawi (1): Document `delta` attribute in "git help attributes". Pauli Virtanen (1): git-add--interactive: never skip files included in index Version v1.6.5.1; changes since v1.6.5: --------------------------------------- Björn Steinbrink (1): clone: Supply the right commit hash to post-checkout when -b is used Johannes Sixt (1): remote-curl: add missing initialization of argv0_path Junio C Hamano (1): GIT 1.6.5.1 Matt Kraai (1): grep: do not segfault when -f is used Miklos Vajna (1): git-stash documentation: mention default options for 'list' Nicolas Pitre (1): change throughput display units with fast links Shawn O. Pearce (1): sha1_file: Fix infinite loop when pack is corrupted Version v1.6.5; changes since v1.6.5-rc3: ----------------------------------------- Alexander Gavrilov (1): git-svn: Avoid spurious errors when rewriteRoot is used. Ben Walton (1): ls-files: die instead of fprintf/exit in -i error Björn Gustavsson (1): bash: add support for 'git replace' Brandon Casey (2): Makefile: enable THREADED_DELTA_SEARCH on IRIX and IRIX64 Makefile: add a note about the NO_MMAP setting on IRIX and IRIX64 Christian Himpel (2): git-am: fixed patch_format detection according to RFC2822 git-am: force egrep to use correct characters set Erik Faye-Lund (2): increase portability of NORETURN declarations add NORETURN_PTR for function pointers Felipe Contreras (1): send-email: fix mutt regex for grouped aliases Ingmar Vanhassel (1): import-tars: Add missing closing bracket Jeff King (2): improve reflog date/number heuristic pull: improve advice for unconfigured error case Jonathan Nieder (8): Describe DOCBOOK_XSL_172, ASCIIDOC_NO_ROFF options in Makefile Documentation: git fmt-merge-msg does not have to be a script Documentation: clarify mergeoptions description Documentation: branch: update --merged description Documentation: clarify branch creation Documentation: clarify "working tree" definition racy-git.txt: explain nsec problem in more detail Documentation: clone: clarify discussion of initial branch Junio C Hamano (2): Update draft release notes to 1.6.5 GIT 1.6.5 Ramsay Jones (2): Fix MSVC build on cygwin Fix the exit code of MSVC build scripts on cygwin René Scharfe (1): Git archive and trailing "/" in prefix Simon Arlott (1): git-svn: hide find_parent_branch output in double quiet mode Stephen Boyd (2): completion: fix completion of git <TAB><TAB> completion: fix alias listings with newlines Version v1.6.5-rc3; changes since v1.6.5-rc2: --------------------------------------------- Adam Brewster (1): filter-branch: add --prune-empty to option summary Andreas Schwab (1): parse-opt: ignore negation of OPT_NONEG for ambiguity checks Brandon Casey (3): perl/Makefile.PL: detect MakeMaker versions incompatible with DESTDIR Documentation/git-gc.txt: default --aggressive window is 250, not 10 Makefile: enable THREADED_DELTA_SEARCH on SunOS Frederik Schwarzer (1): Correct minor typo in post-receive hook template Jim Meyering (1): typo fix: Directory `...' exist, ...: s/exist/exists/ Johan Sageryd (1): Fix '--relative-date' Junio C Hamano (4): builtin-mailinfo.c: check error status from rewind and ftruncate show-branch: fix segfault when showbranch.default exists git-pull: dead code removal fast-import.c::validate_raw_date(): really validate the value Mark Rada (1): tests: make all test files executable Michael Wookey (1): generators/vcproj.pm: remove UNICODE from build Miklos Vajna (1): git branch -D: give a better error message when lockfile creation fails Nicolas Pitre (1): make 'git clone' ask the remote only for objects it cares about Ramsay Jones (1): Fix some printf format warnings SZEDER Gábor (1): bash: teach 'git checkout' options Sebastian Schuberth (2): Make generated MSVC solution file open from Windows Explorer Make just opening the generated MSVC solution file not modify it Stefan Naewe (1): README: git lives at http://git-scm.com these days Stephen Boyd (2): completion: update am, commit, and log completion: add dirstat and friends to diff options Yakov Lerner (1): send-email: fix obscure error when encryption=tls and smtp cannot connect Version v1.6.5-rc2; changes since v1.6.5-rc1: --------------------------------------------- Clemens Buchacher (2): test local clone by copying cvs: initialize empty password Dmitry Potapov (2): git-archive: add '-o' as a alias for '--output' git-archive: infer output format from filename when unspecified Frank Li (6): Avoid declaration after statement Change regerror() declaration from K&R style to ANSI C (C89) Fix __stdcall placement and function prototype Test for WIN32 instead of __MINGW32_ Add MinGW header files to build git with MSVC Add platform files for porting to MSVC Heiko Voigt (2): remove logical typo in documentation of sample update hook web--browse: fix Mac OS X GUI detection for 10.6 Jim Meyering (1): pre-commit.sample: add comment re tr portability; fix grammar Johannes Gilger (1): git-clone doc: typofix Johannes Sixt (1): test-genrandom: ensure stdout is set to _O_BINARY on Windows Junio C Hamano (6): git-commit doc: remove duplicated --dry-run description http.c: avoid freeing an uninitialized pointer GIT 1.6.4.4 Update Release Notes to 1.6.5 pay attention to DESTDIR when building with NO_PERL_MAKEMAKER pull: Clarify "helpful" message for another corner case Marius Storm-Olsen (9): Add include guards to compat/win32.h Set _O_BINARY as default fmode for both MinGW and MSVC Add empty header files for MSVC port Make usage of windows.h lean and mean Define strncasecmp and ftruncate for MSVC Add MSVC to Makefile Add README for MSVC build Add scripts to generate projects for other buildsystems (MSVC vcproj, QMake) Tag GIT_VERSION when Git is built with MSVC Matthieu Moy (1): push: Correctly initialize nonfastforward in transport_push. Nelson Elhage (1): git-push: Accept -n as a synonym for --dry-run. Nicolas Pitre (1): Nicolas Pitre has a new email address Pat Thoyts (1): gitk: Work around leftover temporary save file Paul Mackerras (1): gitk: Show diff of commits at end of compare-commits output Peter Krefting (1): gitk: Update Swedish translation (280t0f0u) SZEDER Gábor (3): bash: rename __git_find_subcommand() to __git_find_on_cmdline() bash: update 'git stash' completion bash: teach 'git reset --patch' Thiago Farina (3): Update the usage bundle string. pack-objects: remove SP at the end of usage string Update "describe" documentation to match reality Todd Zullinger (1): completion: Replace config --list with --get-regexp Version v1.6.5-rc1; changes since v1.6.5-rc0: --------------------------------------------- Brian Gernhardt (4): INSTALL: Update description of our SHA-1 code Makefile: Add NEEDS_CRYPTO_WITH_SSL INSTALL: Reorder dependencies, split shell and Perl INSTALL: Describe dependency knobs from Makefile Clemens Buchacher (3): grep: fix exit status if external_grep() punts grep: accept relative paths outside current working directory preserve mtime of local clone Daniel Barkalow (4): Add support for external programs for handling native fetches Use an external program to implement fetching with curl Make the "traditionally-supported" URLs a special case Use a clearer style to issue commands to remote helpers Jari Aalto (1): Improve --patch option documentation in git-add Jeff King (4): Makefile: git-http-fetch does not need expat push: make non-fast-forward help message configurable status: make "how to stage" messages optional rebase: use plumbing to show dirty state Jim Meyering (3): use write_str_in_full helper to avoid literal string lengths use write_str_in_full helper to avoid literal string lengths don't dereference NULL upon fdopen failure Johannes Sixt (2): start_command: do not clobber cmd->env on Windows code path pager: set LESS=FRSX also on Windows Josh Triplett (2): Wrap rewrite globals in a struct in preparation for adding another set Add url.<base>.pushInsteadOf: URL rewriting for push only Junio C Hamano (7): Makefile: do not link three copies of git-remote-* programs Makefile: install hardlinks for git-remote-<scheme> supported by libcurl if possible merge-recursive: give less scary messages when merge did not start Makefile: remove remnant of separate http/https/ftp helpers GIT 1.6.4.3 quiltimport documentation: --dry-run and -n are synonyms GIT 1.6.5-rc1 Linus Torvalds (1): git-http-fetch: not a builtin Mark Lodato (1): svn: properly escape arguments for authors-prog Martin Nordholts (1): git.el: Use git-add-file for unmerged files, remove git-resolve-file Matthieu Moy (1): wrap git's main usage string. Mike Ralphson (2): Add transport native helper executables to .gitignore http-fetch: Fix Makefile dependancies Nicolas Sebrecht (2): mailinfo: add '--scissors' to usage message add documentation for mailinfo.scissors and '--no-scissors' Peter Krefting (2): import-tars: Allow per-tar author and commit message. Add script for importing bits-and-pieces to Git. Reilly Grant (1): git-p4: Avoid modules deprecated in Python 2.6. Tay Ray Chuan (1): http.c: remove verification of remote packs Version v1.6.5-rc0; changes since v1.6.4.5: ------------------------------------------- Adam Brewster (3): svn: Add && to t9107-git-svn-migrate.sh svn: Honor --prefix option in init without --stdlayout svn: allow branches outside of refs/remotes Adam Simpkins (3): graph API: use a new color when starting a brand new column graph API: fix bug in graph_is_interesting() Add tests for rev-list --graph with options that simplify history Alex Riesen (2): Add a reminder test case for a merge with F/D transition Add date formatting and parsing functions relative to a given time Alexandre Julliard (1): read-tree: Fix regression with creation of a new index file. André Goddard Rosa (1): Fix typos on pt_BR/gittutorial.txt translation Benjamin Kramer (1): gitweb: Optimize git-favicon.png Björn Steinbrink (1): git-describe: Die early if there are no possible descriptions Brandon Casey (9): strbuf: add new function strbuf_getwholeline() builtin-mailinfo,builtin-mailsplit: use strbufs builtin-mailsplit.c: remove read_line_with_nul() since it is no longer used block-sha1/sha1.c: silence compiler complaints by casting void * to char * git-compat-util.h: remove superfluous test for __sun__ Makefile: remove pointless conditional assignment in SunOS section abspath.c: move declaration of 'len' into inner block and use appropriate type commit.c: rename variable named 'n' which masks previous declaration t/test-lib.sh: provide a shell implementation of the 'yes' utility Brian Gianforcaro (1): Style fixes, add a space after if/for/while. Christian Couder (13): refs: add a "for_each_replace_ref" function replace_object: add mechanism to replace objects found in "refs/replace/" sha1_file: add a "read_sha1_file_repl" function object: call "check_sha1_signature" with the replacement sha1 replace_object: add a test case mktag: call "check_sha1_signature" with the replacement sha1 environment: add global variable to disable replacement Add new "git replace" command builtin-replace: teach "git replace" to actually replace parse-options: add new function "usage_msg_opt" builtin-replace: use "usage_msg_opt" to give better error messages Documentation: add documentation for "git replace" t6050: check pushing something based on a replaced commit David Aguilar (1): Add git-replace to .gitignore David Kågedal (1): git.el: Clarify documentation of git-commit-tree David Soria Parra (1): run-command.c: squelch a "use before assignment" warning Dirk Hoerner (1): git-cvsimport: add support for cvs pserver password scrambling. Eric Wong (3): svn: initial "master" points to trunk if possible svn: (cleanup) use predefined constant for rev_map_fmt svn: assume URLs from the command-line are URI-encoded Geoffrey Irving (1): git fast-export: add --no-data option Giuseppe Bilotta (3): gitweb: fix 'Use of uninitialized value' error in href() git apply: option to ignore whitespace differences gitweb: pull ref markes pull out of subject <a> element Heiko Voigt (2): cvsimport: add test illustrating a bug in cvsps cvsimport: extend testcase about patchset order to contain branches Jakub Narębski (6): gitweb: Make .error style generic gitweb: Mark boundary commits in 'blame' view gitweb: Use "previous" header of git-blame -p in 'blame' view gitweb: Mark commits with no "previous" in 'blame' view gitweb: Add author initials in 'blame' view, a la "git gui blame" gitweb: Use light/dark for class names also in 'blame' view Jari Aalto (1): git-tag(1): Refer to git-check-ref-format(1) for <name> Jeff King (14): push: add --quiet flag transport: pass "quiet" flag to pack-objects transport: don't show push status if --quiet is given tests: use "$TEST_DIRECTORY" instead of ".." tests: provide $TRASH_DIRECTORY variable tests: allow user to specify trash directory location t/Makefile: include config.mak allow pull --rebase on branch yet to be born tests: disable interactive hunk selection tests if perl is not available clone: add --branch option to select a different HEAD refactor test-date interface tests: add date printing and parsing tests fix approxidate parsing of relative months and years push: teach --quiet to suppress "Everything up-to-date" Jeff Lasslett (1): Check return value of ftruncate call in http.c Jens Lehmann (1): git submodule summary: add --files option Johan Herland (9): git submodule foreach: Provide access to submodule name, as '$name' git submodule: Cleanup usage string and add option parsing to cmd_foreach() Add selftest for 'git submodule foreach' git submodule foreach: test access to submodule name as '$name' git submodule foreach: Add --recursive to recurse into nested submodules git submodule update: Introduce --recursive to update nested submodules git submodule status: Add --recursive to recurse into nested submodules t7407: Use 'rev-parse --short' rather than bash's substring expansion notation git clone: Add --recursive to automatically checkout (nested) submodules Johannes Schindelin (2): Make 'git stash -k' a short form for 'git stash save --keep-index' parse-opt: optionally show "--no-" option string Johannes Sixt (13): MinGW: simplify waitpid() emulation macros run_command: return exit code as positive value run_command: report system call errors instead of returning error codes run_command: encode deadly signal number in the return value run_command: report failure to execute the program, but optionally don't receive-pack: remove unnecessary run_status report api-run-command.txt: describe error behavior of run_command functions t0001-init: fix a file name t0001-init: split the existence test from the permission test gitk: Do not hard-code "encoding" in attribute lookup functions Make test number t7406- unique Make test case number unique status: list unmerged files much later Junio C Hamano (31): t/t9600: remove exit after test_done Start 1.6.5 cycle request-pull: optionally show a patch as well diff-index: report unmerged new entries diff-index: keep the original index intact Allow mailsplit (and hence git-am) to handle mails with CRLF line-endings wt-status.c: rework the way changes to the index and work tree are summarized git-rev-list.txt: Clarify the use of multiple revision arguments block-sha1: undo ctx->size change block-sha1: minor fixups am: allow individual e-mail files as input status: show worktree status of conflicted paths separately verify-pack --stat-only: show histogram without verifying commit: --dry-run wt-status: move many global settings to wt_status structure wt-status: move wt_status_colors[] into wt_status structure Make git_status_config() file scope static to builtin-commit.c wt-status: collect untracked files in a separate "collect" phase Documentation/git-commit.txt: describe --dry-run git commit --dry-run -v: show diff in color when asked compat/snprintf.c: clarify SNPRINTF_SIZE_CORR builtin-mailinfo.c: fix confusing internal API to mailinfo() Teach mailinfo to ignore everything before -- >8 -- mark am/mailinfo: Disable scissors processing by default mailinfo.scissors: new configuration Draft release notes to 1.6.5 before -rc0 upload-pack: add a trigger for post-upload-pack hook upload-pack: feed "kind [clone|fetch]" to post-upload-pack hook builtin-pack-objects.c: avoid vla builtin-apply.c: get rid of an unnecessary use of temporary array GIT 1.6.5-rc0 Karthik R (1): git-svn: Use GIT_SSH setting if SVN_SSH is not set Lars Hjemli (2): Documentaqtion/git-submodule.txt: Typofix git-log: allow --decorate[=short|full] Linus Torvalds (12): Add new optimized C 'block-sha1' routines block-sha1: try to use rol/ror appropriately block-sha1: make the 'ntohl()' part of the first SHA1 loop block-sha1: re-use the temporary array as we calculate the SHA1 block-sha1: macroize the rounds a bit further block-sha1: Use '(B&C)+(D&(B^C))' instead of '(B&C)|(D&(B|C))' in round 3 block-sha1: get rid of redundant 'lenW' context block-sha1: perform register rotation using cpp block-sha1: improved SHA1 hashing block-sha1: improve code on large-register-set machines Improve on 'approxidate' Further 'approxidate' improvements Luke Diamand (1): git-p4: stream from perforce to speed up clones Mark Rada (6): gitweb: support to globally disable a snapshot format gitweb: update INSTALL regarding specific snapshot settings gitweb: add support for XZ compressed snapshots gitweb: improve snapshot error handling gitweb: split test suite into library and tests gitweb: add t9501 tests for checking HTTP status codes Matthieu Moy (6): rebase: consistent error messages for staged and unstaged changes. git-ls-files.txt: clarify what "other files" mean for --other Show usage string for 'git log -h', 'git show -h' and 'git diff -h' Rename REFRESH_SAY_CHANGED to REFRESH_IN_PORCELAIN. reset: make the reminder output consistent with "checkout" stash: simplify defaulting to "save" and reject unknown options Michael Haggerty (6): Start a library for cvsimport-related tests Use CVS's -f option if available (ignore user's ~/.cvsrc file) Test contents of entire cvsimported "master" tree contents Add some tests of git-cvsimport's handling of vendor branches Add a test of "git cvsimport"'s handling of tags and branches git-svn: ignore leading blank lines in svn:ignore Michael J Gruber (3): t6010-merge-base.sh: Depict the octopus test graph git-merge-base/git-show-branch: Cleanup documentation and usage git-merge-base/git-show-branch --merge-base: Documentation and test Michał Kiedrowicz (2): init-db: migrate to parse-options grep: Add --max-depth option. Nanako Shiraishi (3): git init: optionally allow a directory argument Documentation: consistently refer to check-ref-format Documentation: describe the scissors mark support of "git am" Nguyễn Thái Ngọc Duy (1): Prevent diff machinery from examining assume-unchanged entries on worktree Nick Edelen (1): Shift object enumeration out of upload-pack Nicolas Pitre (11): block-sha1: move code around block-sha1: split the different "hacks" to be individually selected block-sha1: support for architectures with memory alignment restrictions block-sha1: more good unaligned memory access candidates block-sha1: make the size member first in the context struct make sure byte swapping is optimal for git block-sha1: guard gcc extensions with __GNUC__ remove ARM and Mozilla SHA1 implementations fix simple deepening of a repo make shallow repository deepening more network efficient pack-objects: free preferred base memory after usage Nicolas Sebrecht (1): git-am: print fair error message when format detection fails Ori Avtalion (1): git stash: Give friendlier errors when there is nothing to apply Pascal Obry (1): Do not scramble password read from .cvspass René Scharfe (2): update-server-info: make builtin, use parseopt UI consistency: allow --force for where -f means force Stephen Boyd (7): read-tree: convert unhelpful usage()'s to helpful die()'s read-tree: migrate to parse-options write-tree: migrate to parse-options verify-tag: migrate to parse-options verify-pack: migrate to parse-options prune-packed: migrate to parse-options technical-docs: document tree-walking API Tay Ray Chuan (2): http.c: free preq when aborting http.c: replace usage of temporary variable for urls Thadeu Lima de Souza Cascardo (1): Translate the tutorial to Brazillian Portuguese Thomas Rast (11): Document 'stash clear' recovery via unreachable commits gitk: New option to hide remote refs gitk: Fix direction of symmetric difference in optimized mode gitk: Parse arbitrary commit-ish in SHA1 field git-apply--interactive: Refactor patch mode code Add a small patch-mode testing library builtin-add: refactor the meat of interactive_add() Implement 'git reset --patch' Implement 'git checkout --patch' Implement 'git stash save --patch' DWIM 'git stash save -p' for 'git stash -p' Tuomas Suutari (1): git-svn.txt: Fix location of parent argument Wesley J. Landaker (2): Documentation: git-send-email: fix submission port number Documentation: git-send-email: correct statement about standard ports Wilhansen Li (1): Add support for the Mongoose web server. Version v1.6.4.5; changes since v1.6.4.4: ----------------------------------------- Andreas Gruenbacher (3): base85 debug code: Fix length byte calculation base85: encode_85() does not use the decode table base85: Make the code more obvious instead of explaining the non-obvious Andreas Schwab (1): git count-objects: handle packs bigger than 4G Ben Walton (1): ls-files: die instead of fprintf/exit in -i error Gerrit Pape (1): help -i: properly error out if no info viewer can be found Greg Brockman (1): Check size of path buffer before writing into it Greg Price (1): commit: --cleanup is a message option Jakub Narębski (1): gitweb: Introduce esc_attr to escape attributes of HTML elements Jan Krüger (1): rebase -i: more graceful handling of invalid commands Jeff King (2): ls-files: excludes should not impact tracked files textconv: stop leaking file descriptors Jonathan Nieder (1): Documentation: describe check-ref-format --branch Junio C Hamano (5): show-branch: fix segfault when showbranch.default exists fast-import.c::validate_raw_date(): really validate the value checkout -m: do not try to fall back to --merge from an unborn branch Fix mis-backport of t7002 Git 1.6.4.5 Matt Kraai (1): grep: do not segfault when -f is used Matthieu Moy (2): push: Correctly initialize nonfastforward in transport_push. branch: die explicitly why when calling "git branch [-a|-r] branchname". Miklos Vajna (1): git-stash documentation: mention default options for 'list' Nguyễn Thái Ngọc Duy (1): t7102: make the test fail if one of its check fails Uwe Kleine-König (1): rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option Version v1.6.4.4; changes since v1.6.4.3: ----------------------------------------- Jeff King (1): checkout: do not imply "-f" on unborn branches Junio C Hamano (6): Fix "unpack-objects --strict" check_path(): allow symlinked directories to checkout-index --prefix xutils: Fix hashing an incomplete line with whitespaces at the end xutils: Fix xdl_recmatch() on incomplete lines http.c: avoid freeing an uninitialized pointer GIT 1.6.4.4 Version v1.6.4.3; changes since v1.6.4.2: ----------------------------------------- Bert Wesarg (1): githooks.txt: put hooks into subsections Clemens Buchacher (2): grep: fix exit status if external_grep() punts grep: accept relative paths outside current working directory Emmanuel Trillaud (1): git-pull: do not mention --quiet and --verbose twice Gerrit Pape (1): git-cvsserver: no longer use deprecated 'git-subcommand' commands Jeff King (3): clone: disconnect transport after fetching push: fix english in non-fast-forward message push: re-flow non-fast-forward message Junio C Hamano (1): GIT 1.6.4.3 Mark Lodato (1): svn: properly escape arguments for authors-prog Miklos Vajna (1): git-clone: add missing comma in --reference documentation Tay Ray Chuan (1): http.c: remove verification of remote packs Version v1.6.4.2; changes since v1.6.4.1: ----------------------------------------- David Kågedal (1): Minor improvement to the write-tree documentation David Reiss (1): Round-down years in "years+months" relative date view Jeff King (3): add tests for merge message headings merge: fix incorrect merge message for ambiguous tag/branch merge: indicate remote tracking branches in merge message Johannes Schindelin (2): Expose the has_non_ascii() function Correctly mark cover letters' encodings if they are not pure ASCII Johannes Sixt (1): t6035-merge-dir-to-symlink depends on SYMLINKS prerequisite Junio C Hamano (3): apply: notice creation/removal patches produced by GNU diff clean: require double -f options to nuke nested git repository and work tree GIT 1.6.4.2 Kirill Smelkov (1): git add -p: demonstrate failure when staging both mode and hunk Kjetil Barvik (1): lstat_cache: guard against full match of length of 'name' parameter Lars Hjemli (1): git-log: allow --decorate[=short|full] Linus Torvalds (1): git-checkout: be careful about untracked symlinks Nanako Shiraishi (3): git-bisect: call the found commit "*the* first bad commit" Fix overridable written with an extra 'e' Remove unused t/t8005/iso8859-5.txt Pickens, James E (1): Demonstrate bugs when a directory is replaced with a symlink Tay Ray Chuan (2): http.c: don't assume that urls don't end with slash http.c: set slot callback members to NULL when releasing object Thomas Rast (1): add -p: do not attempt to coalesce mode changes Wesley J. Landaker (1): Documentation: git-archive: mark --format as optional in summary Version v1.6.4.1; changes since v1.6.4: --------------------------------------- Björn Steinbrink (1): config: Keep inner whitespace verbatim Erik Faye-Lund (1): send-email: remove debug trace Jakub Narębski (1): gitweb/README: Document $base_url Jeff King (3): show: suppress extra newline when showing annotated tag show: add space between multiple items docs: describe impact of repack on "clone -s" Jens Lehmann (1): Documentation: git submodule: add missing options to synopsis Johan Herland (1): help.c: give correct structure's size to memset() Johannes Schindelin (1): filter-branch: add an example how to add ACKs to a range of commits Junio C Hamano (5): merge-recursive: don't segfault while handling rename clashes t5510: harden the way verify-pack is used verify-pack -v: do not report "chain length 0" am: allow individual e-mail files as input GIT 1.6.4.1 Mark Rada (1): git-instaweb: fix mod_perl detection for apache2 Matthieu Moy (3): Better usage string for reflog. push: point to 'git pull' and 'git push --force' in case of non-fast forward filter-branch: make the usage string fit on 80 chars terminals. Miklos Vajna (1): hg-to-git: don't import the unused popen2 module Nicolas Pitre (1): don't let the delta cache grow unbounded in 'git repack' Nicolas Sebrecht (1): git-am: print fair error message when format detection fails Ori Avtalion (1): Change mentions of "git programs" to "git commands" Paul Bolle (2): Documentation: merge: one <remote> is required Documentation: add: <filepattern>... is optional Santi Béjar (2): t5520-pull: Test for rebased upstream + fetch + pull --rebase pull: support rebased upstream + fetch + pull --rebase Zoltán Füzesi (1): gitweb: parse_commit_text encoding fix Štěpán Němec (1): Fix typos in git-remote.txt and git-symbolic-ref.txt Version v1.6.4; changes since v1.6.4-rc3: ----------------------------------------- David Kågedal (1): Update the documentation of the raw diff output format Elijah Newren (7): fast-export: Set revs.topo_order before calling setup_revisions fast-export: Omit tags that tag trees fast-export: Make sure we show actual ref names instead of "(null)" fast-export: Do parent rewriting to avoid dropping relevant commits fast-export: Add a --tag-of-filtered-object option for newly dangling tags Add new fast-export testcases fast-export: Document the fact that git-rev-list arguments are accepted Eric Wong (1): t9143: do not fail if Compress::Zlib is missing Greg Price (1): Fix rebase -p --onto Junio C Hamano (2): GIT 1.6.3.4 GIT 1.6.4 Michael J Gruber (1): git-rerere.txt: Clarify ambiguity of the config variable Sean Estabrooks (1): Trivial path quoting fixes in git-instaweb Stephen Boyd (1): config.txt: document add.ignore-errors Tom Grennan (1): request-pull: allow ls-remote to notice remote.$nickname.uploadpack Version v1.6.4-rc3; changes since v1.6.4-rc2: --------------------------------------------- Alex Vandiver (2): Make section_name_match start on '[', and return the length on success After renaming a section, print any trailing variable definitions Björn Steinbrink (1): Add a test showing that 'git repack' throws away grafted-away parents Daniel Trstenjak (1): Show the presence of untracked files in the bash prompt. Eric Wong (6): git svn: fix shallow clone when upstream revision is too new git svn: revert default behavior for --minimize-url git svn: the branch command no longer needs the full path t9142: stop httpd after the test git svn: avoid escaping '/' when renaming/copying files git svn: make minimize URL more reliable over http(s) Jeff King (1): send-email: detect cycles in alias expansion Johannes Schindelin (1): git repack: keep commits hidden by a graft Junio C Hamano (6): do_one_ref(): null_sha1 check is not about broken ref SunOS grep does not understand -C<n> nor -e Update release notes for 1.6.4 Fix severe breakage in "git-apply --whitespace=fix" t8005: Nobody writes Russian in shift_jis GIT 1.6.4-rc3 Linus Torvalds (3): git branch: fix performance problem git branch: avoid unnecessary object lookups git branch: clean up detached branch handling Matthias Andree (1): Fix export_marks() error handling. Nanako Shiraishi (1): Documentation/config.txt: a variable can be defined on the section header line Robert Zeh (1): git svn: add gc command Thomas Rast (1): Disable asciidoc 8.4.1+ semantics for `{plus}` and friends Version v1.6.4-rc2; changes since v1.6.4-rc1: --------------------------------------------- Brandon Casey (4): refs.c: release file descriptor on error return sha1_name.c: avoid unnecessary strbuf_release configure.ac: rework/fix the NEEDS_RESOLV and NEEDS_LIBGEN tests configure.ac: properly unset NEEDS_SSL_WITH_CRYPTO when sha1 func is missing Eric Wong (2): git svn: rename tests that had conflicting numbers git svn: fix reparenting when ugly http(s) URLs are used Junio C Hamano (5): checkout -f: deal with a D/F conflict entry correctly push: do not give big warning when no preference is configured Updates to draft release notes to 1.6.4 combine-diff.c: fix performance problem when folding common deleted lines diff --cc: a lost line at the beginning of the file is shown incorrectly Martin Koegler (1): git stash: modernize use of "dashed" git-XXX calls Michael J Gruber (1): t4202-log.sh: Test git log --no-walk sort order Mike Ralphson (1): cvsexportcommit: reorder tests to quiet intermittent failure Pierre Habouzit (4): janitor: use NULL and not 0 for pointers. refactor: use bitsizeof() instead of 8 * sizeof() janitor: add DIV_ROUND_UP and use it. janitor: useless checks before free SZEDER Gábor (1): Trailing whitespace and no newline fix Yann Dirson (2): List send-email config options in config.txt. Improve doc for format-patch threading options. Version v1.6.4-rc1; changes since v1.6.4-rc0: --------------------------------------------- Andreas Ericsson (1): mailinfo: Remove only one set of square brackets Brandon Casey (5): unpack-trees.c: work around run-time array initialization flaw on IRIX 6.5 git-compat-util.h: adjust for SGI IRIX 6.5 Makefile: add NEEDS_LIBGEN to optionally add -lgen to compile arguments Makefile: add section for SGI IRIX 6.5 Makefile: update IRIX64 section Eric Wong (1): git svn: allow uppercase UUIDs from SVN Johan Herland (1): quickfetch(): Prevent overflow of the rev-list command line Junio C Hamano (2): Makefile: keep "git" when bindir is execdir Revert "mailinfo: Remove only one set of square brackets" Linus Torvalds (10): Add 'fill_directory()' helper function for directory traversal Simplify read_directory[_recursive]() arguments Avoid doing extra 'lstat()'s for d_type if we have an up-to-date cache entry Avoid using 'lstat()' to figure out directories Prepare symlink caching for thread-safety Export thread-safe version of 'has_symlink_leading_path()' Make index preloading check the whole path to the file Make 'git show' more useful Improve on the 'invalid object' error message at commit time Fix extraneous lstat's in 'git checkout -f' Mattias Nissler (2): git-svn: Always duplicate paths returned from get_log git-svn: Fix branch detection when repository root is inaccessible SZEDER Gábor (2): Document 'git (rev-list|log) --merges' bash: add '--merges' to common 'git log' options Wincent Colaiuta (1): gitweb: update Git homepage URL Version v1.6.4-rc0; changes since v1.6.3.4: ------------------------------------------- Alex Bennée (1): Add -k option to cvsexportcommit to revert expanded CVS keywords in CVS working tree before applying commit patch Alex Riesen (3): Quote LF in urls git fetch saves in FETCH_HEAD Use UTF-8 instead of utf8 for backward compatibility Improve the naming of guessed target repository for git clone Alex Vandiver (3): git-svn: Fix for svn paths removed > log-window-size revisions ago git-svn: Correctly report max revision when following deleted paths git-svn: Set svn.authorsfile if it is passed to git svn clone Allan Caffee (1): graph API: Use horizontal lines for more compact graphs Andreas Ericsson (1): fetch: Strip usernames from url's before storing them Ben Jackson (3): Add 'git svn help [cmd]' which works outside a repo. git-svn: speed up find_rev_before Add 'git svn reset' to unwind 'git svn fetch' Benjamin Kramer (1): imap-send: add support for IPv6 Bert Wesarg (1): builtin-remote: (get_one_entry): use strbuf Björn Steinbrink (1): git-apply(1): Clarify that one can select where to apply the patch Brandon Casey (23): t3900: use ancient iconv names for backward compatibility Use 'UTF-8' rather than 'utf-8' everywhere for backward compatibility builtin-mailinfo.c: compare character encodings case insensitively builtin-mailinfo.c: use "ISO8859-1" instead of "latin1" as fallback encoding t3901: avoid negation on right hand side of '|' t3901: Use ISO8859-1 instead of ISO-8859-1 for backward compatibility t9301: use ISO8859-1 rather than ISO-8859-1 t5100: use ancient encoding syntax for backwards compatibility t8005: use more portable character encoding names t8005: convert CP1251 character set to ISO8859-5 t8005: fix typo, it's ISO-8859-5, not KOI8-R Makefile: use /usr/ucb/install on SunOS platforms rather than ginstall Makefile: add NEEDS_RESOLV to optionally add -lresolv to compile arguments On Solaris choose the OLD_ICONV iconv() declaration based on the UNIX spec git-compat-util.h: tweak the way _XOPEN_SOURCE is set on Solaris Makefile: define __sun__ on SunOS Makefile: add section for SunOS 5.7 git-compat-util.h: avoid using c99 flex array feature with Sun compiler 5.8 git-send-email.perl: improve detection of MIME encoded-words send-email: use UTF-8 rather than utf-8 for consistency Makefile: Solaris needs HAVE_ALLOCA_H for alloca() t/t9001-send-email.sh: ensure generated script is executed with $SHELL_PATH git.c: avoid allocating one-too-many elements for new argv array Christian Couder (30): rev-list: make "estimate_bisect_steps" non static rev-list: refactor printing bisect vars bisect: move common bisect functionality to "bisect_common" bisect--helper: add "--next-exit" to output bisect results bisect: use "git bisect--helper --next-exit" in "git-bisect.sh" bisect--helper: remove "--next-vars" option as it is now useless rev-list: remove stringed output flag from "show_bisect_vars" rev-parse: add --sq-quote to shell quote arguments bisect: use "git rev-parse --sq-quote" instead of a custom "sq" function am: simplify "sq" function by using "git rev-parse --sq-quote" bisect: use "sha1_array" to store skipped revisions bisect: implement "rev_argv_push" to fill an argv with revs bisect: store good revisions in a "sha1_array" bisect: use new "struct argv_array" to prepare argv for "setup_revisions" bisect: remove too much function nesting bisect: make skipped array functions more generic bisect: automatically sort sha1_array if needed when looking it up bisect: implement the "check_merge_bases" function bisect: add "check_good_are_ancestors_of_bad" function bisect: make "git bisect" use new "--next-all" bisect-helper function bisect: rework some rev related functions to make them more reusable commit: add function to unparse a commit and its parents bisect: check ancestors without forking a "git rev-list" process bisect: drop unparse_commit() and use clear_commit_marks() bisect: display first bad commit without forking a new process bisect: add parameters to "filter_skipped" bisect: when skipping, choose a commit away from a skipped commit t6030: test skipping away from an already skipped commit bisect: use a PRNG with a bias when skipping away from untestable commits Documentation: remove warning saying that "git bisect skip" may slow bisection Christian Stimming (1): gitk: Update German translation. Clemens Buchacher (5): http-push: reuse existing is_null_ref match_refs: search ref list tail internally test-lib: fail if invalid options are passed test-lib: allow exit trap to be used for cleanup by tests test-lib: fix http exit codes Dan McGee (1): Unify signedness in hashing calls Daniel Trstenjak (1): Show presence of stashed changes in bash prompt. David Aguilar (5): mergetool--lib: specialize diff options for emerge and ecmerge mergetool--lib: add support for araxis merge compat: add a mkstemps() compatibility function compat: add a basename() compatibility function diff: generate pretty filenames in prep_temp_blob() Dirk Süsserott (1): gitk: Add option 'Simple history' to the options menu Edward Z. Yang (1): connect.c: Support PuTTY plink and TortoisePlink as SSH on Windows Elijah Newren (1): gitk: Make more options easily accessible from Edit View dialog Eric W. Biederman (1): git-send-email: Handle quotes when parsing .mailrc files Eric Wong (4): git-svn: refuse to dcommit non-UTF-8 messages git-svn: convert globs to regexps for branch destinations t9138: remove stray dot in test which broke bash Allow the Unix epoch to be a valid commit date Eygene Ryabinkin (1): git-svn testsuite: use standard configuration for Subversion tools Felipe Contreras (2): Change prettify_ref to prettify_refname Prettify log decorations even more Frank Lichtenheld (2): Git.pm: Set GIT_WORK_TREE if we set GIT_DIR Git.pm: Always set Repository to absolute path if autodetecting Giuseppe Bilotta (11): git-am foreign patch support: introduce patch_format git-am foreign patch support: autodetect some patch formats git-am foreign patch support: StGIT support git-am: refactor 'cleaning up and aborting' gitweb: refactor author name insertion gitweb: uniform author info for commit and commitdiff gitweb: use git_print_authorship_rows in 'tag' view too gitweb: (gr)avatar support gitweb: gravatar url cache gitweb: picon avatar provider gitweb: add empty alt text to avatar img Heiko Voigt (2): Extend sample update hook, disable modifying of existing tags Extend sample pre-commit hook to check for non ascii filenames Hunter, D. Seth (1): http-push: fix xml_entities() string parsing overrun Jakub Narębski (10): gitweb: Remove function prototypes (cleanup) gitweb: Do not use bareword filehandles gitweb: Always use three argument form of open gitweb: Always use three argument form of open gitweb: Use block form of map/grep in a few cases more gitweb: Replace wrongly added tabs with spaces gitweb: Use capturing parentheses only when you intend to capture gitweb: Simplify snapshot format detection logic in evaluate_path_info gitweb: Remove unused $hash_base parameter from normalize_link_target gitweb: Sanitize title attribute in format_subject_html Jeff King (7): parseopt: add OPT_NEGBIT convert bare readlink to strbuf_readlink git-add: no need for -f when resolving a conflict in already tracked path Makefile: refactor regex compat support Makefile: use compat regex on Solaris log-tree: fix confusing comment Makefile: install 'git' in execdir Jim Meyering (2): post-receive-email: hooks.showrev: show how to include both web link and patch avoid NULL dereference on failed malloc Johan Herland (2): Rename submodule.<name>.rebase to submodule.<name>.update git-submodule: add support for --merge. Johannes Schindelin (12): git-add: introduce --edit (to edit the diff vs. the index) t3702: fix reliance on SHELL_PATH being '/bin/sh' MinGW: the path separator to split GITPERLLIB is ';' on Win32 MinGW: use POSIX signature of waitpid() MinGW: Add a simple getpass() MinGW: Fix compiler warning in merge-recursive MinGW: GCC >= 4 does not need SNPRINTF_SIZE_CORR anymore Quiet make: do not leave Windows behind Work around a regression in Windows 7, causing erase_in_line() to crash sometimes test-chmtime: work around Windows limitation MinGW: fix warning about implicit declaration of _getch() Fix warnings in nedmalloc when compiling with GCC 4.4.0 Johannes Sixt (10): gitk: Use --textconv to generate diff text Simplify some instances of run_command() by using run_command_v_opt(). Simplify some 'fprintf(stderr); return -1;' by using 'return error()' Fix typo in nedmalloc warning fix compat/ has subdirectories: do not omit them in 'make clean' daemon: send stderr of service programs to the syslog upload-pack: squelch progress indicator if client cannot see it receive-pack: do not send error details to the client git-mv: fix directory separator treatment on Windows MinGW: truncate exit()'s argument to lowest 8 bits Josh Micich (3): mktree --missing: updated usage message and man page mktree --batch: build more than one tree object mktree: validate entry type in input Junio C Hamano (22): Start 1.6.4 development build-in git-mktree mktree: use parse-options builtin-mktree.c: use a helper function to handle one line of input mktree: do not barf on a submodule commit t1010: add mktree test mktree --missing: allow missing objects t3900: ISO-2022-JP has more than one popular variants write-tree --ignore-cache-tree Teach Solaris that _XOPEN_SOURCE=600 really menas XPG6 OpenSolaris 200811 (SunOS 5.11) does not want OLD_ICONV cache-tree.c::cache_tree_find(): simplify internal API t4007: modernize the style Optimize "diff-index --cached" using cache-tree Avoid "diff-index --cached" optimization under --find-copies-harder Update draft release notes to 1.6.4 completion: fix PS1 display during an AM on detached HEAD Documentation/git.txt: update links to release notes Makefile: introduce SANE_TOOL_PATH for prepending required elements to PATH Makefile: test-parse-options depends on parse-options.h Makefile: insert SANE_TOOL_PATH to PATH before /bin or /usr/bin die_errno(): double % in strerror() output just in case Kjetil Barvik (1): symlinks.c: small style cleanup Larry D'Anna (1): add --porcelain option to git-push Linus Torvalds (3): Clean up and simplify rev_compare_tree() Fix various sparse warnings in the git source code git log: add '--merges' flag to match '--no-merges' Marc Branchaud (3): git svn: Support multiple branch and tag paths in the svn repository. git svn: cleanup t9138-multiple-branches git svn: Doc update for multiple branch and tag paths Marius Storm-Olsen (2): MinGW readdir reimplementation to support d_type Add custom memory allocator to MinGW and MacOS builds Mark Lodato (3): git-svn: add --authors-prog option http.c: prompt for SSL client certificate password http.c: add http.sslCertPasswordProtected option Markus Heidelberg (10): show-branch: color the commit status signs bash completion: show-branch color support diff: do not color --stat output like patch context gitk: Allow diff view without context lines add a test for git-send-email for non-threaded mails send-email: fix non-threaded mails doc/send-email: clarify the behavior of --in-reply-to with --no-thread add a test for git-send-email for threaded mails without chain-reply-to send-email: fix threaded mails without chain-reply-to send-email: fix a typo in a comment Martin Renold (1): Remove filename from conflict markers Michael J Gruber (9): Documentation: clarify / requirement in 'git check-ref-format' Test tracking of non-commit upstreams Fix behavior with non-commit upstream references Allow push and fetch urls to be different t5516: Check pushurl config setting technical/api-remote: Describe new struct remote member pushurl git-repack.txt: Clarify implications of -a for dumb protocols builtin-remote: Show push urls as well builtin-remote: Make "remote -v" display push urls Michael S. Tsirkin (1): Add --reference option to git submodule. Michael Witten (6): Docs: send-email: Put options back into alphabetical order Docs: send-email: Refer to CONFIGURATION section for sendemail.multiedit Docs: send-email: --smtp-server-port can take symbolic ports send-email: Handle "GIT:" rather than "GIT: " during --compose send-email: 'References:' should only reference what is sent send-email: Remove superfluous `my $editor = ...' Michal Marek (1): apply: handle filenames with double slashes better Michele Ballabio (1): gitk: Add another string to translation Mike Hommey (7): Don't expect verify_pack() callers to set pack_size transport.c::get_refs_via_curl(): do not leak refs_url http.c: new functions for the http API transport.c::get_refs_via_curl(): use the new http API http.c::http_fetch_ref(): use the new http API http-push.c::remote_exists(): use the new http API http-push.c::fetch_symref(): use the new http API Nguyễn Thái Ngọc Duy (3): doc/git-rebase.txt: remove mention of multiple strategies Terminate argv with NULL before calling setup_revisions() t/t3400-rebase.sh: add more tests to help migrating git-rebase.sh to C Nick Edelen (1): diff-tree -r -t: include added/removed directories in the output Nick Stokoe (3): git-cvsexportcommit can't commit files which have been removed from CVS Remove archaic use of regex capture \1 in favour of $1 Avoid generating a warning if $fullname{$file} is undefined Paolo Bonzini (1): Test cccmd in t9001-send-email.sh and fix some bugs Pat Thoyts (2): gitk: Handle msysGit version during version comparisons git: browsing paths with spaces when using the start command Paul Mackerras (1): gitk: Check git version before using --textconv flag Peter Harris (1): MinGW: Scan for \r in addition to \n when reading shbang lines Peter Hutterer (1): git-submodule: add support for --rebase. Pierre Habouzit (1): parse-options: add parse_options_check to validate option specs. Ralf Wildenhues (1): configure: test whether -lresolv is needed René Scharfe (13): parseopt: add OPT_NEGBIT parseopt: add OPT_NUMBER_CALLBACK parseopt: add PARSE_OPT_NODASH grep: remove global variable builtin_grep grep: use parseopt grep: make callback functions static userdiff: add xdiff_clear_find_func() grep: move context hunk mark handling into show_line() grep: print context hunk marks between files grep: handle pre context lines on demand grep: add option -p/--show-function grep -p: support user defined regular expressions grep: simplify -p output Robin Rosenberg (1): Disallow '\' in ref names SZEDER Gábor (3): bash: remove always true if statement from __git_ps1() Documentation: mention 'git stash pop --index' option explicitly bash: add support for 'git stash pop --index' option Santi Béjar (3): parse-remote: function to get the tracking branch to be merge parse-remote: support default reflist in get_remote_merge_branch parse-remote: remove unused functions Sitaram Chamarty (1): allow -t abbreviation for --track in git branch Steffen Prohaska (1): MinGW: Teach Makefile to detect msysgit and apply specific settings Stephen Boyd (22): bash completion: complete variable names for "git config" with options format-patch: migrate to parse-options API parse-options: add PARSE_OPT_LITERAL_ARGHELP for complicated argh's show-branch: migrate to parse-options API parse-opts: prepare for OPT_FILENAME parse-opts: add OPT_FILENAME and transition builtins t5500: Modernize test style t9120: don't expect failure with SVN_HTTPD_PORT unset config.txt: document add.ignore-errors git-show-branch.txt: document --date-order option parse-options: make OPT_INTEGER's argh explicit parse-options: simplify usage argh handling show-branch: don't use LASTARG_DEFAULT with OPTARG t4150: test applying with a newline in subject am: suppress apply errors when using 3-way git-sh-setup: introduce say() for quiet options submodule, repack: migrate to git-sh-setup's say() am, rebase: teach quiet option stash: teach quiet option show-ref: migrate to parse-options completion: add missing config variables completion: __git_config_get_set_variables() handle values with spaces Tay Ray Chuan (15): t5540-http-push: test fetching of loose objects t5540-http-push: test fetching of packed objects http-push: send out fetch requests on queue http-push: fix missing "#ifdef USE_CURL_MULTI" around "is_running_queue" t5550-http-fetch: test fetching of packed objects http-push, http-walker: style fixes http-walker: verify remote packs http*: copy string returned by sha1_to_hex http-push: do not SEGV after fetching a bad pack idx file http*: move common variables and macros to http.[ch] http: create function end_url_with_slash http*: add http_get_info_packs http: use new http API in fetch_index() http*: add helper methods for fetching packs http*: add helper methods for fetching objects (loose) Thomas Rast (5): Documentation: teach stash/pop workflow instead of stash/apply git-svn: let 'dcommit $rev' work on $rev instead of HEAD Introduce die_errno() that appends strerror(errno) to die() Convert existing die(..., strerror(errno)) to die_errno() Use die_errno() instead of die() when checking syscalls Todd Zullinger (1): completion: Add --full-diff to log options Trent Piepho (1): send-email: Add config option for sender address Ulrich Dangel (1): git-svn: Canonicalize svn urls to prevent libsvn assertion Uwe Kleine-König (2): more tests for git rev-parse --parse-opt parse-opt: make PARSE_OPT_STOP_AT_NON_OPTION available to git rev-parse Yann Dirson (4): git-svn.txt: stop using dash-form of commands. git-svn.txt: make formatting more consistent. git-svn.txt: fix fetch flags incorrectly documented as init flags. git-svn.txt: fix description of fetch flags accepted by clone. Version v1.6.3.4; changes since v1.6.3.3: ----------------------------------------- Brandon Casey (2): refs.c: release file descriptor on error return sha1_name.c: avoid unnecessary strbuf_release Chris Frey (1): git-remote: fix missing .uploadpack usage for show command Clemens Buchacher (1): fetch: do not create ref from empty name Giuseppe Bilotta (1): gitweb/README: fix AliasMatch in example Johannes Sixt (2): t3700-add: add a POSIXPERM prerequisite to a new test Makefile: git.o depends on library headers Junio C Hamano (9): request-pull: really disable pager checkout -f: deal with a D/F conflict entry correctly combine-diff.c: fix performance problem when folding common deleted lines diff --cc: a lost line at the beginning of the file is shown incorrectly do_one_ref(): null_sha1 check is not about broken ref SunOS grep does not understand -C<n> nor -e Fix severe breakage in "git-apply --whitespace=fix" t8005: Nobody writes Russian in shift_jis GIT 1.6.3.4 Linus Torvalds (3): git branch: fix performance problem git branch: avoid unnecessary object lookups git branch: clean up detached branch handling Matthias Andree (1): Fix export_marks() error handling. Michal Marek (1): request-pull: really really disable pager Miklos Vajna (1): git-submodule documentation: fix foreach example René Scharfe (1): attr: plug minor memory leak Roel Kluin (1): fread does not return negative on error SZEDER Gábor (1): Trailing whitespace and no newline fix Sitaram Chamarty (1): Documentation: update description of shell aliases Stephen Boyd (2): add: allow configurations to be overriden by command line config.txt: document add.ignore-errors Thadeu Lima de Souza Cascardo (1): Makes some cleanup/review in gittutorial Thomas Rast (2): Test git archive --remote Test grep --and/--or/--not Tom Grennan (1): request-pull: allow ls-remote to notice remote.$nickname.uploadpack Version v1.6.3.3; changes since v1.6.3.2: ----------------------------------------- Anders Kaseorg (1): for-each-ref: Do not lookup objects when they will not be used Clemens Buchacher (1): refuse to merge during a merge Jim Meyering (1): use xstrdup, not strdup in ll-merge.c Johannes Schindelin (1): import-tars: support symlinks Johannes Sixt (2): fetch-pack: close output channel after sideband demultiplexer terminates diff.c: plug a memory leak in an error path Junio C Hamano (3): t3505: fix abuse of test_expect_code attribute: whitespace set to true detects all errors known to git GIT 1.6.3.3 Linus Torvalds (1): Fix big left-shifts of unsigned char Marco Nelissen (1): fix handling of iconv configuration options Mark Lodato (1): http.c: fix compiling with libcurl 7.9.2 Michael J Gruber (1): builtin-remote: Make "remote show" display all urls Miklos Vajna (1): git-svn documentation: fix typo in 'rebase vs. pull/merge' section Nanako Shiraishi (1): .gitattributes: CR at the end of the line is an error Paolo Bonzini (2): Documentation: git-send-mail can take rev-list arg to drive format-patch avoid exponential regex match for java and objc function names René Scharfe (1): upload-archive: fix infinite loop on Cygwin Shawn O. Pearce (1): daemon: Strictly parse the "extra arg" part of the command Stephen Boyd (3): git-rerere.txt: grammatical fixups and cleanups pull, rebase: simplify to use die() git-show-ref.txt: remove word and make consistent Tay Ray Chuan (1): http*: cleanup slot->local after fclose Thomas Rast (1): Documentation: refer to gitworkflows(7) from tutorial and git(1) Uwe Kleine-König (1): rebase--interactive: remote stray closing parenthesis Version v1.6.3.2; changes since v1.6.3.1: ----------------------------------------- Alex Riesen (7): Introduce an unlink(2) wrapper which gives warning if unlink failed replace direct calls to unlink(2) with unlink_or_warn print unlink(2) errno in copy_or_link_directory Clarify kind of conflict in merge-one-file helper ls-tree manpage: use "unless" instead of "when ... is not" ls-tree manpage: output of ls-tree is compatible with update-index http-push.c::remove_locks(): fix use after free Charles Bailey (2): t6023: merge-file fails to output anything for a degenerate merge Change xdl_merge to generate output even for null merges Clemens Buchacher (1): fix segfault showing an empty remote Dan McGee (1): Fix type-punning issues Daniel Cordero (1): builtin-checkout: Don't tell user that HEAD has moved before it has Dave Olszewski (1): merge-recursive: never leave index unmerged while recursing Giuseppe Bilotta (1): completion: use git rev-parse to detect bare repos Jeff King (6): fix GIT_TRACE segfault with shell-quoted aliases add: don't complain when adding empty project root for-each-ref: fix segfault in copy_email lock_ref: inform callers of unavailable ref fetch: report ref storage DF errors more accurately fix cat-file usage message and documentation Jim Meyering (2): format-patch let -k override a config-specified format.numbered pre-commit.sample: don't print incidental SHA1 Johannes Schindelin (2): Add NO_CROSS_DIRECTORY_HARDLINKS support to the Makefile Cope better with a _lot_ of packs Johannes Sixt (1): t3701: ensure correctly set up repository after skipped tests Junio C Hamano (8): Revert "git-add--interactive: remove hunk coalescing" completion: fix PS1 display during a merge on detached HEAD completion: simplify "current branch" in __git_ps1() completion: enhance "current branch" display Prepare for 1.6.3.2 Update draft release notes for 1.6.3.2 blame: correctly handle a path that used to be a directory GIT 1.6.3.2 Linus Torvalds (3): Avoid unnecessary 'lstat()' calls in 'get_stat_data()' Teach 'git checkout' to preload the index contents dir.c: clean up handling of 'path' parameter in read_directory_recursive() Matt Graham (1): Splitting a hunk that adds a line at the top fails in "add -p" Michael J Gruber (1): merge-options.txt: Clarify merge --squash Nanako Shiraishi (1): test: checkout shouldn't say that HEAD has moved if it didn't Nicolas Pitre (1): allow OFS_DELTA objects during a push René Scharfe (4): grep: fix word-regexp colouring grep: fix word-regexp at the beginning of lines grep: fix colouring of matches with zero length grep: fix empty word-regexp matches Stephen Boyd (6): api-parse-options.txt: use 'func' instead of 'funct' tests: Add tests for missing format-patch long options completion: add missing options to show-branch and show show-branch: Fix die message in parse_reflog_param() commit: -F overrides -t apply, fmt-merge-msg: use relative filenames Thomas Rast (2): Documentation: teach stash/pop workflow instead of stash/apply add -i: do not dump patch during application Tony Kemp (1): Turn on USE_ST_TIMESPEC for OpenBSD Version v1.6.3.1; changes since v1.6.3: --------------------------------------- Alex Riesen (1): Clarify kind of conflict in merge-one-file helper Alexander Potashev (1): Documentation: cloning to empty directory is allowed Felipe Contreras (1): git config: clarify --add and --get-color Junio C Hamano (4): Start 1.6.3.1 maintenance series. archive-tar.c: squelch a type mismatch warning Revert "checkout branch: prime cache-tree fully" GIT 1.6.3.1 Version v1.6.3; changes since v1.6.3-rc4: ----------------------------------------- Alex Riesen (1): improve error message in config.c Allan Caffee (1): dir.c: Fix two minor grammatical errors in comments Bernd Ahlers (1): Work around BSD whose typeof(tv.tv_sec) != time_t Brandon Casey (7): t4018-diff-funcname: add cpp xfuncname pattern to syntax test t8005: use egrep when extended regular expressions are required t4118: add missing '&&' t4118: avoid sed invocation on file without terminating newline t/annotate-tests.sh: avoid passing a non-newline terminated file to sed t4200: remove two unnecessary lines t4200: convert sed expression which operates on non-text file to perl Junio C Hamano (4): GIT 1.6.1.4 GIT 1.6.2.5 git-clean doc: the command only affects paths under $(cwd) GIT 1.6.3 Nguyễn Thái Ngọc Duy (1): t4029: use sh instead of bash Nicolas Pitre (1): honor repack.usedeltabaseoffset when fetching packs Robin H. Johnson (1): git-svn: fix a sloppy Getopt::Long usage Stephen Boyd (8): completion: add missing configuration variables to _git_config() completion: add {gui,diff,merge}tool, man, and pager config variables completion: complete values for help.format completion: complete values for log.date completion: complete values for send-email git-am.txt: add an 'a', say what 'it' is, simplify a sentence git-am.txt: Use date or value instead of time or timestamp git-am.txt: reword extra headers in message body Version v1.6.3-rc4; changes since v1.6.3-rc3: --------------------------------------------- Alex Riesen (3): git-gui: Update Russian translation improve error message in config.c gitk: Add Russian translation Alexander Gavrilov (3): git-gui: Fix post-commit status with subject in non-locale encoding git-gui: Avoid an infinite rescan loop in handle_empty_diff. git-gui: Support more git version notations. Allan Caffee (2): builtin-merge: fix a typo in an error message Documentation: fix a grammatical error in api-builtin.txt Benjamin Kramer (1): daemon.c: fix segfault on OS X Christian Stimming (1): gitk: Mark forgotten string for translation Daniel A. Steffen (2): gitk: Fixes for Mac OS X TkAqua git-gui: Fixes for Mac OS X TkAqua Eric Blake (2): Makefile: installing git in cygwin 1.7.0 doc: consistently use ASCIIDOC_EXTRA Felipe Contreras (2): git config: error when editing a repo config and not being in one Fix a bunch of pointer declarations (codestyle) Ferry Huberts (1): git-gui: Ensure consistent usage of mergetool.keepBackup Giuseppe Bilotta (1): gitk: Provide a window icon if possible Jeff King (1): Makefile: fix NO_PERL bug with gitweb Jens Lehmann (4): git-gui: Fix merge conflict display error when filename contains spaces git-gui: When calling post-commit hook wrong variable was cleared. git-gui: run post-checkout hook on checkout git-gui: run post-checkout hook after clone Joerg Bornemann (1): git-gui: fix use of undeclared variable diff_empty_count Johannes Schindelin (2): t5701: do not get stuck in empty-push/ Rename core.unreliableHardlinks to core.createObject Johannes Sixt (1): prune-packed: advanced progress even for non-existing fan-out directories Junio C Hamano (3): diff -c -p: do not die on submodules merge-recursive: do not die on a conflicting submodule GIT 1.6.3-rc4 Linus Torvalds (1): grep: fix segfault when "git grep '('" is given Mark Drago (1): Add semicolon to curly brace group in main Makefile Markus Heidelberg (5): git-gui: don't hide the Browse button when resizing the repo chooser git-gui: fix deleting from the context menu with empty selection git-gui: use `git --html-path` to get the location of installed HTML docs git-gui (Win): make "Explore Working Copy" more robust git-gui (Win): make starting via "Git GUI Here" on .git/ possible Michele Ballabio (2): gitk: Mark some more strings for translation gitk: Map KP_Divide to focus the search box Pat Thoyts (4): gitk: Handle blobs containing a DOS end-of-file marker gitk: Remember and restore the window state with the geometry gitk: Handle external diff tool with spaces in the path gitk: Avoid crash if closed while reading references Patrick Welche (1): NetBSD compilation fix Paul Mackerras (4): gitk: Add a way to mark a commit, plus a "find descendant" command gitk: Add a command to compare two strings of commits gitk: Make .gitk a hidden file under windows gitk: Fix compare-commits function when we have local changes Phil Lawrence (1): Append ampersand to "Target" of lnk files created by do_cygwin_shortcut René Scharfe (1): ctype.c: fix typo in comment Sam Hocevar (2): git-gui: various French translation fixes git-gui: minor spelling fix and string factorisation. Sam Vilain (1): SubmittingPatches: itemize and reflect upon well written changes Stephen Boyd (1): gitk: Provide a 32x32 window icon based on the git logo Uwe Kleine-König (1): parseopt: fix documentation for --keep-dashdash Version v1.6.3-rc3; changes since v1.6.3-rc2: --------------------------------------------- Benjamin Kramer (1): connect: replace inet_ntop with getnameinfo Brandon Casey (2): t9001: use older Getopt::Long boolean prefix '--no' rather than '--no-' t7700-repack: repack -a now works properly, expect success from test Johannes Schindelin (1): Add an option not to use link(src, dest) && unlink(src) when that is unreliable Linus Torvalds (1): t4202: fix typo Nicolas Pitre (1): progress bar: round to the nearest instead of truncating down Sitaram Chamarty (1): Remove obsolete bug warning in man git-update-server-info Wesley J. Landaker (2): Documentation: git-clean: fix minor grammatical errors Documentation: git-clean: make description more readable Version v1.6.3-rc2; changes since v1.6.3-rc1: --------------------------------------------- Alex Riesen (2): Wait for git diff to finish in git difftool Explain seemingly pointless use of system in difftool Allan Caffee (3): t4202-log: extend test coverage of graphing graph API: fix extra space during pre_commit_line state graph API: fix a bug in the rendering of octopus merges Ben Jackson (1): Work around ash "alternate value" expansion bug Bill Pemberton (1): Add parsing of elm aliases to git-send-email Dan Loewenherz (1): Convert to use quiet option when available Erik Faye-Lund (4): test-suite: adding a test for fast-export with tag variants builtin-fast-export.c: turn error into warning builtin-fast-export.c: fix crash on tagged trees builtin-fast-export.c: handle nested tags Frank Lichtenheld (1): gitcvs-migration: Link to git-cvsimport documentation Holger Weiß (1): gitweb: Fix snapshots requested via PATH_INFO Jeff King (2): add-interactive: refactor mode hunk handling t7800: respect NO_PERL Johan Herland (1): Update docs on behaviour of 'core.sharedRepository' and 'git init --shared' Johannes Schindelin (1): Fix off-by-one in read_tree_recursive Johannes Sixt (4): Windows: Work around intermittent failures in mingw_rename Windows: Skip fstat/lstat optimization in write_entry() builtin-help: silently tolerate unknown keys remote.c: do not trigger remote.<name>.<var> codepath for two-level names Junio C Hamano (9): Speed up reflog pruning of unreachable commits GIT 1.6.2.4 read-tree A B: do not corrupt cache-tree Move prime_cache_tree() to cache-tree.c read-tree -m A B: prime cache-tree from the switched-to tree checkout branch: prime cache-tree fully Revert "stat_tracking_info(): only count real commits" Makefile: ignore perl/ subdirectory under NO_PERL GIT 1.6.3-rc2 Linus Torvalds (1): Clean up reflog unreachability pruning decision Markus Heidelberg (1): grep: don't support "grep.color"-like config options Matthieu Moy (3): git add -p: new "quit" command at the prompt. Update git-add.txt according to the new possibilities of 'git add -p'. clone: add test for push on an empty clone. Michael J Gruber (2): test-lib.sh: Help test_create_repo() find the templates dir Fix more typos/spelling in comments Michał Kiedrowicz (3): tests: test applying criss-cross rename patch builtin-apply: keep information about files to be deleted tests: make test-apply-criss-cross-rename more robust Mike Ralphson (3): builtin-remote: fix typo in option description Documentation: fix typos / spelling mistakes Fix typos / spelling in comments Nguyễn Thái Ngọc Duy (1): Makefile: remove {fetch,send}-pack from PROGRAMS as they are builtins Stephen Boyd (8): test-genrandom: Add newline to usage string config.txt: add missing format.{subjectprefix,cc,attach} variables Documentation: use lowercase for shallow and deep threading git-show-branch.txt: cleanup example description git-format-patch.txt: general rewordings and cleanups config.txt: add missing 'the's and make words plural config.txt: clarify sentences in the configuration and syntax sections config.txt: Make configuration paragraph more consistent Wesley J. Landaker (2): Documentation: git-svn: fix spurious bolding that mangles the output Documentation: git-svn: fix a grammatical error without awkwardness Wincent Colaiuta (1): git add -p: add missing "q" to patch prompt Version v1.6.3-rc1; changes since v1.6.3-rc0: --------------------------------------------- Allan Caffee (1): graph API: Added logic for colored edges Bert Wesarg (3): shorten_unambiguous_ref(): add strict mode for-each-ref: utilize core.warnAmbiguousRefs for :short-format rev-parse: --abbrev-ref option to shorten ref name David Aguilar (11): difftool: remove merge options for opendiff, tkdiff, kdiff3 and xxdiff difftool: remove the backup file feature difftool: use perl built-ins when testing for msys difftool: add a -y shortcut for --no-prompt difftool: move 'git-difftool' out of contrib difftool: add various git-difftool tests difftool: add support for a difftool.prompt config variable bash completion: add git-difftool mergetool: use $( ... ) instead of `backticks` difftool/mergetool: refactor commands to use git-mergetool--lib mergetool--lib: simplify API usage by removing more global variables Erik Broes (1): git-shell: Add 'git-upload-archive' to allowed commands. Ferry Huberts (1): Fix misspelled mergetool.keepBackup Frank Lichtenheld (1): init: Do not segfault on big GIT_TEMPLATE_DIR environment variable Jeff King (7): doc: clarify --no-track option doc: refer to tracking configuration as "upstream" doc/checkout: refer to git-branch(1) as appropriate doc/checkout: split checkout and branch creation in synopsis docs/checkout: clarify what "non-branch" means add-interactive: refactor mode hunk handling doc/gitattributes: clarify location of config text Johannes Sixt (1): t1301-shared-repo: fix forced modes test Junio C Hamano (4): gitignore git-bisect--helper unpack-trees: do not muck with attributes when we are not checking out Describe fixes since 1.6.2.3 Update draft release notes to 1.6.3 Linus Torvalds (3): Allow users to un-configure rename detection process_{tree,blob}: show objects without buffering show_object(): push path_name() call further down Markus Heidelberg (5): doc/merge-config: list ecmerge as a built-in merge tool git-mergetool/difftool: make (g)vimdiff workable under Windows git-mergetool: add new merge tool TortoiseMerge doc/git-daemon: add missing arguments to options doc/git-daemon: add missing arguments to max-connections option Matthieu Moy (2): git add -p: new "quit" command at the prompt. Update git-add.txt according to the new possibilities of 'git add -p'. Michael J Gruber (1): remote.c: use shorten_unambiguous_ref Michał Kiedrowicz (3): tests: test applying criss-cross rename patch builtin-apply: keep information about files to be deleted Documentation: boolean value may be given by on/off Nanako Shiraishi (1): git-am: teach git-am to apply a patch to an unborn branch Nguyễn Thái Ngọc Duy (3): get_local_heads(): do not return random pointer if there is no head attr: add GIT_ATTR_INDEX "direction" archive: do not read .gitattributes in working directory Paul Bolle (1): imap-send: use correct configuration variable in documentation Pierre Habouzit (1): hook/update: example of how to prevent branch creation René Scharfe (2): archive tests: do not use .gitattributes in working directory archive test: attributes Sebastian Pipping (1): difftool/mergetool: add diffuse as merge and diff tool Thomas Jarosch (1): Fix buffer overflow in config parser Ulrich Windl (1): git-apply: fix option description Version v1.6.3-rc0; changes since v1.6.2.5: ------------------------------------------- Alex Riesen (4): disable post-checkout test on Cygwin Produce a nicer output in case of sha1_object_info failures in ls-tree -l Microoptimize strbuf_cmp Improve error message about fetch into current branch Ali Gholami Rudi (2): builtin-clone.c: make junk_pid static builtin-clone.c: no need to strdup for setenv Amos King (2): Do not name "repo" struct "remote" in push_http.c http-push.c: use a faux remote to pass to http_init Arjen Laarhoven (2): Clean up use of ANSI color sequences builtin-branch.c: Rename branch category color names Arto Jonsson (1): bash completion: add options for 'git fsck' Ben Jackson (2): git-svn: Add per-svn-remote ignore-paths config git-svn: Save init/clone --ignore-paths in config Ben Walton (8): configure: ensure settings from user are also usable in the script configure: reorganize flow of argument checks configure: add macros to stash FLAG variables configure: wrap some library tests with GIT_STASH_FLAGS configure: asciidoc version test cleanup configure: make iconv tests aware of user arguments configure: rework pthread handling to allow for user defined flags documentation: Makefile accounts for SHELL_PATH setting Benjamin Kramer (4): Remove unused function scope local variables Move local variables to narrower scopes Remove unused assignments Fix various dead stores found by the clang static analyzer Björn Steinbrink (1): Mailmap: Allow empty email addresses to be mapped Boris Byk (1): git-svn: speed up blame command Brandon Casey (1): builtin-send-pack.c: avoid empty structure initialization Brian Gernhardt (2): Create USE_ST_TIMESPEC and turn it on for Darwin Makefile: Set compiler switch for USE_NSEC Carlos Manuel Duclos Vergara (1): git-archive: add --output=<file> to send output to a file Carlos Rica (1): config: test for --replace-all with one argument and fix documentation. Chris Johnsen (13): git-push.txt: describe how to default to pushing only current branch Documentation: remove extra quoting/emphasis around literal texts Documentation/Makefile: make most operations "quiet" Documentation/Makefile: break up texi pipeline Documentation: move callouts.xsl to manpage-{base,normal}.xsl Documentation: use parametrized manpage-base.xsl with manpage-{1.72,normal}.xsl Documentation: rename docbook-xsl-172 attribute to git-asciidoc-no-roff Documentation: move quieting params into manpage-base.xsl Documentation: move "spurious .sp" code into manpage-base.xsl Documentation: asciidoc.conf: always use <literallayout> for [blocktext] Documentation: asciidoc.conf: fix verse block with block titles Documentation: option to render literal text as bold for manpages Documentation: use "spurious .sp" XSLT if DOCBOOK_SUPPRESS_SP is set Christian Couder (24): rev-list: estimate number of bisection step left log-tree: fix patch filename computation in "git format-patch" quote: implement "sq_dequote_many" to unwrap many args in one string quote: add "sq_dequote_to_argv" to put unwrapped args in an argv array refs: add "for_each_ref_in" function to refactor "for_each_*_ref" functions rev-list: make "bisect_list" variable local to "cmd_rev_list" rev-list: move bisect related code into its own file rev-list: move code to show bisect vars into its own function rev-list: make "show_bisect_vars" non static rev-list: pass "revs" to "show_bisect_vars" sha1-lookup: add new "sha1_pos" function to efficiently lookup sha1 patch-ids: use the new generic "sha1_pos" function to lookup sha1 bisect: improve error message when branch checkout fails rev-list: call new "filter_skip" function bisect: use the new generic "sha1_pos" function to lookup sha1 bisect--helper: implement "git bisect--helper" bisect: implement "read_bisect_paths" to read paths in "$GIT_DIR/BISECT_NAMES" bisect: use "bisect--helper" and remove "filter_skipped" function t6030: test bisecting with paths rev-list: pass "int flags" as last argument of "show_bisect_vars" bisect--helper: string output variables together with "&&" list-objects: add "void *data" parameter to show functions rev-list: remove last static vars used in "show_commit" rev-list: add "int bisect_show_flags" in "struct rev_list_info" Dan McGee (1): Update delta compression message to be less misleading Daniel Barkalow (8): Make clone parse the default refspec with the normal code Use a single function to match names against patterns Use the matching function to generate the match results Keep '*' in pattern refspecs Support '*' in the middle of a refspec Use a common function to get the pretty name of refs Move push matching and reporting logic into transport.c Include log_config module in apache.conf David Aguilar (1): contrib/difftool: use a separate config namespace for difftool commands Deskin Miller (1): add -i: revisit hunk on editor failure Elijah Newren (3): git-filter-branch: avoid collisions with variables in eval'ed commands Correct missing SP characters in grammar comment at top of fast-import.c fast-export: Avoid dropping files from commits Emil Sit (1): config.txt: Describe special 'none' handling in core.gitProxy. Eric Wong (1): git-svn: fix ls-tree usage with dash-prefixed paths Erik Faye-Lund (5): connect.c: remove a few globals by using git_config callback data test-suite: adding a test for fast-export with tag variants builtin-fast-export.c: turn error into warning builtin-fast-export.c: fix crash on tagged trees builtin-fast-export.c: handle nested tags Eugene Letuchy (1): Make git blame's date output format configurable, like git log Felipe Contreras (14): config: Add new option to open an editor. git config: codestyle cleanups git_config(): not having a per-repo config file is not an error git config: trivial rename in preparation for parseopt git config: reorganize get_color* git config: reorganize to use parseopt git config: don't allow multiple config file locations git config: don't allow multiple variable types git config: don't allow extra arguments for -e or -l. git config: don't allow --get-color* and variable type Add tests for git log --pretty, --format and --oneline. user-manual: remove some git-foo usage docbook: change css style user-manual: the name of the hash function is SHA-1, not sha1 Finn Arne Gangstad (7): New config push.default to decide default behavior for push Display warning for default git push with no push.default config builtin-remote.c: Split out prune_remote as a separate function. git remote update: New option --prune git remote update: Report error for non-existing groups remote: New function remote_is_configured() git remote update: Fallback to remote if group does not exist Giuseppe Bilotta (1): import-tars: separate author from committer Heiko Voigt (3): Add warning about known issues to documentation of cvsimport Cleanup warning about known issues in cvsimport documentation Add configuration variable for sign-off to format-patch Janos Laube (1): MinGW: implement mmap Jason Merrill (1): git-svn: add fetch --parent option Jay Soffian (30): builtin-branch: improve output when displaying remote branches move duplicated get_local_heads() to remote.c move duplicated ref_newer() to remote.c move locate_head() to remote.c remote: simplify guess_remote_head() remote: make copy_ref() perform a deep copy remote: let guess_remote_head() optionally return all matches remote: make match_refs() copy src ref before assigning to peer_ref remote: make match_refs() not short-circuit string-list: new for_each_string_list() function builtin-remote: refactor duplicated cleanup code builtin-remote: remove unused code in get_ref_states builtin-remote: rename variables and eliminate redundant function call builtin-remote: make get_remote_ref_states() always populate states.tracked builtin-remote: fix two inconsistencies in the output of "show <remote>" builtin-remote: teach show to display remote HEAD builtin-remote: add set-head subcommand builtin-remote: new show output style builtin-remote: new show output style for push refspecs send-email: add --confirm option and configuration setting bash completion: fix completion issues with fetch, pull, and push bash completion: refactor --strategy completion bash completion: teach fetch, pull, and push to complete their options send-email: refactor and ensure prompting doesn't loop forever send-email: add tests for refactored prompting send-email: don't attempt to prompt if tty is closed send-email: ask_default should apply to all emails, not just the first send-email: correct two tests which were going interactive send-email: ensure quoted addresses are rfc2047 encoded send-email: fix nasty bug in ask() function Jeff King (26): valgrind: ignore ldso and more libz errors branch: clean up repeated strlen add basic branch display tests test scripts: refactor start_httpd helper add basic http clone/fetch tests refactor find_ref_by_name() to accept const list remote: make guess_remote_head() use exact HEAD lookup if it is available clone: run post-checkout hook when checking out improve missing repository error message config: set help text for --bool-or-int t3000: use test_cmp instead of diff ls-files: fix broken --no-empty-directory ls-files: require worktree when --deleted is given make oneline reflog dates more consistent with multiline format remote: improve sorting of "configure for git push" list Makefile: turn on USE_ST_TIMESPEC for FreeBSD t0060: fix whitespace in "wc -c" invocation tests: remove exit after test_done call for-each-ref: refactor get_short_ref function for-each-ref: refactor refname handling for-each-ref: add "upstream" format field make get_short_ref a public function branch: show upstream branch when double verbose Makefile: allow building without perl tests: skip perl tests if NO_PERL is defined add tests for remote groups Jens Lehmann (1): githooks documentation: post-checkout hook is also called after clone Jeremy White (2): Enable setting attach as the default in .gitconfig for git-format-patch. imap.preformattedHTML to tell Thunderbird to send non-flowed text Johannes Schindelin (23): Add valgrind support in test scripts Valgrind support: check for more than just programming errors test-lib.sh: optionally output to test-results/$TEST.out, too t/Makefile: provide a 'valgrind' target Add a script to coalesce the valgrind outputs Tests: let --valgrind imply --verbose and --tee test-lib: avoid assuming that templates/ are in the GIT_EXEC_PATH valgrind: do not require valgrind 3.4.0 or newer Avoid segfault with 'git branch' when the HEAD is detached Turn the flags in struct dir_struct into a single variable git config: trivial cleanup for editor action rebase -i: avoid 'git reset' when possible MinGW: 64-bit file offsets Brown paper bag fix for MinGW 64-bit stat Add an (optional, since expensive) test for >2gb clones MinGW: fix diff --no-index /dev/null ... winansi: support ESC [ K (erase in line) test: do not LoadModule log_config_module unconditionally test-lib: write test results to test-results/<basename>-<pid> gc --aggressive: make it really aggressive t7300: fix clean up on Windows Guard a few Makefile variables against user environments git-svn: always initialize with core.autocrlf=false Johannes Sixt (30): recv_sideband: Bands #2 and #3 always go to stderr test-suite: Make test script numbers unique t9400, t9401: Do not force hard-linked clone test suite: Use 'say' to say something instead of 'test_expect_success' Call 'say' outside test_expect_success test-lib: Replace uses of $(expr ...) by POSIX shell features. test-lib: Simplify test counting. test-lib: Introduce test_chmod and use it instead of update-index --chmod t2200, t7004: Avoid glob pattern that also matches files t5300, t5302, t5303: Do not use /dev/zero t5602: Work around path mangling on MSYS test-lib: Work around incompatible sort and find on Windows test-lib: Work around missing sum on Windows Tests on Windows: $(pwd) must return Windows-style paths t0050: Check whether git init detected symbolic link support correctly test-lib: Infrastructure to test and check for prerequisites t3600: Use test prerequisite tags Skip tests that fail if the executable bit is not handled by the filesystem t5302: Use prerequisite tags to skip 64-bit offset tests t9100, t9129: Use prerequisite tags for UTF-8 tests Use prerequisite tags to skip tests that depend on symbolic links t0060: Fix tests on Windows Skip tests that require a filesystem that obeys POSIX permissions t3700: Skip a test with backslashes in pathspec Use prerequisites to skip tests that need unzip t7004: Use prerequisite tags to skip tests that need gpg t5503: GIT_DEBUG_SEND_PACK is not supported on MinGW MinGW: Quote arguments for subprocesses that contain a single-quote t7005-editor: Use $SHELL_PATH in the editor scripts t7502-commit: Skip SIGTERM test on Windows John Tapsell (4): Modify description file to say what this file is Google has renamed the imap folder Improve error message for git-filter-branch Documentation - More examples for git bisect Junio C Hamano (29): git-blame: refactor code to emit "porcelain format" output blame: show "previous" information in --porcelain/--incremental format Make git-clone respect branch.autosetuprebase Draft release notes: Carry forward the warning for behaviour changes Update draft release notes to 1.6.3 builtin-remote.c: no "commented out" code, please Not all systems use st_[cm]tim field for ns resolution file timestamp grep: cast printf %.*s "precision" argument explicitly to int http.c: style cleanups Improve "git branch --tracking" output http_init(): Fix config file parsing http authentication via prompts Update release notes to 1.6.3 http.c: CURLOPT_NETRC_OPTIONAL is not available in ancient versions of cURL Read attributes from the index that is being checked out Update draft release notes to 1.6.3 http tests: Darwin is not that special Rename interpret/substitute nth_last_branch functions strbuf_branchname(): a wrapper for branch name shorthands check-ref-format --branch: give Porcelain a way to grok branch shorthand Fix branch -m @{-1} newname strbuf_check_branch_ref(): a helper to check a refname for a branch check_ref_format(): tighten refname rules Update draft release notes to 1.6.3 Speed up reflog pruning of unreachable commits Update draft release notes to 1.6.3 sha1-lookup: fix up the assertion message Update draft release notes to 1.6.3 GIT 1.6.3-rc0 Keith Cascio (2): Use DIFF_XDL_SET/DIFF_OPT_SET instead of raw bit-masking Fix neglect of diff_setup()/diff_setup_done() symmetry. Kevin Ballard (1): builtin-push.c: Fix typo: "anythig" -> "anything" Kevin McConnell (1): Add --staged to bash completion for git diff Kjetil Barvik (18): lstat_cache(): small cleanup and optimisation lstat_cache(): generalise longest_match_lstat_cache() lstat_cache(): swap func(length, string) into func(string, length) unlink_entry(): introduce schedule_dir_for_removal() create_directories(): remove some memcpy() and strchr() calls write_entry(): cleanup of some duplicated code write_entry(): use fstat() instead of lstat() when file is open show_patch_diff(): remove a call to fstat() lstat_cache(): print a warning if doing ping-pong between cache types check_updates(): effective removal of cache entries marked CE_REMOVE fix compile error when USE_NSEC is defined make USE_NSEC work as expected verify_uptodate(): add ce_uptodate(ce) test write_index(): update index_state->timestamp after flushing to disk stat_tracking_info(): only count real commits Record ns-timestamps if possible, but do not use it without USE_NSEC checkout bugfix: use stat.mtime instead of stat.ctime in two places Revert "lstat_cache(): print a warning if doing ping-pong between cache types" Kristian Amlie (1): Add a test for checking whether gitattributes is honored by checkout. Linus Torvalds (2): Clean up reflog unreachability pruning decision Allow users to un-configure rename detection Marius Storm-Olsen (2): Add bare repository indicator for __git_ps1 Fixup: Add bare repository indicator for __git_ps1 Markus Heidelberg (1): add --html-path to get the location of installed HTML docs Martin Storsjö (1): Allow curl to rewind the read buffers Matthieu Moy (2): git-send-email.txt: clarify which options take an argument. git-rev-list.txt: make ascii markup uniform with other pages. Michael Hendricks (1): format-patch: add arbitrary email headers Michael J Gruber (6): Typo and language fixes for git-checkout.txt test-lib.sh: Test for presence of git-init in the right path. test-lib.sh: Allow running the test suite against installed git git-branch.txt: document -f correctly Test for local branches being followed with --track Make local branches behave like remote branches when --tracked Michael Lai (1): git-svn: support intermediate paths when matching tags/branches Michele Ballabio (6): apply: consistent spelling of "don't" apply: hide unused options from short help git log: avoid segfault with --all-match document --force-rebase rebase: add options passed to git-am rebase: fix typo (force_rebas -> force-rebas) Mike Hommey (1): Replace ",<,>,& with their respective XML entities in DAV requests Miklos Vajna (11): parse-opt: migrate builtin-ls-files. Tests: use test_cmp instead of diff where possible http-push: using error() and warning() as appropriate builtin-apply: use warning() instead of fprintf(stderr, "warning: ") builtin-checkout: use warning() instead of fprintf(stderr, "warning: ") builtin-fetch-pack: use warning() instead of fprintf(stderr, "warning: ") builtin-init-db: use warning() instead of fprintf(stderr, "warning: ") builtin-rm: use warning() instead of fprintf(stderr, "warning: ") builtin-show-branch: use warning() instead of fprintf(stderr, "warning: ") builtin-show-ref: use warning() instead of fprintf(stderr, "warning: ") refs: use warning() instead of fprintf(stderr, "warning: ") Nanako Shiraishi (4): Add --format that is a synonym to --pretty Give short-hands to --pretty=tformat:%formatstring Add --oneline that is a synonym to "--pretty=oneline --abbrev-commit" Documentation/git.txt: GIT 1.6.2.2 has been out for a while Nate Case (1): format-patch: Respect --quiet option Nguyễn Thái Ngọc Duy (1): grep: prefer builtin over external one when coloring results Pete Wyckoff (1): git-p4: remove tabs from usermap file Petr Kodl (2): MinGW: a helper function that translates Win32 API error codes MinGW: a hardlink implementation Ramsay Jones (1): git-instaweb: fix lighttpd configuration on cygwin René Scharfe (12): grep: micro-optimize hit collection for AND nodes grep: remove grep_opt argument from match_expr_eval() grep: add pmatch and eflags arguments to match_one_pattern() grep: color patterns in output grep: add support for coloring with external greps parseopt: add PARSE_OPT_KEEP_UNKNOWN parseopt: add PARSE_OPT_NO_INTERNAL_HELP parseopt: make usage optional archive: use parseopt for local-only options parseopt: document KEEP_ARGV0, KEEP_UNKNOWN, NO_INTERNAL_HELP parseopt: prevent KEEP_UNKNOWN and STOP_AT_NON_OPTION from being used together pickaxe: count regex matches only once SZEDER Gábor (1): rerere: remove duplicated functions Santi Béjar (4): Documentation: enhance branch.<name>.{remote,merge} Documentation: push.default applies to all remotes Documentation: branch.*.merge can also affect 'git-push' Documentation: Introduce "upstream branch" Shawn O. Pearce (1): Don't permit ref/branch names to end with ".lock" Simon Arlott (2): git-svn: don't output git commits in quiet mode git-svn: add a double quiet option to hide git commits Stephen Boyd (11): git-send-email.txt: describe --compose better pretty.c: add %f format specifier to format_commit_message() format-patch: construct patch filename in one function format-patch: pass a commit to reopen_stdout() format-patch: move get_patch_filename() into log-tree format-patch: --attach/inline uses filename instead of SHA1 format-patch: --numbered-files and --stdout aren't mutually exclusive completion: add --annotate option to send-email completion: add --cc and --no-attachment option to format-patch completion: add --thread=deep/shallow to format-patch format_sanitized_subject: Don't trim past initial length of strbuf Sverre Rabbelier (1): Teach rebase to rebase even if upstream is up to date Tay Ray Chuan (1): http.c: use strbuf API in quote_ref_url Ted Pavlic (4): completion: For consistency, change "git rev-parse" to __gitdir calls completion: Use consistent if [...] convention, not "test" completion: Better __git_ps1 support when not in working directory completion: More fixes to prevent unbound variable errors Teemu Likonen (1): bash completion: add --format= and --oneline options for "git log" Thomas Rast (13): format-patch: threading test reactivation Support coverage testing with GCC/gcov Test that diff can read from stdin Test diff --dirstat functionality Test log --graph Test fsck a bit harder Test log --decorate Test rev-list --parents/--children Test git-patch-id format-patch: track several references format-patch: thread as reply to cover letter even with in-reply-to format-patch: support deep threading Documentation: filter-branch: show --ignore-unmatch in main index-filter example Todd Zullinger (1): bash completion: Update 'git am' options Tor Arne Vestbø (2): git-rebase: Add --stat and --no-stat for producing diffstat on rebase git-pull: Allow --stat and --no-stat to be used with --rebase Wesley J. Landaker (1): Documentation: git-svn: fix trunk/fetch svn-remote key typo Wincent Colaiuta (2): Grammar fixes to "merge" and "patch-id" docs Grammar fix for "git merge" man page Version v1.6.2.5; changes since v1.6.2.4: ----------------------------------------- Allan Caffee (2): builtin-merge: fix a typo in an error message Documentation: fix a grammatical error in api-builtin.txt Frank Lichtenheld (1): gitcvs-migration: Link to git-cvsimport documentation Johannes Schindelin (1): Fix off-by-one in read_tree_recursive Junio C Hamano (7): read-tree A B: do not corrupt cache-tree Move prime_cache_tree() to cache-tree.c read-tree -m A B: prime cache-tree from the switched-to tree checkout branch: prime cache-tree fully diff -c -p: do not die on submodules GIT 1.6.1.4 GIT 1.6.2.5 Linus Torvalds (3): process_{tree,blob}: show objects without buffering show_object(): push path_name() call further down grep: fix segfault when "git grep '('" is given Michał Kiedrowicz (3): tests: test applying criss-cross rename patch builtin-apply: keep information about files to be deleted tests: make test-apply-criss-cross-rename more robust Nicolas Pitre (1): honor repack.usedeltabaseoffset when fetching packs Stephen Boyd (1): test-genrandom: Add newline to usage string Wincent Colaiuta (1): git add -p: add missing "q" to patch prompt Version v1.6.2.4; changes since v1.6.2.3: ----------------------------------------- Björn Steinbrink (1): tree_entry_interesting: a pathspec only matches at directory boundary Clemens Buchacher (3): add tests for merging with submodules update cache for conflicting submodule entries simplify output of conflicting merge Erik Faye-Lund (4): test-suite: adding a test for fast-export with tag variants builtin-fast-export.c: turn error into warning builtin-fast-export.c: fix crash on tagged trees builtin-fast-export.c: handle nested tags Frank Lichtenheld (1): init: Do not segfault on big GIT_TEMPLATE_DIR environment variable Jeff King (2): doc/gitattributes: clarify location of config text add-interactive: refactor mode hunk handling Johan Herland (1): Update docs on behaviour of 'core.sharedRepository' and 'git init --shared' Johannes Schindelin (1): Fix 'git checkout <submodule>' to update the index Johannes Sixt (1): t1301-shared-repo: fix forced modes test Junio C Hamano (4): match_tree_entry(): a pathspec only matches at directory boundaries Describe fixes since 1.6.2.3 Speed up reflog pruning of unreachable commits GIT 1.6.2.4 Linus Torvalds (1): Clean up reflog unreachability pruning decision Markus Heidelberg (2): doc/git-daemon: add missing arguments to options doc/git-daemon: add missing arguments to max-connections option Matthieu Moy (2): git add -p: new "quit" command at the prompt. Update git-add.txt according to the new possibilities of 'git add -p'. Nguyễn Thái Ngọc Duy (1): Makefile: remove {fetch,send}-pack from PROGRAMS as they are builtins Paul Bolle (1): imap-send: use correct configuration variable in documentation Thomas Jarosch (1): Fix buffer overflow in config parser Ulrich Windl (1): git-apply: fix option description Version v1.6.2.3; changes since v1.6.2.2: ----------------------------------------- Björn Steinbrink (1): process_{tree,blob}: Remove useless xstrdup calls Brandon Casey (6): t7700-repack: add two new tests demonstrating repacking flaws git-repack.sh: don't use --kept-pack-only option to pack-objects pack-objects: only repack or loosen objects residing in "local" packs Remove --kept-pack-only option and associated infrastructure t7700: demonstrate repack flaw which may loosen objects unnecessarily pack-objects: don't loosen objects available in alternate or kept packs Dan McGee (1): git-repack: use non-dashed update-server-info Daniel Cheng (aka SDiZ) (1): State the effect of filter-branch on graft explicitly Jari Aalto (1): Change double quotes to single quotes in message Jason Merrill (1): Documentation: clarify .gitattributes search Jeff King (2): t1301: loosen test for forced modes commit: abort commit if interactive add failed Johan Herland (1): Move chmod(foo, 0444) into move_temp_to_file() Julien Danjou (1): git submodule: fix usage line Junio C Hamano (12): git-repack: resist stray environment variable has_sha1_pack(): refactor "pretend these packs do not exist" interface has_sha1_kept_pack(): take "struct rev_info" Consolidate ignore_packed logic more Simplify is_kept_pack() is_kept_pack(): final clean-up diff --cached: do not borrow from a work tree when a path is marked as assume-unchanged "core.sharedrepository = 0mode" should set, not loosen move_temp_to_file(): do not forget to chmod() in "Coda hack" codepath set_shared_perm(): sometimes we know what the final mode bits should look like Start 1.6.2.3 preparation GIT 1.6.2.3 Linus Torvalds (1): process_{tree,blob}: Remove useless xstrdup calls Markus Heidelberg (1): doc/git-pack-refs: fix two grammar issues Matthieu Moy (3): git-checkout.txt: fix incorrect statement about HEAD and index git-checkout.txt: clarify that <branch> applies when no path is given. git-pull.sh: better warning message for "git pull" on detached head. Version v1.6.2.2; changes since v1.6.2.1: ----------------------------------------- Allan Caffee (1): Documentation: update graph api example. Brandon Casey (1): git-branch: display "was sha1" on branch deletion rather than just "sha1" Carlo Marcelo Arenas Belon (1): documentation: update cvsimport description of "-r" for recent clone Daniel Barkalow (1): Give error when no remote is configured Daniel Cheng (aka SDiZ) (1): Fix bash completion in path with spaces David Aguilar (1): everyday: use the dashless form of git-init David J. Mellor (12): Documentation: minor grammatical fixes in git-archive.txt. Documentation: reword the "Description" section of git-bisect.txt. Documentation: minor grammatical fixes in git-blame.txt. Documentation: minor grammatical fixes in git-branch.txt. Documentation: reworded the "Description" section of git-bisect.txt. Documentation: reword example text in git-bisect.txt. Documentation: remove some uses of the passive voice in git-bisect.txt Documentation: minor grammatical fixes and rewording in git-bundle.txt Documentation: minor grammatical fixes in git-cat-file.txt Documentation: minor grammatical fixes in git-check-attr.txt Documentation: minor grammatical fix in git-check-ref-format.txt Documentation: Remove spurious uses of "you" in git-bisect.txt. Emil Sit (1): test-lib: Clean up comments and Makefile. Eric Wong (1): git-svn: fix ls-tree usage with dash-prefixed paths Holger Weiß (1): Documentation: Remove an odd "instead" Jeff King (3): doc: clarify how -S works ls-files: require worktree when --deleted is given fix portability problem with IS_RUN_COMMAND_ERR Johannes Schindelin (4): rsync transport: allow local paths, and fix tests Smudge the files fed to external diff and textconv import-zips: fix thinko mailmap: resurrect lower-casing of email addresses Johannes Sixt (2): Propagate --exec-path setting to external commands via GIT_EXEC_PATH diff --no-index: Do not generate patch output if other output is requested Junio C Hamano (6): read-tree A B C: do not create a bogus index and do not segfault Remove total confusion from git-fetch and git-push blame: read custom grafts given by -S before calling setup_revisions() Update draft release notes to 1.6.2.2 Update draft release notes to 1.6.2.2 GIT 1.6.2.2 Linus Torvalds (1): close_sha1_file(): make it easier to diagnose errors Michael J Gruber (2): git submodule: Add test cases for git submodule add git submodule: Fix adding of submodules at paths with ./, .. and // Nico -telmich- Schottelius (1): git-tag(1): add hint about commit messages Nicolas Pitre (1): avoid possible overflow in delta size filtering computation René Scharfe (3): diffcore-pickaxe: use memmem() optimize compat/ memmem() pickaxe: count regex matches only once Shawn O. Pearce (1): Increase the size of the die/warning buffer to avoid truncation Stephen Boyd (1): format-patch: --numbered-files and --stdout aren't mutually exclusive Thomas Rast (4): send-email: respect in-reply-to regardless of threading send-email: test --no-thread --in-reply-to combination Documentation: format-patch --root clarifications bash completion: only show 'log --merge' if merging Version v1.6.2.1; changes since v1.6.2: --------------------------------------- Chris Johnsen (1): builtin-revert.c: release index lock when cherry-picking an empty commit Christian Couder (1): Documentation: fix badly indented paragraphs in "--bisect-all" description Elijah Newren (1): Ensure proper setup of git_dir for git-hash-object Finn Arne Gangstad (1): Support "\" in non-wildcard exclusion entries Jay Soffian (4): send-email: allow send-email to run outside a repo send-email: handle multiple Cc addresses when reading mbox message send-email: --suppress-cc improvements send-email: don't create temporary compose file until it is needed Jeff King (3): never fallback relative times to absolute t1300: use test_must_fail as appropriate document config --bool-or-int John Tapsell (1): Make the 'lock file' exists error more informative Junio C Hamano (4): git-add -i/-p: learn to unwrap C-quoted paths Beginning of 1.6.2 maintenance track Update draft release notes for 1.6.2.1 GIT 1.6.2.1 René Scharfe (1): cleanup: add isascii() Version v1.6.2; changes since v1.6.2-rc2: ----------------------------------------- Ben Walton (1): git-svn - return original format_svn_date semantics Christian Couder (2): bisect: fix quoting TRIED revs when "bad" commit is also "skip"ped bisect: fix another instance of eval'ed string Danijel Tasov (1): added missing backtick in git-apply.txt David J. Mellor (4): Documentation: minor grammatical fixes. Documentation: minor grammatical fixes. Documentation: minor grammatical fixes. Documentation: minor grammatical fixes. Eric Wong (1): git-svn: disable broken symlink workaround by default Jay Soffian (1): t5540-http-push.sh: avoid non-portable grep -P Johannes Sixt (1): t3400-rebase: Move detached HEAD check earlier Junio C Hamano (2): git-am: make --abort less dangerous GIT 1.6.2 Michael J Gruber (1): git-am: Keep index in case of abort with dirty index Mike Ralphson (4): Fix odb_mkstemp() on AIX Documentation: Typos / spelling fixes in RelNotes Documentation: Expand a couple of abbreviations Documentation: Typo / spelling / formatting fixes Paul Mackerras (1): gitk: Fix possible infinite loop and display corruption Roy Lee (1): Documentation/git-archive.txt: Note attributes Todd Zullinger (1): git-rebase: Update --whitespace documentation Version v1.6.2-rc2; changes since v1.6.2-rc1: --------------------------------------------- Abhijit Menon-Sen (1): Convert git-* invocations to "git *" in the svnimport example. Alexandre Julliard (3): git.el: Make sure that file lists are sorted as they are created. git.el: Improve the confirmation message on remove and revert. Add a README in the contrib/emacs directory. Allan Caffee (1): trace: Fixed a minor typo in an error message. Ben Walton (1): git-svn fix to avoid using strftime %z Brian Gernhardt (1): git-svn: Create leading directories in create-ignore Christian Couder (1): README: fix path to "gitcvs-migration.txt" and be more consistent Eric Wong (1): git-svn: fix delete+add branch tracking with empty files Felipe Contreras (2): git add: trivial codestyle cleanup sha1_file.c: fix typo Gerrit Pape (3): Documentation/git-push: --all, --mirror, --tags can not be combined Install builtins with the user and group of the installing personality git-quiltimport: preserve standard input to be able to read user input Giuseppe Bilotta (1): gitweb: fix wrong base URL when non-root DirectoryIndex Jay Soffian (2): disallow providing multiple upstream branches to rebase, pull --rebase Allow HTTP tests to run on Darwin Johannes Schindelin (2): Introduce the function strip_path_suffix() system_path(): simplify using strip_path_suffix(), and add suffix "git" Johannes Sixt (1): gitattributes.txt: Path matching rules are explained in gitignore.txt Junio C Hamano (4): git-svn: fix parsing of timestamp obtained from svn tests: fix "export var=val" Make sure objects/pack exists before creating a new pack GIT 1.6.2-rc2 Lars Noschinski (1): filter-branch -d: Export GIT_DIR earlier Linus Torvalds (1): Support 'raw' date format Marc Branchaud (1): Docs: Expand explanation of the use of + in git push refspecs. Marcel M. Cary (2): gitweb: Fix warnings with override permitted but no repo override gitweb: Hyperlink multiple git hashes on the same commit message line Matthieu Moy (2): Document git blame --reverse. More friendly message when locking the index fails. Michael J Gruber (1): Fix typo in contrib/examples/git-svnimport.txt Michael Spang (1): Skip timestamp differences for diff --no-index Pete Wyckoff (1): git-p4: avoid syncing duplicate changes Peter Oberndorfer (1): git-svn: read the dcommit url from the config file on a per remote basis SZEDER Gábor (2): bash: add missing 'git merge' options bash: update 'git svn' options Thomas Rast (2): bash completion: refactor common log, shortlog and gitk options bash completion: only show 'log --merge' if merging Todd Zullinger (1): Documentation: Note file formats send-email accepts Version v1.6.2-rc1; changes since v1.6.2-rc0: --------------------------------------------- Alexandre Julliard (1): Describe notable git.el changes in the release notes Anton Gyllenberg (1): test case for regression caused by git-svn empty symlink fix Christian Couder (1): rev-list: fix showing distance when using --bisect-all Deskin Miller (1): git-svn: Print revision while searching for earliest use of path Dévai Tamás (1): git-svn: Fix for rewriteRoot URL containing username. Elijah Newren (1): fast-export: ensure we traverse commits in topological order Eric Kidd (1): filter-branch: Add more error-handling Eric Wong (2): git-svn: allow disabling expensive broken symlink checks git-svn: fix broken symlink workaround when switching branches Fabian Franz (1): submodule: add --no-fetch parameter to update command Jacob Helwig (1): Add 'rm -f' equivalent to 'git rm' example of filter-branch --index-filter Jakub Narębski (1): gitweb: Better regexp for SHA-1 committag match Jeff King (1): symbolic-ref: allow refs/<whatever> in HEAD Jeremy White (1): Update documentation to add further information about using Thunderbird with git-imap-send. Johannes Schindelin (4): Let ls-files strip trailing slashes in submodules' paths submodule: warn about non-submodules Add two extra tests for git rebase gc: make --prune useful again by accepting an optional parameter Johannes Sixt (4): Make test-path-utils more robust against incorrect use Move sanitary_path_copy() to path.c and rename it to normalize_path_copy() Test and fix normalize_path_copy() Remove unused normalize_absolute_path() Junio C Hamano (16): Revert "Merge branch 'js/notes'" Modernize t5400 test script remote prune: warn dangling symrefs Warn use of "origin" when remotes/origin/HEAD is dangling Drop double-semicolon in C receive-pack: receive.denyDeleteCurrent builtin-receive-pack.c: do not initialize statics to 0 revision traversal and pack: notice and die on missing commit Squelch overzealous "ignoring dangling symref" in an empty repository Make repack less likely to corrupt repository Prepare for 1.6.1.4. Revert "validate_headref: tighten ref-matching to just branches" Install the default "master" branch configuration after cloning a void Teach the "@{-1} syntax to "git branch" Teach @{-1} to git merge RelNotes Update Keith Cascio (1): Remove redundant bit clears from diff_setup() Lars Hjemli (1): tree.c: allow read_tree_recursive() to traverse gitlink entries Marcel M. Cary (1): git-sh-setup: Use "cd" option, not /bin/pwd, for symlinked work tree Marius Storm-Olsen (5): Add mailmap.file as configurational option for mailmap location Add find_insert_index, insert_at_index and clear_func functions to string_list Add map_user() and clear_mailmap() to mailmap Change current mailmap usage to do matching on both name and email of author/committer. Move mailmap documentation into separate file Mark Burton (1): git-rebase.txt: --interactive does not work with --whitespace Matt Kraai (1): bash-completion: Complete the values of color.interactive, color.ui, color.pager Matt McCutchen (1): gitweb: add $prevent_xss option to prevent XSS by repository content Michael J Gruber (1): Fix the installation path for html documentation Nazri Ramliy (1): Bugfix: GIT_EXTERNAL_DIFF with more than one changed files Pat Notz (1): Fix contrib/hooks/post-receive-email for new duplicate branch René Scharfe (2): Fix GIT_CEILING_DIRECTORIES on Windows builtin-receive-pack.c: fix compiler warnings about format string SZEDER Gábor (3): Move 'rev-parse --git-dir' test to t1500 t1500: more 'git rev-parse --git-dir' tests bash: fix misspelled 'git svn' option Sam Vilain (1): git-svn: abstract out a block into new method other_gs() Santi Béjar (1): doc/bundle: Use the more conventional suffix '.bundle' Shawn O. Pearce (2): Clear the delta base cache during fast-import checkpoint Clear the delta base cache if a pack is rebuilt Sitaram Chamarty (1): Documentation: clarify commits affected by gitk --merge Stephan Beyer (3): add -p: get rid of Git.pm warnings about unitialized values Makefile: resort filenames alphabetically Generalize and libify index_is_dirty() to index_differs_from(...) Tay Ray Chuan (1): use a hash of the lock token as the suffix for PUT/MOVE Ted Pavlic (2): completion: Fix GIT_PS1_SHOWDIRTYSTATE to prevent unbound variable errors. completion: Get rid of tabbed indentation in comments. Replace with spaces. Thomas Rast (2): log: do not print ellipses with --abbrev-commit Documentation: pruning recipe for destructive filter-branch Todd Zullinger (1): git-web--browse: Fix check for /bin/start Version v1.6.2-rc0; changes since v1.6.1.4: ------------------------------------------- Adeodato Simó (3): builtin-shortlog.c: use string_list_append(), and don't strdup unnecessarily git.c: make autocorrected aliases work t7501-commit.sh: explicitly check that -F prevents invoking the editor Alexander Potashev (4): remove trailing LF in die() messages add is_dot_or_dotdot inline function Allow cloning to an existing empty directory Replace deprecated dashed git commands in usage Alexandre Julliard (8): git.el: Add a checkout command. git.el: Add a command to create a new branch. git.el: Add commands for cherry-pick and revert. git.el: Make git-run-command-region display the error if any. git.el: Set a regexp for paragraph-separate in log-edit mode. git.el: Use integer instead of character constants in case statement. git.el: Add some notes about Emacs versions compatibility. emacs: Remove the no longer maintained vc-git package. Arjen Laarhoven (1): t/t4202-log.sh: Add testcases Benjamin Kramer (1): Ignore test-ctype Boyd Stephen Smith Jr (2): color-words: Support diff.wordregex config option Change the spelling of "wordregex". Brandon Casey (2): t7700: demonstrate misbehavior of 'repack -a' when local packs exist Makefile: use shell for-loop rather than Make's foreach loop during install Charles Bailey (7): Fix some tab/space inconsistencies in git-mergetool.sh Add -y/--no-prompt option to mergetool mergetool: Add prompt to continue after failing to merge a file mergetool: Don't keep temporary merge files unless told to mergetool: respect autocrlf by using checkout-index mergetool: Add a test for running mergetool in a sub-directory mergetool: fix running mergetool in sub-directories Christian Couder (1): sha1_file: make "read_object" static Clemens Buchacher (2): clean up pathspec matching remove pathspec_match, use match_pathspec instead David Aguilar (4): contrib: add 'git difftool' for launching common merge tools difftool: fix documentation problems difftool: put the cursor on the editable file for Vim contrib/difftool: Don't repeat merge tool candidates David M. Syzdek (1): autoconf: Enable threaded delta search when pthreads are supported Eric Wong (6): git-svn: add --authors-file test git-svn: handle empty files marked as symlinks in SVN git-svn: better attempt to handle broken symlink updates git-svn: fix SVN 1.1.x compatibility git-svn: avoid importing nested git repos git-svn: fix memory leak when checking for empty symlinks Fabian Emmes (2): cvsserver: add option to configure commit message cvsserver: change generation of CVS author names Giuseppe Bilotta (16): gitweb: add patch view gitweb: change call pattern for git_commitdiff gitweb: add patches view gitweb: link to patch(es) view in commit(diff) and (short)log view gitweb: use href() when generating URLs in OPML gitweb: don't use pathinfo for global actions gitweb: suggest name for OPML view gitweb: channel image in rss feed gitweb: feed generator metadata gitweb: rss feed managingEditor gitweb: rss channel date gitweb: last-modified time should be commiter, not author gitweb: check if-modified-since for feeds gitweb: make static files accessible with PATH_INFO gitweb: webserver config for PATH_INFO gitweb: align comments to code Jake Goulding (3): Make opt_parse_with_commit() non-static Make has_commit() non-static git-tag: Add --contains option Jakub Narębski (4): gitweb: Move 'lineno' id from link to row element in git_blame gitweb: A bit of code cleanup in git_blame() gitweb: cache $parent_commit info in git_blame() gitweb: Update README that gitweb works better with PATH_INFO Jay Soffian (2): git-am: minor cleanups Makefile: minor improvements for Mac OS X (Darwin) Jeff King (10): Makefile: clean up TEST_PROGRAMS definition color: make it easier for non-config to parse color specs expand --pretty=format color options diff: refactor tempfile cleanup handling chain kill signals for cleanup functions refactor signal handling for cleanup functions pager: do wait_for_pager on signal death validate_headref: tighten ref-matching to just branches symbolic ref: refuse non-ref targets in HEAD t0005: use SIGTERM for sigchain test Johannes Gilger (1): mergetool: Don't repeat merge tool candidates Johannes Schindelin (24): Force t5302 to use a single thread Introduce commit notes Add a script to edit/inspect notes git wrapper: Make while loop more reader-friendly bundle: allow rev-list options to exclude annotated tags show <tag>: reuse pp_user_info() instead of duplicating code Implement the patience diff algorithm Introduce the diff option '--patience' bash completions: Add the --patience option Speed up git notes lookup Add an expensive test for git-notes Add color_fwrite_lines(), a function coloring each line individually color-words: refactor word splitting and use ALLOC_GROW() color-words: change algorithm to allow for 0-character word boundaries color-words: take an optional regular expression describing words Fix parsing of @{-1}@{1} rebase -i --root: fix check for number of arguments t3404 & t3411: undo copy&paste lib-rebase.sh: Document what set_fake_editor() does test-lib.sh: introduce test_commit() and test_merge() helpers Simplify t3410 Simplify t3411 Simplify t3412 Fix 'git diff --no-index' with a non-existing symlink target Johannes Sixt (2): Windows: Fix signal numbers Windows: Fix intermittent failures of t7701 Jon Loeliger (1): Fix Documentation typos surrounding the word 'handful'. Jonas Flodén (1): git-am: Make it easier to see which patch failed Junio C Hamano (26): Document "git-reset --merge" Start 1.6.2 cycle Resurrect "git apply --flags -" to read from the standard input git-am: add --directory=<dir> option Update 1.6.2 draft release notes git-am: fix shell quoting checkout: implement "@{-N}" shortcut name for N-th last branch git-am: re-fix the diag message printing interpret_nth_last_branch(): avoid traversing the reflog twice Fix reflog parsing for a malformed branch switching entry interpret_nth_last_branch(): plug small memleak Introduce for_each_recent_reflog_ent(). Simplify parsing branch switching events in reflog http-push.c: style fixes am: Add --committer-date-is-author-date option rebase -i: correctly remember --root flag across --continue tests: Avoid single-shot environment export for shell function invocation Update draft release notes to 1.6.2 fsck: HEAD is part of refs fsck: check loose objects from alternate object stores by default http-push.c: get_remote_object_url() is only used under USE_CURL_MULTI receive-pack: explain what to do when push updates the current branch t3412: further simplify setting of GIT_EDITOR tests: fix test_commit() for case insensitive filesystems Makefile: fix misdetection of relative pathnames GIT 1.6.2-rc0 Keith Cascio (1): test more combinations of ignore-whitespace options to diff Kirill Smelkov (1): mailinfo: cleanup extra spaces for complex 'From:' Kjetil Barvik (6): Cleanup of unused symcache variable inside diff-lib.c lstat_cache(): more cache effective symlink/directory detection lstat_cache(): introduce has_symlink_or_noent_leading_path() function lstat_cache(): introduce has_dirs_only_path() function lstat_cache(): introduce invalidate_lstat_cache() function lstat_cache(): introduce clear_lstat_cache() function Lee Marlow (2): bash completion: Add '--intent-to-add' long option for 'git add' bash completion: Use 'git add' completions for 'git stage' Linus Torvalds (1): Add 'merge' mode to 'git reset' Marcel Koeppen (1): git-svn: Show UUID in svn info for added directories with svn 1.5.5 Markus Heidelberg (10): git-cherry: make <upstream> parameter optional Documentation: clarify which parameters are optional to git-cherry contrib/vim: change URL to point to the latest syntax files Documentation: let asciidoc align related options mergetool: put the cursor on the editable file for Vim contrib/difftool: change trap condition from SIGINT to INT contrib/difftool: remove distracting 'echo' in the SIGINT handler use uppercase POSIX compliant signals for the 'trap' command bash completion: add 'rename' subcommand to git-remote contrib/difftool: add support for Kompare Matt Kraai (1): gitweb: unify boolean feature subroutines Michele Ballabio (1): git-shortlog.txt: fix example about .mailmap Miklos Vajna (3): Add support for a pdf version of the user manual parse-opt: migrate builtin-apply. gittutorial: remove misleading note Nanako Shiraishi (3): git-am: Add --ignore-date option Mention "local convention" rule in the CodingGuidelines git-bundle doc: update examples Nicolas Pitre (2): autodetect number of CPUs by default when using threads pack-objects: don't use too many threads with few objects Pascal Obry (1): config.mak.in: define paths without trailing slash Pete Harlan (1): git-svn: Add --localtime option to "fetch" Pierre Habouzit (1): filter-branch: add git_commit_non_empty_tree and --prune-empty. Ralf Wildenhues (1): Fix naming scheme for configure cache variables. René Scharfe (9): diff: add option to show context between close hunks strbuf: instate cleanup rule in case of non-memory errors grep -w: forward to next possible position after rejected match grep: don't call regexec() for fixed strings Add ctype test Reformat ctype.c Change NUL char handling of isspecial() Add is_regex_special() Optimize color_parse_mem SZEDER Gábor (4): bash: add '--merge' to 'git reset' bash: remove unnecessary checks for long options with argument bash: add missing format-patch command line options bash: refactor 'git log --pretty=<format>' options Santi Béjar (2): commit: more compact summary and without extra quotes tutorial-2: Update with the new "git commit" ouput Serge van den Boom (1): Makefile: Make 'configure --with-expat=path' actually work Stefan Karpinski (2): git-cvsserver: handle CVS 'noop' command. git-cvsserver: run post-update hook *after* update. Steffen Prohaska (6): Move computation of absolute paths from Makefile to runtime (in preparation for RUNTIME_PREFIX) git_extract_argv0_path(): Move check for valid argv0 from caller to callee Add calls to git_extract_argv0_path() in programs that call git_config_* Modify setup_path() to only add git_exec_path() to PATH Compute prefix at runtime if RUNTIME_PREFIX is set Windows: Revert to default paths and convert them by RUNTIME_PREFIX Stephan Beyer (5): checkout: don't crash on file checkout before running post-checkout hook Move run_hook() from builtin-commit.c into run-command.c (libgit) api-run-command.txt: talk about run_hook() run_hook(): check the executability of the hook before filling argv run_hook(): allow more than 9 hook arguments Steve Haslam (1): Refactor git_set_argv0_path() to git_extract_argv0_path() Sverre Rabbelier (1): Allow cloning an empty repository Tay Ray Chuan (4): http-push: refactor lock-related headers creation for curl requests http-push: refactor request url creation http-push: add back underscore separator before lock token http-push: wrap signature of get_remote_object_url Ted Pavlic (4): bash-completion: Support running when set -u is enabled bash-completion: Try bash completions before simple filetype bash-completion: Add comments to remind about required arguments make: Remove -pthread on Darwin (it is included by cstdlib). Teemu Likonen (3): Fix the building of user-manual.texi and gitman.texi documents Fix the building of gitman.info document diff-options.txt: Fix asciidoc markup issue Thomas Rast (23): rebase -i: execute hook only after argument checking rebase: learn to rebase root commit rebase -i: learn to rebase root commit rebase: update documentation for --root notes: fix core.notesRef documentation color-words: enable REG_NEWLINE to help user color-words: expand docs with precise semantics color-words: make regex configurable via attributes sha1_name: tweak @{-N} lookup sha1_name: support @{-N} syntax in get_sha1() checkout: implement "-" abbreviation, add docs and tests bash completion: move pickaxe options to log bash completion: refactor diff options t1505: remove debugging cruft t3412: clean up GIT_EDITOR usage t3412: use log|name-rev instead of log --graph bash: offer to show (un)staged changes add -p: change prompt separator for 'g' add -p: trap Ctrl-D in 'goto' mode contrib git-resurrect: find traces of a branch name and resurrect it add -p: prompt for single characters add -p: print errors in separate color add -p: import Term::ReadKey with 'require' Tor Arne Vestbø (1): git-notes: fix printing of multi-line notes Vitaly "_Vi" Shukela (3): git-svn: add --ignore-paths option for fetching git-svn: documented --ignore-paths git-svn: Add test for --ignore-paths parameter William Pursell (5): Add subroutine to display one-line summary of hunks Add 'g' command to go to a hunk git-add -i/-p: Change prompt separater from slash to comma Add / command in add --patch In add --patch, Handle K,k,J,j slightly more gracefully. jidanni@jidanni.org (1): git-show-branch doc: show -g as synonym to --reflog in the list martin f. krafft (1): git-am: implement --reject option passed to git-apply Version v1.6.1.4; changes since v1.6.1.3: ----------------------------------------- Allan Caffee (3): Documentation: update graph api example. builtin-merge: fix a typo in an error message Documentation: fix a grammatical error in api-builtin.txt Björn Steinbrink (2): tree_entry_interesting: a pathspec only matches at directory boundary process_{tree,blob}: Remove useless xstrdup calls Brandon Casey (7): t7700-repack: add two new tests demonstrating repacking flaws git-repack.sh: don't use --kept-pack-only option to pack-objects pack-objects: only repack or loosen objects residing in "local" packs Remove --kept-pack-only option and associated infrastructure git-branch: display "was sha1" on branch deletion rather than just "sha1" t7700: demonstrate repack flaw which may loosen objects unnecessarily pack-objects: don't loosen objects available in alternate or kept packs Chris Johnsen (1): builtin-revert.c: release index lock when cherry-picking an empty commit Christian Couder (3): rev-list: fix showing distance when using --bisect-all bisect: fix quoting TRIED revs when "bad" commit is also "skip"ped bisect: fix another instance of eval'ed string Dan McGee (1): git-repack: use non-dashed update-server-info Daniel Cheng (aka SDiZ) (2): Fix bash completion in path with spaces State the effect of filter-branch on graft explicitly Danijel Tasov (1): added missing backtick in git-apply.txt David Aguilar (1): everyday: use the dashless form of git-init David J. Mellor (1): Documentation: minor grammatical fixes. Elijah Newren (2): fast-export: ensure we traverse commits in topological order Ensure proper setup of git_dir for git-hash-object Emil Sit (1): test-lib: Clean up comments and Makefile. Eric Kidd (1): filter-branch: Fix fatal error on bare repositories Finn Arne Gangstad (1): Support "\" in non-wildcard exclusion entries Frank Lichtenheld (1): init: Do not segfault on big GIT_TEMPLATE_DIR environment variable Geoffrey Thomas (2): utf8: add utf8_strwidth() builtin-blame.c: Use utf8_strwidth for author's names Gerrit Pape (1): Documentation/git-push: --all, --mirror, --tags can not be combined Holger Weiß (1): Documentation: Remove an odd "instead" Jason Merrill (1): Documentation: clarify .gitattributes search Jay Soffian (2): builtin-remote: make rm() use properly named variable to hold return value builtin-remote: make rm operation safer in mirrored repository Jeff King (5): git: s/run_command/run_builtin/ run_command(): handle missing command errors more gracefully run_command(): help callers distinguish errors git: use run_command() to execute dashed externals commit: abort commit if interactive add failed Johannes Schindelin (3): Fix submodule squashing into unrelated commit filter-branch: do not consider diverging submodules a 'dirty worktree' import-zips: fix thinko Johannes Sixt (6): Make test-path-utils more robust against incorrect use Move sanitary_path_copy() to path.c and rename it to normalize_path_copy() Test and fix normalize_path_copy() Remove unused normalize_absolute_path() Propagate --exec-path setting to external commands via GIT_EXEC_PATH diff --no-index: Do not generate patch output if other output is requested Junio C Hamano (19): revision traversal: allow UNINTERESTING objects to be missing rebase -i squashes submodule changes into unrelated commit add -u: do not fail to resolve a path as deleted revision traversal and pack: notice and die on missing commit Make repack less likely to corrupt repository Prepare for 1.6.1.4. tests: fix "export var=val" Make sure objects/pack exists before creating a new pack git-repack: resist stray environment variable has_sha1_pack(): refactor "pretend these packs do not exist" interface has_sha1_kept_pack(): take "struct rev_info" Consolidate ignore_packed logic more Simplify is_kept_pack() is_kept_pack(): final clean-up blame: read custom grafts given by -S before calling setup_revisions() diff --cached: do not borrow from a work tree when a path is marked as assume-unchanged match_tree_entry(): a pathspec only matches at directory boundaries diff -c -p: do not die on submodules GIT 1.6.1.4 Kirill Smelkov (4): mailinfo: correctly handle multiline 'Subject:' header mailinfo: 'From:' header should be unfold as well mailinfo: add explicit test for mails like '<a.u.thor@example.com> (A U Thor)' mailinfo: tests for RFC2047 examples Linus Torvalds (3): close_sha1_file(): make it easier to diagnose errors process_{tree,blob}: Remove useless xstrdup calls grep: fix segfault when "git grep '('" is given Markus Heidelberg (1): doc/git-daemon: add missing arguments to options Matt McCutchen (1): gitweb: add $prevent_xss option to prevent XSS by repository content Matthieu Moy (4): Document git blame --reverse. More friendly message when locking the index fails. git-checkout.txt: fix incorrect statement about HEAD and index git-checkout.txt: clarify that <branch> applies when no path is given. Michael Spang (1): Skip timestamp differences for diff --no-index Mike Ralphson (1): Fix odb_mkstemp() on AIX Nico -telmich- Schottelius (1): git-tag(1): add hint about commit messages Nicolas Pitre (1): avoid possible overflow in delta size filtering computation René Scharfe (1): Fix GIT_CEILING_DIRECTORIES on Windows Shawn O. Pearce (2): Clear the delta base cache during fast-import checkpoint Clear the delta base cache if a pack is rebuilt Stephen Boyd (1): test-genrandom: Add newline to usage string Thomas Jarosch (1): Fix buffer overflow in config parser Thomas Rast (2): Documentation: format-patch --root clarifications bash completion: only show 'log --merge' if merging Todd Zullinger (1): Documentation: Note file formats send-email accepts Version v1.6.1.3; changes since v1.6.1.2: ----------------------------------------- Anders Melchiorsen (2): Documentation: more git push examples Documentation: rework src/dst description in git push David J. Mellor (1): Fixed broken git help -w when installing from RPM Guanqun Lu (2): fix typo in Documentation add test-dump-cache-tree in Makefile Johannes Schindelin (2): revision walker: include a detached HEAD in --all apply: fix access to an uninitialized mode variable, found by valgrind Junio C Hamano (6): bundle: allow the same ref to be given more than once Documentation: simplify refspec format description diff.c: output correct index lines for a split diff builtin-apply.c: do not set bogus mode in check_preimage() for deleted path grep: pass -I (ignore binary) down to external grep GIT 1.6.1.3 Keith Cascio (2): test more combinations of ignore-whitespace options to diff Fix combined use of whitespace ignore options to diff Linus Torvalds (1): Wrap inflate and other zlib routines for better error reporting Matthieu Moy (3): Missing && in t/t7001.sh. Add a testcase for "git mv -f" on untracked files. builtin-mv.c: check for unversionned files before looking at the destination. René Scharfe (1): merge: fix out-of-bounds memory access SZEDER Gábor (1): Fix gitdir detection when in subdir of gitdir Stefan Naewe (1): urls.txt: document optional port specification in git URLS William Pursell (1): User-manual: "git stash <comment>" form is long gone Version v1.6.1.2; changes since v1.6.1.1: ----------------------------------------- Björn Steinbrink (1): Rename detection: Avoid repeated filespec population Jeff King (1): avoid 31-bit truncation in write_loose_object Johannes Schindelin (2): get_sha1_basic(): fix invalid memory access, found by valgrind test-path-utils: Fix off by one, found by valgrind Junio C Hamano (4): ls-tree: add --full-tree option Teach format-patch to handle output directory relative to cwd send-pack: do not send unknown object name from ".have" to pack-objects GIT 1.6.1.2 Marcel M. Cary (1): git-sh-setup: Fix scripts whose PWD is a symlink to a work-dir on OS X Markus Heidelberg (2): git-commit: color status output when color.ui is set git-status -v: color diff output when color.ui is set Nanako Shiraishi (1): Document git-ls-tree --full-tree Nguyễn Thái Ngọc Duy (2): grep: support --no-ext-grep to test builtin grep grep: grep cache entries if they are "assume unchanged" Nicolas Pitre (1): objects to be pruned immediately don't have to be loosened Version v1.6.1.1; changes since v1.6.1: --------------------------------------- Adeodato Simó (2): git-shortlog.txt: improve documentation about .mailmap files git-send-email.txt: move --format-patch paragraph to a proper location Anders Melchiorsen (4): Documentation: git push repository can also be a remote Documentation: remove a redundant elaboration Documentation: mention branches rather than heads Documentation: avoid using undefined parameters Boyd Stephen Smith Jr (1): Fix Documentation for git-describe Christian Couder (1): builtin-fsck: fix off by one head count Clemens Buchacher (4): modify/delete conflict resolution overwrites untracked file unpack-trees: handle failure in verify_absent unpack-trees: fix path search bug in verify_absent unpack-trees: remove redundant path search in verify_absent Devin Doucette (1): gitweb: Fix export check in git_get_projects_list Felipe Contreras (1): fast-import: Cleanup mode setting. Henrik Austad (2): Use capitalized names where appropriate Be consistent in switch usage for tar Jay Soffian (1): Git.pm: call Error::Simple() properly Joey Hess (1): README: tutorial.txt is now called gittutorial.txt Johannes Schindelin (7): merge-recursive: mark rename/delete conflict as unmerged bisect view: call gitk if Cygwin's SESSIONNAME variable is set git add: do not add files from a submodule http-push: fix off-by-path_len http-push: when making directories, have a trailing slash in the path name t5540: clarify that http-push does not handle packed-refs on the remote Rename diff.suppress-blank-empty to diff.suppressBlankEmpty Junio C Hamano (8): merge-recursive: do not clobber untracked working tree garbage Prepare for v1.6.1.1 maintenance release builtin-apply: prevent non-explicit permission changes git checkout: do not allow switching to a tree-ish that is not a commit format-patch: show patch text for the root commit Update draft release notes to 1.6.1.1 Update draft release notes for 1.6.1.1 GIT 1.6.1.1 Kirill A. Korinskiy (1): http-push: support full URI in handle_remote_ls_ctx() Lars Noschinski (1): shell: Document that 'cvs server' is a valid command Markus Heidelberg (2): doc/git-send-email: mention sendemail.cc config variable Documentation: let asciidoc align related options Michael J Gruber (2): add test cases for "git mv -k" fix handling of multiple untracked files for git mv -k Miklos Vajna (2): fast-export: print usage when no options specified Make t3411 executable Paul Jarc (1): configure clobbers LDFLAGS Philippe Bruhat (1): Git.pm: correctly handle directory name that evaluates to "false" Pierre Habouzit (1): Avoid spurious error messages on error mistakes. René Scharfe (8): daemon: handle freopen() failure daemon: cleanup: replace loop with if daemon: cleanup: factor out xstrdup_tolower() merge-file: handle freopen() failure pretty: factor out skip_empty_lines() pretty: factor out format_subject() pretty: support multiline subjects with format: shortlog: handle multi-line subjects like log --pretty=oneline et. al. do Shawn O. Pearce (1): describe: Avoid unnecessary warning when using --all Stephan Beyer (5): t3501: check that commits are actually done t3404: Add test case for aborted --continue after "edit" t3404: Add test case for auto-amending only edited commits after "edit" builtin-commit.c: do not remove COMMIT_EDITMSG githooks.txt: add missing word Thomas Rast (3): diff: accept -- when using --no-index diff --no-index: test for pager after option parsing diff --no-index -q: fix endless loop jidanni@jidanni.org (4): Documentation/diff-options.txt: unify options Documentation/git-tag.txt: minor typo and grammar fix Documentation/git-push.txt: minor: compress one option contrib/examples/README: give an explanation of the status of these files Version v1.6.1; changes since v1.6.1-rc4: ----------------------------------------- Johannes Schindelin (1): rebase -i -p: leave a --cc patch when a merge could not be redone Johannes Sixt (2): Show a failure of rebase -p if the merge had a conflict rebase -i -p: Fix --continue after a merge could not be redone Junio C Hamano (1): GIT 1.6.1 Miklos Vajna (1): t9129: skip the last three tests if UTF-8 locale is not available Version v1.6.1-rc4; changes since v1.6.1-rc3: --------------------------------------------- Alexander Gavrilov (2): git-gui: Fix handling of relative paths in blame. git-gui: Fix commit encoding handling. Arjen Laarhoven (1): Enable threaded delta search on Mac OS X/Darwin Boyd Stephen Smith Jr (1): git-revert documentation: refer to new HOWTO on reverting faulty merges Christian Stimming (3): git-gui: Update German (completed) translation. gitk: Mark forgotten strings (header sentence parts in color chooser) for translation gitk: Update German translation David Aguilar (1): git-mergetool: properly handle "git mergetool -- filename" Fredrik Skolmli (1): git-gui: Starting translation for Norwegian Giuseppe Bilotta (1): gitk: Map / to focus the search box Johannes Schindelin (3): fast-import: close pack before unlinking it git-gui: Get rid of the last remnants of GIT_CONFIG_LOCAL fast-export: deal with tag objects that do not have a tagger Johannes Sixt (3): gitk: Use check-buttons' -text property instead of separate labels gitk: Ensure that "Reset branch" menu entry is enabled gitk: Force the focus to the main window on Windows Junio C Hamano (12): git-show: do not segfault when showing a bad tag pager: do not dup2 stderr if it is already redirected gitweb: do not run "git diff" that is Porcelain GIT 1.5.4.7 gitweb: do not run "git diff" that is Porcelain make_absolute_path(): check bounds when seeing an overlong symlink builtin-blame.c: use strbuf_readlink() combine-diff.c: use strbuf_readlink() fast-import: make tagger information optional Make sure lockfiles are unlocked when dying on SIGPIPE send-email: futureproof split_addrs() sub GIT 1.6.1-rc4 Kevin Ballard (1): gitk: Allow unbalanced quotes/braces in commit headers Kirill A. Korinskiy (1): Remove the requirement opaquelocktoken uri scheme Lee Marlow (2): bash completion: Sort config completion variables bash completion: Sync config variables with their man pages Linus Torvalds (5): Add generic 'strbuf_readlink()' helper function Make 'ce_compare_link()' use the new 'strbuf_readlink()' Make 'index_path()' use 'strbuf_readlink()' Make 'diff_populate_filespec()' use the new 'strbuf_readlink()' Make 'prepare_temp_file()' ignore st_size for symlinks Marcel M. Cary (1): git-sh-setup: Fix scripts whose PWD is a symlink into a git work-dir Markus Heidelberg (7): Documentation: fix description for enabling hooks doc/git-reset: add reference to git-stash Documentation: sync example output with git output Documentation: fix typos, grammar, asciidoc syntax Documentation: fix typos, grammar, asciidoc syntax Documentation/git-show-branch: work around "single quote" typesetting glitch doc/git-fsck: change the way for getting heads' SHA1s Michael J Gruber (1): test overlapping ignore patterns Michele Ballabio (1): git gui: update Italian translation Miklos Vajna (4): git-gui: Update Hungarian translation for 0.12 git-daemon documentation: use {tilde} githooks documentation: add a note about the +x mode SubmittingPatches: mention the usage of real name in Signed-off-by: lines Nanako Shiraishi (3): git-gui: Update Japanese translation for 0.12 Clarify documentation of "git checkout <tree-ish> paths" syntax Add a documentat on how to revert a faulty merge Paul Mackerras (1): gitk: Fix bugs in blaming code Peter Krefting (2): git-gui: Updated Swedish translation (515t0f0u). git-gui: Fixed typos in Swedish translation. René Scharfe (3): Fix type-mismatch compiler warning from diff_populate_filespec() connect.c: stricter port validation, silence compiler warning fast-import.c: stricter strtoul check, silence compiler warning Richard Hartmann (2): Make help entries alphabetical Always show which directory is not a git repository Robin Rosenberg (1): git-revert: record the parent against which a revert was made Shawn O. Pearce (2): git-gui: Update po template to include 'Mirroring %s' message git-gui 0.12 Wu Fengguang (1): git-send-email: handle email address with quoted comma Version v1.6.1-rc3; changes since v1.6.1-rc2: --------------------------------------------- Alexander Gavrilov (1): Documentation: Describe git-gui Tools menu configuration options. Alexander Potashev (2): Fix typos in documentation Fix typo in comment in builtin-add.c Alexey Borzenkov (1): Define linkgit macro in [macros] section Brandon Casey (1): git-branch: display sha1 on branch deletion Deskin Miller (1): git-svn: Make following parents atomic Jakub Narębski (1): gitweb: Fix bug in insert_file() subroutine Jeff King (5): reorder ALLOW_TEXTCONV option setting diff: allow turning on textconv explicitly for plumbing diff: fix handling of binary rewrite diffs diff: respect textconv in rewrite diffs rebase: improve error messages about dirty state Jim Meyering (1): git-config.txt: fix a typo Johannes Schindelin (1): Get rid of the last remnants of GIT_CONFIG_LOCAL Junio C Hamano (4): builtin-checkout.c: check error return from read_cache() read-cache.c: typofix in comment work around Python warnings from AsciiDoc Fix t4031 Linus Torvalds (1): fsck: reduce stack footprint Markus Heidelberg (1): builtin-commit: remove unused message variable Nicolas Pitre (1): make sure packs to be replaced are closed beforehand Ralf Wildenhues (1): Improve language in git-merge.txt and related docs Tor Arvid Lund (1): git-p4: Fix regression in p4Where method. YONETANI Tomokazu (1): git-fast-import possible memory corruption problem Version v1.6.1-rc2; changes since v1.6.1-rc1: --------------------------------------------- Alex Riesen (3): Make some of fwrite/fclose/write/close failures visible Make chdir failures visible Report symlink failures in merge-recursive Alexander Gavrilov (2): gitk: Make line origin search update the busy status gitk: Add a menu option to start git gui Christian Couder (2): bisect: fix "git bisect skip <commit>" and add tests cases Documentation: describe how to "bisect skip" a range of commits Christian Stimming (1): gitk: Update German translation Davide Libenzi (1): xdiff: give up scanning similar lines early Deskin Miller (1): git-svn: Make branch use correct svn-remote Giuseppe Bilotta (2): gitweb: make gitweb_check_feature a boolean wrapper Update comment on gitweb_check/get_feature Jakub Narębski (2): gitweb: Fix handling of non-ASCII characters in inserted HTML files gitweb: Make project specific override for 'grep' feature work Jeff King (2): add stage to gitignore tag: delete TAG_EDITMSG only on successful tag Johannes Sixt (1): t4030-diff-textconv: Make octal escape sequence more portable Junio C Hamano (17): builtin-rm.c: explain and clarify the "local change" logic git add --intent-to-add: fix removal of cached emptiness git add --intent-to-add: do not let an empty blob be committed by accident gitweb: fix 'ctags' feature check and others gitweb: rename gitweb_check_feature to gitweb_get_feature Makefile: introduce NO_PTHREADS Install git-stage in exec-path git-am --whitespace: do not lose the command line option git-am: propagate -C<n>, -p<n> options as well git-am: propagate --3way options as well Test that git-am does not lose -C/-p/--whitespace options git-am: rename apply_opt_extra file to apply-opt Update draft release notes to 1.6.1 GIT 1.6.0.5 Update draft release notes for 1.6.1 Revert "git-stash: use git rev-parse -q" Point "stale" 1.6.0.5 documentation from the main git documentation page Linus Torvalds (1): Add backslash to list of 'crud' characters in real name Mark Burton (1): git-gui: Teach start_push_anywhere_action{} to notice when remote is a mirror. Matt McCutchen (1): "git diff <tree>{3,}": do not reverse order of arguments Miklos Vajna (8): User's Manual: remove duplicated url at the end of Appendix B git-stash: use git rev-parse -q filter-branch: use git rev-parse -q lost-found: use git rev-parse -q pull: use git rev-parse -q rebase: use git rev-parse -q submodule: use git rev-parse -q http.c: use 'git_config_string' to get 'curl_http_proxy' Nguyễn Thái Ngọc Duy (1): Extend index to save more flags Paul Mackerras (3): gitk: Fix context menu items for generating diffs when in tree mode gitk: Highlight only when search type is "containing:". gitk: Fix bug in accessing undefined "notflag" variable Scott Chacon (1): Add a built-in alias for 'stage' to the 'add' command Thomas Rast (1): fetch-pack: Avoid memcpy() with src==dst Tor Arvid Lund (1): git-p4: Fix bug in p4Where method. Version v1.6.1-rc1; changes since v1.6.0.6: ------------------------------------------- Abhijit Menon-Sen (1): Make cherry-pick use rerere for conflict resolution. Alex Riesen (11): Extend "checkout --track" DWIM to support more cases Remove calculation of the longest command name from where it is not used Remove useless memset of static command name lists in builtin-merge.c Make main_cmds and other_cmds local to builtin-help.c Allow git help work without PATH set list_commands: only call git_exec_path if it is needed Add help.autocorrect to enable/disable autocorrecting Cleanup remove_path Fix potentially dangerous uses of mkpath and git_path Fix handle leak in sha1_file/unpack_objects if there were damaged object data Fix t4030-diff-textconv.sh Alexander Gavrilov (58): git-gui: Support starting gitk from Gui Blame git-gui: Support passing blame to a parent commit. git-gui: Better positioning in Blame Parent Commit git-gui: Allow specifying an initial line for git gui blame. gitk: Add option to specify the default commit on command line gitk: Add menu item for calling git gui blame git-gui: Support resolving conflicts via the diff context menu. git-gui: Support calling merge tools. git-gui: Don't allow staging files with conflicts. git-gui: Support more merge tools. git-gui: Support conflict states _U & UT. git-gui: Reimplement and enhance auto-selection of diffs. git-gui: Make F5 reselect a diff, if an untracked file is selected. git-gui: Show special diffs for complex conflict cases. git-gui: Fix Blame Parent & Context for working copy lines. git-gui: Restore ability to Stage Working Copy for conflicts. gitk: Fix a bug in collapsing deeply nested trees git-gui: Add more integration options to citool. git-gui: Cleanup handling of the default encoding. git-gui: Add a menu of available encodings. git-gui: Allow forcing display encoding for diffs using a submenu. git-gui: Optimize encoding name resolution using a lookup table. git-gui: Support the encoding menu in gui blame. git-gui: Reenable staging unmerged files by clicking the icon. git-gui: Make Ctrl-T safe to use for conflicting files. git-gui: Fix the blame window shape. git-gui: Add a search command to the blame viewer. git-gui: Fix the blame viewer destroy handler. gitk: Enhance file encoding support gitk: Implement batch lookup and caching of encoding attrs gitk: Allow forcing branch creation if it already exists gitk: Fix file list context menu for merge commits builtin-blame: Reencode commit messages according to git-log rules. gitk: Allow starting gui blame for a specific line git-gui: Add a dialog that shows the OpenSSH public key. git-gui: Add a simple implementation of SSH_ASKPASS. Windows: Make OpenSSH properly detect tty detachment. gitweb: Use single implementation of export_ok check. gitweb: Add a per-repository authorization hook. gitweb: Fix mod_perl support. gitk: Add Return and Escape bindings to dialogs gitk: Make gitk dialog windows transient gitk: Make cherry-pick call git-citool on conflicts gitk: Implement a user-friendly Edit View dialog git-gui: Fix focus transition in the blame viewer. git-gui: Add the Show SSH Key item to the clone dialog. git-gui: Request blame metadata in utf-8. gitk: Add accelerators to frequently used menu commands gitk: Fix transient windows on Win32 and MacOS gitk: Fix commit encoding support Documentation: New GUI configuration and command-line options. git-gui: Implement system-wide configuration handling. git-gui: Fix the after callback execution in rescan. git-gui: Add a Tools menu for arbitrary commands. git-gui: Allow Tools request arguments from the user. git-gui: Implement automatic rescan after Tool execution. git-gui: Fix the search bar destruction handler. gitk: Avoid handling the Return key twice in Add Branch Alexandre Julliard (9): git.el: Improve error handling for commits. git.el: Remove the env parameter in git-call-process and git-call-process-string. git.el: Simplify handling of merge heads in the commit log-edit buffer. git.el: Properly handle merge commits in git-amend-commit. git.el: Fix git-amend-commit to support amending an initial commit. git.el: Never clear the status buffer, only update the files. git.el: Add an insert file command. git.el: Add possibility to mark files directly in git-update-status-files. git.el: Allow to commit even if there are no marked files. Anders Melchiorsen (2): wt-status: Split header generation into three functions wt-status: Teach how to discard changes in the working directory Andreas Ericsson (3): Teach "git diff -p" to locate PHP class methods git commit: Reformat output somewhat rebase: Support preserving merges in non-interactive mode Arjen Laarhoven (1): t6023-merge-file: Work around non-portable sed usage Bert Wesarg (1): for-each-ref: `:short` format for `refname` Brandon Casey (9): remote.c: add a function for deleting a refspec array and use it (twice) dir.c: Avoid c99 array initialization t4018-diff-funcname: test syntax of builtin xfuncname patterns diff.c: remove duplicate bibtex pattern introduced by merge 92bb9785 xdiff-interface.c: strip newline (and cr) from line before pattern matching Replace xmalloc/memset(0) pairs with xcalloc t9001: use older Getopt::Long boolean prefix '--no' rather than '--no-' Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializer t4018-diff-funcname: add objective-c xfuncname pattern to syntax test Brian Downing (4): Make xdi_diff_outf interface for running xdiff_outf diffs Use strbuf for struct xdiff_emit_state's remainder Always initialize xpparam_t to 0 Allow alternate "low-level" emit function from xdl_diff Brian Gernhardt (2): format-patch: autonumber by default Avoid using non-portable `echo -n` in tests. Cheng Renquan (2): git-remote: match usage string with the manual pages git-remote: add verbose mode to git remote update Christian Couder (10): merge-base: teach "git merge-base" to drive underlying merge_bases_many() bisect: test merge base if good rev is not an ancestor of bad rev bisect: only check merge bases when needed bisect: remove "checkout_done" variable used when checking merge bases refs: improve comments about "reading" argument of "resolve_ref" bisect: fix missing "exit" Documentation: user-manual: add information about "git help" at the beginning Documentation: tutorial: add information about "git help" at the beginning git-gui: french translation update bisect: teach "skip" to accept special arguments like "A..B" Christian Stimming (5): git-gui: Mark forgotten strings for translation. git-gui: I18n fix sentence parts into full sentences for translation again. git-gui: Updated German translation. gitk: Add untranslated error messages to translation git-gui: Update German translation. Dan Hensgen (1): git-merge documentation: more details about resolving conflicts Daniel Lowe (1): Fix non-literal format in printf-style calls David Aguilar (3): git-submodule: replace duplicated code with a module_list function git-submodule: add "sync" command tests: add a testcase for "git submodule sync" David Bryson (1): Use "git_config_string" to simplify "builtin-gc.c" code where "prune_expire" is set David M. Syzdek (5): Build: add NO_UINTMAX_T to support ancient systems Add Makefile check for FreeBSD 4.9-SECURITY autoconf: Add link tests to each AC_CHECK_FUNC() test Make Pthread link flags configurable Add autoconf tests for pthreads David Soria Parra (1): cast pid_t's to uintmax_t to improve portability David Symonds (1): git-diff: Add --staged as a synonym for --cached. Davide Libenzi (1): xdiff: give up scanning similar lines early Deskin Miller (4): git-svn: testcase for partial rebuild git-svn: do a partial rebuild if rev_map is out-of-date git-svn: proper detection of bare repositories git-svn: proper detection of bare repositories Dmitry Potapov (14): teach index_fd to work with pipes correct argument checking test for git hash-object correct usage help string for git-hash-object use parse_options() in git hash-object add --path option to git hash-object add --no-filters option to git hash-object mingw: remove use of _getdrive() from lstat/fstat add have_git_dir() function mingw: move common functionality to win32.h cygwin: Use native Win32 API for stat do not segfault if make_cache_entry failed print an error message for invalid path check-attr: add an internal check_attr() function check-attr: Add --stdin option Dotan Barak (1): Use xmalloc() and friends to catch allocation failures Eric Wong (7): git-svn: check error code of send_txstream t9124: clean up chdir usage git-svn: fix handling of even funkier branch names git-svn: don't escape tilde ('~') for http(s) URLs git-svn: respect i18n.commitencoding config git-svn: don't escape tilde ('~') for http(s) URLs git-svn: respect i18n.commitencoding config Florian Ragwitz (1): Add git-svn branch to allow branch creation in SVN repositories Florian Weimer (3): git-svn: extract base blob in generate_diff git-svn: Introduce SVN::Git::Editor::_chg_file_get_blob git-svn: Send deltas during commits Fredrik Skolmli (1): Documentation: Spelling fix Garry Dolley (1): Fixed some grammatical errors in git-rebase.txt documentation. Giovanni Funchal (1): configure: auto detect dynamic library path switches Giuseppe Bilotta (12): gitweb: ref markers link to named shortlogs gitweb: shortlog now also obeys $hash_parent gitweb: refactor input parameters parse/validation gitweb: parse project/action/hash_base:filename PATH_INFO gitweb: generate project/action/hash URLs gitweb: use_pathinfo filenames start with / gitweb: parse parent..current syntax from PATH_INFO gitweb: generate parent..current URLs gitweb: make the supported snapshot formats array global gitweb: retrieve snapshot format from PATH_INFO gitweb: embed snapshot format parameter in PATH_INFO git-gui: try to provide a window icon under X Gustaf Hendeby (2): Update .gitignore to ignore git-help git-gui: Teach git gui about file type changes Heikki Orsila (1): diff --dirstat-by-file: count changed files, not lines Jakub Narębski (1): gitweb: Better processing format string in custom links in navbar Jan Krüger (1): Introduce receive.denyDeletes Jeff King (28): run-command: add pre-exec callback spawn pager via run_command interface format-patch: use default diff format even with patch options tests: grep portability fixes reformat informational commit message tutorial: update output of git commit tests: shell negation portability fix t4012: use test_cmp instead of cmp diff: unify external diff and funcname parsing code diff: introduce diff.<driver>.binary diff: add filter for converting binary to text document "intent to add" option to git-add rm: loosen safety valve for empty files submodule: fix some non-portable grep invocations diff: add missing static declaration document the diff driver textconv feature refactor userdiff textconv code userdiff: require explicitly allowing textconv only textconv regular files wt-status: load diff ui config add userdiff textconv tests enable textconv for diff in verbose status/commit t5400: expect success for denying deletion t5516: refactor oddball tests receive-pack: detect push to current branch of non-bare repo define empty tree sha1 as a macro wt-status: refactor initial commit printing status: show "-v" diff even for initial commit Jim Meyering (4): add boolean diff.suppress-blank-empty config option SubmittingPatches: fix a typo reword --full-index description xdiff-interface.c: remove 10 duplicated lines Joey Hess (2): git-daemon: set REMOTE_ADDR to client address sha1_file: avoid bogus "file exists" error message Johan Herland (3): Teach "git diff -p" HTML funcname patterns Fix AsciiDoc errors in merge documentation Fix submodule sync with relative submodule URLs Johannes Schindelin (7): t9700: remove useless check tests: Clarify dependencies between tests, 'aggregate-results' and 'clean' Enable parallel tests checkout --track: make up a sensible branch name if '-b' was omitted test-lib: do not remove trash_directory if called with --debug git wrapper: DWIM mistyped commands Document levenshtein.c Johannes Sixt (11): Revert "Windows: Use a customized struct stat that also has the st_blocks member." filter-branch: Grok special characters in tag names Windows: git-shell can be compiled again compat/mingw: Support a timeout in the poll emulation if no fds are given git-gui: Do not automatically stage file after merge tool finishes git-gui: Remove space from the end of aspell's reply before processing git-gui: Fix switch statement in lib/merge.tcl git-gui: Show a round number of bytes of large untracked text files git-gui: Mark-up strings in show_{other,unmerged}_diff() for localization git-remote: list branches in vertical lists git-gui: Do not munge conflict marker lines in a normal diff John Chapman (2): git-p4: Support purged files and optimize memory usage git-p4: Cache git config for performance Jonas Fonseca (1): git-check-attr(1): use 'verse' for multi-line synopsis sections Jonathan del Strother (3): Revert "Convert output messages in merge-recursive to past tense." Add OS X support to the pre-auto-gc example hook Teach git diff about Objective-C syntax Joshua Williams (1): git-gui: Add support for calling out to the prepare-commit-msg hook Junio C Hamano (78): builtin-add.c: restructure the code for maintainability builtin-add.c: optimize -A option and "git add ." imap-send.c: more style fixes documentation: merge-base: explain "git merge-base" with more than 2 args merge-base-many: add trivial tests based on the documentation git-merge-octopus: use (merge-base A (merge B C D E...)) for stepwise merge revision.c: whitespace fix revision traversal: show full history with merge simplification Topo-sort before --simplify-merges update-index: refuse to add working tree items beyond symlinks add: refuse to add working tree items beyond symlinks xdiff-interface: hide the whole "xdiff_emit_state" business from the caller revision --simplify-merges: use decoration instead of commit->util field index: future proof for "extended" index entries tests: use $TEST_DIRECTORY to refer to the t/ directory Start 1.6.1 cycle Makefile: Allow CC_LD_DYNPATH to be overriden revision --simplify-merges: do not leave commits unprocessed revision --simplify-merges: make it a no-op without pathspec compat: introduce on_disk_bytes() shell: do not play duplicated definition games to shrink the executable Build-in "git-shell" Update draft release notes for 1.6.1 Fix "git-merge -s bogo" help text templates/Makefile: install is unnecessary, just use mkdir -p t7606: fix custom merge test Revert "Build-in "git-shell"" daemon.c: minor style fixup checkout -f: allow ignoring unmerged paths when checking out of the index checkout --ours/--theirs: allow checking out one side of a conflicting merge xdl_fill_merge_buffer(): separate out a too deeply nested function xdiff-merge: optionally show conflicts in "diff3 -m" style xmerge.c: minimum readability fixups xmerge.c: "diff3 -m" style clips merge reduction level to EAGER or less rerere.c: use symbolic constants to keep track of parsing states rerere: understand "diff3 -m" style conflicts with the original merge.conflictstyle: choose between "merge" and "diff3 -m" styles git-merge-recursive: learn to honor merge.conflictstyle checkout -m: recreate merge when checking out of unmerged index diff: vary default prefix depending on what are compared git commit --author=$name: look $name up in existing commits git-add --intent-to-add (-N) checkout --conflict=<style>: recreate merge in a non-default style git-merge documentation: describe how conflict is presented Update draft release notes for 1.6.1 safe_create_leading_directories(): make it about "leading" directories git-apply:--include=pathspec Update draft release notes for 1.6.1 daemon.c: avoid setlinebuf() is_directory(): a generic helper function receive-pack: make it a builtin push: prepare sender to receive extended ref information from the receiver push: receiver end advertises refs from alternate repositories Fix git-diff-tree --stdin diff: use extended regexp to find hunk headers diff: fix "multiple regexp" semantics to find hunk header comment Update draft release notes to 1.6.1 t5510: test "git fetch" following tags minimally Update draft release notes to 1.6.1 Fix reading of cloud tags Update draft release notes for 1.6.1 Fix mismerge at cdb22c4 in builtin-checkout.c rebase-i-p: minimum fix to obvious issues git-rebase--interactive.sh: comparision with == is bashism receive-pack: fix "borrowing from alternate object store" implementation compat/cygwin.c: make runtime detection of lstat/stat lessor impact Stop using compat/regex.c on platforms with working regexp library Update draft release notes to 1.6.1 Update draft release notes to 1.6.1 Update draft release notes to 1.6.1 t5303: work around printf breakage in dash t5303: fix printf format string for portability git.html: Update the links to stale versions Update draft release notes to 1.6.1 builtin-remote.c: plug a small memory leak in get_one_remote_for_updates() send-email: do not reverse the command line arguments Include git-gui--askpass in git-gui RPM package GIT 1.6.1-rc1 Karl Wiberg (4): Refactoring: Split up diff_tree_stdin diff-tree: Note that the commit ID is printed with --stdin Teach git diff-tree --stdin to diff trees Add test for diff-tree --stdin with two trees Kirill Smelkov (1): Teach "git diff -p" Python funcname patterns Lee Marlow (2): bash completion: Add 'workflows' to 'git help' workflows documentation: fix link to git-request-pull[1] Linus Torvalds (8): date/time: do not get confused by fractional seconds Add a 'source' decorator for commits revision: make tree comparison functions take commits rather than trees Make '--decorate' set an explicit 'show_decorations' flag revision traversal: '--simplify-by-decoration' Add cache preload facility Fix machine-parseability of 'git log --source' Fix index preloading for racy dirty case Marcel Koeppen (1): t9129-git-svn-i18n-commitencoding: Make compare_svn_head_with() compatible with OSX sed Marcus Griep (2): count-objects: Add total pack size to verbose output Update t/.gitignore to ignore all trash directories Marek Zawirski (1): Make push more verbose about illegal combination of options Mark Burton (2): Documentation: rev-list-options.txt: added --branches, --tags & --remotes. git-commit.txt - mention that files listed on the command line must be known to git. Mark Levedahl (5): git-submodule - Add 'foreach' subcommand git-submodule.sh - Remove trailing / from URL if found git-submodule.sh - Remove trailing / from URL if found git-submodule - Use "get_default_remote" from git-parse-remote compat/cygwin.c - Use cygwin's stat if core.filemode == true Markus Heidelberg (1): Makefile: add install-man rules (quick and normal) Marten Svanfeldt (dev) (2): Git.pm: Make _temp_cache use the repository directory git-svn: Update git-svn to use the ability to place temporary files within repository directory Matt McCutchen (2): "git diff <tree>{3,}": do not reverse order of arguments git-merge-recursive: honor merge.conflictstyle once again Matthias Kestenholz (1): bash-completion: Add all submodule subcommands to the completion list Michael J Gruber (3): allow installation of man and html doc from the man and html branches separate build targets for man and html documentation make prune report removed objects on -v Michael Witten (9): Docs: send-email's usage text and man page mention same options Docs: send-email usage text much sexier Docs: send-email: Man page option ordering send-email: change --no-validate to boolean --[no-]validate Docs: send-email: --chain_reply_to -> --[no-]chain-reply-to Docs: send-email: Remove unnecessary config variable description Docs: send-email: Create logical groupings for --help text Docs: send-email: Create logical groupings for man text send-email: signedoffcc -> signedoffbycc, but handle both Michele Ballabio (1): git gui: update Italian translation Mikael Magnusson (1): Correct output of git-count-objects. Mike Ralphson (1): gitweb: Sort the list of forks on the summary page by age Miklos Vajna (36): builtin-help: make some internal functions available to other builtins builtin-merge: allow using a custom strategy Add a new test for using a custom merge strategy Add a second testcase for handling invalid strategies in git-merge builtin-help: always load_command_list() in cmd_help() Builtin git-help. Split out merge_recursive() to merge-recursive.c merge-recursive: introduce merge_options builtin-merge: avoid run_command_v_opt() for recursive and subtree cherry-pick/revert: make direct internal call to merge_tree() merge-recursive: move call_depth to struct merge_options merge-recursive: get rid of the index_only global variable merge-recursive: move the global obuf to struct merge_options merge-recursive: move current_{file,directory}_set to struct merge_options merge-recursive: get rid of virtual_id builtin-merge: release the lockfile in try_merge_strategy() commit_tree(): add a new author parameter builtin-commit: use commit_tree() t7603: add new testcases to ensure builtin-commit uses reduce_heads() builtin-merge: refresh the index before calling a strategy builtin-commit: use reduce_heads() only when appropriate Cleanup in sha1_file.c::cache_or_unpack_entry() Implement git clone -v Add Linux PPC support to the pre-auto-gc example hook parse-opt: migrate builtin-checkout-index. Implement git remote rename remote: add a new 'origin' variable to the struct git-remote rename: migrate from remotes/ and branches/ git-remote: document the migration feature of the rename subcommand Update Hungarian translation. 100% completed. builtin-branch: use strbuf in delete_branches() builtin-branch: use strbuf in fill_tracking_info() builtin-branch: use strbuf in rename_branch() builtin-clone: use strbuf in guess_dir_name() builtin-clone: use strbuf in clone_local() and copy_or_link_directory() builtin_clone: use strbuf in cmd_clone() Nanako Shiraishi (22): t/t91XX-svn: start removing use of "git-" from these tests t/t91XX git-svn tests: run "git svn" not "git-svn" t9200: use "git cvsexportcommit" without dash t9300, t9301: use "git fast-import/fast-export" without dash t9700: use "git config" without dash tests: use "git foo" without dash in strings t9101: use "git hash-object" without dash Install git-cvsserver in $(bindir) remote.c: make free_ref(), parse_push_refspec() and free_refspecs() static. graph.c: make many functions static usage.c: remove unused functions Add contrib/rerere-train script dir.c: make dir_add_name() and dir_add_ignored() static run-command.c: remove run_command_v_opt_cd() config.c: make git_parse_long() static commit.c: make read_graft_file() static archive.c: make archiver static rebase --no-verify rebase: Document --no-verify option to bypass pre-rebase hook Document "git log --source" Document "git log --simplify-by-decoration" git-gui: update Japanese translation Neil Roberts (1): config.mak.in: Pass on LDFLAGS from configure Nicolas Pitre (18): sha1write: don't copy full sized buffers pack-objects: don't include missing preferred base objects t5300: improve SHA1 collision test fix openssl headers conflicting with custom SHA1 implementations index-pack: rationalize delta resolution code index-pack: smarter memory usage during delta resolution fix multiple issues in index-pack improve index-pack tests index-pack: don't leak leaf delta result close another possibility for propagating pack corruption better validation on delta base object offsets make unpack_object_header() non fatal make packed_object_info() resilient to pack corruptions make check_object() resilient to pack corruptions make find_pack_revindex() aware of the nasty world pack-objects: allow "fixing" a corrupted pack without a full repack extend test coverage for latest pack corruption resilience improvements pack-objects: don't leak pack window reference when splitting packs Paolo Bonzini (1): provide more errors for the "merge into empty head" case Paul Mackerras (17): gitk: Use <Button-2> for context menus on OSX gitk: Clean up file encoding code and add enable/disable option gitk: Fix binding for <Return> in sha1 entry field gitk: New way of constructing menus that allows for Alt+letter accelerators gitk: Regenerate .po files gitk: Turn short SHA1 names into links too gitk: Fix some off-by-one errors in computing which line to blame gitk: Add a menu item to show where a given line comes from gitk: Make the background color of marked lines configurable gitk: Unify handling of merge diffs with normal 2-way diffs gitk: Make "show origin of this line" work on fake commits gitk: Cope with unmerged files in local changes gitk: Improve cherry-pick error handling gitk: Fix linehtag undefined error with file highlighting gitk: Index line[hnd]tag arrays by id rather than row number gitk: Fix switch statement in parseviewargs gitk: Show local changes properly when we have a path limit Paul Talacko (1): git-svn: set auto_props when renaming files Pete Harlan (2): contrib/hooks/post-receive-email: Put rev display in separate function contrib/hooks/post-receive-email: Make revision display configurable Peter Krefting (1): Updated Swedish translation (514t0f0u). Peter Valdemar Mørch (2): Teach git log --check to return an appropriate exit code Teach git log --exit-code to return an appropriate exit code Petr Baudis (22): git-web--browse: Support for using /bin/start on MinGW git-gui: Clarify the Remote -> Delete... action git-gui: Squash populate_{push,fetch}_menu to populate_remotes_menu git-gui: Add support for adding remotes git-gui: Add support for removing remotes git-gui: mkdir -p when initializing new remote repository git-gui: Use git web--browser for web browsing git-gui: Add Explore Working Copy to the Repository menu git-gui: gui.autoexplore makes explorer to pop up automatically after picking git-gui: Avoid using the term URL when specifying repositories git-gui: Make input boxes in init/clone/open dialogs consistent git-gui: Fix removing non-pushable remotes git-gui: Fix fetching from remotes when adding them gitweb: Clean-up sorting of project list gitweb: Quote non-displayable characters in hex, not octal config.c: Tolerate UTF8 BOM at the beginning of config file gitweb: Identify all summary metadata table rows gitweb: Add support for extending the action bar with custom links gitweb: Support for tag clouds gitweb: Make the by_tag filter delve in forks as well gitweb: Support for simple project search form Do not rename read-only files during a push Pierre Habouzit (8): Enable threaded delta search on *BSD and Linux. parse-opt: migrate fmt-merge-msg. parse-opt: migrate git-merge-base. parse-opt: migrate builtin-merge-file. git send-email: make the message file name more specific. git send-email: interpret unknown files as revision lists git send-email: add --annotate option git send-email: ask less questions when --compose is used. Pieter de Bie (3): builtin-reflog: Allow reflog expire to name partial ref builtin-commit.c: show on which branch a commit was added git wrapper: also use aliases to correct mistyped commands Quy Tonthat (1): Update RPM spec for the new location of git-cvsserver. Ralf Wildenhues (2): Correct typos in RelNotes-1.6.1 Fix typos in the documentation. Raphael Zimmerer (1): git grep: Add "-z/--null" option as in GNU's grep. René Scharfe (15): log: add load_ref_decorations() move load_ref_decorations() to log-tree.c and export it add '%d' pretty format specifier to show decoration add alloc_ref_with_prefix() use alloc_ref_from_str() everywhere make alloc_ref_from_str() the new alloc_ref() blame: inline get_patch() add xdi_diff_hunks() for callers that only need hunk lengths blame: use xdi_diff_hunks(), get rid of struct patch add strbuf_expand_dict_cb(), a helper for simple cases merge-recursive: use strbuf_expand() instead of interpolate() daemon: use strbuf_expand() instead of interpolate() daemon: inline fill_in_extra_table_entries() daemon: deglobalize variable 'directory' remove the unused files interpolate.c and interpolate.h Richard Quirk (1): gitk: Bind Key-Return to create on new branch dialog Robert Shearman (4): git-imap-send: Allow the program to be run from subdirectories of a git tree git-imap-send: Support SSL imap-send.c: style fixes Documentation: Improve documentation for git-imap-send(1) Romain Francoise (1): builtin-help: fallback to GIT_MAN_VIEWER before man SZEDER Gábor (3): bash: use for-each-ref format 'refname:short' remove vim syntax highlighting in favor of upstream bash: complete full refs Samuel Tardieu (1): Fix deletion of last character in levenshtein distance Santi Béjar (1): rev-list documentation: clarify the two parts of history simplification Shawn O. Pearce (7): Make reflog query '@{1219188291}' act as '@{2008.8.19.16:24:51.-0700}' git-gui: Hide commit related UI during citool --nocommit git-gui: Use gitattribute "encoding" for file content display git-gui: Assume `blame --incremental` output is in UTF-8 git-gui: Show/hide "Sign Off" based on nocommitmsg option describe: Make --tags and --all match lightweight tags more often Update the po template Simon Hausmann (1): Make it possible to abort the submission of a change to Perforce Stephan Beyer (2): Fix commit_tree() buffer leak merge-recursive.c: Add more generic merge_recursive_generic() Stephen Haberman (8): rebase--interactive: fix parent rewriting for dropped commits rebase-i-p: test to exclude commits from todo based on its parents rebase-i-p: use HEAD for updating the ref instead of mapping OLDHEAD rebase-i-p: delay saving current-commit to REWRITTEN if squashing rebase-i-p: fix 'no squashing merges' tripping up non-merges rebase-i-p: only list commits that require rewriting in todo rebase-i-p: do not include non-first-parent commits touching UPSTREAM rebase-i-p: if todo was reordered use HEAD as the rewritten parent Stephen R. van den Berg (4): git-daemon: call logerror() instead of error() git-daemon: use LOG_PID, simplify logging code git-daemon: Simplify dead-children reaping logic git-daemon: rewrite kindergarden, new option --max-connections Teemu Likonen (1): bash completion: Add --[no-]validate to "git send-email" Thomas Rast (19): filter-branch: Extend test to show rewriting bug filter-branch: fix ref rewriting with --subdirectory-filter filter-branch: use --simplify-merges Documentation: rev-list-options: move --simplify-merges documentation rev-list: fix --reverse interaction with --parents t6013: replace use of 'tac' with equivalent Perl git svn: catch lack of upstream info for dcommit earlier git svn info: tests: let 'init' test run with SVN 1.5 git svn info: tests: do not use set -e git svn info: tests: use test_cmp instead of git-diff git svn info: tests: fix ptouch argument order in setup git svn info: make info relative to the current directory git svn info: always quote URLs in 'info' output git-svn: match SVN 1.5 behaviour of info' on unknown item git-svn: fix 'info' tests for unknown items Documentation: new upstream rebase recovery section in git-rebase Documentation: Refer to git-rebase(1) to warn against rewriting Documentation: remove stale howto/rebase-and-edit.txt Documentation: add manpage about workflows Tom Preston-Werner (1): connect.c: add a way for git-daemon to pass an error back to client Tommi Virtanen (1): Install git-shell in bindir, too Tor Arvid Lund (1): git-p4: Fix checkout bug when using --import-local. Trent Piepho (1): send-email: Fix Pine address book parsing Tuncer Ayaz (2): Teach/Fix pull/fetch -q/-v options Retain multiple -q/-v occurrences in git pull Version v1.6.0.6; changes since v1.6.0.5: ----------------------------------------- David Aguilar (1): git-mergetool: properly handle "git mergetool -- filename" Deskin Miller (1): git-svn: Make following parents atomic Jim Meyering (1): git-config.txt: fix a typo Johannes Schindelin (2): fast-import: close pack before unlinking it fast-export: deal with tag objects that do not have a tagger Junio C Hamano (6): work around Python warnings from AsciiDoc git-show: do not segfault when showing a bad tag pager: do not dup2 stderr if it is already redirected gitweb: do not run "git diff" that is Porcelain GIT 1.5.4.7 fast-import: make tagger information optional Linus Torvalds (1): fsck: reduce stack footprint Markus Heidelberg (1): Documentation: fix typos, grammar, asciidoc syntax Miklos Vajna (1): SubmittingPatches: mention the usage of real name in Signed-off-by: lines Nicolas Pitre (1): make sure packs to be replaced are closed beforehand Wu Fengguang (1): git-send-email: handle email address with quoted comma Version v1.6.0.5; changes since v1.6.0.4: ----------------------------------------- Alexandre Julliard (2): checkout: Don't crash when switching away from an invalid branch. git-submodule: Avoid printing a spurious message. Brandon Casey (12): t7700: demonstrate mishandling of objects in packs with a .keep file packed_git: convert pack_local flag into a bitfield and add pack_keep pack-objects: new option --honor-pack-keep repack: don't repack local objects in packs with .keep file repack: do not fall back to incremental repacking with [-a|-A] builtin-gc.c: use new pack_keep bitfield to detect .keep file existence t7700: demonstrate mishandling of loose objects in an alternate ODB sha1_file.c: split has_loose_object() into local and non-local counterparts pack-objects: extend --local to mean ignore non-local loose objects too t7700: test that 'repack -a' packs alternate packed objects repack: only unpack-unreachable if we are deleting redundant packs revision.c: use proper data type in call to sizeof() within xrealloc Bryan Drewery (1): Fix misleading wording for git-cherry-pick Christian Couder (3): Documentation: rev-list: change a few instances of "git-cmd" to "git cmd" Documentation: bisect: change a few instances of "git-cmd" to "git cmd" Documentation: fix links to "everyday.html" Daniel Lowe (1): Fix non-literal format in printf-style calls Davide Libenzi (1): xdiff: give up scanning similar lines early Jakub Narębski (1): gitweb: Make project specific override for 'grep' feature work Jan Krüger (1): Documentation: git-svn: fix example for centralized SVN clone Jeff King (2): commit: Fix stripping of patch in verbose mode. tag: delete TAG_EDITMSG only on successful tag Joey Hess (1): sha1_file: avoid bogus "file exists" error message Johannes Schindelin (1): fast-export: use an unsorted string list for extra_refs Johannes Sixt (1): compat/mingw.c: Teach mingw_rename() to replace read-only files Junio C Hamano (8): Makefile: help people who run 'make check' by mistake checkout: Fix "initial checkout" detection Start 1.6.0.5 cycle builtin-ls-files.c: coding style fix. Teach ls-files --with-tree=<tree> to work with options other than -c Teach "git diff" to honour --[no-]ext-diff Update draft release notes to 1.6.0.5 GIT 1.6.0.5 Linus Torvalds (1): date/time: do not get confused by fractional seconds Martin Koegler (1): git push: Interpret $GIT_DIR/branches in a Cogito compatible way Matt Kraai (1): Remove the period after the git-check-attr summary Matt McCutchen (3): config.txt: alphabetize configuration sections git checkout: don't warn about unborn branch if -f is already passed "git diff <tree>{3,}": do not reverse order of arguments Miklos Vajna (3): Add new testcase to show fast-export does not always exports all tags User's Manual: remove duplicated url at the end of Appendix B http.c: use 'git_config_string' to get 'curl_http_proxy' Nguyễn Thái Ngọc Duy (1): generate-cmdlist.sh: avoid selecting synopsis at wrong place Nicolas Pitre (1): Fix pack.packSizeLimit and --max-pack-size handling Pete Wyckoff (1): git-p4: fix keyword-expansion regex Ralf Wildenhues (1): Fix typos in the documentation. SZEDER Gábor (2): bash: remove dashed command leftovers bash: offer refs instead of filenames for 'git revert' Sam Vilain (1): sha1_file.c: resolve confusion EACCES vs EPERM Samuel Tardieu (2): tag: Check that options are only allowed in the appropriate mode tag: Add more tests about mixing incompatible modes and options Stefan Naewe (2): git ls-remote: make usage string match manpage request-pull: make usage string match manpage Thomas Rast (1): fetch-pack: Avoid memcpy() with src==dst Version v1.6.0.4; changes since v1.6.0.3: ----------------------------------------- Alex Riesen (10): Add mksnpath which allows you to specify the output buffer Fix mkpath abuse in dwim_ref and dwim_log of sha1_name.c Fix potentially dangerous uses of mkpath and git_path Plug a memleak in builtin-revert Add git_snpath: a .git path formatting routine with output buffer Fix potentially dangerous use of git_path in ref.c git_pathdup: returns xstrdup-ed copy of the formatted path Use git_pathdup instead of xstrdup(git_path(...)) Add --verbose|-v to test-chmtime Use test-chmtime -v instead of perl in t5000 to get mtime of a file Charles Bailey (1): git-archive: work in bare repos Christian Jaeger (1): Git.pm: do not break inheritance Clemens Buchacher (2): do not force write of packed refs push: fix local refs update if already up-to-date Deskin Miller (2): git-svn: change dashed git-config to git config git-svn: change dashed git-commit-tree to git commit-tree Gustaf Hendeby (1): git-gui: Help identify aspell version on Windows too Jakub Narębski (1): Documentation/gitattributes: Add subsection header for each attribute Jan Krüger (1): Documentation: clarify information about 'ident' attribute Jeff King (5): refactor handling of "other" files in ls-files and status correct cache_entry allocation pack-objects: avoid reading uninitalized data fix overlapping memcpy in normalize_absolute_path send-pack: do not send out single-level refs such as refs/stash Johannes Schindelin (1): Fix fetch/pull when run without --update-head-ok Jonas Fonseca (1): asciidoc: add minor workaround to add an empty line after code blocks Junio C Hamano (9): pull: allow "git pull origin $something:$current_branch" into an unborn branch Fix "checkout --track -b newbranch" on detached HEAD reset --hard/read-tree --reset -u: remove unmerged new paths demonstrate breakage of detached checkout with symbolic link HEAD Enhance hold_lock_file_for_{update,append}() API Start 1.6.0.4 cycle Update draft 1.6.0.4 release notes format-patch documentation: mention the special case of showing a single commit GIT 1.6.0.4 Linus Torvalds (1): Add file delete/create info when we overflow rename_limit Markus Heidelberg (1): bash completion: add doubledash to "git show" Mikael Magnusson (1): Document that git-log takes --all-match. Miklos Vajna (5): Fix git branch -m for symrefs. rename_ref(): handle the case when the reflog of a ref does not exist Fix git update-ref --no-deref -d. git branch -m: forbid renaming of a symref update-ref --no-deref -d: handle the case when the pointed ref is packed Nanako Shiraishi (1): Install git-cvsserver in $(bindir) Pierre Habouzit (1): git send-email: avoid leaking directory file descriptors. Quy Tonthat (1): Update RPM spec for the new location of git-cvsserver. Thomas Rast (1): add -p: warn if only binary changes present Tom Preston-Werner (1): add instructions on how to send patches to the mailing list with Gmail Tommi Virtanen (1): Install git-shell in bindir, too Yann Dirson (1): Add reference for status letters in documentation. Version v1.6.0.3; changes since v1.6.0.2: ----------------------------------------- Abhijit Bhopatkar (1): Documentation: Clarify '--signoff' for git-commit Alec Berryman (2): git-svn: factor out svnserve test code for later use git-svn: Always create a new RA when calling do_switch for svn:// Alex Riesen (3): Remove empty directories in recursive merge Add remove_path: a function to remove as much as possible of a path Use remove_path from dir.c instead of own implementation Alexander Gavrilov (1): builtin-blame: Fix blame -C -C with submodules. Björn Steinbrink (1): force_object_loose: Fix memory leak Brandon Casey (14): t9700/test.pl: avoid bareword 'STDERR' in 3-argument open() t9700/test.pl: remove File::Temp requirement diff.c: return pattern entry pointer rather than just the hunk header pattern diff.c: associate a flag with each pattern and use it for compiling regex diff.*.xfuncname which uses "extended" regex's for hunk header selection t4018-diff-funcname: test syntax of builtin xfuncname patterns builtin-prune.c: prune temporary packs in <object_dir>/pack directory git-stash.sh: don't default to refs/stash if invalid ref supplied builtin-merge.c: allocate correct amount of memory git-stash.sh: fix flawed fix of invalid ref handling (commit da65e7c1) remote.c: correct the check for a leading '/' in a remote name t4018-diff-funcname: rework negated last expression test t4018-diff-funcname: demonstrate end of line funcname matching flaw xdiff-interface.c: strip newline (and cr) from line before pattern matching Charles Bailey (2): Add new test to demonstrate git archive core.autocrlf inconsistency Make git archive respect core.autocrlf when creating zip format archives Chris Frey (1): Documentation: clarify the details of overriding LESS via core.pager Dan McGee (1): contrib: update packinfo.pl to not use dashed commands Daniel Barkalow (1): Check early that a new branch is new and valid David Soria Parra (1): Solaris: Use OLD_ICONV to avoid compile warnings Deskin Miller (2): maint: check return of split_cmdline to avoid bad config strings git init: --bare/--shared overrides system/global config Dmitry Potapov (4): git-rebase-interactive: do not squash commits on abort git-rebase--interactive: auto amend only edited commit make prefix_path() never return NULL do not segfault if make_cache_entry failed Eric Raible (1): completion: git commit should list --interactive Eric Wong (1): git-svn: fix handling of even funkier branch names Fabrizio Chiarello (1): builtin-clone: fix typo Garry Dolley (1): Clarified gitattributes documentation regarding custom hunk header. Giuseppe Bilotta (1): gitweb: remove PATH_INFO from $my_url and $my_uri Heikki Orsila (2): Start conforming code to "git subcmd" style part 3 Cosmetical command name fix Imre Deak (1): builtin-apply: fix typo leading to stack corruption Jakub Narębski (2): gitweb: Fix two 'uninitialized value' warnings in git_tree() gitweb: Add path_info tests to t/t9500-gitweb-standalone-no-errors.sh Jeff King (3): Makefile: do not set NEEDS_LIBICONV for Solaris 8 git apply --directory broken for new files tests: shell negation portability fix Joey Hess (1): gitweb: avoid warnings for commits without body Johan Herland (2): for-each-ref: Fix --format=%(subject) for log message without newlines Use strchrnul() instead of strchr() plus manual workaround Johannes Schindelin (2): git rm: refresh index before up-to-date check rebase -i: do not fail when there is no commit to cherry-pick Johannes Sixt (2): git-remote: do not use user input in a printf format string git-push.txt: Describe --repo option in more detail Jonas Fonseca (2): checkout: Do not show local changes when in quiet mode git-check-attr(1): add output and example sections Junio C Hamano (15): discard_cache: reset lazy name_hash bit diff Porcelain: do not disable auto index refreshing on -C -C diff --quiet: make it synonym to --exit-code >/dev/null Don't verify host name in SSL certs when GIT_SSL_NO_VERIFY is set Fix permission bits on sources checked out with an overtight umask checkout: do not lose staged removal diff/diff-files: do not use --cc too aggressively Start draft release notes for 1.6.0.3 diff: use extended regexp to find hunk headers diff hunk pattern: fix misconverted "\{" tex macro introducers Update draft release notes to 1.6.0.3 diff(1): clarify what "T"ypechange status means Hopefully the final draft release notes update before 1.6.0.3 Fix testcase failure when extended attributes are in use GIT 1.6.0.3 Linus Torvalds (1): fix bogus "diff --git" header from "diff --no-index" Luc Heinrich (1): git-svn: call 'fatal' correctly in set-tree Matt McCutchen (1): t1301-shared-repo.sh: don't let a default ACL interfere with the test Michael J Gruber (1): make "git remote" report multiple URLs Michael Prokop (1): Replace svn.foo.org with svn.example.com in git-svn docs (RFC 2606) Mikael Magnusson (4): Typo "bogos" in format-patch error message. git-repack uses --no-repack-object, not --no-repack-delta. Fix a few typos in relnotes Typo "does not exists" when git remote update remote. Miklos Vajna (2): test-lib: fix color reset in say_color() Add testcase to ensure merging an early part of a branch is done properly Nanako Shiraishi (2): docs: describe pre-rebase hook Teach rebase -i to honor pre-rebase hook Nicolas Pitre (2): fix pread()'s short read in index-pack rehabilitate 'git index-pack' inside the object store Petr Baudis (1): Do not perform cross-directory renames when creating packs Ping Yin (1): git-submodule: Fix "Unable to checkout" for the initial 'update' Rafael Garcia-Suarez (1): Clarify commit error message for unmerged files SZEDER Gábor (5): t0024: add executable permission Documentation: remove '\' in front of short options rebase -i: proper prepare-commit-msg hook argument when squashing rebase -i: remove leftover debugging bash: remove fetch, push, pull dashed form leftovers Samuel Tardieu (1): Do not use errno when pread() returns 0 Shawn O. Pearce (3): Update release notes for 1.6.0.3 Update release notes for 1.6.0.3 test-lib: fix broken printf Stephen Haberman (1): Clarify how the user can satisfy stash's 'dirty state' check. Thomas Rast (1): sha1_file: link() returns -1 on failure, not errno Todd Zullinger (1): Use dashless git commands in setgitperms.perl Tuncer Ayaz (1): Fix fetch/clone --quiet when stdout is connected Yann Dirson (1): Bust the ghost of long-defunct diffcore-pathspec. martin f. krafft (1): Improve git-log documentation wrt file filters Version v1.6.0.2; changes since v1.6.0.1: ----------------------------------------- Alex Riesen (1): Fix use of hardlinks in "make install" Alexander Gavrilov (1): git-gui: Fix string escaping in po2msg.sh Alexandre Bourget (2): git-gui: Update french translation git-gui: update all remaining translations to French. Andreas Färber (1): Makefile: always provide a fallback when hardlinks fail Arjen Laarhoven (1): Use compatibility regex library for OSX/Darwin Ask Bjørn Hansen (1): Document sendemail.envelopesender configuration Björn Steinbrink (1): for-each-ref: Allow a trailing slash in the patterns Clemens Buchacher (2): git gui: show diffs with a minimum of 1 context line clone: fix creation of explicitly named target directory Gustaf Hendeby (1): Document clarification: gitmodules, gitattributes Heikki Orsila (3): Start conforming code to "git subcmd" style Improve documentation for --dirstat diff option Start conforming code to "git subcmd" style part 2 Jeff King (4): Fix "git log -i --grep" pretty=format: respect date format options checkout: fix message when leaving detached HEAD Use compatibility regex library also on FreeBSD Johan Herland (1): Bring local clone's origin URL in line with that of a remote clone Johannes Sixt (1): Use compatibility regex library also on AIX Jonas Fonseca (1): Fix passwd(5) ref and reflect that commit doens't use commit-tree Junio C Hamano (17): ctype.c: protect tiny C preprocessor constants shell: do not play duplicated definition games to shrink the executable Fix example in git-name-rev documentation git-apply: Loosen "match_beginning" logic checkout: do not check out unmerged higher stages randomly gitattributes: -crlf is not binary diff: Help "less" hide ^M from the output 'git foo' program identifies itself without dash in die() messages Start 1.6.0.2 maintenance cycle diff --cumulative is a sub-option of --dirstat log --author/--committer: really match only with name part "blame -c" should be compatible with "annotate" Mention the fact that 'git annotate' is only for backward compatibility. stash: refresh the index before deciding if the work tree is dirty Update draft release notes for 1.6.0.2 Update draft release notes for 1.6.0.2 GIT 1.6.0.2 Linus Torvalds (2): index-pack: be careful after fixing up the header/footer Fix '--dirstat' with cross-directory renaming Marcus Griep (2): Git.pm: Use File::Temp->tempfile instead of ->new git-svn: Fixes my() parameter list syntax error in pre-5.8 Perl Miklos Vajna (2): Makefile: add merge_recursive.h to LIB_H t7501: always use test_cmp instead of diff Nanako Shiraishi (4): tests: use "git xyzzy" form (t0000 - t3599) tests: use "git xyzzy" form (t3600 - t6999) tests: use "git xyzzy" form (t7000 - t7199) tests: use "git xyzzy" form (t7200 - t9001) Nguyễn Thái Ngọc Duy (6): index-pack: setup git repository diff*: fix worktree setup grep: fix worktree setup read-tree: setup worktree if merge is required update-index: fix worktree setup setup_git_directory(): fix move to worktree toplevel directory Nicolas Pitre (7): discard revindex data when pack list changes pack-objects: improve returned information from write_one() improve reliability of fixup_pack_header_footer() pack-objects: use fixup_pack_header_footer()'s validation mode index-pack: use fixup_pack_header_footer()'s validation mode fixup_pack_header_footer(): use nicely aligned buffer sizes improve handling of sideband message display Paolo Bonzini (1): make git-shell paranoid about closed stdin/stdout/stderr Paolo Ciarrocchi (1): tutorial: gentler illustration of Alice/Bob workflow using gitk Petr Baudis (1): bash completion: Hide more plumbing commands Ralf Wildenhues (1): Fix some manual typos. Ramsay Jones (2): Fix a warning (on cygwin) to allow -Werror Suppress some bash redirection error messages SZEDER Gábor (3): Documentation: fix reference to a for-each-ref option Documentation: fix disappeared lines in 'git stash' manpage Documentation: minor cleanup in a use case in 'git stash' manual Shawn O. Pearce (2): pack-objects: Allow missing base objects when creating thin packs git-gui: Fix diff parsing for lines starting with "--" or "++" Teemu Likonen (1): config.txt: Add missing colons after option name Yann Dirson (1): Document gitk --argscmd flag. Version v1.6.0.1; changes since v1.6.0: --------------------------------------- Alexander Gavrilov (1): Respect core.autocrlf in combined diff Brandon Casey (3): t1002-read-tree-m-u-2way.sh: use 'git diff -U0' rather than 'diff -U0' revision.h: make show_early_output an extern which is defined in revision.c compat/snprintf.c: handle snprintf's that always return the # chars transmitted Don Zickus (1): mailinfo: re-fix MIME multipart boundary parsing Eric Raible (1): Completion: add missing '=' for 'diff --diff-filter' Eric Wong (1): git-svn: fix dcommit to urls with embedded usernames Jeff King (2): mailinfo: avoid violating strbuf assertion decorate: allow const objects to be decorated Jim Meyering (2): git format-patch: avoid underrun when format.headers is empty or all NLs remote.c: remove useless if-before-free test Johannes Sixt (1): Install templates with the user and group of the installing personality Jonathan Nieder (2): Documentation: clarify pager.<cmd> configuration Documentation: clarify pager configuration Junio C Hamano (9): Start 1.6.0.X maintenance series diff --check: do not get confused by new blank lines in the middle for-each-ref: cope with tags with incomplete lines completion: find out supported merge strategies correctly "git-merge": allow fast-forwarding in a stat-dirty tree Update draft release notes for 1.6.0.1 unpack_trees(): protect the handcrafted in-core index from read_cache() merge: fix numerus bugs around "trivial merge" area GIT 1.6.0.1 Miklos Vajna (2): Fix 'git help help' Makefile: enable SNPRINTF_RETURNS_BOGUS for HP-UX Robert Schiele (1): adapt git-cvsserver manpage to dash-free syntax Simon Hausmann (1): Clean up the git-p4 documentation Tarmigan Casebolt (1): Add hints to revert documentation about other ways to undo changes Tor Arvid Lund (1): git-p4: Fix one-liner in p4_write_pipe function. Version v1.6.0; changes since v1.6.0-rc3: ----------------------------------------- Alex Riesen (1): Fix t3700 on filesystems which do not support question marks in names Alexander Gavrilov (1): gitk: Allow safely calling nukefile from a run queue handler Anand Kumria (14): Create a specific version of the read_pipe_lines command for p4 invocations Utilise the new 'p4_read_pipe_lines' command Have a command that specifically invokes 'p4' (via system) Utilise the new 'p4_system' function. Add a single command that will be used to construct the 'p4' command If we are in verbose mode, output what we are about to run (or return) Switch to using 'p4_build_cmd' If the user has configured various parameters, use them. Consistently use 'git-p4' for the configuration entries Move git-p4.syncFromOrigin into a configuration parameters section Put some documentation in about the parameters that have been added Put in the two other configuration elements found in the source Add p4 read_pipe and write_pipe wrappers Utilise our new p4_read_pipe and p4_write_pipe wrappers Brandon Casey (2): test-parse-options: use appropriate cast in length_callback t5304-prune: adjust file mtime based on system time rather than file mtime Eric Blake (1): Makefile: building git in cygwin 1.7.0 Eric Raible (1): bash completion: 'git apply' should use 'fix' not 'strip' Junio C Hamano (1): GIT 1.6.0 Kevin Ballard (1): Fix escaping of glob special characters in pathspecs Lee Marlow (2): bash completion: Add completion for 'git mergetool' bash completion: Add '--merge' long option for 'git log' Marcus Griep (2): bash-completion: Add non-command git help files to bash-completion Git.pm: Make File::Spec and File::Temp requirement lazy Matt McCutchen (1): git format-patch documentation: clarify what --cover-letter does Miklos Vajna (2): Documentation: document the pager.* configuration setting t9300: replace '!' with test_must_fail Robert Blum (1): git-p4: chdir now properly sets PWD environment variable in msysGit Shawn O. Pearce (1): git-gui 0.11 Stephan Beyer (3): git-am: ignore --binary option git-stash: improve synopsis in help and manual page Improve error output of git-rebase Thomas Rast (2): rebase -i -p: handle index and workdir correctly rebase -i -p: fix parent rewriting Version v1.6.0-rc3; changes since v1.6.0-rc2: --------------------------------------------- Brandon Casey (2): Makefile: set SHELL to value of SHELL_PATH Makefile: add a target which will abort compilation with ancient shells Eric Wong (2): git-svn: add ability to specify --commit-url for dcommit git-svn: wrap long lines in a few places Francis Moreau (1): git-bisect: fix wrong usage of read(1) Gustaf Hendeby (2): gitattributes: Document built in hunk header patterns Teach git diff about BibTeX head hunk patterns Ivan Stankovic (1): Documentation: fix invalid reference to 'mybranch' in user manual Johannes Schindelin (1): clone --mirror: avoid storing repeated tags Jonathan Nieder (1): Documentation: user-manual: "git commit -a" doesn't motivate .gitignore Junio C Hamano (9): asciidoc markup fixes GIT-VERSION-GEN: mark the version 'dirty' only if there are modified files mailinfo: fix MIME multi-part message boundary handling Update draft RelNotes for 1.6.0 Fix deleting reflog entries from HEAD reflog Re-fix rev-list-options documentation diff --check: do not unconditionally complain about trailing empty lines Do not talk about "diff" in rev-list documentation. GIT 1.6.0-rc3 Marcus Griep (5): Fix multi-glob assertion in git-svn git-svn: Allow deep branch names by supporting multi-globs Git.pm: Add faculties to allow temp files to be cached git-svn: Make it incrementally faster by minimizing temp files git-svn: Reduce temp file usage when dealing with non-links Nguyễn Thái Ngọc Duy (1): Fix typo in comments of longest_ancestor_length() Petr Baudis (2): Fail properly when cloning from invalid HTTP URL Adjust for the new way of enabling the default post-update hook Pieter de Bie (2): builtin-rm: Add a --force flag reflog test: add more tests for 'reflog delete' SZEDER Gábor (1): bash: remove redundant check for 'git stash apply' options Stephen R. van den Berg (1): git-daemon: SysV needs the signal handler reinstated. Thomas Rast (6): Documentation: commit-tree: remove 16 parents restriction Documentation: filter-branch: document how to filter all refs filter-branch: be more helpful when an annotated tag changes Documentation: rev-list-options: Fix -g paragraph formatting Documentation: rev-list-options: Fix a typo Documentation: rev-list-options: Rewrite simplification descriptions for clarity Version v1.6.0-rc2; changes since v1.6.0-rc1: --------------------------------------------- Abhijit Menon-Sen (7): `git submodule add` now requires a <path> Make it clear that push can take multiple refspecs Make the DESCRIPTION match <x>... items in the SYNOPSIS Git.pm: localise $? in command_close_bidi_pipe() Fix hash slice syntax error Fix typo in perl/Git.pm Fix typos in INSTALL Alex Riesen (1): Make use of stat.ctime configurable Alexander Gavrilov (9): git-gui: Fix the Remote menu separator. git-gui: Preserve scroll position on reshow_diff. Support copy and rename detection in fast-export. gitk: Kill back-end processes on window close gitk: Arrange to kill diff-files & diff-index on quit gitk: On Windows, use a Cygwin-specific flag for kill gitk: Fixed broken exception handling in diff gitk: Fixed automatic row selection during load gitk: Fallback to selecting the head commit upon load Anders Melchiorsen (4): Advertise the ability to abort a commit Documentation: fix diff.external example Flush output in start_async Add output flushing before fork() Avery Pennarun (2): Teach "git diff -p" Pascal/Delphi funcname pattern git-svn: Abort with an error if 'fetch' parameter is invalid. Brandon Casey (3): t/t4202-log.sh: add newline at end of file Teach fsck and prune that tmp_obj_ file names may not be 14 bytes long perl/Makefile: handle paths with spaces in the NO_PERL_MAKEMAKER section Brian Gernhardt (1): Documentation: Remove mentions of git-svnimport. Cesar Eduardo Barros (1): Documentation/git-rev-parse.txt: update for new git-describe output format Christian Couder (2): merge-base: die with an error message if not passed a commit ref documentation: user-manual: update "using-bisect" section Christian Stimming (2): git-gui: Update German translation gitk: Updated German translation Ciaran McCreesh (1): Make git-add -i accept ranges like 7- David D. Kilzer (1): Fix race condition in t9119-git-svn-info.sh Dmitry Potapov (1): correct access right for git-svn-dcommit test Eric Wong (2): git-svn: properly set path for "info" command t9119: conditionally re-enable test depending on svn(1) version Giuseppe Bilotta (2): diff: add ruby funcname pattern diff: chapter and part in funcname for tex Jeff King (3): init: handle empty "template" parameter Compact commit template message init: handle empty "template" parameter Jim Meyering (1): git-cvsimport.perl: Print "UNKNOWN LINE..." on stderr, not stdout. Johannes Schindelin (3): sort_in_topological_order(): avoid setting a commit flag clone: Add an option to set up a mirror clone --bare: Add ".git" suffix to the directory name to clone into Johannes Sixt (1): git-gui: Adapt discovery of oguilib to execdir 'libexec/git-core' Jon Jensen (1): Fix reference to Everyday Git, which is an HTML document and not a man page. Jonathan Nieder (1): git-diff(1): "--c" -> "--cc" typo fix Junio C Hamano (19): Allow building without any git installed Allow installing in the traditional way ls-tree documentation: enhance notes on subdirectory and pathspec behaviour Documentation: clarify what is shown in "git-ls-files -s" output t7001: fix "git mv" test Teach gitlinks to ie_modified() and ce_modified_check_fs() Fix merge name generation in "merge in C" Fix test-parse-options "integer" test Teach --find-copies-harder to "git blame" make sure parsed wildcard refspec ends with slash Documentation: clarify diff --cc Update my e-mail address Start 1.5.6.5 RelNotes to describe accumulated fixes builtin-name-rev.c: split deeply nested part from the main function RelNotes 1.5.6.5 updates fix diff-tree --stdin documentation Files given on the command line are relative to $cwd GIT 1.5.6.5 GIT 1.6.0-rc2 Kevin Ballard (1): format-patch: Produce better output with --inline or --attach Lee Marlow (11): bash completion: remove unused function _git_diff_tree bash completion: Add more long options for 'git log' bash completion: Add completion for 'git grep' bash completion: Add completion for 'git clone' bash completion: Add completion for 'git clean' bash completion: Add completion for 'git init' bash completion: Add completion for 'git revert' bash completion: More completions for 'git stash' bash completion: Add completion for 'git archive' bash completion: Add completion for 'git ls-files' bash completion: Add completion for 'git mv' Linus Torvalds (1): diff.renamelimit is a basic diff configuration Michele Ballabio (2): git-gui: update po/it.po git-gui: add a part about format strings in po/README Mikael Magnusson (2): git-gui: Update swedish translation. gitk: Update swedish translation. Mike Ralphson (2): Documentation: typos / spelling fixes in older RelNotes Documentation: typos / spelling fixes Nanako Shiraishi (1): git-gui: update Japanese translation Olivier Marin (1): builtin-verify-tag: fix -v option parsing Pierre Habouzit (2): Allow "non-option" revision options in parse_option-enabled commands git-submodule: move ill placed shift. Pieter de Bie (1): git-name-rev: allow --name-only in combination with --stdin René Scharfe (2): archive: allow --exec and --remote without equal sign git-name-rev: don't use printf without format Shawn O. Pearce (2): git-gui: Fix gitk search in $PATH to work on Windows git-gui: Update git-gui.pot for 0.11 nearing release Steffen Prohaska (6): Refactor, adding prepare_git_cmd(const char **argv) run-command (Windows): Run dashless "git <cmd>" git-gui: Correct installation of library to be $prefix/share git-gui (Windows): Switch to relative discovery of oguilib git-gui (Windows): Change wrapper to execdir 'libexec/git-core' Modify mingw_main() workaround to avoid link errors Stephan Beyer (1): builtin-revert.c: typofix Steve Haslam (1): Propagate -u/--upload-pack option of "git clone" to transport. Steven Grimm (1): Optimize sha1_object_info for loose objects, not concurrent repacks Todd Zullinger (1): Replace uses of "git-var" with "git var" Version v1.6.0-rc1; changes since v1.6.0-rc0: --------------------------------------------- Abhijit Menon-Sen (2): git-gui: Look for gitk in $PATH, not $LIBEXEC/git-core Clarify that "git log x.c y.h" lists commits that touch either file Alex Riesen (1): Allow pager of diff command be enabled/disabled Alexander Gavrilov (4): Fix pre-commit hooks under MinGW/MSYS Add options to control the search for copies in blame. Kill the blame back-end on window close. Add a menu item to invoke full copy detection in blame. Anders Melchiorsen (1): Documentation: fix diff.external example Björn Steinbrink (2): index-pack.c: correctly initialize appended objects rev-parse: Add support for the ^! and ^@ syntax Brad King (1): git-svn: teach dcommit about svn auto-props Brandon Casey (7): t/: Replace diff [-u|-U0] with test_cmp to allow compilation with old diff t4116-apply-reverse.sh: use $TAR rather than tar t3200,t7201: replace '!' with test_must_fail t7502-commit.sh: rearrange test to make more portable t/t4202-log.sh: add newline at end of file Teach fsck and prune about the new location of temporary objects perl/Makefile: update NO_PERL_MAKEMAKER section Cesar Eduardo Barros (1): Documentation/git-submodule.txt: fix doubled word Daniel Barkalow (1): In perforce, RCS keywords are case-sensitive Jakub Narębski (1): gitweb: More about how gitweb gets 'owner' of repository Johannes Schindelin (9): Rename .git/rebase to .git/rebase-apply Rename path_list to string_list Fix two leftovers from path_list->string_list Ignore dirty submodule states in "git pull --rebase" Add test to show that show-branch misses out the 8th column sort_in_topological_order(): avoid setting a commit flag builtin-commit: Two trivial style-cleanups git daemon: avoid waking up too often Avoid chdir() in list_commands_in_dir() Johannes Sixt (12): rebase -i: When an 'edit' stops, mention the commit Makefile: Do not install a copy of 'git' in $(gitexecdir) Makefile: Normalize $(bindir) and $(gitexecdir) before comparing Record the command invocation path early Fix relative built-in paths to be relative to the command invocation Allow the built-in exec path to be relative to the command invocation path Allow add_path() to add non-existent directories to the path Windows: Make $(gitexecdir) relative Windows: Make sure argv[0] has a path Windows: Do not compile git-shell git-gui: Fix "Stage/Unstage Line" with one line of context. git-gui: "Stage Line": Treat independent changes in adjacent lines better Jonathan Nieder (3): git-diff(1): "--c" -> "--cc" typo fix document that git-tag can tag more than heads t6030 (bisect): work around Mac OS X "ls" Junio C Hamano (13): Update my e-mail address Revert "make git-status use a pager" tests: do not rely on external "patch" stash save: fix parameter handling builtin-branch.c: remove unused code in append_ref() callback function builtin-branch.c: optimize --merged and --no-merged Documentation: clarify diff --cc ignore non-existent refs in dwim_log() tests: propagate $(TAR) down from the toplevel Makefile Makefile: fix shell quoting Documentation: clarify how to disable elements in core.whitespace make sure parsed wildcard refspec ends with slash GIT 1.6.0-rc1 Lars Hjemli (3): builtin-branch: remove duplicated code builtin-branch: factor out merge_filter matching builtin-branch: fix -v for --[no-]merged Lee Marlow (2): bash completion: Add long options for 'git rm' bash completion: Add completion for 'git help' Miklos Vajna (2): builtin-merge: give a proper error message for invalid strategies in config t7601: extend the 'merge picks up the best result' test Nikolaj Schumacher (1): Don't cut off last character of commit descriptions. Olivier Marin (4): git-am: remove dash from help message parse-options: fix segmentation fault when a required value is missing git am --skip: clean the index while preserving local changes update test case to protect am --skip behaviour P. Christeas (1): svnimport: newer libsvn wants us to ask for the root with "", not "/" Peter Valdemar Mørch (1): send-email: find body-encoding correctly Petr Baudis (4): git-filter-branch.sh: Allow running in bare repositories Documentation/git-filter-branch: teach "rm" instead of "update-index --remove" git-mv: Remove dead code branch git-mv: Keep moved index entries inact Philippe Bruhat (1): mailinfo: better parse email adresses containg parentheses Pierre Habouzit (4): builtin-merge: add missing structure initialization git-submodule: move ill placed shift. git-checkout: fix command line parsing. git-checkout: improve error messages, detect ambiguities. René Scharfe (5): archive: add write_archive() archive: move parameter parsing code to archive.c archive: define MAX_ARGS where it's needed archive: declare struct archiver where it's needed archive: allow --exec and --remote without equal sign SZEDER Gábor (2): checkout: mention '--' in the docs bash: offer only paths after '--' for 'git checkout' Shawn O. Pearce (2): git-gui: Correct 'Visualize Branches' on Mac OS X to start gitk fsck: Don't require tmp_obj_ file names are 14 bytes in length Stephan Beyer (7): git-am: Add colon before the subject that is printed out as being applied am --abort: Add to bash-completion and mention in git-rerere documentation Make non-static functions, that may be static, static Move launch_editor() from builtin-tag.c to editor.c editor.c: Libify launch_editor() git-am: Mention --abort in usage string part of OPTIONS_SPEC git-reset: Let -q hush "locally modified" messages Steve Haslam (2): Propagate -u/--upload-pack option of "git clone" to transport. Remove references to git-fetch-pack from "git clone" documentation. Thomas Rast (2): git-completion.bash: provide completion for 'show-branch' bash completion: Add long options for 'git describe' Version v1.6.0-rc0; changes since v1.5.6.6: ------------------------------------------- Abhijit Menon-Sen (4): git-gui: Move on to the next filename after staging/unstaging a change git-gui: Don't select the wrong file if the last listed file is staged. Implement "git stash branch <newbranch> <stash>" Add a test for "git stash branch" Adam Brewster (2): Move read_revisions_from_stdin from builtin-rev-list.c to revision.c Teach git-bundle to read revision arguments from stdin like git-rev-list. Alex Riesen (1): Fix use of "perl -i" on Windows Alexander Gavrilov (3): Avoid rescanning unchanged entries in search for copies. Do not try to detect move/copy for entries below threshold. Support gitlinks in fast-import. Avery Pennarun (1): Reword "your branch has diverged..." lines to reduce line length Brandon Casey (1): t7701-repack-unpack-unreachable.sh: check timestamp of unpacked objects Brian Gernhardt (4): Fix t4017-diff-retval for white-space from wc Add test results directory to t/.gitignore Documentation: Point to gitcli(7) from git(1) Documentation: mention ORIG_HEAD in am, merge, and rebase Christian Couder (2): help: check early if we have a command, if not try a documentation topic Fix "config_error_nonbool" used with value instead of key Ciaran McCreesh (1): Make git-add -i accept ranges like 7- Cristian Peraferrer (1): Print errno upon failure to open the COMMIT_EDITMSG file Daniel Barkalow (1): Only use GIT_CONFIG in "git config", not other programs David Reiss (4): Implement normalize_absolute_path Fold test-absolute-path into test-path-utils Add support for GIT_CEILING_DIRECTORIES Eliminate an unnecessary chdir("..") Dmitry Kakurin (1): Fixed text file auto-detection: treat EOF character 032 at the end of file as printable Dmitry Potapov (4): update-hook-example: optionally allow non-fast-forward shrink git-shell by avoiding redundant dependencies completion.bash: add 'skip' and 'run' to git-bisect git-svn: fix git svn info to work without arguments Don Zickus (1): git-apply: handle a patch that touches the same path more than once better Eric Hanchrow (2): user-manual: typo and grammar fixes Documentation: fix broken "linkgit" links Eric Raible (3): Documentation: tweak use case in "git stash save --keep-index" completion: add branch options --contains --merged --no-merged Teach lookup_prog not to select directories Eric Wong (1): t/lib-git-svn: fix SVN_HTTPD tests to work with "trash directory" Fabian Emmes (2): Testsuite: Unset CVS_SERVER testsuite for cvs co -c Frederik Schwarzer (1): git-svn: typofix Ian Katz (1): tutorial: use prompt with user names in example, to clarify who is doing what Jakub Narębski (4): gitweb: Separate filling list of projects info gitweb: Separate generating 'sort by' table header t/README: Add 'Skipping Tests' section below 'Running Tests' gitweb: Describe projects_index format in more detail Jeff King (9): fix whitespace violations in test scripts mask necessary whitespace policy violations in test scripts avoid whitespace on empty line in automatic usage message avoid trailing whitespace in zero-change diffstat lines enable whitespace checking of test scripts clone: create intermediate directories of destination repo improve for-each-ref test script Allow per-command pager config avoid null SHA1 in oldest reflog Jing Xue (1): Add 'git-p4.allowSubmit' to git-p4 Johan Herland (4): Incorporate fetched packs in future object traversal Move pack_refs() and friends into libgit Prepare testsuite for a "git clone" that packs refs Teach "git clone" to pack refs Johannes Schindelin (12): Windows: always chmod(, 0666) before unlink(). commit-tree: lift completely arbitrary limit of 16 parents Allow git-apply to recount the lines in a hunk (AKA recountdiff) Add another fast-import example, this time for .zip files Teach "git apply" to prepend a prefix with "--root=<root>" git fetch-pack: do not complain about "no common commits" in an empty repo Allow cherry-picking root commits Convert CR/LF to LF in tag signatures Move MERGE_RR from .git/rr-cache/ into .git/ git-gui: MERGE_RR lives in .git/ directly with newer Git versions shortlog: support --pretty=format: option Rename ".dotest/" to ".git/rebase" and ".dotest-merge" to "rebase-merge" Johannes Sixt (38): Add compat/regex.[ch] and compat/fnmatch.[ch]. Compile some programs only conditionally. Add target architecture MinGW. Windows: Use the Windows style PATH separator ';'. setup.c: Prepare for Windows directory separators. Windows: Treat Windows style path names. Windows: Handle absolute paths in safe_create_leading_directories(). Windows: Strip ".exe" from the program name. Windows: Implement a wrapper of the open() function. Windows: A minimal implemention of getpwuid(). Windows: Work around misbehaved rename(). Make my_mktime() public and rename it to tm_to_time_t() Windows: Implement gettimeofday(). Windows: Fix PRIuMAX definition. Windows: Implement setitimer() and sigaction(). Windows: Wrap execve so that shell scripts can be invoked. Windows: A pipe() replacement whose ends are not inherited to children. Windows: Implement start_command(). Windows: A rudimentary poll() emulation. Windows: Disambiguate DOS style paths from SSH URLs. Windows: Implement asynchronous functions as threads. Windows: Work around incompatible sort and find. Windows: Implement wrappers for gethostbyname(), socket(), and connect(). Windows: Implement a custom spawnve(). Windows: Add a custom implementation for utime(). Windows: Use a customized struct stat that also has the st_blocks member. Turn builtin_exec_path into a function. Windows: Compute the fallback for exec_path from the program invocation. Windows: Use a relative default template_dir and ETC_GITCONFIG When installing, be prepared that template_dir may be relative. Windows: Make the pager work. Windows: Work around an oddity when a pipe with no reader is written to. Windows: Make 'git help -a' work. Windows: TMP and TEMP environment variables specify a temporary directory. git-gui: Implement "Stage/Unstage Line" t4127-apply-same-fn: Avoid sed -i Provide fallback definitions of PRIu32 and PRIx32 builtin-clone: rewrite guess_dir_name() Jonathan Nieder (23): Documentation: don't assume git-sh-setup and git-parse-remote are in PATH Documentation: fix links to tutorials and other new manual pages whitespace fix in Documentation/git-repack.txt Documentation: complicate example of "man git-command" git-daemon(1): don't assume git-daemon is in /usr/bin Documentation: prepare to be consistent about "git-" versus "git " Documentation: be consistent about "git-" versus "git " Documentation formatting and cleanup git-format-patch(1): fix stray \ in output Documentation: fix gitlinks manpages: fix bogus whitespace git(1): add comma git-commit(1): depersonalize description Documentation: rewrap to prepare for "git-" vs "git " change Documentation: more "git-" versus "git " changes gitdiffcore(7): fix awkward wording manpages: italicize command names in synopses manpages: italicize command names manpages: italicize git command names (which were in teletype font) manpages: italicize gitk's name (where it was in teletype font) manpages: italicize nongit command names (if they are in teletype font) manpages: italicize git subcommand names (which were in teletype font) manpages: use teletype font for sample command lines João Abecasis (1): git-svn: find-rev and rebase for SVN::Mirror repositories Junio C Hamano (65): revision traversal: --children option rev-list --children builtin-blame.c: move prepare_final() into a separate function. builtin-blame.c: allow more than 16 parents git-blame --reverse rerere: rerere_created_at() and has_resolution() abstraction git-rerere: detect unparsable conflicts rerere: remove dubious "tail_optimization" t4200: fix rerere test rerere.autoupdate git-shell: accept "git foo" form Prepare execv_git_cmd() for removal of builtins from the filesystem pre-rebase hook update Ship sample hooks with .sample suffix Keep some git-* programs in $(bindir) Start draft release notes for 1.6.0 diff --check: explain why we do not care whether old side is binary check_and_emit_line(): rename and refactor checkdiff: pass diff_options to the callback Teach "diff --check" about new blank lines at end diff --check: detect leftover conflict markers Update sample pre-commit hook to use "diff --check" Document the double-dash "rev -- path" disambiguator t9700: skip when Test::More is not available Update draft release notes for 1.6.0 Introduce get_merge_bases_many() Introduce reduce_heads() Update draft release notes for 1.6.0 apply --root: thinkofix. Refactor "tracking statistics" code used by "git checkout" git-status: show the remote tracking statistics git-branch -v: show the remote tracking statistics fast-export --export-marks: fix off by one error stat_tracking_info(): clear object flags used during counting branch -r -v: do not spit out garbage git-apply --directory: make --root more similar to GNU diff Update draft release notes for 1.6.0 Teach "am" and "rebase" to mark the original position with ORIG_HEAD Tone down warning about GNU Interactive Tools Documentation: update sections on naming revisions and revision ranges branch --contains: default to HEAD branch --merged/--no-merged: allow specifying arbitrary commit apply: fix copy/rename breakage Teach merge.log to "git-merge" again Update draft release notes for 1.6.0 reduce_heads(): protect from duplicate input git-rebase: report checkout failure tutorial: clarify "pull" is "fetch + merge" Update draft release notes to 1.6.0 t/aggregate-results: whitespace fix Update draft release notes for 1.6.0 read-cache.c: typofix mailinfo: off-by-one fix for [PATCH (foobar)] removal from Subject: line rerere.autoupdate: change the message when autoupdate is in effect builtin-remote.c: fix earlier "skip_prefix()" conversion t9001 (send-email): Do not use hardcoded /bin/sh in test .mailmap update Getting closer to 1.6.0-rc0 builtin-add.c: restructure the code for maintainability git-add --all: add all files git-add --all: tests git-add --all: documentation Link shell with compat layer functions Move read_in_full() and write_in_full() to wrapper.c "needs update" considered harmful Karl Wiberg (2): Clean up builtin-update-ref's option parsing Make old sha1 optional with git update-ref -d Kevin Ballard (1): git-send-email: Accept fifos as well as files Lars Noschinski (3): cvsserver: Add support for packed refs cvsserver: Add cvs co -c support cvsserver: Add testsuite for packed refs Lea Wiemann (6): test-lib.sh: add --long-tests option t/test-lib.sh: add test_external and test_external_without_stderr Git.pm: add test suite gitweb: standarize HTTP status codes test-lib.sh: show git init output when in verbose mode GIT-VERSION-GEN: do not fail if a 'HEAD' file exists in the working copy Linus Torvalds (1): Shrink the git binary a bit by avoiding unnecessary inline functions Lukas Sandström (4): Add a helper script to send patches with Mozilla Thunderbird Make some strbuf_*() struct strbuf arguments const. Add some useful functions for strbuf manipulation. git-mailinfo: use strbuf's instead of fixed buffers Marius Storm-Olsen (4): Add an optional <mode> argument to commit/status -u|--untracked-files option Add argument 'no' commit/status option -u|--untracked-files Add configuration option for default untracked files mode Windows: Add a new lstat and fstat implementation based on Win32 API. Mark Levedahl (3): install-doc-quick - use git --exec-path to find git-sh-setup git-submodule - make "submodule add" more strict, and document it git-submodule - register submodule URL if adding in place Michele Ballabio (3): t9301-fast-export.sh: Remove debug line builtin-merge.c: Fix option parsing builtin-push.c: Cleanup - use OPT_BIT() and remove some variables Mike Hommey (4): Catch failures from t5540-http-push Fix http-push test Skip t5540-http-push test when USE_CURL_MULTI is undefined Avoid apache complaining about lack of server's FQDN Mike Pape (1): We need to check for msys as well as Windows in add--interactive. Miklos Vajna (27): A simple script to parse the results from the testcases Move split_cmdline() to alias.c Move commit_list_count() to commit.c Move parse-options's skip_prefix() to git-compat-util.h Add new test to ensure git-merge handles pull.twohead and pull.octopus Move read_cache_unmerged() to read-cache.c git-fmt-merge-msg: make it usable from other builtins Introduce get_octopus_merge_bases() in commit.c Add new test to ensure git-merge handles more than 25 refs. Add new test case to ensure git-merge reduces octopus parents when possible Retire 'stupid' merge strategy INSTALL: Update section about git-frotz form. hg-to-git: avoid raising a string exception hg-to-git: abort if the project directory is not a hg repo hg-to-git: rewrite "git-frotz" to "git frotz" hg-to-git: use git init instead of git init-db Add new test case to ensure git-merge prepends the custom merge message git-commit-tree: make it usable from other builtins Fix t7601-merge-pull-config.sh on AIX Build in merge t0001-init.sh: change confusing directory name t1007-hash-object.sh: use quotes for the test description git-bisect: use dash-less form on git bisect log make remove-dashes: apply to scripts and programs as well, not just to builtins t6021: add a new test for git-merge-resolve Add a new test for git-merge-resolve Teach 'git merge' that some merge strategies no longer exist Nanako Shiraishi (7): environment.c: remove unused function config.c: make git_env_bool() static gitcli: Document meaning of --cached and --index cache-tree.c: make cache_tree_find() static builtin-describe.c: make a global variable "pattern" static parse-options.c: make check_typos() static git am --abort Nguyễn Thái Ngọc Duy (1): Move all dashed-form commands to libexecdir Nicolas Pitre (11): call init_pack_revindex() lazily implement some resilience against pack corruptions test case for pack resilience against corruptions refactor pack structure allocation optimize verify-pack a bit move show_pack_info() where it belongs verify-pack: check packed object CRC when using index version 2 verify-pack: test for detection of index v2 object CRC mismatch repack.usedeltabaseoffset config option now defaults to "true" pack.indexversion config option now defaults to 2 restore legacy behavior for read_sha1_file() Olivier Marin (3): Documentation: remove {show,whatchanged}.difftree config options show_stats(): fix stats width calculation builtin-rerere: more carefully find conflict markers Patrick Higgins (1): Remove the use of '--' in merge program invocation Pavel Roskin (1): t9600: allow testing with cvsps 2.2, including beta versions Peter Harris (1): Add ANSI control code emulation for the Windows console Petr Baudis (6): Git.pm: Add remote_refs() git-ls-remote frontend Documentation/git-submodule.txt: Add Description section Documentation/RelNotes-1.6.0.txt: Expand on the incompatible packfiles Documentation/git-submodule.txt: Further clarify the description Documentation: How to ignore local changes in tracked files Documentation/git-merge.txt: Partial rewrite of How Merge Works Pierre Habouzit (13): parse-opt: have parse_options_{start,end}. parse-opt: Export a non NORETURN usage dumper. parse-opt: create parse_options_step. parse-opt: do not print errors on unknown options, return -2 intead. parse-opt: fake short strings for callers to believe in. parse-opt: add PARSE_OPT_KEEP_ARGV0 parser option. revisions: split handle_revision_opt() from setup_revisions() git-blame: migrate to incremental parse-option [1/2] git-blame: migrate to incremental parse-option [2/2] parse-options: add PARSE_OPT_LASTARG_DEFAULT flag git-blame: fix lapsus git-shortlog: migrate to parse-options partially. revisions: refactor handle_revision_opt into parse_revision_opt. Pieter de Bie (1): builtin-fast-export: Add importing and exporting of revision marks Rafael Garcia-Suarez (1): gitweb: remove git_blame and rename git_blame2 to git_blame Ramsay Jones (4): Fix some warnings (on cygwin) to allow -Werror t9113-*.sh: provide user feedback when test skipped t9100-git-svn-basic.sh: Fix determination of utf-8 locale git-request-pull: replace call to deprecated peek-remote René Scharfe (9): Teach new attribute 'export-ignore' to git-archive archive: remove args member from struct archiver add context pointer to read_tree_recursive() archive: add baselen member to struct archiver_args archive: centralize archive entry writing archive: unify file attribute handling archive: remove extra arguments parsing code archive: make zip compression level independent from core git archive: remove unused headers Richard Quirk (1): git-gui: Fix accidental staged state toggle when clicking top pixel row Robert Shearman (1): git-send-email: Fix authenticating on some servers when using TLS. SZEDER Gábor (1): stash: introduce 'stash save --keep-index' option Shawn O. Pearce (2): Correct documentation for git-push --mirror bash completion: Remove dashed command completion support Soeren Finster (1): git-gui: Exit shortcut in MacOSX repaired Steffen Prohaska (5): Windows: Fix ntohl() related warnings about printf formatting compat/pread.c: Add a forward declaration to fix a warning Move code interpreting path relative to exec-dir to new function system_path() help.c: Add support for htmldir relative to git_exec_path() help (Windows): Display HTML in default browser using Windows' shell API Stephan Beyer (10): api-builtin.txt: update and fix typo t3404: stricter tests for git-rebase--interactive rerere: Separate libgit and builtin functions t/test-lib.sh: exit with small negagive int is ok with test_must_fail t/: Use "test_must_fail git" instead of "! git" Make usage strings dash-less git-am/git-mailsplit: correct synopsis for reading from stdin t3404: test two "preserve merges with -p" cases Make rebase--interactive use OPTIONS_SPEC Link git-shell only to a subset of libgit.a SungHyun Nam (1): t/Makefile: use specified shell when running aggregation script Sverre Hvammen Johansen (1): reduce_heads(): thinkofix Sverre Rabbelier (2): Modify test-lib.sh to output stats to t/test-results/* Hook up the result aggregation in the test makefile. Ted Percival (1): Don't use dash commands (git-foo) in tutorial-2 Teemu Likonen (3): bash: Add more option completions for 'git log' Add target "install-html" the the top level Makefile bash: Add long option completion for 'git send-email' Thomas Rast (7): git-send-email: add support for TLS via Net::SMTP::SSL git-send-email: prevent undefined variable warnings if no encryption is set git-add--interactive: replace hunk recounting with apply --recount git-add--interactive: remove hunk coalescing git-add--interactive: manual hunk editing mode git-send-email: Do not attempt to STARTTLS more than once Fix apply --recount handling of no-EOL line Version v1.5.6.6; changes since v1.5.6.5: ----------------------------------------- Alexander Gavrilov (1): Fix quadratic performance in rewrite_one. Brandon Casey (1): t5304-prune: adjust file mtime based on system time rather than file mtime Francis Moreau (1): git-bisect: fix wrong usage of read(1) Ivan Stankovic (1): Documentation: fix invalid reference to 'mybranch' in user manual Junio C Hamano (8): Per-ref reflog expiry configuration Make default expiration period of reflog used for stash infinite asciidoc markup fixes Fix deleting reflog entries from HEAD reflog Re-fix rev-list-options documentation Do not talk about "diff" in rev-list documentation. gitweb: do not run "git diff" that is Porcelain GIT 1.5.4.7 Kevin Ballard (1): Fix escaping of glob special characters in pathspecs Linus Torvalds (4): Split up default "core" config parsing into helper routine Split up default "user" config parsing into helper routine Split up default "i18n" and "branch" config parsing into helper routines Add config option to enable 'fsync()' of object files Petr Baudis (1): Fail properly when cloning from invalid HTTP URL Pieter de Bie (1): reflog test: add more tests for 'reflog delete' Thomas Rast (1): Documentation: rev-list-options: Fix -g paragraph formatting Version v1.5.6.5; changes since v1.5.6.4: ----------------------------------------- Anders Melchiorsen (1): Documentation: fix diff.external example Björn Steinbrink (1): index-pack.c: correctly initialize appended objects Brandon Casey (1): t/t4202-log.sh: add newline at end of file Ciaran McCreesh (1): Make git-add -i accept ranges like 7- Jeff King (1): init: handle empty "template" parameter Jim Meyering (1): git-cvsimport.perl: Print "UNKNOWN LINE..." on stderr, not stdout. Johannes Schindelin (1): sort_in_topological_order(): avoid setting a commit flag Jonathan Nieder (2): fix usage string for git grep git-diff(1): "--c" -> "--cc" typo fix Junio C Hamano (12): refresh-index: fix bitmask assignment tests: propagate $(TAR) down from the toplevel Makefile Makefile: fix shell quoting make sure parsed wildcard refspec ends with slash Documentation: clarify diff --cc Update my e-mail address Start 1.5.6.5 RelNotes to describe accumulated fixes builtin-name-rev.c: split deeply nested part from the main function RelNotes 1.5.6.5 updates fix diff-tree --stdin documentation Files given on the command line are relative to $cwd GIT 1.5.6.5 Linus Torvalds (1): diff.renamelimit is a basic diff configuration Mike Ralphson (1): Documentation: typos / spelling fixes in older RelNotes Peter Valdemar Mørch (1): send-email: find body-encoding correctly Pierre Habouzit (2): git-checkout: fix command line parsing. git-submodule: move ill placed shift. Pieter de Bie (1): git-name-rev: allow --name-only in combination with --stdin René Scharfe (1): git-name-rev: don't use printf without format Stephan Beyer (1): builtin-revert.c: typofix Steve Haslam (1): Propagate -u/--upload-pack option of "git clone" to transport. Version v1.5.6.4; changes since v1.5.6.3: ----------------------------------------- Dmitry Potapov (3): Fix buffer overflow in git-grep Fix buffer overflow in git diff Fix buffer overflow in prepare_attr_stack Johannes Schindelin (3): git daemon: avoid calling syslog() from a signal handler Add pretty format %aN which gives the author name, respecting .mailmap git fetch-pack: do not complain about "no common commits" in an empty repo Johannes Sixt (1): t7600-merge: Use test_expect_failure to test option parsing Junio C Hamano (4): Start preparing 1.5.6.4 release notes rev-list: honor --quiet option http-fetch: do not SEGV after fetching a bad pack idx file GIT 1.5.6.4 Lars Noschinski (1): git-cvsserver: fix call to nonexistant cleanupWorkDir() Lukas Sandström (1): git-mailinfo: Fix getting the subject from the in-body [PATCH] line Olivier Marin (1): builtin-rm: fix index lock file path Petr Baudis (1): Documentation/git-cherry-pick.txt et al.: Fix misleading -n description Shawn O. Pearce (9): Correct pack memory leak causing git gc to try to exceed ulimit bash completion: Improve responsiveness of git-log completion bash completion: Don't offer "a.." as a completion for "a." bash completion: Append space after file names have been completed bash completion: Resolve git show ref:path<tab> losing ref: portion index-pack: Refactor base arguments of resolve_delta into a struct index-pack: Chain the struct base_data on the stack for traversal index-pack: Track the object_entry that creates each base_data index-pack: Honor core.deltaBaseCacheLimit when resolving deltas Stephan Beyer (2): rebase-i: keep old parents when preserving merges api-run-command.txt: typofix Version v1.5.6.3; changes since v1.5.6.2: ----------------------------------------- Alex Riesen (1): git-clone: remove leftover debugging fprintf(). Brian Hetro (5): builtin-log.c: Use 'git_config_string' to get 'format.subjectprefix' and 'format.suffix' convert.c: Use 'git_config_string' to get 'smudge' and 'clean' diff.c: Use 'git_config_string' to get 'diff.external' http.c: Use 'git_config_string' to clean up SSL config. builtin-commit.c: Use 'git_config_string' to get 'commit.template' Christian Couder (1): Fix "config_error_nonbool" used with value instead of key Gerrit Pape (1): git-svn.perl: workaround assertions in svn library 1.5.0 Jeff King (1): make deleting a missing ref more quiet Johannes Schindelin (1): run_command(): respect GIT_TRACE Junio C Hamano (6): attribute documentation: keep EXAMPLE at end clone -q: honor "quiet" option over native transports. mailinfo: feed the correct line length to decode_transfer_encoding() Start preparing release notes for 1.5.6.3 t0004: fix timing bug GIT 1.5.6.3 Linus Torvalds (1): racy-git: an empty blob has a fixed object name Lukas Sandström (1): git-mailinfo: document the -n option Mark Levedahl (1): git-submodule - Fix bugs in adding an existing repo as a module Matthew Ogilvie (1): Documentation cvs: Clarify when a bare repository is needed Mikael Magnusson (1): Fix grammar in git-rev-parse(1). Nikolaus Schulz (1): Documentation: be precise about which date --pretty uses Petr Baudis (1): Fix backwards-incompatible handling of core.sharedRepository SZEDER Gábor (1): bash: offer only paths after '--' Shawn O. Pearce (1): Remove unnecessary pack-*.keep file after successful git-clone Stephan Beyer (1): git-am: Do not exit silently if committer is unset Version v1.5.6.2; changes since v1.5.6.1: ----------------------------------------- Avery Pennarun (1): git-svn: avoid filling up the disk with temp files. Björn Steinbrink (1): git cat-file: Fix memory leak in batch mode Eric Wong (1): git-svn: don't sanitize remote names in config Jeff King (3): fetch: report local storage errors in status table doc/rev-parse: clarify reflog vs --until for specifying revisions fetch: give a hint to the user when local refs fail to update Jochen Voss (1): avoid off-by-one error in run_upload_archive Joey Hess (1): fix git config example syntax Johannes Schindelin (2): clone: respect url.insteadOf setting in global configs clone: respect the settings in $HOME/.gitconfig and /etc/gitconfig Junio C Hamano (9): Allow "git-reset path" when unambiguous diff --check: do not discard error status upon seeing a good line git-shell: accept "git foo" form GIT 1.5.4.6 GIT 1.5.5.5 Start draft release notes for 1.5.6.2 Work around gcc warnings from curl headers Fix executable bits in t/ scripts GIT 1.5.6.2 Shawn O. Pearce (1): Fix describe --tags --long so it does not segfault Thomas Rast (1): Fix 'git show' on signed tag of signed tag of commit Version v1.5.6.1; changes since v1.5.6: --------------------------------------- Brandon Casey (2): git-merge.sh: fix typo in usage message: sucesses --> succeeds t7502-commit.sh: test_must_fail doesn't work with inline environment variables Dan McGee (1): completion: add --graph to log command completion Dmitry Potapov (1): fix update-hook-example to work with packed tag references Jan Krüger (2): Documentation: fix formatting in git-svn git-svn: make rebuild respect rewriteRoot option Jeff King (2): for-each-ref: implement missing tag values clone: create intermediate directories of destination repo Junio C Hamano (2): diff -c/--cc: do not include uninteresting deletion before leading context GIT 1.5.6.1 Linus Torvalds (1): Make git_dir a path relative to work_tree in setup_work_tree() Michele Ballabio (1): parse-options.c: fix documentation syntax of optional arguments Patrick Higgins (1): Workaround for AIX mkstemp() Stephan Beyer (4): git-rebase.sh: Add check if rebase is in progress api-builtin.txt: update and fix typo api-parse-options.txt: Introduce documentation for parse options API Extend parse-options test suite Version v1.5.6; changes since v1.5.6-rc3: ----------------------------------------- Alejandro Mery (1): git-am: head -1 is obsolete and doesn't work on some new systems Christian Couder (1): Documentation: RelNotes-1.5.6: talk about renamed HTML files Jeff King (1): clean up error conventions of remote.c:match_explicit Johan Herland (3): cpio is no longer used by git-clone Consistency: Use "libcurl" instead of "cURL library" and "curl" The "curl" executable is no longer required Junio C Hamano (7): Makefile: update check-docs target Update RPM spec to drop curl executable requirement diff.c: fix emit_line() again not to add extra line create_tempfile: make sure that leading directories can be accessible by peers sha1_file.c: simplify parse_pack_index() builtin-rerere: fix a small leak GIT 1.5.6 Lea Wiemann (2): gitweb: quote commands properly when calling the shell gitweb: remove unused parse_ref method Linus Torvalds (1): write_loose_object: don't bother trying to read an old object Miklos Vajna (2): run-command documentation: fix "memset()" parameter path-list documentation: document all functions and data structures Olivier Marin (1): Fix approxidate("never") to always return 0 Pierre Habouzit (1): Make git reflog expire honour core.sharedRepository. SZEDER Gábor (1): diff: reset color before printing newline Version v1.5.6-rc3; changes since v1.5.6-rc2: --------------------------------------------- Ask Bjørn Hansen (2): gitweb setup instruction: rewrite HEAD and root as well send-email: Allow the envelope sender to be set via configuration Avery Pennarun (2): git-svn: don't append extra newlines at the end of commit messages. git-svn: test that extra blank lines aren't inserted in commit messages. Boyd Lynn Gerber (2): progress.c: avoid use of dynamic-sized array Port to 12 other Platforms. Chris Ridd (1): Improve sed portability Christian Couder (1): documentation: bisect: remove bits talking about a bisection branch Flavio Poletti (1): git-instaweb: improve auto-discovery of httpd and call conventions. Fred Maranhão (1): fix typo in tutorial Geoffrey Irving (1): doc: adding gitman.info and *.texi to .gitignore Jakub Narębski (2): gitweb: Make it work with $GIT containing spaces Use 'trash directory' thoroughly in t/test-lib.sh Jeff King (1): document --pretty=tformat: option Johannes Schindelin (1): merge-recursive: respect core.autocrlf when writing out the result Johannes Sixt (2): make_nonrelative_path: Use is_absolute_path() Remove exec bit from builtin-fast-export.c Junio C Hamano (8): http-push.c: remove duplicated code "remote prune": be quiet when there is nothing to prune Documentation/git-pull.txt: Use more standard [NOTE] markup Documentation: exclude @pxref{[REMOTES]} from texinfo intermediate output user-manual: describe how higher stages are set during a merge t4126: fix test that happened to work due to timing sha1_file.c: dead code removal GIT 1.5.6-rc3 Lea Wiemann (4): t1006-cat-file.sh: typo cat-file --batch / --batch-check: do not exit if hashes are missing Documentation/git-cat-file.txt: add missing line break t/.gitattributes: only ignore whitespace errors in test files Linus Torvalds (4): Consolidate SHA1 object file close Avoid cross-directory renames and linking on object creation Make loose object file reading more careful Simplify and rename find_sha1_file() Marius Storm-Olsen (1): Add testcase for merging in a CRLF repo Mark Levedahl (1): git-submodule - Fix errors regarding resolve_relative_url Mikael Magnusson (1): Typo in RelNotes. Mike Hommey (1): Don't allocate too much memory in quote_ref_url Miklos Vajna (3): Remove unused code in parse_commit_buffer() git-rebase -i: mention the short command aliases in the todo list git-read-tree: document -v option. Olivier Marin (4): remote show: fix the -n option builtin-remote: split show_or_prune() in two separate functions remote prune: print the list of pruned branches remote show: list tracked remote branches with -n Paul Mackerras (1): gitk: Handle detached heads better Philippe Bruhat (1): git-cvsimport: do not fail when CVSROOT is / Pieter de Bie (1): git-send-email: allow whitespace in addressee list René Scharfe (1): Ignore .gitattributes in bare repositories SZEDER Gábor (2): git add: add long equivalents of '-u' and '-f' options completion: add more 'git add' options Shawn O. Pearce (1): fast-export: Correctly generate initial commits with no parents Stephan Beyer (6): git-commit.txt: Correct option alternatives git-commit.txt: Add missing long/short options Docs: Use "-l::\n--long\n" format in OPTIONS sections Docs: add some long/short options git-describe.txt: document --always git-name-rev.txt: document --no-undefined and --always Version v1.5.6-rc2; changes since v1.5.6-rc1: --------------------------------------------- Adam Simpkins (2): graph API: fix "git log --graph --first-parent" git log --graph: print '*' for all commits, including merges Alex Riesen (1): Fix t5516 on cygwin: it does not like double slashes at the beginning of a path Björn Steinbrink (1): name-rev: Fix segmentation fault when using --all Christian Couder (2): documentation: convert "diffcore" and "repository-layout" to man pages documentation: move git(7) to git(1) Daniel Barkalow (1): Use nonrelative paths instead of absolute paths for cloned repositories Dirk Süsserott (1): Documentation/git-mailsplit: Enhanced description of -o option Jakub Narębski (1): gitweb: Add charset info to "raw" output of 'text/plain' blobs Jeff King (1): Fix "git clone http://$URL" to check out the worktree when asked Junio C Hamano (6): t7502: do not globally unset GIT_COMMITTER_* environment variables t7502: tighten loosely written test sequence Documentation: git-log cannot use rev-list specific options t7502: honor SHELL_PATH GIT 1.5.5.4 GIT 1.5.6-rc2 Lea Wiemann (2): cat-file --batch: flush stdout also when objects are missing git-for-each-ref.txt: minor improvements Michael Dressel (1): describe: match pattern for lightweight tags too Miklos Vajna (1): Strbuf documentation: document most functions Teemu Likonen (1): Print info about "git help COMMAND" on git's main usage pages Version v1.5.6-rc1; changes since v1.5.6-rc0: --------------------------------------------- Adam Simpkins (2): graph API: improve display of merge commits graph API: avoid printing unnecessary padding before some octopus merges Christian Couder (2): bisect: use "$GIT_DIR/BISECT_START" to check if we are bisecting Documentation: convert "glossary" and "core-tutorial" to man pages Christian Engwer (1): git-svn fails in prop_walk if $self->{path} is not empty Dmitry V. Levin (1): builtin-fetch.c (store_updated_refs): Honor update_local_ref() return value Gerrit Pape (2): Documentation/git-bundle.txt: fix synopsis commit --interactive: properly update the index before commiting Jakub Narębski (2): gitweb: Remove gitweb/test/ directory gitweb: Fix "next" link on bottom of page Jamis Buck (1): git-reset: honor -q and do not show progress message Jeff King (1): clone: make sure we support the transport type Johannes Schindelin (1): hg-to-git: add --verbose option Johannes Sixt (3): t5700-clone-reference: Quote $U Revert "filter-branch: subdirectory filter needs --full-history" rebase --interactive: Compute upstream SHA1 before switching branches John J. Franey (1): Clarify description of <repository> argument to pull/fetch for naming remotes. Junio C Hamano (25): tests: do not use implicit "git diff --no-index" diff-files: do not play --no-index games "git diff": do not ignore index without --no-index Update draft release notes for 1.5.6 log --graph: do not accept log --graphbogus log --pretty: do not accept bogus "--prettyshort" Release Notes for 1.5.5.2 Documentation/git.txt: link to 1.5.5.2 documentation. Makefile: fix dependency on wt-status.h show-branch --current: do not barf on detached HEAD git-diff: allow --no-index semantics a bit more git diff --no-index: default to page like other diff frontends GIT 1.5.5.3 t5100: Avoid filename "nul" Git::cat_blob: allow using an empty blob to fix git-svn breakage fix sha1_pack_index_name() Manual subsection to refer to other pages is SEE ALSO Documentation: git-cherry uses git-patch-id "git checkout -- paths..." should error out when paths cannot be written checkout: make reset_clean_to_new() not die by itself checkout: consolidate reset_{to_new,clean_to_new}() unpack_trees(): allow callers to differentiate worktree errors from merge errors checkout: "best effort" checkout commit: drop duplicated parents GIT v1.5.6-rc1 Karl Wiberg (3): Add some tests for git update-ref -d Fix path duplication in git svn commit-diff Revert "git.el: Set process-environment instead of invoking env" Kevin Ballard (1): Documentation/git-filter-branch.txt: Fix description of --commit-filter Lea Wiemann (5): gitweb: only display "next" links in logs if there is a next page t/test-lib.sh: resolve symlinks in working directory, for pathname comparisons Git.pm: fix documentation of hash_object glossary: improve a few links Git.pm: fix return value of config method Linus Torvalds (2): Make pack creation always fsync() the result Remove now unnecessary 'sync()' calls Luciano Rocha (1): git-init: accept --bare option Marius Storm-Olsen (2): Clearify the documentation for core.ignoreStat Add shortcut in refresh_cache_ent() for marked entries. Michele Ballabio (1): Documentation: fix graph in git-rev-parse.txt Miklos Vajna (1): Revision walking documentation: document most important functions Nicolas Pitre (1): make verify-pack a bit more useful with bad packs Paolo Bonzini (1): rollback lock files on more signals than just SIGINT Pieter de Bie (1): builtin-fast-export: Only output a single parent per line Seth Falcon (1): Add a --dry-run option to git-svn rebase Shawn O. Pearce (8): git-gui: Add a --trace command line option git-gui: Handle workdir detection when CYGWIN=nowinsymlinks Don't diff empty tree on branch creation in paranoid update hook Don't load missing ACL files in paranoid update hook Ignore no-op changes in paranoid update hook Remove unused remote_prefix member in builtin-remote Make "git-remote prune" delete refs according to fetch specs Make "git-remote rm" delete refs acccording to fetch specs Stephan Beyer (2): Add test cases for git-am Merge t4150-am-subdir.sh and t4151-am.sh into t4150-am.sh Twiinz (1): git-gui: Vertically align textboxes with labels Version v1.5.6-rc0; changes since v1.5.5.6: ------------------------------------------- Adam Roben (11): Add tests for git cat-file git-cat-file: Small refactor of cmd_cat_file git-cat-file: Make option parsing a little more flexible git-cat-file: Add --batch-check option git-cat-file: Add --batch option Move git-hash-object tests from t5303 to t1007 Add more tests for git hash-object git-hash-object: Add --stdin-paths option Git.pm: Add command_bidi_pipe and command_close_bidi_pipe Git.pm: Add hash_and_insert_object and cat_blob git-svn: Speed up fetch Adam Simpkins (11): Remove dead code: show_log() sep argument and diff_options.msg_sep log: print log entry terminator even if the message is empty revision API: split parent rewriting and parent printing options Add history graph API log and rev-list: add --graph option graph API: eliminate unnecessary indentation graph API: fix graph mis-alignment after uninteresting commits graph API: don't print branch lines for uninteresting merge parents log --graph --left-right: show left/right information in place of '*' Fix output of "git log --graph --boundary" get_revision(): honor the topo_order flag for boundary commits Alex Riesen (10): Use the modern syntax of git-diff-files in t2002-checkout-cache-u.sh Improve reporting of errors in config file routines Make the exit code of add_file_to_index actually useful Extend interface of add_files_to_cache to allow ignore indexing errors Add --ignore-errors to git-add to allow it to skip files with read errors Add a test for git-add --ignore-errors Add a config option to ignore errors for git-add Ensure that a test is run in the trash directory Fix t6031 on filesystems without working exec bit Fix t3701 if core.filemode disabled Anders Waldenborg (1): gitweb: Convert string to internal form before chopping in chop_str Avery Pennarun (3): git-svn: add documentation for --use-log-author option. git-svn: Add --add-author-from option. git-svn: add documentation for --add-author-from option. Bart Trojanowski (1): make git-status use a pager Brandon Casey (7): filter-branch.sh: support nearly proper tag name filtering compat/fopen.c: avoid clobbering the system defined fopen macro repack: modify behavior of -A option to leave unreferenced objects unpacked git-gc: always use -A when manually repacking builtin-gc.c: deprecate --prune, it now really has no effect builtin-clone.c: Need to closedir() in copy_or_link_directory() t/Makefile: "trash" directory was renamed recently Bryan Donlan (10): git-rebase.sh: Fix --merge --abort failures when path contains whitespace config.c: Escape backslashes in section names properly git-send-email.perl: Handle shell metacharacters in $EDITOR properly test-lib.sh: Add a test_set_editor function to safely set $VISUAL Use test_set_editor in t9001-send-email.sh test-lib.sh: Fix some missing path quoting lib-git-svn.sh: Fix quoting issues with paths containing shell metacharacters Don't use the 'export NAME=value' in the test scripts. Fix tests breaking when checkout path contains shell metacharacters Rename the test trash directory to contain spaces. Caio Marcelo de Oliveira Filho (1): git-format-patch: add --no-binary to omit binary changes in the patch. Chris Frey (2): Documentation/git-prune.txt: document unpacked logic Documentation/git-repack.txt: document new -A behaviour Chris Parsons (1): Updated status to show 'Not currently on any branch' in red Christian Couder (21): bisect: add "git bisect help" subcommand to get a long usage string help: use man viewer path from "man.<tool>.path" config var documentation: help: add "man.<tool>.path" config variable help: use "man.<tool>.cmd" as custom man viewer command documentation: help: add info about "man.<tool>.cmd" config var documentation: web--browse: add a note about konqueror rev-parse: teach "--verify" to be quiet when using "-q" or "--quiet" rev-parse: fix --verify to error out when passed junk after a good rev Documentation: hooks: fix missing verb in pre-applypatch description Documentation: rename "hooks.txt" to "githooks.txt" and make it a man page Documentation: improve "add", "pull" and "format-patch" examples Documentation: bisect: add a few "git bisect run" examples rev-parse: add test script for "--verify" rev-parse: fix using "--default" with "--verify" rev-parse --verify: do not output anything on error Documentation: rev-parse: add a few "--verify" and "--default" examples bisect: add test cases to check that "git bisect start" is atomic bisect: fix left over "BISECT_START" file when starting with junk rev bisect: trap critical errors in "bisect_start" bisect: use a detached HEAD to bisect Documentation: convert tutorials to man pages Christian Stimming (3): git-gui: Update German translation gitk: Update German translation gitk: German translation again updated Clemens Buchacher (2): Reset the signal being handled http-push: remove remote locks on exit signals Clifford Caoile (1): git.el: Set process-environment instead of invoking env Dan McGee (3): completion: allow 'git remote' subcommand completion completion: remove use of dashed git commands Allow cherry-pick (and revert) to add signoff line Daniel Barkalow (12): Make walker.fetch_ref() take a struct ref. Make ls-remote http://... list HEAD, like for git://... Mark the list of refs to fetch as const Add a lockfile function to append to a file Add a library function to add an alternate to the alternates file Have a constant extern refspec for "--tags" Allow for having for_each_ref() list extra refs Add a function to set a non-default work tree Provide API access to init_db() Build in clone clone: fall back to copying if hardlinking fails Test that --reference actually suppresses fetching referenced objects Dmitry Potapov (1): git-init: autodetect core.ignorecase Dustin Sallings (2): Allow tracking branches to set up rebase by default. Allow tracking branches to set up rebase by default. Eric Wong (1): git-svn: fix cloning of HTTP URLs with '+' in their path Frank Lichtenheld (4): var: Don't require to be in a git repository. Git.pm: Don't require a repository instance for config Git.pm: Don't require repository instance for ident send-email: Don't require to be called in a repository Gerrit Pape (3): gitweb: fallback to system-wide config file if default config does not exist gitweb: fallback to system-wide config file (fixup) gitk: Makefile/install: force permissions when installing files and dirs Govind Salinas (1): pretty.c: add %x00 format specifier. Gustaf Hendeby (6): git-svn: Make create-ignore use git add -f Documentation: Add create-ignore to git svn manual Documentation/config.txt: Add git-gui options Documentation: Add missing git svn commands Documentation: Fix skipped section level Make git add -n and git -u -n output consistent Heikki Orsila (7): Make core.sharedRepository more generic Document functions xmemdupz(), xread() and xwrite() Die for an early EOF in a file reading loop Make read_in_full() and write_in_full() consistent with xread() and xwrite() Cleanup xread() loops to use read_in_full() Add log.date config variable Remove redundant code, eliminate one static variable Imran M Yousuf (1): Use '-f' option to point to the .gitmodules file Jakub Narębski (1): gitweb: Use feed link according to current view Jeff King (12): add--interactive: ignore mode change in 'p'atch command add--interactive: allow user to choose mode update git-fetch: always show status of non-tracking-ref fetches git-remote: show all remotes with "git remote show" Documentation: point git-prune users to git-gc add merge.renamelimit config option bump rename limit defaults diff: make "too many files" rename warning optional fix bsd shell negation t5000: tar portability fix clone: bsd shell portability fix filter-branch: fix variable export logic Johan Herland (2): Add a test for another combination of --reference Add test for cloning with "--reference" repo being a subset of source repo Johannes Schindelin (10): Provide git_config with a callback-data parameter builtin-clone: fix initial checkout cvsexportcommit: chomp only removes trailing whitespace diff options: Introduce --ignore-submodules Teach update-index about --ignore-submodules Ignore dirty submodule states during rebase and stash cvsexportcommit: introduce -W for shared working trees (between Git and CVS) submodule update: add convenience option --init pull --rebase: exit early when the working directory is dirty mailsplit and mailinfo: gracefully handle NUL characters Johannes Sixt (3): builtin-commit.c: Remove a redundant assignment. git-gui: Report less precise object estimates for database compression compat-util: avoid macro redefinition warning Jon Loeliger (1): Add otherwise missing --strict option to unpack-objects summary. Junio C Hamano (24): Optimize rename detection for a huge diff t5300: add test for "unpack-objects --strict" unpack-objects: fix --strict handling rebase [--onto O] A B: omit needless checkout sha1-lookup: more memory efficient search in sorted list of SHA-1 diff: make --dirstat binary-file safe sha1-lookup: make selection of 'middle' less aggressive log: teach "terminator" vs "separator" mode to "--pretty=format" git_config_bool_or_int() write_index(): optimize ce_smudge_racily_clean_entry() calls with CE_UPTODATE diff-files: mark an index entry we know is up-to-date as such Fix git_config_bool_or_int First batch of post 1.5.5 updates diff: a submodule not checked out is not modified diff-lib.c: rename check_work_tree_entity() is_racy_timestamp(): do not check timestamp for gitlinks git-svn: add test for --add-author-from and --use-log-author builtin-apply: typofix builtin-apply: accept patch to an empty file builtin-apply: do not declare patch is creation when we do not know it unpack-trees: allow Porcelain to give different error messages "git-add -n -u" should not add but just report mailinfo: apply the same fix not to lose NULs in BASE64 and QP codepaths mailsplit: minor clean-up in read_line_with_nul() Jörg Sommer (1): post-merge: Add it's not executed if merge failed. Krzysztof Kowalczyk (1): alloc_ref_from_str(): factor out a common pattern of alloc_ref from string Lars Hjemli (8): Add platform-independent .git "symlink" Teach resolve_gitlink_ref() about the .git file Teach git-submodule.sh about the .git file Teach GIT-VERSION-GEN about the .git file git-branch: add support for --merged and --no-merged git-branch.txt: compare --contains, --merged and --no-merged Add tests for `branch --[no-]merged` revision.c: really honor --first-parent Linus Torvalds (12): Make unpack_trees_options bit flags actual bitfields Move name hashing functions into a file of its own Make "index_name_exists()" return the cache_entry it found Make hash_name_lookup able to do case-independent lookups Add 'core.ignorecase' option Make branch merging aware of underlying case-insensitive filsystems Make unpack-tree update removed files before any updated files When adding files to the index, add support for case-independent matches Make git-add behave more sensibly in a case-insensitive environment Optimize match_pathspec() to avoid fnmatch() Avoid some unnecessary lstat() calls Optimize symlink/directory detection Liu Yubao (1): Documentation on --git-dir and --work-tree Marcel Koeppen (2): Replace in-place sed in t7502-commit Fix prepare-commit-msg hook and replace in-place sed Mark Hills (1): Be more careful with objects directory permissions on clone Martin Koegler (3): unpack-objects: prevent writing of inconsistent objects receive-pack: allow using --strict mode for unpacking objects t5300: add test for "index-pack --strict" Matthew Ogilvie (3): git-cvsserver: add mechanism for managing working tree and current directory implement gitcvs.usecrlfattr git-cvsserver: add ability to guess -kb from contents Matthias Kestenholz (1): Use color.ui variable in scripts too Matthieu Moy (1): git-svn: detect and fail gracefully when dcommitting to a void Michele Ballabio (4): gitk: Disable "Reset %s branch to here" when on a detached head gitk: Move es.po where it belongs builtin-cat-file.c: use parse_options() change quoting in test t1006-cat-file.sh Mike Ralphson (1): Makefile: update the default build options for AIX Miklos Vajna (11): git-gc --auto: add pre-auto-gc hook Documentation/hooks: add pre-auto-gc hook contrib/hooks: add an example pre-auto-gc hook git checkout: add -t alias for --track git-format-patch: add a new format.cc configuration variable git-send-email: add a new sendemail.cc configuration variable Add tests for sendemail.cc configuration variable INSTALL: add a note about GNU interactive tools has been renamed git-fast-import: rename cmd_*() functions to parse_*() git-merge: exclude unnecessary options from OPTIONS_SPEC CodingGuidelines: Add a note to avoid assignments inside if() Nicolas Pitre (9): pack-objects: small cleanup pack-objects: remove some double negative logic pack-objects: simplify the condition associated with --all-progress pack-objects: clean up write_object() a bit pack-objects: move compression code in a separate function pack-objects: allow for early delta deflating pack-objects: fix early eviction for max depth delta objects add a force_object_loose() function let pack-objects do the writing of unreachable objects as loose objects Paolo Bonzini (2): Add a remote.*.mirror configuration option add special "matching refs" refspec Paul Mackerras (40): gitk: Use git log without --topo-order and reorganize the commits ourselves gitk: Fix bug in assigning row numbers to arcs gitk: Fix bug in parsing multiple revision arguments gitk: Compute row numbers and order tokens lazily gitk: Fix a couple of bugs gitk: Fix more bugs resulting in Tcl "no such element in array" errors gitk: More bug fixes and cleanups gitk: Implement date mode in the new framework gitk: Fix another collection of bugs gitk: Don't try to show local changes from a head that isn't shown gitk: Keep the same commits visible as other commits come in gitk: Fix some corner cases in the targetid/targetrow stuff gitk: Fix a couple of bugs in the find function gitk: Fix potential bug with fake commit IDs in renumbervarc gitk: Index [fnvr]highlights by id rather than row gitk: Fix handling of flag arguments gitk: Fix a bug in make_disporder gitk: Select head of current branch by default gitk: Select something appropriate on cherry-pick, branch reset and checkout gitk: Fix bug where editing an existing view would cause an infinite loop gitk: Fix bug causing Tcl error when no commits are selected gitk: Fix cherry-picking to insert a real row not a fake row gitk: Cope better with getting commits that we have already seen gitk: Fix bug where arcs could get lost gitk: Handle updating with path limiting better gitk: Fix problems with target row stuff gitk: Don't filter view arguments through git rev-parse gitk: Correct a few strings and comments to say "git log" gitk: Fix some corner cases in computing vrowmod and displayorder gitk: Avoid a crash in selectline if commitinfo($id) isn't set gitk: Fix problem with target row not being in scroll region gitk: Reorganize processing of arguments for git log gitk: Fix handling of tree file list with special chars in names gitk: Make updates go faster gitk: Synchronize highlighting in file view for 'f' and 'b' commands gitk: Show current row number and total number of rows gitk: Add a progress bar for checking out a head gitk: Fix "wrong # coordinates" error on reload gitk: Fix bug where current row number display stops working gitk: Fix bug introduced by "gitk: Fix "wrong # coordinates" error on reload" Paul Oliver (1): Make git-cvsimport remove ['s from tags, as bad_ref_char doesn't allow them. Peter Krefting (1): gitk: Initial Swedish translation. Ping Yin (5): git-submodule summary: --for-status option builtin-status: submodule summary support builtin-status: Add tests for submodule summary t4027: test diff for submodule with empty directory Add t7506 to test submodule related functions for git-status Rafael Garcia-Suarez (1): Spelling fixes in the gitweb documentation Richard Quirk (2): bash: Add completion for gitk --merge Documentation gitk: Describe what --merge does SZEDER Gábor (5): doc: moved merge.* config variables into separate merge-config.txt merge, pull: introduce '--(no-)stat' option add 'merge.stat' config variable fmt-merge-msg: add '--(no-)log' options and 'merge.log' config variable merge, pull: add '--(no-)log' command line option Santi Béjar (3): Preparation to call determine_author_info from prepare_to_commit commit: Show author if different from committer commit: Show committer if automatic Santiago Gala (1): gitk: Spanish translation of gitk Sebastian Schuberth (1): mergetool: Make ECMerge use the settings as specified by the user in the GUI Shawn O. Pearce (3): git-gui: Don't use '$$cr master' with aspell earlier than 0.60 git-gui: Setup branch.remote,merge for shorthand git-pull git-gui: Delete branches with 'git branch -D' to clear config Steffen Prohaska (4): t0050: Test autodetect core.ignorecase t0050: Set core.ignorecase case to activate case insensitivity t0050: Add test for case insensitive add t0050: Fix merge test on case sensitive file systems Stephan Beyer (1): builtin-apply.c: use git_config_string() to get apply_default_whitespace Stephen R. van den Berg (2): Simplify and fix --first-parent implementation git-svn: Same default as cvsimport when using --use-log-author Steven Grimm (1): Add svn-compatible "blame" output format to git-svn Teemu Likonen (1): Documentation/git-web--browse.txt: fix small typo Thomas Arcila (1): gitk: Allow users to view diffs in external diff viewer Trent Piepho (1): cvsexportcommit: Create config option for CVS dir Version v1.5.5.6; changes since v1.5.5.5: ----------------------------------------- Junio C Hamano (2): gitweb: do not run "git diff" that is Porcelain GIT 1.5.4.7 Version v1.5.5.5; changes since v1.5.5.4: ----------------------------------------- Fred Maranhão (1): fix typo in tutorial Johannes Sixt (1): Remove exec bit from builtin-fast-export.c Junio C Hamano (4): diff.c: fix emit_line() again not to add extra line git-shell: accept "git foo" form GIT 1.5.4.6 GIT 1.5.5.5 Miklos Vajna (1): git-read-tree: document -v option. SZEDER Gábor (1): diff: reset color before printing newline Version v1.5.5.4; changes since v1.5.5.3: ----------------------------------------- Björn Steinbrink (1): name-rev: Fix segmentation fault when using --all Junio C Hamano (1): GIT 1.5.5.4 Lea Wiemann (1): git-for-each-ref.txt: minor improvements Michael Dressel (1): describe: match pattern for lightweight tags too Version v1.5.5.3; changes since v1.5.5.2: ----------------------------------------- Christian Couder (1): bisect: print an error message when "git rev-list --bisect-vars" fails Gerrit Pape (3): git-bisect.sh: don't accidentally override existing branch "bisect" Documentation/git-bundle.txt: fix synopsis commit --interactive: properly update the index before commiting Horst H. von Brand (1): Fix recipient santitization Jeff King (2): send-email: specify content-type of --compose body send-email: rfc2047-quote subject lines with non-ascii characters Johannes Sixt (1): Revert "filter-branch: subdirectory filter needs --full-history" Junio C Hamano (3): Release Notes for 1.5.5.2 show-branch --current: do not barf on detached HEAD GIT 1.5.5.3 Lea Wiemann (1): gitweb: only display "next" links in logs if there is a next page Michele Ballabio (1): Documentation: fix graph in git-rev-parse.txt Pieter de Bie (1): builtin-fast-export: Only output a single parent per line Version v1.5.5.2; changes since v1.5.5.1: ----------------------------------------- A Large Angry SCM (1): git-repack: re-enable parsing of -n command line option Alex Riesen (2): Use "=" instead of "==" in condition as it is more portable Fix use after free() in builtin-fetch Andy Parkins (1): post-receive-email: fix accidental removal of a trailing space in signature line Ariel Badichi (2): copy.c: copy_fd - correctly report write errors archive.c: format_subst - fixed bogus argument to memchr Brandon Casey (1): git-clone.txt: Adjust note to --shared for new pruning behavior of git-gc Dan McGee (1): Remove 'header' from --signoff option description Dmitry Potapov (1): git-gc --prune is deprecated Dustin Sallings (1): Documentation/config.txt: Mention branch.<name>.rebase applies to "git pull" Florian Ragwitz (1): filter-branch: Documentation fix. Gerrit Pape (1): diff-options.txt: document the new "--dirstat" option Heikki Orsila (1): Add missing "short" alternative to --date in rev-list-options.txt Ian Hilt (1): Documentation/git-describe.txt: make description more readable Jeff King (11): Don't force imap.host to be set when imap.tunnel is set t5516: remove ambiguity test (1) doc/git-gc: add a note about what is collected push: allow unqualified dest refspecs to DWIM remote: create fetch config lines with '+' fix reflog approxidate parsing bug cvsimport: always pass user data to "system" as a list checkout: don't rfc2047-encode oneline on detached HEAD doc: clarify definition of "update" for git-add -u doc/git-daemon: s/uploadarchive/uploadarch/ git-am: fix typo in usage message Johannes Sixt (2): wt-status.h: declare global variables as extern rev-parse --symbolic-full-name: don't print '^' if SHA1 is not a ref Jon Loeliger (2): git-filter-branch: Clarify file removal example. git-show.txt: Not very stubby these days. Junio C Hamano (3): write-tree: properly detect failure to write tree objects clone: detect and fail on excess parameters fetch-pack: brown paper bag fix Linus Torvalds (1): fetch-pack: do not stop traversing an already parsed commit Matt Graham (1): Linked glossary from cvs-migration page Matthew Ogilvie (1): gitattributes: Fix subdirectory attributes specified from root directory Michael Weber (1): svn-git: Use binmode for reading/writing binary rev maps Miklos Vajna (1): diff options documentation: refer to --diff-filter in --name-status Sam Vilain (1): Amend git-push refspec documentation Shawn O. Pearce (1): Clarify repack -n documentation Sitaram Chamarty (1): builtin-commit.c: add -u as short name for --untracked-files Teemu Likonen (1): bash: Add completion for git diff --base --ours --theirs Thomas Guyot-Sionnest (1): git-svn bug with blank commits and author file martin f. krafft (2): Escape project name in regexp Escape project names before creating pathinfo URLs Version v1.5.5.1; changes since v1.5.5: --------------------------------------- Alberto Bertogli (1): builtin-apply: Show a more descriptive error on failure when opening a patch Björn Steinbrink (1): Fix section about backdating tags in the git-tag docs Carlos Rica (2): Fix documentation syntax of optional arguments in short options. core-tutorial.txt: Fix showing the current behaviour. Christian Couder (4): bisect: fix bad rev checking in "git bisect good" bisect: report bad rev better bisect: squelch "fatal: ref HEAD not a symref" misleading message git-bisect: make "start", "good" and "skip" succeed or fail atomically Clifford Caoile (1): Docs gitk: Explicitly mention the files that gitk uses (~/.gitk) Daniel Barkalow (1): Fix config key miscount in url.*.insteadOf Dirk Süsserott (1): Documentation/git-request-pull: Fixed a typo ("send" -> "end") Jakub Narębski (1): gitweb: Fix 'history' view for deleted files with history Jeff King (1): git-fetch: fix status output when not storing tracking ref Johannes Sixt (1): Document option --only of git commit Jon Loeliger (1): Clarify and fix English in "git-rm" documentation Jonas Fonseca (1): git-remote: reject adding remotes with invalid names Junio C Hamano (7): Document -w option to shortlog Documentation/git-submodule: typofix t7401: squelch garbage output rebase: do not munge commit log message git-am: minor cleanup am: POSIX portability fix GIT 1.5.5.1 Linus Torvalds (2): Ignore leading empty lines while summarizing merges git-am: cope better with an empty Subject: line Mark Levedahl (1): git-submodule - possibly use branch name to describe a module Matthieu Moy (1): Document that WebDAV doesn't need git on the server, and works over SSL Michele Ballabio (1): revision.c: make --date-order overriddable Pedro Melo (1): Force the medium pretty format on calls to git log Ping Yin (1): git-submodule: Avoid 'fatal: cannot describe' message René Scharfe (1): git-archive: ignore prefix when checking file attribute Scott Collins (1): Clarify documentation of git-cvsserver, particularly in relation to git-shell Shawn Bohrer (2): git clean: Don't automatically remove directories when run within subdirectory git clean: Add test to verify directories aren't removed with a prefix Version v1.5.5; changes since v1.5.5-rc3: ----------------------------------------- Christian Couder (2): git-gui: Update french translation test suite: remove useless TERM cruft in "t7005-editor.sh" Eric Wong (1): git-svn: fix following renamed paths when tracking a single path Gerrit Pape (1): gitk: Fix changing colors through Edit->Preferences Jakub Narębski (1): Revert "gitweb: Add 'status_str' to parse_difftree_raw_line output" Junio C Hamano (2): Fix "git apply" to correctly enforce "match at the beginning" GIT 1.5.5 Kevin Ballard (1): git-fetch: Don't trigger a bus error when given the refspec "tag" Michele Ballabio (1): git-gui: use +/- instead of ]/[ to show more/less context in diff Pascal Obry (2): Add interactive option in rebase command completion list. Add prefix oriented completions for diff and format-patch commands. Peter Eriksen (2): git-pack-objects.txt: Make wording slightly less ambiguous Add description of OFS_DELTA to the pack format description Shawn O. Pearce (1): git-gui: Switch keybindings for [ and ] to bracketleft and bracketright Version v1.5.5-rc3; changes since v1.5.5-rc2: --------------------------------------------- Brandon Casey (2): mktag.c: improve verification of tagger field and tests mktag.c: tweak validation of tagger field and adjust test script Bryan Donlan (1): Silence cpio's "N blocks" output when cloning locally Christian Couder (1): help: Add a missing OPT_END(). Damien Diederen (7): cvsserver: Respond to the 'editors' and 'watchers' commands cvsserver: Only print the file part of the filename in status header cvsserver: Do not include status output for subdirectories if -l is passed cvsserver: Add a few tests for 'status' command cvsserver: Implement update -p (print to stdout) cvsserver: Add test for update -p cvsserver: Use the user part of the email in log and annotate results Eric Wong (1): git-svn: remove redundant slashes from show-ignore Johannes Sixt (3): filter-branch: Test renaming directories in a tree-filter verify-tag: Clean up the temporary file if gpg cannot be started. t7004-tag: Skip more tests if gpg is not available. Jonathan del Strother (1): git-gui: Add shortcut keys for Show More/Less Context Josh Elsasser (1): Allow git-cvsserver database table name prefix to be specified. Junio C Hamano (5): Add corner case tests for diff-index and diff-files diff-index: careful when inspecting work tree items diff-files: careful when inspecting work tree items Accept git aliases outside a git repository GIT 1.5.5-rc3 Marius Storm-Olsen (1): git-p4: Handle Windows EOLs properly after removal of p4 submit template handling. Paolo Bonzini (1): git-cvsserver: handle change type T Shawn O. Pearce (1): git-gui 0.10 Teemu Likonen (1): Describe the bug in handling filenames with funny characters in 'git add -i' veillette@yahoo.ca (1): filter-branch: Fix renaming a directory in the tree-filter Version v1.5.5-rc2; changes since v1.5.5-rc1: --------------------------------------------- Brandon Casey (1): t/t3800-mktag.sh: use test_must_fail rather than '!' Daniel Barkalow (2): Tighten refspec processing Fix branches file configuration Dirk Süsserott (1): Documentation: git-tag '-m'/'-F' implies '-a' Frank Lichtenheld (1): t9600-cvsimport.sh: set HOME before checking for cvsps availability Gerrit Pape (1): imap-send: properly error out if imap.host is not set in config Guanqun Lu (2): Fix the wrong output of `git-show v1.3.0~155^2~4` in documentation. Fix the wrong output of `git-show v1.3.0~155^2~4` in documentation. Jeff King (1): Documentation: clarify use of .git{ignore,attributes} versus .git/info/* Johannes Schindelin (2): RelNotes: mention checkout/branch's --track option, too init: show "Reinit" message even in an (existing) empty repository Johannes Sixt (1): builtin-remote: Fix missing newline at end of listing of pushed branches Julian Phillips (1): Documentation/git-checkout: Update summary to reflect current abilities Junio C Hamano (7): refspec: allow colon-less wildcard "refs/category/*" git-fetch test: test tracking fetch results, not just FETCH_HEAD test_must_fail: 129 is a valid error code from usage() Update draft release notes for 1.5.4.5 Update draft release notes for 1.5.5 builtin-prune: protect objects listed on the command line GIT 1.5.4.5 Michele Ballabio (3): parse-options.c: introduce OPT_DATE Add tests for git-prune builtin-prune.c: use parse_options() SZEDER Gábor (1): Always set *nongit_ok in setup_git_directory_gently() Version v1.5.5-rc1; changes since v1.5.5-rc0: --------------------------------------------- Brandon Casey (2): builtin-gc.c: allow disabling all auto-gc'ing by assigning 0 to gc.auto t/t7003-filter-branch.sh: use test_must_fail rather than '!' Daniel Barkalow (3): Tighten refspec processing Fix t3200 config Fix tag following Eyvind Bernhardsen (2): fast-import: Allow "reset" to delete a new branch without error fast-import: Document the effect of "merge" with no "from" in a commit Johannes Schindelin (1): remote show: do not show symbolic refs Junio C Hamano (10): Makefile: DIFF_OBJS is not special at all these days Makefile: flatten enumeration of headers, objects and programs t1000: use "test_must_fail git frotz", not "! git frotz" git-merge-one-file: fix longstanding stupid thinko Test: catch if trash cannot be removed Add tests to catch problems with un-unlinkable symlinks Fix read-tree not to discard errors remote.c: Fix overtight refspec validation gc --auto: raise default auto pack limit from 20 to 50 GIT 1.5.5-rc1 Kevin Ballard (4): Add --reverse to the git-rev-list usage string Document the sendemail.smtpserverport config variable Don't try and percent-escape existing percent escapes in git-svn URIs Make git-svn tests behave better on OS X Linus Torvalds (3): Don't update unchanged merge entries Fix possible Solaris problem in 'checkout_entry()' Make revision limiting more robust against occasional bad commit dates Marius Storm-Olsen (1): git-p4: Optimize the fetching of data from perforce. Miklos Vajna (1): Documentation/git-merge: document subtree strategy. Nicolas Pitre (1): make it easier for people who just want to get rid of 'git gc --auto' Ralf Wildenhues (1): Improve description of git filter-branch. Shawn Bohrer (2): git-p4: Unset P4DIFF environment variable when using 'p4 -du diff' git-p4: Use P4EDITOR environment variable when set Version v1.5.5-rc0; changes since v1.5.4.7: ------------------------------------------- Adam Piątyszek (1): git-gui: Add option for changing the width of the commit message text box Alex Riesen (4): Fix builtin checkout crashing when given an invalid path Fix test for cleanup failure in t7300 on Windows Do not use GUID on dir in git init --shared=all on FreeBSD git-gui: update russian translation Alexandre Julliard (5): git.el: Support for showing unknown/ignored directories. git.el: Added a command to amend a commit. git.el: Check for existing buffers on revert. git.el: Better handling of subprocess errors. git.el: Do not display empty directories. Andreas Ericsson (1): pack-objects: Add runtime detection of online CPU's Brandon Casey (13): builtin-reflog.c: fix typo that accesses an unset variable Add compat/fopen.c which returns NULL on attempt to open directory builtin-reflog.c: don't install new reflog on write failure reflog-delete: parse standard reflog options git-reflog: add option --rewrite to update reflog entries while expiring refs.c: make close_ref() and commit_ref() non-static git-reflog: add option --updateref to write the last reflog sha1 into the ref git-stash: add new 'drop' subcommand git-stash: add new 'pop' subcommand pack-objects: Print a message describing the number of threads for packing t3903-stash.sh: Add missing '&&' to body of testcase git-reflog.txt: Document new commands --updateref and --rewrite t3903-stash.sh: Add tests for new stash commands drop and pop Brian Downing (1): compat: Add simplified merge sort implementation from glibc Bruno Ribas (2): gitweb: Make use of the $git_dir variable at sub git_get_project_url_list gitweb: Use the config file to set repository owner's name. Carl Worth (1): Eliminate confusing "won't bisect on seeked tree" failure Carlos Rica (1): Make builtin-reset.c use parse_options. Charles Bailey (6): Tidy up git mergetool's backup file behaviour Changed an internal variable of mergetool to support custom commands Teach git mergetool to use custom commands defined at config time Add a very basic test script for git mergetool git-mergetool documentaiton: show toolnames in typewriter font merge-tool documentation: describe custom command usage Cheng Renquan (4): cleanup: remove unused git_checkout_config whatchanged documentation: share description of --pretty with others specify explicit "--pretty=medium" with `git log/show/whatchanged` log/show/whatchanged: introduce format.pretty configuration Christian Couder (17): help: make 'git-help--browse' usable outside 'git-help'. help--browse: add '--config' option to check a config option for a browser. Rename 'git-help--browse.sh' to 'git-web--browse.sh'. instaweb: use 'git-web--browse' to launch browser. config: add test cases for empty value and no value config variables. Documentation: instaweb: add 'git-web--browse' information. web--browse: Add a few quotes in 'init_browser_path'. Documentation: add 'git-web--browse.txt' and simplify other docs. help.c: use 'git_config_string' to get 'help_default_format'. run-command: Redirect stderr to a pipe before redirecting stdout to stderr help: add "man.viewer" config var to use "woman" or "konqueror" Documentation: help: describe 'man.viewer' config variable help: implement multi-valued "man.viewer" config option Documentation: help: explain 'man.viewer' multiple values help: warn if specified 'man.viewer' is unsupported, instead of erroring out web--browse: use custom commands defined at config time Documention: web--browse: add info about "browser.<tool>.cmd" config var Christian Stimming (4): git-gui: (i18n) Fix a bunch of still untranslated strings. git-gui: Update German translation. git-gui: (i18n) Add newly added translation strings to template. git-gui: Update German translation. Clemens Buchacher (2): http-push: push <remote> :<branch> deletes remote branch http-push: add regression tests Daniel Barkalow (33): Test :/string form for checkout Reduce the number of connects when fetching Allow callers of unpack_trees() to handle failure Add flag to make unpack_trees() not print errors. Send unpack-trees debugging output to stderr Discard "deleted" cache entries after using them to update the working tree Add "skip_unmerged" option to unpack_trees. Build-in merge-recursive Move create_branch into a library file Use diff -u instead of diff in t7201 Library function to check for unmerged index entries Move code to clean up after a branch change to branch.c Build in checkout Clean up reporting differences on branch switch API documentation for remote.h Add more tests for format-patch Improve message-id generation flow control for format-patch Export some email and pretty-printing functions Use ALLOC_GROW in remote.{c,h} Add a --cover-letter option to format-patch Add tests for extra headers in format-patch Fix format.headers not ending with a newline Combine To: and Cc: headers Support a --cc=<email> option in format-patch Resolve value supplied for no-colon push refspecs builtin-checkout.c: Remove unused prefix arguments in switch_branches path Add support for url aliases in config files Add API access to shortlog Improve collection of information for format-patch --cover-letter Always use the current connection's remote ref list in git protocol Use diff_tree() directly in making cover letter Write index file on any checkout of files Write diff output to a file in struct diff_options David Aguilar (1): gitk: Don't show local changes when we there is no work tree David Brown (1): git-send-email: Generalize auto-cc recipient mechanism. David Kågedal (1): git.el: Set process-environment instead of invoking env Dmitry Potapov (3): git-web--browse: do not start the browser with nohup Make private quote_path() in wt-status.c available as quote_path_relative() git-clean: correct printing relative path Eric Wong (1): git-svn: improve repository URL matching when following parents Florian La Roche (1): gitweb: Make feed entries point to commitdiff view Frank Lichtenheld (1): gc: Add --quiet option Gerrit Pape (4): gitk: properly deal with tag names containing / (slash) git-merge-index documentation: clarify synopsis builtin-tag.c: remove cruft hash-object: cleanup handling of command line options Jakub Narębski (11): gitweb: Fix displaying unchopped argument in chop_and_escape_str gitweb: Add new option -nohtml to quot_xxx subroutines gitweb: Fix bug in href(..., -replay=>1) when using 'pathinfo' form gitweb: Fix bugs in git_search_grep_body: it's length(), not len() gitweb: Better cutting matched string and its context Add '--fixed-strings' option to "git log --grep" and friends gitweb: Change parse_commits signature to allow for multiple options gitweb: Simplify fixed string search Documentation: Remove --{min,max}-age option from git-log(1) gitweb: Mark first match when searching commit messages gitweb: Fix and simplify pickaxe search James Bowes (1): Add a BuildRequires for gettext in the spec file. Jason McMullan (1): Remove $Id: ..$ $Header: ..$ etc from +ko and +k files during import Jay Soffian (8): git-web--browse: fix misplaced quote in init_browser_path() git-help--browse: improve browser support under OS X builtin-checkout.c: fix possible usage segfault branch: optionally setup branch.*.merge from upstream local branches doc: documentation update for the branch track changes Correct git-pull documentation send-email: fix In-Reply-To regression pull: pass --strategy along to to rebase Jean-Luc Herren (1): fast-import: exit with proper message if not a git dir Jeff King (31): allow suppressing of global and system config fix config reading in tests hard-code the empty tree object add--interactive: handle initial commit better git_config_*: don't assume we are parsing a config file t3404: use configured shell instead of /bin/sh diff: fix java funcname pattern for solaris t9001: enhance fake sendmail test harness send-email: test compose functionality help: use parseopt make alias lookup a public, procedural function help: respect aliases use build-time SHELL_PATH in test scripts rename: warn user when we have turned off rename detection allow git-am to run in a subdirectory Add a test for read-tree -u --reset with a D/F conflict gitk: make autoselect optional tr portability fixes t0050: perl portability fix more tr portability test script fixes grep portability fix: don't use "-e" or "-q" remove use of "tail -n 1" and "tail -1" add test_cmp function for test scripts t4020: don't use grep -a t6000lib: tr portability fix add NO_EXTERNAL_GREP build option filter-branch: don't use xargs -0 filter-branch: use $SHELL_PATH instead of 'sh' t9112: add missing #!/bin/sh header t7505: use SHELL_PATH in hook t6000lib: re-fix tr portability Jim Meyering (1): Avoid unnecessary "if-before-free" tests. Johan Herland (2): Add testcase for 'git cvsexportcommit -w $cvsdir ...' with relative $GIT_DIR Fix 'git cvsexportcommit -w $cvsdir ...' when used with relative $GIT_DIR Johannes Schindelin (21): Teach "git reflog" a subcommand to delete single entries Also use unpack_trees() in do_diff_cache() Fix "git clone" for git:// protocol Adjust .gitignore for 5884f1(Rename 'git-help--browse.sh'...) Introduce the config variable pack.packSizeLimit bisect view: check for MinGW32 and MacOSX in addition to X11 xdl_merge(): make XDL_MERGE_ZEALOUS output simpler xdl_merge(): introduce XDL_MERGE_ZEALOUS_ALNUM completion: support format-patch's --cover-letter option path-list: add functions to work with unsorted lists parseopt: add flag to stop on first non option Test "git remote show" and "git remote prune" Make git-remote a builtin builtin-remote: prune remotes correctly that were added with --mirror Fix make_absolute_path() for parameters without a slash format-patch: use the diff options for the cover letter, too format-patch: wrap cover-letter's shortlog sensibly remote show: Clean up connection correctly if object fetch wasn't done remote: fix "update [group...]" builtin remote rm: remove symbolic refs, too gc: call "prune --expire 2.weeks.ago" by default Johannes Sixt (7): Fix misuse of prefix_path() gitk: Heed the lines of context in merge commits Technical documentation of the run-command API. prefix_path: use is_absolute_path() instead of *orig == '/' start_command(), .in/.out/.err = -1: Callers must close the file descriptor start_command(), if .in/.out > 0, closes file descriptors, not the callers git-submodule summary: fix that some "wc" flavors produce leading spaces Jonas Fonseca (2): man pages are littered with .ft C and others shortlog: do not require to run from inside a git repository Junichi Uekawa (1): git-blame.el: show the when, who and what in the minibuffer. Junio C Hamano (93): index: be careful when handling long names Avoid running lstat(2) on the same cache entry. read-cache.c: fix a couple more CE_REMOVE conversion read-cache.c: introduce is_racy_timestamp() helper lazy index hashing Sane use of test_expect_failure test: reword the final message of tests with known breakages known breakage: revision range computation with clock skew fix misuse of prefix_path() builtin-apply.c: refactor small part that matches context builtin-apply.c: restructure "offset" matching builtin-apply.c: push match-beginning/end logic down builtin-apply.c: make it more line oriented builtin-apply.c: optimize match_beginning/end processing a bit. builtin-apply.c: mark common context lines in lineinfo structure. builtin-apply.c: clean-up apply_one_fragment() builtin-apply.c: simplify calling site to apply_line() builtin-apply.c: do not feed copy_wsfix() leading '+' builtin-apply.c: move copy_wsfix() function a bit higher. builtin-apply.c: pass ws_rule down to match_fragment() git-apply --whitespace=fix: fix whitespace fuzz introduced by previous run core.whitespace: cr-at-eol Documentation/SubmittingPatches: Instruct how to use [PATCH] Subject header Documentation/SubmittingPatches: discuss first then submit Documentation/SubmittingPatches: What's Acked-by and Tested-by? Make error messages from cherry-pick/revert more sensible setup: sanitize absolute and funny paths in get_pathspec() git-add: adjust to the get_pathspec() changes. builtin-mv: minimum fix to avoid losing files gitignore(5): Allow "foo/" in ignore list to match directory "foo" gitignore: lazily find dtype Define the project whitespace policy apply: do not barf on patch with too large an offset Update the main documentation (stale notes section) .mailmap: adjust to a recent patch application glitch. diff --relative: output paths as relative to the current subdirectory diff --relative: help working in a bare repository checkout: notice when the switched branch is behind or forked Documentation/SubmittingPatches - a suggested patch flow Sync with 1.5.4.2 and start 1.5.5 Release Notes sending errors to stdout under $PAGER merge-recursive: split low-level merge functions out. expose a helper function peel_to_type(). checkout: tone down the "forked status" diagnostic messages checkout: work from a subdirectory git-reset --hard and git-read-tree --reset: fix read_cache_unmerged() checkout: updates to tracking report gitweb: Better chopping in commit search results Add merge-subtree back checkout: show progress when checkout takes long time while switching branches ws_fix_copy(): move the whitespace fixing function to ws.c checkout: error out when index is unmerged even with -m diff --dirstat: saner handling of binary and unmerged files url rewriting: take longest and first match git-apply --whitespace=fix: fix off by one thinko Revert "pack-objects: Print a message describing the number of threads for packing" git-remote: do not complain on multiple URLs for a remote format-patch: remove a leftover debugging message tests: introduce test_must_fail Update draft release notes for 1.5.5 t6024: move "git reset" to prepare for a test inside the test itself CodingGuidelines: spell out how we use grep in our scripts find_unique_abbrev(): redefine semantics Clean up find_unique_abbrev() callers diff-lib.c: constness strengthening diff: make sure work tree side is shown as 0{40} when different Update draft release notes for 1.5.5 describe --always: fall back to showing an abbreviated object name git-describe: use tags found in packed-refs correctly describe: fix --long output describe: re-fix display_name() t6120 (describe): check --long properly Revert "receive-pack: use strict mode for unpacking objects" Revert "unpack-objects: prevent writing of inconsistent objects" fsck.c: fix bogus "empty tree" check am: read from the right mailbox when started from a subdirectory am: remove support for -d .dotest am: --rebasing get_pathspec(): die when an out-of-tree path is given Revert part of 744dacd (builtin-mv: minimum fix to avoid losing files) Revert part of 1abf095 (git-add: adjust to the get_pathspec() changes) Revert part of d089eba (setup: sanitize absolute and funny paths in get_pathspec()) git-clean: add tests for relative path send-email: --no-signed-off-cc should suppress 'sob' cc traverse_trees_recursive(): propagate merge errors up git-gui: Simplify MSGFMT setting in Makefile Documentation/config: typofix Documentation/git-help: typofix read-tree() and unpack_trees(): use consistent limit Redo "add test_cmp function for test scripts" git-gui: Improve directions regarding POT update in po/README Resurrect git-rerere to contrib/examples Update draft release notes for 1.5.5 Karl Wiberg (2): git-svn: Don't call git-repack anymore Let "git svn" run "git gc --auto" occasionally Kevin Ballard (1): bash: Properly quote the GIT_DIR at all times to fix subdirectory paths with spaces Kristian Høgsberg (1): wt-status.c: no need for dup() dance anymore Lars Hjemli (1): Simplify setup of $GIT_DIR in git-sh-setup.sh Linus Torvalds (22): Make on-disk index representation separate from in-core one Make run_diff_index() use unpack_trees(), not read_tree() Create pathname-based hash-table lookup into index Add "--dirstat" for some directory statistics gitk: learn --show-all output Add "--show-all" revision walker flag for debugging Fix name re-hashing semantics Name hash fixups: export (and rename) remove_hash_entry Use helper function for copying index entry information Be more verbose when checkout takes a long time Add 'df_name_compare()' helper function Make 'traverse_tree()' use linked structure rather than 'const char *base' Add return value to 'traverse_tree()' callback Make 'traverse_trees()' traverse conflicting DF entries in parallel Move 'unpack_trees()' over to 'traverse_trees()' interface Fix tree-walking compare_entry() in the presense of --prefix Add 'const' where appropriate to index handling functions Make 'unpack_trees()' take the index to work on as an argument Make 'unpack_trees()' have a separate source and destination index unpack_trees(): minor memory leak fix in unused destination index unpack_trees(): fix diff-index regression. Fix recent 'unpack_trees()'-related changes breaking 'git stash' Marco Costalba (1): Avoid a useless prefix lookup in strbuf_expand() Mark Levedahl (1): git-submodule - Allow adding a submodule in-place Martin Koegler (28): git-fsck: report missing author/commit line in a commit as an error parse_object_buffer: don't ignore errors from the object specific parsing functions deref_tag: handle return value NULL deref_tag: handle tag->tagged = NULL check return code of prepare_revision_walk read_object_with_reference: don't read beyond the buffer get_sha1_oneline: check return value of parse_object mark_blob/tree_uninteresting: check for NULL reachable.c::add_one_tree: handle NULL from lookup_tree list-objects.c::process_tree/blob: check for NULL check results of parse_commit in merge_bases process_tag: handle tag->tagged == NULL reachable.c::process_tree/blob: check for NULL revision.c: handle tag->tagged == NULL parse_commit: don't fail, if object is NULL check return value from parse_commit() in various functions peel_onion: handle NULL add generic, type aware object chain walker builtin-fsck: move away from object-refs to fsck_walk Remove unused object-ref code builtin-fsck: reports missing parent commits builtin-fsck: move common object checking code to fsck.c add common fsck error printing function unpack-object: cache for non written objects unpack-objects: prevent writing of inconsistent objects index-pack: introduce checking mode receive-pack: use strict mode for unpacking objects fetch-pack: check parse_commit/object results Matthias Kestenholz (1): Add color.ui variable which globally enables colorization if set Michael Witten (3): git-send-email: ssh/login style password requests git-send-email: SIG{TERM,INT} handlers git-send-email: Better handling of EOF Michal Rokos (2): Add compat/snprintf.c for systems that return bogus autoconf: Test FREAD_READS_DIRECTORIES Michele Ballabio (7): gitk: Fix "Key bindings" message git-gui: fix typo in lib/spellcheck.tcl builtin-for-each-ref.c: fix typo in error message gitk: Mark another string for translation git-gui: update Italian translation gitk: initial Italian translation git-gui: remove spurious "fuzzy" attributes in po/it.po Mike Hommey (5): Work around curl-gnutls not liking to be reinitialized Add test for git rebase --abort Documentation/git-rebase.txt: Add --strategy to synopsys git rebase --abort: always restore the right commit t3407-rebase-abort.sh: Enhance existing tests, and add test for rebase --merge Miklos Vajna (4): git-clean: handle errors if removing files fails Improve t6029 to check the real "subtree" case Update Hungarian translation. 100% completed. git-gui: Updated Hungarian translation (e5fba18) Nanako Shiraishi (2): git-gui: Update Japanese translation git-gui: Update Japanese translation Nicolas Pitre (5): factorize revindex code out of builtin-pack-objects.c make verify_one_pack() a bit less wrong wrt packed_git structure fix unimplemented packed_object_info_detail() features add storage size output to 'git verify-pack -v' pack-objects: proper pack time stamping with --max-pack-size Paolo Bonzini (4): git-commit: support variable number of hook arguments git-commit: set GIT_EDITOR=: if editor will not be launched git-commit: Refactor creation of log message. git-commit: add a prepare-commit-msg hook Paul Mackerras (3): gitk: Only restore window size from ~/.gitk, not position gitk: Avoid Tcl error when switching views gitk: Default to using po2msg.sh if msgfmt doesn't grok --tcl, -l and -d Pekka Kaitaniemi (1): gitk: Add horizontal scrollbar to the diff view Peter Krefting (2): git-gui: Regenerated po template and merged translations with it git-gui: updated Swedish translation Petr Baudis (1): gitweb: Clearly distinguish regexp / exact match searches Philipp A. Hartmann (1): git-gui: if a background colour is set, set foreground colour as well Philippe Bruhat (3): cvsimport: have default merge regex allow for dashes in the branch name cvsimport: allow for multiple -M options cvsimport: document that -M can be used multiple times Pierre Habouzit (4): git-describe: Add a --match option to limit considered tags. git-name-rev: add a --(no-)undefined option. parse-opt: bring PARSE_OPT_HIDDEN and NONEG to git-rev-parse --parseopt parse-options: new option type to treat an option-like parameter as an argument. Ping Yin (5): git-submodule summary: code framework git-submodule summary: show commit summary git-submodule summary: limit summary size git-submodule summary: documentation git-submodule summary: test Rafael Garcia-Suarez (1): Make git-remote.perl "use strict" compliant Ralf Wildenhues (1): Fix doc typos. Robin Rosenberg (2): Make blame accept absolute paths Improve bash prompt to detect various states like an unfinished merge SZEDER Gábor (9): bash: add git-branch options bash: git-branch -d and -m lists only local branches bash: remove unnecessary conditions when checking for subcommands bash: refactor searching for subcommands on the command line bash: add new 'git stash' subcommands bash: add 'git svn' subcommands and options bash: use __gitdir when completing 'git rebase' options bash: fix long option with argument double completion update 'git rebase' documentation Samuel Tardieu (1): "remote update": print remote name being fetched from Santi Béjar (3): git-bundle.txt: Add different strategies to create the bundle git-describe: --long shows the object name even for a tagged commit clone: support cloning full bundles Sebastian Noack (1): git-svn: Don't prompt for client cert password everytime. Shawn O. Pearce (37): git-gui: Automatically spell check commit messages as the user types git-gui: Paper bag fix bad string length call in spellchecker git-gui: Correct size of dictionary name widget in options dialog Include annotated tags in fast-import crash reports Include the fast-import marks table in crash reports Finish current packfile during fast-import crash handler Update fast-import documentation to discuss crash reports Teach git-grep --name-only as synonym for -l git-gui: Ensure all spellchecker 'class' variables are initialized git-gui: Remove explicit references to 'aspell' in message strings git-gui: Only bind the spellcheck popup suggestion hook once git-gui: Catch and display aspell startup failures to the user git-gui: Gracefully display non-aspell version errors to users git-gui: Shorten Aspell version strings to just Aspell version number Optimize peel_ref for the current ref of a for_each_ref callback Teach git-describe to use peeled ref information when scanning tags Avoid accessing non-tag refs in git-describe unless --all is requested Teach git-describe --exact-match to avoid expensive tag searches Use git-describe --exact-match in bash prompt on detached HEAD Teach git-describe to verify annotated tag names before output Remove unused variable in builtin-fetch find_non_local_tags Remove unnecessary delaying of free_refs(ref_map) in builtin-fetch Ensure tail pointer gets setup correctly when we fetch HEAD only Allow builtin-fetch's find_non_local_tags to append onto a list Free the path_lists used to find non-local tags in git-fetch Teach upload-pack to log the received need lines to an fd Make git-fetch follow tags we already have objects for sooner Teach git-fetch to grab a tag at the same time as a commit Don't allow git-describe failures to go unnoticed in t6120 Test for packed tags in git-describe output Add git-describe test for "verify annotated tag names on output" git-pack-objects: Automatically pack annotated tags if object was packed Teach fetch-pack/upload-pack about --include-tag Teach git-fetch to exploit server side automatic tag following bash: Remove completion of core.legacyheaders option git-gui: Don't translate the special Apple menu git-gui: Adjusted Japanese translation to updated POT Simon Hausmann (7): git-p4: Fix submit user-interface. git-p4: Ensure the working directory and the index are clean before "git-p4 rebase" git-p4: Remove --log-substitutions feature. git-p4: Clean up git-p4 submit's log message handling. git-p4: Removed git-p4 submit --direct. git-p4: git-p4 submit cleanups. git-p4: Fix import of changesets with file deletions Steffen Prohaska (4): safecrlf: Add mechanism to warn about irreversible crlf conversions gitk: Add checkbutton to ignore space changes t4014: Replace sed's non-standard 'Q' by standard 'q' Add tests for filesystem challenges (case and unicode normalization) Teemu Likonen (1): bash: Add more long options to be completed with "git --<TAB>" Tim Stoakes (1): Add `git svn blame' command Toby Allsopp (1): git-p4: Fix indentation from tab to spaces Tommy Thorn (2): git-p4: Fix an obvious typo git-p4: support exclude paths Tor Arvid Lund (1): git-p4: Support usage of perforce client spec Uwe Kleine-König (1): rev-list: add --branches, --tags and --remotes Yann Dirson (1): Add an --argscmd flag to get the list of refs to show eric miao (1): git-gui: translate the remaining messages in zh_cn.po to chinese Version v1.5.4.7; changes since v1.5.4.6: ----------------------------------------- Junio C Hamano (2): gitweb: do not run "git diff" that is Porcelain GIT 1.5.4.7 Version v1.5.4.6; changes since v1.5.4.5: ----------------------------------------- A Large Angry SCM (1): git-repack: re-enable parsing of -n command line option Alberto Bertogli (1): builtin-apply: Show a more descriptive error on failure when opening a patch Ariel Badichi (2): copy.c: copy_fd - correctly report write errors archive.c: format_subst - fixed bogus argument to memchr Björn Steinbrink (1): Fix section about backdating tags in the git-tag docs Carlos Rica (2): Fix documentation syntax of optional arguments in short options. core-tutorial.txt: Fix showing the current behaviour. Christian Couder (4): bisect: fix bad rev checking in "git bisect good" bisect: report bad rev better bisect: squelch "fatal: ref HEAD not a symref" misleading message git-bisect: make "start", "good" and "skip" succeed or fail atomically Clifford Caoile (1): Docs gitk: Explicitly mention the files that gitk uses (~/.gitk) Dan McGee (1): Remove 'header' from --signoff option description Dirk Süsserott (1): Documentation/git-request-pull: Fixed a typo ("send" -> "end") Dustin Sallings (1): Documentation/config.txt: Mention branch.<name>.rebase applies to "git pull" Florian Ragwitz (1): filter-branch: Documentation fix. Ian Hilt (1): Documentation/git-describe.txt: make description more readable Jeff King (6): t5516: remove ambiguity test (1) fix reflog approxidate parsing bug cvsimport: always pass user data to "system" as a list doc: clarify definition of "update" for git-add -u doc/git-daemon: s/uploadarchive/uploadarch/ git-am: fix typo in usage message Johannes Sixt (3): Document option --only of git commit wt-status.h: declare global variables as extern rev-parse --symbolic-full-name: don't print '^' if SHA1 is not a ref Jon Loeliger (1): Clarify and fix English in "git-rm" documentation Junio C Hamano (7): Fix "git apply" to correctly enforce "match at the beginning" Document -w option to shortlog git-am: minor cleanup am: POSIX portability fix write-tree: properly detect failure to write tree objects git-shell: accept "git foo" form GIT 1.5.4.6 Linus Torvalds (2): Ignore leading empty lines while summarizing merges git-am: cope better with an empty Subject: line Matt Graham (1): Linked glossary from cvs-migration page Matthew Ogilvie (1): gitattributes: Fix subdirectory attributes specified from root directory Michael Weber (1): svn-git: Use binmode for reading/writing binary rev maps Michele Ballabio (1): revision.c: make --date-order overriddable Miklos Vajna (1): diff options documentation: refer to --diff-filter in --name-status Pieter de Bie (1): builtin-fast-export: Only output a single parent per line René Scharfe (1): git-archive: ignore prefix when checking file attribute Scott Collins (1): Clarify documentation of git-cvsserver, particularly in relation to git-shell Sitaram Chamarty (1): builtin-commit.c: add -u as short name for --untracked-files Thomas Guyot-Sionnest (1): git-svn bug with blank commits and author file Version v1.5.4.5; changes since v1.5.4.4: ----------------------------------------- Andy Whitcroft (1): shortlog: take the first populated line of the description Bernt Hansen (1): git-new-workdir: Share SVN meta data between work dirs and the repository Brandon Casey (1): t/t3800-mktag.sh: use test_must_fail rather than '!' Clemens Buchacher (1): merge-recursive: handle file mode changes Daniel Barkalow (2): Tighten refspec processing Fix branches file configuration Eric Wong (1): git-svn: don't blindly append '*' to branch/tags config Guanqun Lu (1): Fix the wrong output of `git-show v1.3.0~155^2~4` in documentation. Jakub Narębski (1): gitweb: Fix bug in href(..., -replay=>1) when using 'pathinfo' form Jeff King (2): t0021: tr portability fix for Solaris Documentation: clarify use of .git{ignore,attributes} versus .git/info/* Johannes Schindelin (3): launch_editor(): allow spaces in the filename git fetch: Take '-n' to mean '--no-tags' merge-file: handle empty files gracefully Jonas Fonseca (1): Make man page building quiet when DOCBOOK_XSL_172 is defined Junio C Hamano (9): filter-branch: handle "disappearing tree" case correctly in subdir filter git-pull documentation: warn about the option order quiltimport: fix misquoting of parsed -p<num> parameter format-patch: generate MIME header as needed even when there is format.header rebase -m: do not trigger pre-commit verification Start draft ReleaseNotes for 1.5.4.5 git-fetch test: test tracking fetch results, not just FETCH_HEAD Update draft release notes for 1.5.4.5 GIT 1.5.4.5 Linus Torvalds (1): rev-parse: fix meaning of rev~ vs rev~0. Marc-André Lureau (2): git-svn: fix find-rev error message when missing arg git-cvsimport: fix merging with remote parent branch Mike Hommey (1): git rebase --abort: always restore the right commit Pierre Habouzit (1): git-quiltimport: better parser to grok "enhanced" series files. Vineet Kumar (1): Minor wording changes in the keyboard descriptions in git-add --interactive. Version v1.5.4.4; changes since v1.5.4.3: ----------------------------------------- Adeodato Simó (1): Really make the LF after reset in fast-import optional Björn Steinbrink (1): receive-pack: Initialize PATH to include exec-dir. Brandon Casey (1): builtin-reflog.c: don't install new reflog on write failure Bryan Donlan (1): Documentation/git-am.txt: Pass -r in the example invocation of rm -f .dotest Caio Marcelo de Oliveira Filho (1): filter-branch documentation: non-zero exit status in command abort the filter Carl Worth (1): Eliminate confusing "won't bisect on seeked tree" failure Daniel Barkalow (3): Use a single implementation and API for copy_file() Don't use GIT_CONFIG in t5505-remote Correct name of diff_flush() in API documentation Gerrit Pape (2): templates/Makefile: don't depend on local umask setting git-merge.sh: better handling of combined --squash,--no-ff,--no-commit options Jay Soffian (2): rev-parse: fix potential bus error with --parseopt option spec handling send-email: fix In-Reply-To regression Jeff King (1): revert: actually check for a dirty index Johan Herland (2): Add testcase for 'git cvsexportcommit -w $cvsdir ...' with relative $GIT_DIR Fix 'git cvsexportcommit -w $cvsdir ...' when used with relative $GIT_DIR Johannes Schindelin (4): http-push: avoid invalid memory accesses http-push: do not get confused by submodules http-push: avoid a needless goto cvsexportcommit: be graceful when "cvs status" reorders the arguments Johannes Sixt (2): daemon: send more error messages to the syslog daemon: ensure that base-path is an existing directory John Goerzen (1): Fix dcommit, rebase when rewriteRoot is in use Jonathan del Strother (1): Prompt to continue when editing during rebase --interactive Junio C Hamano (6): Fix "git log --merge --left-right" Start preparing for 1.5.4.4 tests: introduce test_must_fail Update draft release notes for 1.5.4.4 test-lib: fix TERM to dumb for test repeatability GIT 1.5.4.4 Matthieu Moy (1): Fix incorrect wording in git-merge.txt. Mike Hommey (2): Set proxy override with http_init() Fix random crashes in http_cleanup() Mike Ralphson (1): Documentation cherry-pick: Fix cut-and-paste error Miklos Vajna (2): Documentation/git-filter-branch: add a new msg-filter example Documentation/git svn log: add a note about timezones. Pierre Habouzit (1): unquote_c_style: fix off-by-one. Ping Yin (1): git-submodule: Fix typo 'url' which should be '$url' Rémi Vanicat (1): git.el: find the git-status buffer whatever its name is Santi Béjar (1): ident.c: reword error message when the user name cannot be determined Sebastian Noack (1): git-svn: Don't prompt for client cert password everytime. Shawn O. Pearce (6): Ensure 'make dist' compiles git-archive.exe on Cygwin Protect peel_ref fallback case from NULL parse_object result Correct fast-export file mode strings to match fast-import standard git-gui: Paper bag fix info dialog when no files are staged at commit Fix 'git remote show' regression on empty repository in 1.5.4 git-gui: Gracefully fall back to po2msg.sh if msgfmt --tcl fails Steven Drake (1): timezone_names[]: fixed the tz offset for New Zealand. Uwe Kleine-König (1): config.txt: refer to --upload-pack and --receive-pack instead of --exec Version v1.5.4.3; changes since v1.5.4.2: ----------------------------------------- Gerrit Pape (1): git-clone.sh: properly configure remote even if remote's head is dangling Jay Soffian (2): git-gui: support Git Gui.app under OS X 10.5 send-email: squelch warning due to comparing undefined $_ to "" Jeff King (4): push: indicate partialness of error message Documentation/push: clarify matching refspec behavior push: document the status output hash: fix lookup_hash semantics Junio C Hamano (1): GIT 1.5.4.3 Kristian Høgsberg (1): Rename git-core rpm to just git and rename the meta-pacakge to git-all. Miklos Vajna (1): Documentation/git-stash: document options for git stash list Pekka Kaitaniemi (1): Clarified the meaning of git-add -u in the documentation Shawn O. Pearce (5): git-gui: Ensure error dialogs always appear over all other windows git-gui: Paper bag fix error dialogs opening over the main window git-gui: Default TCL_PATH to same location as TCLTK_PATH git-gui: Avoid hardcoded Windows paths in Cygwin package files git-gui: Focus insertion point at end of strings in repository chooser Wincent Colaiuta (1): git-gui: relax "dirty" version detection Version v1.5.4.2; changes since v1.5.4.1: ----------------------------------------- Christian Couder (8): config: add test cases for empty value and no value config variables. diff.c: replace a 'strdup' with 'xstrdup'. diff.c: remove useless check for value != NULL config: add 'git_config_string' to refactor string config variables. Add "const" qualifier to "char *pager_program". Add "const" qualifier to "char *editor_program". Add "const" qualifier to "char *excludes_file". diff.c: add "const" qualifier to "char *cmd" member of "struct ll_diff_driver" Daniel Barkalow (1): Validate nicknames of remote branches to prohibit confusing ones David Steven Tweed (1): Make git prune remove temporary packs that look like write failures Frank Lichtenheld (1): config: Fix --unset for continuation lines Gerrit Pape (2): builtin-commit: remove .git/SQUASH_MSG upon successful commit cvsimport: have default merge regex also match beginning of commit message James Bowes (1): Add a BuildRequires for gettext in the spec file. Jay Soffian (1): mailinfo: feed only one line to handle_filter() for QP input Jeff King (2): status: suggest "git rm --cached" to unstage for initial commit commit: discard index after setting up partial commit Johannes Schindelin (3): bisect: allow starting with a detached HEAD Document that the default of branch.autosetupmerge is true bisect: use verbatim commit subject in the bisect log Johannes Sixt (1): upload-pack: Initialize the exec-path. Jonas Fonseca (1): man pages are littered with .ft C and others Junio C Hamano (31): git-pull documentation: fix markup archive-tar.c: guard config parser from value=NULL Add config_error_nonbool() helper function builtin-apply.c: guard config parser from value=NULL builtin-branch.c: guard config parser from value=NULL builtin-commit.c: guard config parser from value=NULL builtin-config.c: guard config parser from value=NULL builtin-log.c: guard config parser from value=NULL builtin-reflog.c: guard config parser from value=NULL builtin-show-branch.c: guard config parser from value=NULL builtin-tag.c: guard config parser from value=NULL connect.c: guard config parser from value=NULL convert.c: guard config parser from value=NULL diff.c: guard config parser from value=NULL git.c: guard config parser from value=NULL help.c: guard config parser from value=NULL http.c: guard config parser from value=NULL merge-recursive.c: guard config parser from value=NULL remote.c: guard config parser from value=NULL setup.c: guard config parser from value=NULL wt-status.c: guard config parser from value=NULL imap-send.c: guard config parser from value=NULL builtin-log.c: guard config parser from value=NULL config.c: guard config parser from value=NULL Revert "pack-objects: only throw away data during memory pressure" Protect get_author_ident_from_commit() from filenames in work tree diff.c: fixup garding of config parser from value=NULL diff: Fix miscounting of --check output filter-branch: handle filenames that need quoting Documentation/git-reset: GIT 1.5.4.2 Martin Koegler (1): pack-objects: only throw away data during memory pressure Mike Hommey (1): Work around curl-gnutls not liking to be reinitialized Miklos Vajna (2): builtin-gc.c: guard config parser from value=NULL git clone -s documentation: force a new paragraph for the NOTE Pieter de Bie (2): Documentation/git-reset: don't mention --mixed for selected-paths reset Documentation/git-reset: Add an example of resetting selected paths Sergei Organov (1): git-cvsimport.txt: fix '-M' description. Shawn O. Pearce (1): fast-import: check return value from unpack_entry() Stelian Pop (1): hg-to-git: fix parent analysis Uwe Kleine-König (1): rebase -i: accept -m as advertised in the man page Version v1.5.4.1; changes since v1.5.4: --------------------------------------- Gerrit Pape (1): INSTALL: git-merge no longer uses cpio Jari Aalto (1): Documentation/git-stash.txt: Adjust SYNOPSIS command syntax (2) Junio C Hamano (3): Update stale documentation links from the main documentation. Fix "git-commit -C $tag" gitattributes: fix relative path matching Jörg Sommer (2): git-am: fix type in its usage string git-remote documentation: fix synopsis to match description Tim Stoakes (1): Fix typo in 'blame' documentation. Timo Hirvonen (1): Fix parsing numeric color values Version v1.5.4; changes since v1.5.4-rc5: ----------------------------------------- Brandon Casey (4): git-relink: avoid hard linking in objects/info directory filter-branch.sh: remove temporary directory on failure filter-branch docs: remove brackets so not to imply revision arg is optional filter-branch: assume HEAD if no revision supplied Bruno Ribas (1): gitweb: Make use of the $git_dir variable at sub git_get_project_description Christian Couder (3): Documentation: config: add "browser.<tool>.path". Documentation: help: specify supported html browsers. instaweb: use 'browser.<tool>.path' config option if it's set. Jakub Narębski (1): gitweb: Add info about $projectroot and $projects_list to gitweb/README Jean-Luc Herren (1): Documentation/git-cvsserver: Fix typo Jeff King (1): t9001: add missing && operators Jim Meyering (1): fix doc typos Johannes Schindelin (1): Add test for rebase -i with commits that do not pass pre-commit Junio C Hamano (4): reflog-expire: Avoid creating new files in a directory inside readdir(3) loop Revert "filter-branch docs: remove brackets so not to imply revision arg is optional" Fix "git checkout -b foo ':/substring'" GIT 1.5.4 Michele Ballabio (1): Fix typo in a comment in t/test-lib.sh Miklos Vajna (1): git rev-parse manpage: spelling fix Shawn O. Pearce (1): Use 'printf %s $x' notation in t5401 Yasushi SHOJI (1): gitweb: Convert generated contents to utf8 in commitdiff_plain Version v1.5.4-rc5; changes since v1.5.4-rc4: --------------------------------------------- Alex Riesen (1): Make t5710 more strict when creating nested repos Brandon Casey (1): git-commit: exit non-zero if we fail to commit the index Eric Wong (1): git-svn: default to repacking every 1000 commits Gustaf Hendeby (1): send-email, fix breakage in combination with --compose Jakub Narębski (1): autoconf: define NO_SYS_SELECT_H on systems without <sys/select.h>. Johannes Schindelin (1): pull --rebase: be cleverer with rebased upstream branches Junio C Hamano (5): git-submodule: rename shell functions for consistency git-submodule: fix subcommand parser git-submodule: add test for the subcommand parser fix Clarify that http-push being temporarily disabled with older cURL GIT 1.5.4-rc5 Mike Hommey (2): Add a missing dependency on http.h Documentation: add a bit about sendemail.to configuration Miklos Vajna (2): git-clone -s: document problems with git gc --prune git pull manpage: don't include -n from fetch-options.txt Nicolas Pitre (1): pack-objects: Fix segfault when object count is less than thread count Pierre Habouzit (1): parse-options: catch likely typo in presense of aggregated options. Robert Schiele (2): pre-POSIX.1-2001 systems do not have <sys/select.h> Makefile: customization for supporting HP-UX Sam Vilain (1): git-svn(1): update instructions for resuming a git-svn clone Shawn O. Pearce (10): git-gui: Honor the standard commit-msg hook git-gui: Correct window title for hook failure dialogs git-gui: Consolidate hook execution code into a single function git-gui: Correct encoding of glossary/fr.po to UTF-8 Teach fast-import to honor pack.compression and pack.depth Document the hairy gfi_unpack_entry part of fast-import git-gui: Work around random missing scrollbar in revision list git-gui: Fallback to Tcl based po2msg.sh if msgfmt isn't available git-gui: Make the statistics of po2msg match those of msgfmt git-gui: Correctly cleanup msgfmt '1 message untranslated' output Steffen Prohaska (3): submodule: Document the details of the command line syntax t9400-git-cvsserver-server: Wrap setup into test case cvsserver: Fix for histories with multiple roots Version v1.5.4-rc4; changes since v1.5.4-rc3: --------------------------------------------- Bill Lear (1): Correct spelling in diff.c comment Brandon Casey (4): close_lock_file(): new function in the lockfile API Improve use of lockfile API refs.c: rework ref_locks by abstracting from underlying struct lock_file fast-import.c: don't try to commit marks file if write failed Christian Couder (2): git-gui: Initial french translation git-gui: add french glossary: glossary/fr.po Christian Stimming (4): git-gui: Update glossary: add term "hunk" git-gui: Update German translation git-gui: Fix broken revert confirmation. git-gui: Improve German translation. Dan McGee (3): Remove usage of git- (dash) commands from email hook cvsimport: remove last use of repo-config from git standard tools Update git-completion for new 'remote rm' option Dave Peticolas (1): Documentation: fix and clarify grammar in git-merge docs. Dmitry Potapov (1): treat any file with NUL as binary Eric Wong (1): git-svn: handle leading/trailing whitespace from svnsync revprops Grégoire Barbier (4): http-push: disable http-push without USE_CURL_MULTI http-push: fix webdav lock leak. http-push: fail when info/refs exists and is already locked http-push and http-fetch: handle URLs without trailing / Jakub Narębski (1): autoconf: Add checking for unsetenv function Jean-Luc Herren (1): Make default pre-commit hook less noisy Jeff King (5): git-clean: fix off-by-one memory access when given no arguments color unchanged lines as "plain" in "diff --color-words" send-email: detect invocation errors earlier send-email: validate patches before sending anything send-email: add no-validate option Jim Meyering (2): fast-import: Don't use a maybe-clobbered errno value doc typo: s/prior committing/prior to committing/ Johannes Schindelin (1): gitk: make Ctrl "+" really increase the font size Junio C Hamano (8): builtin-commit.c: remove useless check added by faulty cut and paste Revert "builtin-commit.c: remove useless check added by faulty cut and paste" Fix git-rerere documentation Squelch bogus progress output from git-rebase--interactive Document lockfile API Officially deprecate repo-config. http-push: clarify the reason of error from the initial PROPFIND request GIT 1.5.4-rc4 Kristian Høgsberg (1): git-commit: fix double close(2) that can close a wrong file descriptor Lars Hjemli (1): Move sha1_file_to_archive into libgit Linus Torvalds (4): Fix performance regression for partial commits Make builtin-commit.c more careful about parenthood Make 'git fsck' complain about non-commit branches Be more careful about updating refs Mark Drago (1): hg-to-git: improve popen calls Mark Levedahl (1): git-gui: Makefile - Handle $DESTDIR on Cygwin Martin Koegler (1): parse_commit_buffer: tighten checks while parsing Miklos Vajna (3): Add using merge subtree How-To ls-remote: add -t and -h options. Include rev-list options in git-log manpage. Peter Krefting (1): git-gui: Updated Swedish translation after mailing list review. Shawn O. Pearce (3): git-gui: Allow 'Create New Repository' on existing directories git-gui: Refresh file status description after hunk application Fix random fast-import errors when compiled with NO_MMAP Thomas Zander (1): core-tutorial typofix Version v1.5.4-rc3; changes since v1.5.4-rc2: --------------------------------------------- Alexandre Julliard (6): git.el: Support for getting diffs from inside the log-edit buffer. git.el: Retrieve the permissions for up-to-date files. git.el: Display file types and type changes. git.el: Make sure we never insert the same file twice. git.el: Refresh files from their real state upon commit. git.el: Make status refresh faster. Bernt Hansen (1): git-gui: Make commit log messages end with a newline Brandon Casey (1): git-relink.txt: describe more clearly how hard linking occurs Charles Bailey (1): gitk: Fix the Makefile to cope with systems lacking msgfmt Christian Couder (1): Documentation: config: add 'help.*' and 'instaweb.*' variables. Christian Stimming (10): gitk i18n: Add Makefile with rules for po file creation and installation gitk i18n: Import msgcat for message string translation; load translation catalogs gitk i18n: Markup several strings for translation gitk i18n: Initial German translation gitk i18n: More markup -- various options menus gitk i18n: Recode gitk from latin1 to utf8 so that the (c) copyright character is valid utf8. gitk: Update and fix Makefile gitk: Update German translation gitk: Fix typo in user message. gitk: Update German translation. Dan McGee (1): Documentation: rename gitlink macro to linkgit Eric Wong (4): git-svn: allow dcommit --no-rebase to commit multiple, dependent changes git-svn: unlink index files that were globbed, too git-svn: support for funky branch and project names over HTTP(S) git-svn: clarify the "Ignoring error from SVN" piece Florian La Roche (1): Change git-gc documentation to reflect gc.packrefs implementation. Gerrit Pape (1): gitk: use user-configured background in view definition dialog Grégoire Barbier (1): Fix double-free() in http-push.c:remote_exists() Gustaf Hendeby (1): Documentation/user-manual.txt: fix typo J. Bruce Fields (1): Documentation: fix remote.<name>.skipDefaultUpdate description James Bowes (1): Make the git metapackage require the same version of the subpackages. Jeff King (8): config: handle lack of newline at end of file better git-reset: refuse to do hard reset in a bare repository add a "basic" diff config callback diff: load funcname patterns in "basic" config diff: remove lazy config loading add--interactive: remove unused diff colors add--interactive: allow diff colors without interactive colors Document the color.interactive semantics Jim Meyering (3): Fix grammar nits in documentation and in code comments. Don't access line[-1] for a zero-length "line" from fgets. bundle, fast-import: detect write failure Johannes Schindelin (2): Optimize prefixcmp() shortlog: mention the "-e" option in the usage Johannes Sixt (2): git-gui: Move frequently used commands to the top of the context menu. recv_sideband: Do not use ANSI escape sequence on dumb terminals. Junio C Hamano (27): Documentation/git-submodule.txt: typofix "git pull --tags": error out with a better message. git-rebase -i behaves better on commits with incomplete messages git-rebase -i: clean-up error check codepath. lock_any_ref_for_update(): reject wildcard return from check_ref_format Update callers of check_ref_format() Uninline prefixcmp() git-clean: make "Would remove ..." path relative to cwd again t/t7600: avoid GNUism in grep t/t{3600,3800,5401}: do not use egrep when grep would do t/t3800: do not use a temporary file to hold expected result. Update draft release notes for 1.5.4 git-stash clear: refuse to work with extra parameter for now git-rev-parse --symbolic-full-name filter-branch: work correctly with ambiguous refnames custom pretty format: tolerate empty e-mail address Documentation: remove gitman.info with "make clean" Documentation: fix "gitlink::foobar[s]" utf8: pick_one_utf8_char() utf8_width(): allow non NUL-terminated input diff: do not chomp hunk-header in the middle of a character Update draft release notes for 1.5.4 GIT 1.5.3.8 "git-apply --check" should not report "fixed" pack-objects: remove redundant and wrong call to deflateEnd() RPM spec: include gitk message files. GIT 1.5.4-rc3 Kevin Ballard (1): Trim leading / off of paths in git-svn prop_walk Marco Costalba (2): Document git-reset defaults to HEAD if no commit is given git-stash: use stdout instead of stderr for non error messages Mark Levedahl (2): git-gui: Unconditionally use absolute paths with Cygwin Documentation/Makefile - honor $DESTDIR for quick-install target Martin Koegler (4): receive-pack: check object type of sha1 before using them as commits receive-pack: reject invalid refnames parse_tag_buffer: don't parse invalid tags tree-walk: don't parse incorrect entries Michael Stefaniuc (1): git-am: Run git gc only once and not for every patch. Michele Ballabio (1): Document some default values in config.txt Miklos Vajna (2): git-sh-setup: document git_editor() and get_author_ident_from_commit() t/t7001: avoid unnecessary ERE when using grep Nicolas Pitre (1): slightly better auto gc message Paul Mackerras (2): gitk: Recode de.po to UTF-8 gitk: Restore some widget options whose defaults changed in Tk 8.5 Peter Krefting (1): Added Swedish translation. Ralf Wildenhues (1): Documentation: typofix Rogan Dawes (1): Allow git-mergetool to handle paths with a leading space Shawn O. Pearce (1): git-gui: Handle file mode changes (644->755) in diff viewer Version v1.5.4-rc2; changes since v1.5.4-rc1: --------------------------------------------- Alex Riesen (1): Allow selection of different cleanup modes for commit messages Arjen Laarhoven (1): Fix "git log --diff-filter" bug Charles Bailey (1): Remove old generated files from .gitignore. Gustaf Hendeby (2): Make git send-email accept $EDITOR with arguments shortlog manpage documentation: work around asciidoc markup issues Jakub Narębski (1): gitweb: fix whitespace in config_to_multi (indent with tab) Jeff King (2): clean up 1.5.4 release notes cvsimport: die on cvsps errors Jim Meyering (1): Don't dereference NULL upon lookup failure. Johannes Schindelin (2): Teach diff machinery to display other prefixes than "a/" and "b/" Mention git-shell's "cvs" substitution in the RelNotes Junio C Hamano (14): t4024: fix test script to use simpler sed pattern fix git commit --amend -m "new message" shell-scripts usage(): consistently exit with non-zero Documentation: ls-files -v is about "assume unchanged". Fix $EDITOR regression introduced by rewrite in C. t7005: do not exit inside test. builtin-commit: fix amending of the initial commit builtin-commit: avoid double-negation in the code. Documentation: describe 'union' low-level merge driver Fix documentation of --first-parent in git-log and copy it to git-rev-list combine-diff: Fix path quoting Fix rewrite_diff() name quoting. contrib: resurrect scripted git-revert. GIT 1.5.4-rc2 Linus Torvalds (1): Re(-re)*fix trim_common_tail() Miklos Vajna (1): everyday: replace 'prune' and 'repack' with 'gc' Pierre Habouzit (3): git-tag: fix -l switch handling regression. Force the sticked form for options with optional arguments. parse-options: Add a gitcli(5) man page. René Scharfe (1): Make "--pretty=format" parser a bit more careful. Shawn O. Pearce (2): Reallow git-rebase --interactive --continue if commit is unnecessary Improve error messages when int/long cannot be parsed from config Stefan Sperling (1): Small comment fix for git-cvsimport. Wincent Colaiuta (1): Emit helpful status for accidental "git stash" save Version v1.5.4-rc1; changes since v1.5.4-rc0: --------------------------------------------- Andy Whitcroft (1): git-svn: expand handling of From: and Signed-off-by: Charles Bailey (1): Fix git-instaweb breakage on MacOS X due to the limited sed functionality Christian Couder (1): git-help: add "help.format" config variable. David S. Miller (1): fast-import: fix unalinged allocation and access Eric Wong (5): git-svn: unlink internal index files after operations git-svn: handle our top-level path being deleted and later re-added git-svn: avoid leaving leftover committer/author info in rebase git-svn: workaround a for broken symlinks in SVN git-svn: avoid warning when run without arguments Finn Arne Gangstad (1): Improved submodule merge support H. Merijn Brand (1): the use of 'tr' in the test suite isn't really portable J. Bruce Fields (8): whitespace: fix off-by-one error in non-space-in-indent checking whitespace: reorganize initial-indent check whitespace: minor cleanup whitespace: fix initial-indent checking whitespace: more accurate initial-indent highlighting whitespace: fix config.txt description of indent-with-non-tab builtin-apply: minor cleanup of whitespace detection builtin-apply: stronger indent-with-on-tab fixing Jakub Narębski (2): gitweb: disambiguate heads and tags withs the same name gitweb: Teach "a=blob" action to be more lenient about blob/file mime type Jeff King (7): cvsexportcommit: fix massive commits trim_common_tail: brown paper bag fix. teach bash completion to treat commands with "--" as a helper rename git-browse--help to git-help--browse clone: correctly report http_fetch errors git-send-email: avoid duplicate message-ids test "git clone -o" Jim Meyering (1): git-filter-branch.sh: more portable tr usage: use \012, not \n. Johannes Schindelin (4): Support config variable diff.external Document diff.external and mergetool.<tool>.path rebase -p -i: handle "no changes" gracefully git show <tag>: show the tagger Johannes Sixt (4): threaded pack-objects: Use condition variables for thread communication. Plug a resource leak in threaded pack-objects code. Clean up documentation that references deprecated 'git peek-remote'. filter-branch: Remove broken and unnecessary summary of rewritten refs. Junio C Hamano (18): git-commit: squelch needless message during an empty merge xdl_diff: identify call sites. xdi_diff: trim common trailing lines diff --check: minor fixups Add tests for "git diff --check" with core.whitespace options xdiff tail trimming: use correct type. commit: allow --amend to reuse message from another commit remote: Fix bogus make_branch() call in configuration reader. Rename git-browse-help helper to git-browse--help Retire git-runstatus for real. Start preparing the API documents. Update draft release notes for 1.5.4 Re-re-re-fix common tail optimization builtin-commit: fix summary output. builtin-commit: make summary output consistent with status Documentation/git-submodule: refer to gitmodules(5) builtin-blame.c: remove unneeded memclr() GIT 1.5.4-rc1 Kristian Høgsberg (1): Use a strbuf for building up section header and key/value pair strings. Li Hong (1): Fix a memory leak Linus Torvalds (1): unpack-trees: FLEX_ARRAY fix Marco Roeland (1): clone: fix options '-o' and '--origin' to be recognised again Mike Hommey (8): Fix some more memory leaks in http-push.c Fix random sha1 in error message in http-fetch and http-push Remove the default_headers variable from http-push.c Remove a CURLOPT_HTTPHEADER (un)setting Avoid redundant declaration of missing_target() Use strbuf in http code Fix various memory leaks in http-push.c and http-walker.c Move fetch_ref from http-push.c and http-walker.c to http.c Nicolas Pitre (3): provide advance warning of some future pack default changes fix style of a few comments in diff-delta.c make 'git describe --all --contains' work Petr Baudis (1): gitweb: Make config_to_multi return [] instead of [undef] Pierre Habouzit (1): Fix segfault in diff-delta.c when FLEX_ARRAY is 1 Ralf Wildenhues (1): Fix some documentation typos. Sam Vilain (1): Clarify error response from 'git fetch' for bad responses Sean Estabrooks (1): Fix interactive rebase to preserve author email address Shawn Bohrer (1): Fix spelling mistakes in user manual Shawn O. Pearce (2): Avoid update hook during git-rebase --interactive Catch and handle git-commit failures in git-rebase --interactive Wincent Colaiuta (5): "diff --check" should affect exit status Unify whitespace checking Make "diff --check" output match "git apply" Use shorter error messages for whitespace problems Test interaction between diff --check and --exit-code anonymous (1): Documentation: describe pack idx v2 Version v1.5.4-rc0; changes since v1.5.3.8: ------------------------------------------- Alex Riesen (12): fix t5403-post-checkout-hook.sh: built-in test in dash does not have "==" Fix a crash in ls-remote when refspec expands into nothing More updates and corrections to the russian translation of git-gui Rework make_usage to print the usage message immediately Updated russian translation of git-gui Do no colorify test output if stdout is not a terminal Add a test checking if send-pack updated local tracking branches correctly Update the tracking references only if they were succesfully updated on remote Fix dependencies of parse-options test program Do not generate full commit log message if it is not going to be used Simplify crud() in ident.c Fix git-fast-export for zero-sized blobs Alexandre Julliard (12): git.el: Keep the status buffer sorted by filename. git.el: Allow selecting whether to display uptodate/unknown/ignored files. git.el: Allow the add and remove commands to be applied to ignored files. git.el: Preserve file marks when doing a full refresh. git.el: Do not print a status message on every git command. git.el: Update a file status in the git buffer upon save. git.el: Reset the permission flags when changing a file state. git.el: Fix typo in "Reverted file" message. git.el: Fix typo in git-update-saved-file error handling. git.el: Refresh only the changed file marks when marking/unmarking all. git.el: Run git-gc --auto after commits. git.el: Added a menu for git-status-mode. Andreas Ericsson (1): Simplify strchrnul() compat code André Goddard Rosa (2): Print the real filename that we failed to open. Error out when user doesn't have access permission to the repository Andy Parkins (4): parse_date_format(): convert a format name to an enum date_mode Make for-each-ref allow atom names like "<name>:<something>" Make for-each-ref's grab_date() support per-atom formatting Add a test script for for-each-ref, including test of date formatting Andy Whitcroft (6): Teach send-pack a mirror mode git-push: plumb in --mirror mode Add tests for git push'es mirror mode git-push: add documentation for the newly added --mirror mode git-quiltimport.sh fix --patches handling git-svn: add support for pulling author from From: and Signed-off-by: Anton Gyllenberg (1): gitview: import only one of gtksourceview and gtksourceview2 Ask Bjørn Hansen (1): send-email: Don't add To: recipients to the Cc: header Benoit Sigoure (7): git-svn: add a generic tree traversal to fetch SVN properties git-svn: implement git svn create-ignore git-svn: add git svn propget git-svn: add git svn proplist git-svn: simplify the handling of fatal errors core-tutorial: Catch up with current Git git-svn: sort the options in the --help message. Björn Steinbrink (1): git config: Don't rely on regexec() returning 1 on non-match Blake Ramsdell (1): transport.c: squelch a gcc 4.0.1 complaint about an uninitialized variable Brandon Casey (2): git-gc: by default use safer "-A" option to repack when not --prune'ing git-gc --auto: simplify "repack" command line building Brian Ewins (2): Add a --dry-run option to git-send-pack. Add a --dry-run option to git-push. Brian Gernhardt (3): format-patch: Add configuration and off switch for --numbered format-patch: Test --[no-]numbered and format.numbered t3502: Disambiguate between file and rev by adding -- Carlos Rica (5): Function for updating refs. Add tests for documented features of "git reset". Move make_cache_entry() from merge-recursive.c into read-cache.c Make "git reset" a builtin. Make builtin-tag.c use parse_options. Charles Bailey (1): Fix clone not to ignore depth when performing a local clone Cheng Renquan (1): gitweb: the commitdiff is very commonly used, it's needed on search page, too Chris Pettitt (3): git-p4 support for perforce renames. git-p4: Add a helper function to parse the full git diff-tree output. git-p4: Detect changes to executable bit and include them in p4 submit. Christian Couder (27): rev-list --bisect: Move finding bisection into do_find_bisection. rev-list --bisect: Move some bisection code into best_bisection. rev-list --bisect: Bisection "distance" clean up. rev-list --bisect: Fix best == NULL case. Test suite: reset TERM to its previous value after testing. rev-list: implement --bisect-all rev-list documentation: add "--bisect-all". Bisect: fix some white spaces and empty lines breakages. Bisect: implement "bisect skip" to mark untestable revisions. Bisect: refactor "bisect_write_*" functions. Bisect: refactor some logging into "bisect_write". Bisect: refactor "bisect_{bad,good,skip}" into "bisect_state". Bisect: add "bisect skip" to the documentation. Bisect: add a "bisect replay" test case. Bisect run: "skip" current commit if script exit code is 125. Bisect: add "skip" to the short usage string. Bisect reset: remove bisect refs that may have been packed. Bisect visualize: use "for-each-ref" to list all good refs. Bisect: use "$GIT_DIR/BISECT_NAMES" to check if we are bisecting. Bisect reset: do nothing when not bisecting. Documentation: add a new man page for "git-help" Trace and quote with argv: get rid of unneeded count argument. git-help: add -i|--info option to display info page. Documentation: describe -i/--info option to "git-help" git-help: add -w|--web option to display html man page in a browser. Use {web,instaweb,help}.browser config options. Documentation: describe -w/--web option to "git-help". Christian Stimming (14): Mark strings for translation. Makefile rules for translation catalog generation and installation. Add glossary that can be converted into a po file for each language. Add glossary translation template into git. German translation for git-gui German glossary for translation git-gui: Add more words to translation glossary git-gui: Update German glossary according to mailing list discussion git-gui: Incorporate glossary changes into existing German translation git-gui: Update German translation, including latest glossary changes git-gui: Add more terms to glossary. git-gui: Update German translation Update git-gui.pot with latest (few) string additions and changes. Update German translation. 100% completed. Dan McGee (1): Remove outdated references to cogito in documentation Daniel Barkalow (23): Refactor http.h USE_CURL_MULTI fill_active_slots(). Make function to refill http queue a callback Remove obsolete commit-walkers Modularize commit-walker Add uploadpack configuration info to remote. Report information on branches from remote.h Make fetch-pack a builtin with an internal API Push code for transport library Add matching and parsing for fetch-side refspec rules Add fetch methods to transport library. Make fetch a builtin Allow abbreviations in the first refspec to be merged Fix adding a submodule with a remote url Restore default verbosity for http fetches. Remove duplicate ref matches in fetch Correct handling of upload-pack in builtin-fetch-pack Miscellaneous const changes and utilities Build-in peek-remote, using transport infrastructure. Use built-in send-pack. Build-in send-pack, with an API for other programs to call. Build in ls-remote Use parseopts in builtin-push Add more checkout tests David D. Kilzer (8): git-svn log: fix ascending revision ranges git-svn log: include commit log for the smallest revision in a range git-svn log: handle unreachable revisions like "svn log" git-send-email: show all headers when sending mail git-svn: extract reusable code into utility functions git-svn info: implement info command git-svn: info --url [path] git-svn: Remove unnecessary Git::SVN::Util package David Kastrup (3): diff-delta.c: pack the index structure diff-delta.c: Rationalize culling of hash buckets git-commit.sh: Shell script cleanup David Reiss (1): git-svn: Fix a typo and add a comma in an error message in git-svn David Symonds (7): gitweb: Provide title attributes for abbreviated author names. gitweb: Refactor abbreviation-with-title-attribute code. gitweb: Use chop_and_escape_str in more places. Rearrange git-format-patch synopsis to improve clarity. git-checkout: Support relative paths containing "..". git-checkout: Test for relative path use. Mention that git-rm can be an appropriate resolution as well as git-add. Dmitry Potapov (1): preserve executable bits in zip archives Douglas Stockwell (1): send-email: Add support for SSL and SMTP-AUTH Emil Medve (2): Fixed a command line option type for builtin-fsck.c git-stash: Fix listing stashes Eric Wong (6): git-svn: support for funky branch and project names over HTTP(S) git-svn: add tests for command-line usage of init and clone commands t9106: fix a race condition that caused svn to miss modifications git-svn: allow `info' command to work offline git-svn: replace .rev_db with a more space-efficient .rev_map format git-svn: reinstate old rev_db optimization in new rev_map Eygene Ryabinkin (2): git-svn: respect Subversion's [auth] section configuration values git-svn: use "no warnings 'once'" to disable false-positives Eyvind Bernhardsen (1): Fix mis-markup of the -p, --patch option in git-add(1) Frederick Akalin (1): gtksourceview2 support for gitview Gerrit Pape (9): No longer install git-svnimport, move to contrib/examples git-reset: add -q option to operate quietly contrib/hooks/post-receive-email: fix typo contrib/hooks/post-receive-email: reformat to wrap comments at 76 chars contrib/hooks/post-receive-email: make subject prefix configurable hooks--update: fix test for properly set up project description file hooks--update: decline deleting tags or branches by default, add config options contrib/hooks/post-receive-email: remove cruft, $committer is not used Don't cache DESTDIR in perl/perl.mak. Gordon Hopper (1): git-cvsimport: fix handling of user name when it is not set in CVSROOT Guido Ostkamp (2): Remove unreachable statements Use compat mkdtemp() on Solaris boxes Gustaf Hendeby (1): git-svn now reads settings even if called in subdirectory H. Merijn Brand (1): Do not rely on the exit status of "unset" for unset variables Harri Ilari Tapio Liusvaara (1): git-gui: Disambiguate "commit" Heikki Orsila (1): git-clone: honor "--" to end argument parsing Irina Riesen (1): git-gui: initial version of russian translation J. Bruce Fields (3): git-rebase: support --whitespace=<option> git-rebase: fix -C option errors: "strict subset" -> "ancestor" Jakub Narębski (18): gitweb: Fix and simplify "split patch" detection gitweb: Always set 'from_file' and 'to_file' in parse_difftree_raw_line gitweb: Add 'status_str' to parse_difftree_raw_line output gitweb: Remove CGI::Carp::set_programname() call from t9500 gitweb test gitweb: Easier adding/changing parameters to current URL gitweb: Use href(-replay=>1, page=>...) to generate pagination links gitweb: Use href(-replay=>1, action=>...) to generate alternate views gitweb: Add tests for overriding gitweb config with repo config gitweb: Read repo config using 'git config -z -l' gitweb: Use config file for repository description and URLs gitweb: Style all tables using CSS gitweb: Put project README in div.readme, fix its padding autoconf: Add tests for memmem, strtoumax and mkdtemp functions Add config_int() method to the Git perl module gitweb: Update and improve gitweb/README file contrib: Make remotes2config.sh script more robust autoconf: Add test for OLD_ICONV (squelching compiler warning) autoconf: Check asciidoc version to automatically set ASCIIDOC8 James Bowes (3): remote: add 'rm' subcommand remote: document the 'rm' subcommand gc: use parse_options Jari Aalto (2): git-remote: exit with non-zero status after detecting error in "rm". On error, do not list all commands, but point to --help option Jeff King (36): contrib/fast-import: add perl version of simple example diffcore-rename: cache file deltas git-rebase: document suppression of duplicate commits send-pack: don't update tracking refs on error t5516: test update of local refs on push git-gc: improve wording of --auto notification Documentation/git-gc: explain --auto in description Documentation/git-gc: improve description of --auto more terse push output receive-pack: don't mention successful updates send-pack: require --verbose to show update of tracking refs git-ls-files: add --exclude-standard send-pack: track errors for each ref send-pack: check ref->status before updating tracking refs send-pack: assign remote errors to each ref make "find_ref_by_name" a public function send-pack: tighten remote error reporting send-pack: fix "everything up-to-date" message avoid "defined but not used" warning for fetch_objs_via_walker send-pack: cluster ref status reporting git-tag: test that -s implies an annotated tag Revert "t5516: test update of local refs on push" git-commit: clean up die messages Enable rewrite as well as rename detection in git-status quote_path: fix collapsing of relative paths t9600: require cvsps 2.1 to perform tests t7300: add test for clean with wildcard pathspec wt-status.c:quote_path(): convert empty path to "./" add status.relativePaths config variable git-status: documentation improvements don't mention index refreshing side effect in git-status docs Add git-browse-help to .gitignore Support GIT_PAGER_IN_USE environment variable git-svn: get color config from --get-colorbool shortlog: document -e option git-clone: print an error message when trying to clone empty repo Jeff Muizelaar (1): fix contrib/hooks/post-receive-email hooks.recipients error message Jim Meyering (1): hooks-pre-commit: use \t, rather than a literal TAB in regexp Johannes Schindelin (57): Add po/git-gui.pot Ignore po/*.msg Teach "git remote" a mirror mode verify-tag: also grok CR/LFs in the tag signature apply: get rid of --index-info in favor of --build-fake-ancestor Move bundle specific stuff into bundle.[ch] Add bundle transport git-gui: Deiconify startup wizard so it raises to the top git-gui: add a simple msgfmt replacement rebase -i: commit when continuing after "edit" rebase -i: style fixes and minor cleanups rebase -i: Fix numbers in progress report rebase -i: avoid exporting GIT_AUTHOR_* variables rebase -i: work on a detached HEAD rebase -i: support single-letter abbreviations for the actions Introduce remove_dir_recursively() fetch/push: readd rsync support Support cvs via git-shell Fix compilation when NO_CURL is defined cvsexportcommit: get rid of temporary directory fetch: if not fetching from default remote, ignore default merge Deduce exec_path also from calls to git with a relative path Add tests for parse-options.c parse-options: Allow abbreviated options when unambiguous po2msg: ignore entries marked with "fuzzy" po2msg: ignore untranslated messages po2msg: actually output statistics git-reset: do not be confused if there is nothing to reset Split off the pretty print stuff into its own file parse-options: abbreviation engine fix. builtin-reset: do not call "ls-files --unmerged" builtin-reset: avoid forking "update-index --refresh" Deprecate git-lost-found rebase: operate on a detached HEAD builtin-blame: set up the work_tree before the first file access rebase: fix "rebase --continue" breakage Close files opened by lock_file() before unlinking. rebase -i: move help to end of todo file launch_editor(): read the file, even when EDITOR=: builtin-commit: fix reflog message generation git status: show relative paths when run in a subdirectory builtin-commit: fix --signoff builtin-commit --s: add a newline if the last line was not a S-o-b builtin-commit: resurrect behavior for multiple -m options builtin-commit: Add newline when showing which commit was created Replace "runstatus" with "status" in the tests filter-branch: fix dirty way to provide the helpers to commit filters git checkout's reflog: even when detaching the HEAD, say from where bash completion: add diff options Replace instances of export VAR=VAL with VAR=VAL; export VAR Teach 'git pull' about --rebase rebase -i: give rerere a chance receive-pack: allow deletion of corrupt refs Add "--expire <time>" option to 'git prune' Add 'git fast-export', the sister of 'git fast-import' fast-export: rename the signed tag mode 'ignore' to 'verbatim' Allow ':/<oneline-prefix>' syntax to work with save_commit_buffer == 0 Johannes Sixt (38): git-gui: Change main window layout to support wider screens gitk: Do not pick up file names of "copy from" lines Change git_connect() to return a struct child_process instead of a pid_t. Use start_command() in git_connect() instead of explicit fork/exec. Use start_command() to run content filters instead of explicit fork/exec. Use run_command() to spawn external diff programs instead of fork/exec. Use start_comand() in builtin-fetch-pack.c instead of explicit fork/exec. Have start_command() create a pipe to read the stderr of the child. upload-pack: Use start_command() to run pack-objects in create_pack_file(). Add infrastructure to run a function asynchronously. Use the asyncronous function infrastructure in builtin-fetch-pack.c. upload-pack: Move the revision walker into a separate function. upload-pack: Run rev-list in an asynchronous function. t0021-conversion.sh: Test that the clean filter really cleans content. Avoid a dup2(2) in apply_filter() - start_command() can do it for us. Use the asyncronous function infrastructure to run the content filter. Fix an infinite loop in sq_quote_buf(). upload-pack: Use finish_{command,async}() instead of waitpid(). Give git-am back the ability to add Signed-off-by lines. git-clean: Fix error message if clean.requireForce is not set. Fix preprocessor logic that determines the availablity of strchrnul(). t5300-pack-object.sh: Split the big verify-pack test into smaller parts. t7501-commit.sh: Not all seds understand option -i t5302-pack-index: Skip tests of 64-bit offsets if necessary. Skip t3902-quoted.sh if the file system does not support funny names. Use is_absolute_path() in sha1_file.c. Move #include <sys/select.h> and <sys/ioctl.h> to git-compat-util.h. builtin run_command: do not exit with -1. Allow a relative builtin template directory. Introduce git_etc_gitconfig() that encapsulates access of ETC_GITCONFIG. Allow ETC_GITCONFIG to be a relative path. refs.c: Remove unused get_ref_sha1() fetch-pack: Prepare for a side-band demultiplexer in a thread. Flush progress message buffer in display(). git-gui: Improve the application icon on Windows. git-commit: Allow to amend a merge commit that does not change the tree for-each-ref: Fix quoting style constants. Fix a typo in checkout.sh and cleanup one-line help messages Jonas Fonseca (2): Update manpages to reflect new short and long option aliases Documentation: Fix references to deprecated commands Jonathan del Strother (2): Fixing path quoting in git-rebase gitk: Add support for OS X mouse wheel Josh England (4): Add post-merge hook, related documentation, and tests. Added example hook script to save/restore permissions/ownership. post-checkout hook, tests, and docs Minor usage update in setgitperms.perl Junio C Hamano (157): Keep last used delta base in the delta window git-gui po/README: Guide to translators Start 1.5.4 cycle Implement git gc --auto Invoke "git gc --auto" from commit, merge, am and rebase. archive - leakfix for format_subst() git-commit: Allow partial commit of file removal. An additional test for "git-reset -- path" Simplify cache API git-commit: partial commit of paths only removed from the index Document ls-files --with-tree=<tree-ish> builtin-pack-objects.c: avoid bogus gcc warnings stash: implement "stash create" rebase: allow starting from a dirty tree. Export matches_pack_name() and fix its return value pack-objects --keep-unreachable repack -A -d: use --keep-unreachable when repacking git-gc --auto: move threshold check to need_to_gc() function. git-gc --auto: add documentation. git-gc --auto: protect ourselves from accumulated cruft git-gc --auto: restructure the way "repack" command line is built. git-gc --auto: run "repack -A -d -l" as necessary. builtin-apply.c: fix a tiny leak introduced during xmemdupz() conversion. builtin-for-each-ref.c::copy_name() - do not overstep the buffer. git-remote rm: add tests and minor fix-ups Start RelNotes for 1.5.4 strbuf_setlen(): do not barf on setting length of an empty buffer to 0 send-email --smtp-server-port: allow overriding the default port rerere: Fix use of an empty strbuf.buf git-am: make the output quieter. bundle transport: fix an alloc_ref() call Update stale documentation link in the k.org site git-am: fix typo in the previous one. dateformat: parse %(xxdate) %(yydate:format) correctly builtin-apply: fix conversion error in strbuf series Update state documentation link for 1.5.3.4 k.org git toppage: Add link to 1.5.3 release notes. help: remove extra blank line after "See 'git --help'" message revert/cherry-pick: work on merge commits as well git-fetch: do not fail when remote branch disappears RelNotes-1.5.4: describe recent updates git-gui: Update Japanese strings (part 2) Revert "rebase: allow starting from a dirty tree." git-merge: no reason to use cpio anymore format-patch -s: add MIME encoding header if signer's name requires so cherry-pick/revert -m: add tests test format-patch -s: make sure MIME content type is shown as needed War on whitespace: first, a bit of retreat. git-diff: complain about >=8 consecutive spaces in initial indent core.whitespace: add test for diff whitespace error highlighting clean: require -f to do damage by default gc: --prune prunes unreferenced objects. scripts: Add placeholders for OPTIONS_SPEC git-rev-parse --parseopt git-sh-setup: fix parseopt `eval` string underquoting send-pack: segfault fix on forced push Style: place opening brace of a function definition at column 1 git-am: -i does not take a string parameter. Update draft release notes for 1.5.4 Documentation: lost-found is now deprecated. Make check-docs target detect removed commands Documentation: remove documentation for removed tools. git-commit: a bit more tests Resurrect git-revert.sh example and add comment to builtin-revert.c core.excludesfile clean-up Fix per-directory exclude handing for "git add" git-bisect: war on "sed" git-bisect: use update-ref to mark good/bad commits git-bisect: modernize branch shuffling hack Update draft release notes for 1.5.4 Draft release notes: fix clean.requireForce description Update draft release notes for 1.5.4 Move gitk to its own subdirectory git-clean: Fix error message if clean.requireForce is not set. git-compat-util.h: auto-adjust to compiler support of FLEX_ARRAY a bit better Fix "quote" misconversion for rewrite diff output. Make test scripts executable. file_exists(): dangling symlinks do exist builtin-commit: do not color status output shown in the message template builtin-commit: run commit-msg hook with correct message file Export three helper functions from ls-files Fix add_files_to_cache() to take pathspec, not user specified list of files builtin-commit: fix partial-commit support Addendum to "MaintNotes" git-add -i: allow multiple selection in patch subcommand git-branch --contains=commit git-branch --contains: doc and test builtin-tag: accept and process multiple -m just like git-commit Add a few more tests for git-commit builtin-apply: rename "whitespace" variables and fix styles t4119: correct overeager war-on-whitespace builtin-apply: teach whitespace_rules core.whitespace: documentation updates. Deprecate peek-remote Update draft release notes for 1.5.4 builtin-add: fix command line building to call interactive add -i: Fix running from a subdirectory "git-tag -s" should create a signed annotated tag revert/cherry-pick: do not mention the original ref "color.diff = true" is not "always" anymore. git-config --get-color: get configured color dir.c: minor clean-up per-directory-exclude: lazily read .gitignore files Update draft release notes for 1.5.4 Resurrect peek-remote Consolidate command list to one. Update draft release notes for 1.5.4 rename: Break filepairs with different types. git-am: catch missing author date early. Fix --signoff in builtin-commit differently. git-commit: Allow to amend a merge commit that does not change the tree git-commit --allow-empty git-commit --allow-empty git-commit documentation: fix unfinished sentence. Add git-fast-export to list of commands. Update draft release notes for 1.5.4 Run the specified perl in Documentation/ Formatting fix for Documentation/git-help.txt Documentation: rerere is enabled by default these days. Documentation/git.txt: typofix t5510: add a bit more tests for fetch git-cvsserver runs hooks/post-update Revert "git-am: catch missing author date early." Documentation: color.* = true means "auto" git config --get-colorbool Color support for "git-add -i" git-clean: Honor pathspec. config --get-colorbool: diff.color is a deprecated synonym to color.diff Use gitattributes to define per-path whitespace rule hg-to-git: handle an empty dir in hg. do not discard status in fetch_refs_via_pack() git-status documentation: mention subdirectory behaviour Update draft release notes to 1.5.4 git-bisect visualize: work in non-windowed environments better mailmap: fix bogus for() loop that happened to be safe by accident shortlog: code restructuring and clean-up git-shortlog -e: show e-mail address as well ls-remote: resurrect pattern limit support Fix commit-msg hook to allow editing Re-fix "builtin-commit: fix --signoff" Re-fix ls-remote Update draft Release Notes for 1.5.4 Documentation: add gitman.info target git-help -i: invoke info with document and node name git-help -i: show info documentation from matching version of git send-email: do not muck with initial-reply-to when unset. commit: do not add extra LF at the end of the summary. Support a merge with conflicting gitlink change blame: drop blob data after passing blame to the parent shortlog: default to HEAD when the standard input is a tty git-diff --numstat -z: make it machine readable disable t9119 for now. Documentation: rename git.texi to user-manual.texi git.spec.in: remove python_path git-help -w: do not require to be in git repository RPM spec: Adjust htmldir GIT 1.5.4-rc0 Kevin Leung (2): git-p4: Fix typo in --detect-labels git-stash: Display help message if git-stash is run with wrong sub-commands Kirill (1): Updated Russian translation. Konstantin V. Arkhipov (1): git-svn's dcommit must use subversion's config Kristian Høgsberg (18): Enable wt-status output to a given FILE pointer. Enable wt-status to run against non-standard index file. Add strbuf_read_file(). Clean up stripspace a bit, use strbuf even more. Introduce entry point add_interactive and add_files_to_cache Export rerere() and launch_editor(). Port builtin-add.c to use the new option parser. Add testcase for amending and fixing author in git commit. Export launch_editor() and make it accept ':' as a no-op editor. Port git commit to C. builtin-commit: Refresh cache after adding files. Call refresh_cache() when updating the user index for --only commits. builtin-commit: Clean up an unused variable and a debug fprintf(). t7501-commit: Add test for git commit <file> with dirty index. builtin-commit: Include the diff in the commit message when verbose. Fix off-by-one error when truncating the diff out of the commit message. Use a strbuf for copying the command line for the reflog. Rewrite builtin-fetch option parsing to use parse_options(). Kristof Provost (1): makefile: Add a cscope target Lars Hjemli (11): git-svn: add support for --first-parent git-svn: always use --first-parent Add test-script for git-merge porcelain git-merge: fix faulty SQUASH_MSG git-merge: refactor option parsing git-merge: add support for branch.<name>.mergeoptions git-merge: add support for --commit and --no-squash git-merge: add --ff and --no-ff options Make merge-recursive honor diff.renamelimit Teach git-pull about --[no-]ff, --no-squash and --commit for-each-ref: fix setup of option-parsing for --sort Lars Knoll (1): Speedup scanning for excluded files. Linus Torvalds (18): optimize diffcore-delta by sorting hash entries. Add 'diffcore.h' to LIB_H Split out "exact content match" phase of rename detection Ref-count the filespecs used by diffcore copy vs rename detection: avoid unnecessary O(n*m) loops Do linear-time/space rename logic for exact renames Do exact rename detection regardless of rename limits Fix ugly magic special case in exact rename detection Do the fuzzy rename detection limits with the exact renames removed Simplify topo-sort logic Add "--early-output" log flag for interactive GUI use Enhance --early-output format revision walker: mini clean-up Fix rev-list when showing objects involving submodules Fix parent rewriting in --early-output Fix a pathological case in git detecting proper renames Fix a pathological case in git detecting proper renames "git tag -u keyname" broken Luke Lu (1): gitweb: speed up project listing on large work trees by limiting find depth Marius Storm-Olsen (2): Add 'git-p4 commit' as an alias for 'git-p4 submit' Teach core.autocrlf to 'git blame' Mark Levedahl (1): git-submodule - allow a relative path as the subproject url Matt Kraai (2): Move convert-objects to contrib. rebase -i: create .dotest-merge after validating options. Matthias Kestenholz (1): Documentation: add --patch option to synopsis of git-add Michael Gebetsroither (1): hg-to-git speedup through selectable repack intervals Michael W. Olson (2): git-rebase--interactive.sh: Quote arguments to test Documentation/git-tag.txt: Document how to backdate tags Michael Witten (2): git-cvsexportcommit.perl: git-apply no longer needs --binary git-cvsserver runs hooks/post-receive Michal Vitecek (1): Don't use "<unknown>" for placeholders and suppress printing of empty user formats. Michele Ballabio (7): git-gui: remove dots in some UI strings git-gui: add some strings to translation git-gui: fix typo in lib/blame.tcl git-gui: update Italian translation test-lib.sh: move error line after error() declaration git-gui: fix a typo in lib/commit.tcl git-gui: update it.po and glossary/it.po Mike Dalessio (2): instaweb: allow for use of auto-generated scripts instaweb: support for Ruby's WEBrick server Mike Hommey (13): Reuse previous annotation when overwriting a tag Add tests for git tag Refactor working tree setup Use setup_work_tree() in builtin-ls-files.c Don't always require working tree for git-rm Make git-blame fail when working tree is needed and we're not in one Small code readability improvement in show_reference() in builtin-tag.c Do git reset --hard HEAD when using git rebase --skip Fix and improve t7004 (git-tag tests) git-send-email.perl: Really add angle brackets to In-Reply-To if necessary Cleanup variables in http.[ch] Fix small memory leaks induced by diff_tree_setup_paths Fix XML parser leaks in http-push Miklos Vajna (4): Hungarian translation of git-gui git-send-email: add a new sendemail.to configuration variable Include diff options in the git-log manpage Update Hungarian translation. 100% completed. Nanako Shiraishi (3): Japanese translation of git-gui git-gui: Update Japanese strings Update ja.po for git-gui Nguyễn Thái Ngọc Duy (3): contrib/fast-import: add simple shell example git-sh-setup.sh: use "git rev-parse --show-cdup" to check for SUBDIRECTORY_OK Remove repo version check from setup_git_directory Nicolas Pitre (42): straighten the list of objects to deltify localize window memory usage accounting rearrange delta search progress reporting basic threaded delta search threaded delta search: refine work allocation threaded delta search: better chunck split point threaded delta search: specify number of threads at run time fix threaded delta search locking threaded delta search: add pack.threads config variable threaded delta search: proper locking for cache accounting more compact progress display cope with multiple line breaks within sideband progress messages pack-objects: no delta possible with only one object in the list pack-objects.c: fix some global variable abuse and memory leaks fix const issues with some functions fix for more minor memory leaks prune-packed: don't call display_progress() for every file make struct progress an opaque type relax usage of the progress API add throughput to progress display add throughput display to index-pack add some copyright notice to the progress display code add throughput display to git-push return the prune-packed progress display to the inner loop make sure throughput display gets updated even if progress doesn't move Show total transferred as part of throughput progress make the pack index version configurable pack-objects: get rid of an ugly cast git-fetch: more terse fetch output fix display overlap between remote and local progress sideband.c: ESC is spelled '\033' not '\e' for portability. make display of total transferred more accurate remove dead code from the csum-file interface restore fetching with thin-pack capability make display of total transferred fully accurate nicer display of thin pack completion add a howto document about corrupted blob recovery rehabilitate some t5302 tests on 32-bit off_t machines pack-objects: fix delta cache size accounting pack-objects: reverse the delta search sort list pack-objects: fix threaded load balancing pack-objects: more threaded load balancing fix with often changed paths Paolo Ciarrocchi (1): Italian translation of git-gui Pascal Obry (2): git-stash: do not get fooled with "color.diff = true" Set OLD_ICONV on Cygwin. Paul Mackerras (37): gitk: Establish and use global left-to-right ordering for commits gitk: Improve the drawing of links to parent lines gitk: Eliminate diagonal arrows gitk: Get rid of idrowranges and rowrangelist gitk: Get rid of idinlist array gitk: Fix some problems with the display of ids as links gitk: Get rid of the rowchk array gitk: Do only the parts of the layout that are needed gitk: Fix bug causing incorrect ref list contents when switching view gitk: Fix bug causing undefined variable error when cherry-picking gitk: Add a cache for the topology info gitk: Make it possible to lay out all the rows we have received so far gitk: Fix bugs in setting rowfinal gitk: Get rid of lookingforhead, use commitinterest instead gitk: Fix bug in generating patches gitk: Simplify highlighting interface and combine with Find function gitk: Fix a couple of bugs gitk: Add progress bars for reading in stuff and for finding gitk: Fix the tab setting in the diff display window gitk: Fix bug causing Tcl error when changing find match type gitk: Use named fonts instead of the font specification gitk: Keep track of font attributes ourselves instead of using font actual gitk: Add a font chooser gitk: Fix bug where the last few commits would sometimes not be visible gitk: Get rid of the diffopts variable gitk: Fix Tcl error: can't unset findcurline gitk: Check that we are running on at least Tcl/Tk 8.4 gitk: Avoid an error when cherry-picking if HEAD has moved on gitk: Fix "can't unset prevlines(...)" Tcl error gitk: Limit diff display to listed paths by default gitk: Ensure tabstop setting gets restored by Cancel button gitk: Integrate the reset progress bar in the main frame gitk: Use the status window for other functions gitk: Fix some bugs with path limiting in the diff display gitk: Fix a couple more bugs in the path limiting gitk: Simplify the code for finding commits gitk: Use the UI font for the diff/old version/new version radio buttons Pierre Habouzit (80): Rework strbuf API and semantics. Simplify strbuf uses in archive-tar.c using strbuf API fast-import: Use strbuf API, and simplify cmd_data() mktree: Simplify write_tree() using strbuf API Use strbuf API in apply, blame, commit-tree and diff Use strbuf API in buitin-rerere.c Use strbuf API in cache-tree.c Strbuf API extensions and fixes. Change semantics of interpolate to work like snprintf. Rework pretty_print_commit to use strbufs instead of custom buffers. Use strbuf_read in builtin-fetch-tool.c. Use strbufs to in read_message (imap-send.c), custom buffer--. Replace all read_fd use with strbuf_read, and get rid of it. New strbuf APIs: splice and attach. Rewrite convert_to_{git,working_tree} to use strbuf's. Now that cache.h needs strbuf.h, remove useless includes. builtin-apply: use strbuf's instead of buffer_desc's. Refactor replace_encoding_header. Remove preemptive allocations. Drop strbuf's 'eof' marker, and make read_line a first class citizen. fast-import was using dbuf's, replace them with strbuf's. fast-import optimization: Add xmemdupz() that duplicates a block of memory, and NUL terminates it. Use xmemdupz() in many places. Fix the expansion pattern of the pseudo-static path buffer. nfv?asprintf are broken without va_copy, workaround them. strbuf API additions and enhancements. Rework unquote_c_style to work on a strbuf. Full rework of quote_c_style and write_name_quoted. sq_quote_argv and add_to_string rework with strbuf's. Add strbuf_cmp. Make builtin-rerere use of strbuf nicer and more efficient. Small cache_tree_write refactor. double free in builtin-update-index.c strbuf change: be sure ->buf is never ever NULL. strbuf_read_file enhancement, and use it. Make read_patch_file work on a strbuf. Fix in-place editing functions in convert.c Add some fancy colors in the test library when terminal supports it. Support a --quiet option in the test-suite. fast-import.c: fix regression due to strbuf conversion Add a simple option parser. parse-options: be able to generate usages automatically parse-options: make some arguments optional, add callbacks. Add shortcuts for very often used options. parse-options: allow callbacks to take no arguments at all. Make builtin-rm.c use parse_options. Make builtin-mv.c use parse-options Make builtin-branch.c use parse_options. Make builtin-describe.c use parse_options Make builtin-revert.c use parse_options. Make builtin-update-ref.c use parse_options Make builtin-symbolic-ref.c use parse_options. Make builtin-for-each-ref.c use parse-opts. Make builtin-fsck.c use parse_options. Make builtin-count-objects.c use parse_options. Make builtin-name-rev.c use parse_options. Make builtin-pack-refs.c use parse_options. git-fetch: be even quieter. Some better parse-options documentation. Add a parseopt mode to git-rev-parse to bring parse-options to shell scripts. Update git-sh-setup(1) to allow transparent use of git-rev-parse --parseopt Migrate git-clean.sh to use git-rev-parse --parseopt. Migrate git-clone to use git-rev-parse --parseopt Migrate git-am.sh to use git-rev-parse --parseopt Migrate git-merge.sh to use git-rev-parse --parseopt Migrate git-instaweb.sh to use git-rev-parse --parseopt Migrate git-checkout.sh to use git-rev-parse --parseopt --keep-dashdash Migrate git-quiltimport.sh to use git-rev-parse --parseopt Migrate git-repack.sh to use git-rev-parse --parseopt sh-setup: don't let eval output to be shell-expanded. parse-options new features. Use OPT_SET_INT and OPT_BIT in builtin-branch Use OPT_BIT in builtin-for-each-ref Use OPT_BIT in builtin-pack-refs Make the diff_options bitfields be an unsigned with explicit masks. Reorder diff_opt_parse options more logically per topics. parse-options: Allow to hide options from the default usage. builtin-commit.c: export GIT_INDEX_FILE for launch_editor as well. Invert numbers and names in the git-shortlog summary mode. Pini Reznik (1): Open external merge tool with original file extensions for all three files Ralf Wildenhues (10): manual: Fix or remove em dashes. Fix some typos, punctuation, missing words, minor markup. Fix wording in push definition. manual: Fix example finding commits referencing given content. manual: add some markup. manual: use 'URL' instead of 'url'. git-cherry-pick: improve description of -x. Fix minor nits in configure.ac git-bisect.sh: Fix sed script to work with AIX and BSD sed. Document all help keys in "git add -i" patch mode. René Scharfe (13): Export format_commit_message() archive: specfile support (--pretty=format: in archive files) Remove unused function convert_sha1_file() add memmem() archive: specfile syntax change: "$Format:%PLCHLDR$" instead of just "%PLCHLDR" (take 2) archive: rename attribute specfile to export-subst archive: fix subst file generation Correct some sizeof(size_t) != sizeof(unsigned long) typing errors Add strchrnul() --pretty=format: on-demand format expansion --pretty=format: parse commit message only once add strbuf_adddup() --format=pretty: avoid calculating expensive expansions twice Robert Boone (1): Define NO_MEMMEM of FreeBSD as it lacks the function Robert Schiele (2): git-gui: install-sh from automake does not like -m755 install-sh from automake does not like -m without delimiting space Robin Rosenberg (1): cvsexportcommit: Add switch to specify CVS workdir Sam Vilain (6): git-svn: fix test for trunk svn (commit message not needed) git-svn: fix test for trunk svn (transaction out of date) git-svn: handle changed svn command-line syntax gitk: disable colours when calling git log Allow HTTP proxy to be overridden in config Add remote.<name>.proxy Scott R Parish (7): "git" returns 1; "git help" and "git help -a" return 0 remove unused/unneeded "pattern" argument of list_commands "current_exec_path" is a misleading name, use "argv_exec_path" list_commands(): simplify code by using chdir() use only the $PATH for exec'ing git commands include $PATH in generating list of commands for "help -a" shell should call the new setup_path() to setup $PATH Sergei Organov (7): core-tutorial.txt: Fix git-show-branch example and its description user-manual.txt: fix a few mistakes user-manual: minor rewording for clarity. Documentation: customize diff-options depending on particular command user-manual.txt: minor clarification. Documentation: fix git-clone manpage not to refer to itself Let git-help prefer man-pages installed with this version of git Shawn Bohrer (4): Add more tests for git-clean Make git-clean a builtin Teach git clean to use setup_standard_excludes() Make git status usage say git status instead of git commit Shawn O. Pearce (106): git-gui: Locate the library directory early during startup git-gui: Initialize Tcl's msgcat library for internationalization git-gui: Update po/README as symlink process is not necessary git-gui: Correct stock message for 'Invalid font specified in %s' git-gui: Quiet the msgfmt part of the make process git-gui: Ensure msgfmt failure stops GNU make Define NO_MEMMEM on Darwin as it lacks the function git-gui: Mark revision chooser tooltip for translation git-gui: Localize commit/author dates when displaying them git-gui: Support context-sensitive i18n git-gui: Document the new i18n context support git-gui: Make the tree browser also use lightgray selection git-gui: Paper bag fix missing translated strings Correct builtin-fetch to handle + in refspecs Fix off by one bug in reflog messages written by builtin-fetch Remove unnecessary debugging from builtin-fetch Remove unused unpacklimit variable from builtin-fetch Replace custom memory growth allocator with ALLOC_GROW Simplify fetch transport API to just one function Refactor index-pack "keep $sha1" handling for reuse Remove pack.keep after ref updates in git-fetch Always ensure the pack.keep file is removed by git-fetch Fix builtin-fetch memory corruption by not overstepping array Backup the array passed to fetch_pack so we can free items Properly cleanup in http_cleanup so builtin-fetch does not segfault Don't bother passing ref log details to walker in builtin-fetch Cleanup duplicate initialization code in transport_get Add transport.h to LIB_H as transport.o is in LIB_OBJS Remove unnecessary 'fetch' argument from transport_get API Allow builtin-fetch to work on a detached HEAD Don't configure remote "." to fetch everything to itself Remove more debugging from builtin-fetch builtin-fetch: Don't segfault on "fetch +foo" Don't attempt to merge non-existant remotes in t5515 Correct handling of branch.$name.merge in builtin-fetch Avoid printing unnecessary warnings during fetch and push Use 'unsigned:1' when we mean boolean options Rename remote.uri to remote.url within remote handling internals Refactor struct transport_ops inlined into struct transport Always obtain fetch-pack arguments from struct fetch_pack_args Ensure builtin-fetch honors {fetch,transfer}.unpackLimit Fix memory leaks when disconnecting transport instances git-gui: Fix missing i18n markup in push/fetch windows git-gui: Support native Win32 Tcl/Tk under Cygwin git-gui: Refactor some UI init to occur earlier git-gui: Allow users to choose/create/clone a repository git-gui: Avoid console scrollbars unless they are necessary git-gui: Don't bother showing OS error message about hardlinks git-gui: Keep the UI responsive while counting objects in clone git-gui: Copy objects/info/alternates during standard clone Cleanup style nit of 'x == NULL' in remote.c Cleanup unnecessary break in remote.c Prevent send-pack from segfaulting when a branch doesn't match git-gui: Don't delete console window namespaces too early git-gui: Don't delete scrollbars in console windows git-gui: Switch the git-gui logo to Henrik Nyh's logo git-gui: Make the status bar easier to read in the setup wizard git-gui: Use Henrik Nyh's git logo icon on Windows systems git-gui: Support a native Mac OS X application bundle git-gui: Refer to ourselves as "Git Gui" and not "git-gui" git-gui: Allow forced push into remote repository git-gui: Refactor Henrik Nyh's logo into its own procedure git-gui: Refactor about dialog code into its own module git-gui: Include our Git logo in the about dialog git-gui: Use progress meter in the status bar during index updates git-gui: Consolidate the Fetch and Push menus into a Remote menu git-gui: Bind Cmd-, to Preferences on Mac OS X git-gui: Shorten the staged/unstaged changes title bar text git-gui: Updated po strings based on current sources git-gui: Move load_config procedure below git-version selection git-gui: Refactor git-config --list parsing git-gui: Support LFs embedded in config file values git-gui: Change repository browser radio buttons to hyperlinks git-gui: Offer repository management features in menu bar git-gui: Fix bind errors when switching repository chooser panels git-gui: Disable the text widget in the repository chooser git-gui: Bind n/c/o accelerators in repository chooser git-gui: Ensure copyright message is correctly read as UTF-8 git-gui: Use proper Windows shortcuts instead of bat files git-gui: Support cloning Cygwin based work-dirs git-gui: Collapse $env(HOME) to ~/ in recent repositories on Windows git-gui: Honor a config.mak in git-gui's top level Fix 'push --all branch...' error handling Support 'push --dry-run' for rsync transport Support 'push --dry-run' for http transport git-gui: Paper bag fix the global config parsing Change 'Deltifying objects' to 'Compressing objects' Teach prune-packed to use the standard progress meter Stop displaying "Pack pack-$ID created." during git-gc Avoid scary errors about tagged trees/blobs during git-fetch Define compat version of mkdtemp for systems lacking it Improved const correctness for strings Use PRIuMAX instead of 'unsigned long long' in show-index git-gui: Make sure we get errors from git-update-index git-gui: Protect against bad translation strings git-gui: Allow users to set font weights to bold Reteach builtin-ls-remote to understand remotes git-gui: Bind Meta-T for "Stage To Commit" menu action git-fetch: Always fetch tags if the object they reference exists run-command: Support sending stderr to /dev/null rev-list: Introduce --quiet to avoid /dev/null redirects git-fetch: avoid local fetching from alternate (again) Handle broken vsnprintf implementations in strbuf Fix warning about bitfield in struct ref git-gui 0.9.0 Remove git-status from list of scripts as it is builtin Simon Hausmann (10): git-p4: Always call 'p4 sync ...' before submitting to Perforce. git-p4: After submission to p4 always synchronize from p4 again (into refs/remotes). Whether to rebase HEAD or not is still left as question to the end-user. git-p4: Cleanup; moved the code for getting a sorted list of p4 changes for a list of given depot paths into a standalone method. git-p4: Cleanup; moved the code to import a list of p4 changes using fast-import into a separate member function of P4Sync. git-p4: Cleanup; Turn self.revision into a function local variable (it's not used anywhere outside the function). git-p4: Cleanup; moved the code for the initial #head or revision import into a separate function, out of P4Sync.run. git-p4: Cleanup; moved the (duplicated) code for turning a branch into a git ref (for example foo -> refs/remotes/p4/<project>/foo) into a separate method. git-p4: Added support for automatically importing newly appearing perforce branches. git-p4: When skipping a patch as part of "git-p4 submit" make sure we correctly revert to the previous state of the files using "p4 revert". git-p4: Fix direct import from perforce after fetching changes through git from origin Simon Sasburg (1): Make mailsplit and mailinfo strip whitespace from the start of the input Stefan Sperling (1): Fix pool handling in git-svnimport to avoid memory leaks. Steffen Prohaska (16): git-gui: add directory git-gui is located in to PATH (on Windows) git-gui: set NO_MSGFMT to force using pure tcl replacement in msysgit git-gui: add mingw specific startup wrapper git-gui: offer a list of recent repositories on startup mergetool: use path to mergetool in config var mergetool.<tool>.path mergetool: add support for ECMerge mergetool: avoid misleading message "Resetting to default..." Fix comment in strbuf.h to use correct name strbuf_avail() push: mention --verbose option in documentation push: teach push to pass --verbose option to transport layer push: support pushing HEAD to real branch name add refname_match() push: use same rules as git-rev-parse to resolve refspecs refactor fetch's ref matching to use refname_match() Use is_absolute_path() in diff-lib.c, lockfile.c, setup.c, trace.c sha1_file.c: Fix size_t related printf format warnings Steven Grimm (3): Add a message explaining that automatic GC is about to start builtin-fetch: Add "-q" as a synonym for "--quiet" git-svn: Don't create a "master" branch every time rebase is run Steven Walter (1): Don't checkout the full tree if avoidable Theodore Ts'o (2): Make the list of common commands more exclusive Remove hint to use "git help -a" Thomas Harning (1): git-merge-ours: make it a builtin. Uwe Kleine-König (1): send-email: apply --suppress-from to S-o-b and cc-cmd Vineet Kumar (1): git-svn: add a show-externals command. Väinö Järvelä (1): Added a test for fetching remote tags when there is not tags. Wincent Colaiuta (21): Further clarify clean.requireForce changes Authenticate only once in git-send-email Refactor patch_update_cmd Teach builtin-add to pass multiple paths to git-add--interactive Add path-limiting to git-add--interactive Add "--patch" option to git-add--interactive Fix typo in draft 1.5.4 release notes Highlight keyboard shortcuts in git-add--interactive revert/cherry-pick: Allow overriding the help text by the calling Porcelain add -i: allow prefix highlighting for "Add untracked" as well. git-add -i: add help text for list-and-choose UI Silence iconv warnings on Leopard Teach "git add -i" to colorize whitespace errors Allow --no-verify to bypass commit-msg hook Documentation: fix --no-verify documentation for "git commit" Add tests for pre-commit and commit-msg hooks Interactive editor tests for commit-msg hook Style fixes for pre-commit hook tests Use "whitespace" consistently Documentation: minor grammar fix for "git apply" Fix "diff --check" whitespace detection Xudong Guan (2): Initial Chinese translation for git-gui git-gui: Added initial version of po/glossary/zh_cn.po brian m. carlson (1): git-gui: Reorder msgfmt command-line arguments İsmail Dönmez (1): gitweb: use Perl built-in utf8 function for UTF-8 decoding. Version v1.5.3.8; changes since v1.5.3.7: ----------------------------------------- David Symonds (1): Change from using email.com to example.com as example domain, as per RFC 2606. Eric Wong (2): git-svn: support for funky branch and project names over HTTP(S) git-svn: clarify the "Ignoring error from SVN" piece Jeff King (3): t9600: test cvsimport from CVS working tree clone: correctly report http_fetch errors git-send-email: avoid duplicate message-ids Jim Meyering (1): config.c:store_write_pair(): don't read the byte before a malloc'd buffer. Junio C Hamano (3): git grep shows the same hit repeatedly for unmerged paths git-am -i: report rewritten title GIT 1.5.3.8 Nguyễn Thái Ngọc Duy (3): Add missing inside_work_tree setting in setup_git_directory_gently Do check_repository_format() early Do check_repository_format() early (re-fix) Version v1.5.3.7; changes since v1.5.3.6: ----------------------------------------- Björn Steinbrink (3): git-commit.sh: Fix usage checks regarding paths given when they do not make sense t7005-editor.sh: Don't invoke real vi when it is in GIT_EXEC_PATH git-commit: Add tests for invalid usage of -a/--interactive with paths Brian Downing (2): config: correct core.loosecompression documentation config: clarify compression defaults J. Bruce Fields (7): git-remote.txt: fix example url user-manual: mention "..." in "Generating diffs", etc. Documentation: Fix references to deprecated commands user-manual: define "branch" and "working tree" at start user-manual: failed push to public repository user-manual: clarify language about "modifying" old commits user-manual: recovering from corruption Jan Hudec (1): Improve description of git-branch -d and -D in man page. Jeff King (5): send-email: add transfer encoding header with content-type Add basic cvsimport tests cvsimport: use rev-parse to support packed refs cvsimport: miscellaneous packed-ref fixes cvsimport: fix usage of cvsimport.module Johannes Schindelin (2): bundle create: keep symbolic refs' names instead of resolving them Replace the word 'update-cache' by 'update-index' everywhere Johannes Sixt (1): t7003-filter-branch: Fix test of a failing --msg-filter. Junio C Hamano (11): format-patch -s: add MIME encoding header if signer's name requires so test format-patch -s: make sure MIME content type is shown as needed ce_match_stat, run_diff_files: use symbolic constants for readability git-add: make the entry stat-clean after re-adding the same contents t2200: test more cases of "add -u" Make test scripts executable. Fix sample pre-commit hook git-checkout: describe detached head correctly scripts: do not get confused with HEAD in work tree Fix typo in t4008 test title GIT 1.5.3.7 Linus Torvalds (1): Fix rev-list when showing objects involving submodules Matthieu Moy (1): Doc fix for git-reflog: mention @{...} syntax, and <ref> in synopsys. Rémi Vanicat (1): Make GIT_INDEX_FILE apply to git-commit Steffen Prohaska (1): user-manual: Add section "Why bisecting merge commits can be harder ..." Version v1.5.3.6; changes since v1.5.3.5: ----------------------------------------- Alex Riesen (1): stop t1400 hiding errors in tests Ask Bjørn Hansen (1): When exec() fails include the failing command in the error message Benoit Sigoure (2): git-send-email: Change the prompt for the subject of the initial message. git-svn: prevent dcommitting if the index is dirty. Brad King (1): cvsexportcommit: fix for commits that do not have parents Christian Couder (1): for-each-ref: fix off by one read. David D. Kilzer (2): RelNotes-1.5.3.5: fix typo RelNotes-1.5.3.5: fix another typo David Symonds (1): Improve accuracy of check for presence of deflateBound. Eric Wong (2): git-svn: fix dcommit clobbering when committing a series of diffs git-svn: t9114: verify merge commit message in test Gerrit Pape (4): git-diff.txt: add section "output format" describing the diff formats git-cvsimport: really convert underscores in branch names to dots with -u git-daemon: fix remote port number in log entry git-mailsplit: with maildirs not only process cur/, but also new/ Jakub Narębski (1): gitweb: Update config file example for snapshot feature in gitweb/INSTALL Jeff King (2): git-branch: remove mention of non-existent '-b' option git-send-email: add charset header if we add encoded 'From' Jing Xue (1): replace reference to git-rm with git-reset in git-commit doc Johannes Schindelin (1): Add Documentation/CodingGuidelines Jonas Fonseca (3): Remove escaping of '|' in manpage option sections instaweb: Minor cleanups and fixes for potential problems Documentation: Fix man page breakage with DocBook XSL v1.72 Jonathan del Strother (1): Fixing path quoting in git-rebase Junio C Hamano (12): grep with unmerged index refresh_index_quietly(): express "optional" nature of index writing better Makefile: add missing dependency on wt-status.h Start preparing for 1.5.3.6 t/t3404: fix test for a bogus todo file. revert/cherry-pick: allow starting from dirty work tree. git-clean: honor core.excludesfile core.excludesfile clean-up Fix per-directory exclude handing for "git add" Update draft release notes for 1.5.3.6 grep -An -Bm: fix invocation of external grep command GIT 1.5.3.6 Kristian Høgsberg (1): Remove unecessary hard-coding of EDITOR=':' VISUAL=':' in some test suites. Marco Costalba (1): Remove a couple of duplicated include Mike Hommey (1): Delay pager setup in git blame Nicolas Pitre (3): print warning/error/fatal messages in one shot git-hash-object should honor config variables fix index-pack with packs >4GB containing deltas on 32-bit machines Ralf Wildenhues (3): git-clone.txt: Improve --depth description. Avoid a few unportable, needlessly nested "...`...". Fix sed string regex escaping in module_name. Sergei Organov (6): git-filter-branch.txt: fix a typo. git-format-patch.txt: fix explanation of an example. Documentation: quote commit messages consistently. SubmittingPatches: improve the 'Patch:' section of the checklist core-tutorial.txt: Fix argument mistake in an example. git-remote.txt: fix typo Shawn O. Pearce (2): Fix memory leak in traverse_commit_list Don't allow fast-import tree delta chains to exceed maximum depth Vincent Zanotti (1): gitweb: correct month in date display for atom feeds Wincent Colaiuta (2): Grammar fixes for gitattributes documentation Fix t9101 test failure caused by Subversion "auto-props" Version v1.5.3.5; changes since v1.5.3.4: ----------------------------------------- Alex Bennée (1): Ensure we add directories in the correct order Alex Riesen (1): Fix generation of perl/perl.mak Andrew Clausen (1): helpful error message when send-pack finds no refs in common. Aurelien Bompard (1): honor the http.sslVerify option in shell scripts Benoit Sigoure (1): Fix a small memory leak in builtin-add Björn Steinbrink (3): Fix --strategy parsing in git-rebase--interactive.sh git-rebase--interactive.sh: Don't pass a strategy to git-cherry-pick. git-rebase--interactive.sh: Make 3-way merge strategies work for -p. Brian Gernhardt (1): cvsserver: Use exit 1 instead of die when req_Root fails. Frank Lichtenheld (1): git-config: don't silently ignore options after --list Gerrit Pape (2): git-config: handle --file option with relative pathname properly git-config: print error message if the config file cannot be read Jean-Luc Herren (2): git add -i: Fix parsing of abbreviated hunk headers git add -i: Remove unused variables Jeff King (1): send-pack: respect '+' on wildcard refspecs Joakim Tjernlund (1): Improve receive-pack error message about funny ref creation Johannes Schindelin (5): clear_commit_marks(): avoid deep recursion rebase -i: use diff plumbing instead of porcelain Fix setup_git_directory_gently() with relative GIT_DIR & GIT_WORK_TREE fix filter-branch documentation filter-branch: update current branch when rewritten Julian Phillips (1): fast-import: Fix argument order to die in file_change_m Junio C Hamano (8): git-remote: fix "Use of uninitialized value in string ne" sha1_file.c: avoid gcc signed overflow warnings merge-recursive.c: mrtree in merge() is not used before set RelNotes-1.5.3.5: describe recent fixes Prevent send-pack from segfaulting (backport from 'master') git-merge: document but discourage the historical syntax Update GIT 1.5.3.5 Release Notes GIT 1.5.3.5 Lars Hjemli (1): Make merge-recursive honor diff.renamelimit Linus Torvalds (6): Fix embarrassing "git log --follow" bug Clean up "git log" format with DIFF_FORMAT_NO_OUTPUT git-blame shouldn't crash if run in an unmerged tree Avoid scary errors about tagged trees/blobs during git-fetch Fix directory scanner to correctly ignore files without d_type Fix diffcore-break total breakage Mathias Megyei (1): Do not remove distributed configure script Michael W. Olson (1): Documentation/git-cvsexportcommit.txt: s/mgs/msg/ in example Michele Ballabio (2): git-reflog: document --verbose git-archive: document --exec Nicolas Pitre (1): cherry-pick/revert: more compact user direction message Patrick Welche (1): Define NI_MAXSERV if not defined by operating system Ralf Wildenhues (1): gitk.txt: Fix markup. Robert Schiele (1): fixing output of non-fast-forward output of post-receive-email Sergei Organov (1): core-tutorial: Use new syntax for git-merge. Shawn O. Pearce (17): git-gui: Display message box when we cannot find git in $PATH git-gui: Handle starting on mapped shares under Cygwin git-gui: Ensure .git/info/exclude is honored in Cygwin workdirs git-gui: Allow gitk to be started on Cygwin with native Tcl/Tk git-gui: Don't crash when starting gitk from a browser session Whip post 1.5.3.4 maintenance series into shape. Correct typos in release notes for 1.5.3.5 Avoid 'expr index' on Mac OS X as it isn't supported Document additional 1.5.3.5 fixes in release notes Yet more 1.5.3.5 fixes mentioned in release notes Avoid invoking diff drivers during git-stash Further 1.5.3.5 fixes described in release notes Paper bag fix diff invocation in 'git stash show' git-gui: Correctly report failures from git-write-tree git-gui: Handle progress bars from newer gits git-gui: Don't display CR within console windows Describe more 1.5.3.5 fixes in release notes Simon Sasburg (1): git-gui: Avoid using bold text in entire gui for some fonts Steffen Prohaska (2): git-gui: accept versions containing text annotations, like 1.5.3.mingw.1 attr: fix segfault in gitattributes parsing code Version v1.5.3.4; changes since v1.5.3.3: ----------------------------------------- Andy Parkins (1): post-receive-hook: Remove the From field from the generated email header so that the pusher's name is used Carl Worth (1): Add test case for ls-files --with-tree Federico Mena Quintero (4): Say when --track is useful in the git-checkout docs. Add documentation for --track and --no-track to the git-branch docs. Note that git-branch will not automatically checkout the new branch Make git-pull complain and give advice when there is nothing to merge with Jari Aalto (1): git-remote: exit with non-zero status after detecting errors. Jean-Luc Herren (2): git-add--interactive: Allow Ctrl-D to exit git-add--interactive: Improve behavior on bogus input Jeff King (1): diffcore-rename: cache file deltas Johan Herland (1): Mention 'cpio' dependency in INSTALL Johannes Schindelin (2): rebase -i: squash should retain the authorship of the _first_ commit Fix typo in config.txt Junio C Hamano (5): Whip post 1.5.3.3 maintenance series into shape. git-commit: initialize TMP_INDEX just to be sure. for-each-ref: fix %(numparent) and %(parent) rename diff_free_filespec_data_large() to diff_free_filespec_blob() GIT 1.5.3.4 Keith Packard (1): Must not modify the_index.cache as it may be passed to realloc at some point. Miklos Vajna (1): git stash: document apply's --index switch Robert Schiele (1): the ar tool is called gar on some systems Steffen Prohaska (1): fixed link in documentation of diff-options Version v1.5.3.3; changes since v1.5.3.2: ----------------------------------------- Carlos Rica (1): Move make_cache_entry() from merge-recursive.c into read-cache.c Dan Nicholson (1): quiltimport: Skip non-existent patches David Brown (1): Detect exec bit in more cases. David Kastrup (1): Supplant the "while case ... break ;; esac" idiom Eric Wong (1): git-svn: don't attempt to spawn pager if we don't want one Glenn Rempe (1): Fixed minor typo in t/t9001-send-email.sh test command line. J. Bruce Fields (1): user-manual: don't assume refs are stored under .git/refs Jakub Narębski (2): gitweb: Remove parse_from_to_diffinfo code from git_patchset_body gitweb: No difftree output for trivial merge Jim Meyering (2): unexpected Make output (e.g. from --debug) causes build failure Do not over-quote the -f envelopesender value. Johannes Schindelin (1): apply: get rid of --index-info in favor of --build-fake-ancestor Johannes Sixt (2): gitattributes.txt: Remove a duplicated paragraph about 'ident' and 'crlf' interaction. gitattributes.txt: Be more to the point in the filter driver description. Junio C Hamano (3): Documentation/git-lost-found.txt: drop unnecessarily duplicated name. Mergetool generating blank files (1.5.3) GIT 1.5.3.3 Linus Torvalds (1): Fix revision log diff setup, avoid unnecessary diff generation Matt Kraai (2): Move the paragraph specifying where the .idx and .pack files should be Conjugate "search" correctly in the git-prune-packed man page. Michael Smith (1): user-manual: Explain what submodules are good for. Miklos Vajna (2): User Manual: add a chapter for submodules git-bundle: fix commandline examples in the manpage Randy Dunlap (1): core-tutorial: correct URL Shawn Bohrer (1): Fix spelling of overridden in documentation Theodore Ts'o (2): mergetool: fix emerge when running in a subdirectory mergetool: Fix typo in options passed to kdiff3 Version v1.5.3.2; changes since v1.5.3.1: ----------------------------------------- Alexandre Julliard (1): hooks--update: Explicitly check for all zeros for a deleted ref. Benoit Sigoure (1): Add test to check recent fix to "git add -u" Carlos Rica (1): git-tag -s must fail if gpg cannot sign the tag. David Kastrup (1): git-send-email.perl: Add angle brackets to In-Reply-To if necessary Dmitry V. Levin (2): Makefile: Add cache-tree.h to the headers list git-commit: Disallow amend if it is going to produce an empty non-merge commit Eric Wong (3): git-svn: fix "Malformed network data" with svn:// servers git-svn: understand grafts when doing dcommit Documentation/git-svn: updated design philosophy notes Gerrit Pape (2): git-gui: lib/index.tcl: handle files with % in the filename properly git-clone: improve error message if curl program is missing or not executable J. Bruce Fields (13): user-manual: adjust section levels in "git internals" user-manual: move object format details to hacking-git chapter user-manual: rename "git internals" to "git concepts" user-manual: create new "low-level git operations" chapter user-manual: rewrite index discussion user-manual: reorder commit, blob, tree discussion user-manual: rewrite object database discussion user-manual: move packfile and dangling object discussion user-manual: fix introduction to packfiles user-manual: todo updates and cleanup documentation: replace Discussion section by link to user-manual chapter core-tutorial: minor cleanup git-apply: fix whitespace stripping Jari Aalto (1): Documentation/git-archive.txt: a couple of clarifications. Jean-Luc Herren (1): stash: end index commit log with a newline Jeff King (1): git-push: documentation and tests for pushing only branches Johannes Schindelin (2): revision walker: --cherry-pick is a limited operation apply --index-info: fall back to current index for mode changes Junio C Hamano (13): git-apply: do not read past the end of buffer git-add -u: do not barf on type changes git-format-patch --in-reply-to: accept <message@id> with angle brackets diff --no-index: do not forget to run diff_setup_done() Documentation/git-config.txt: AsciiDoc tweak to avoid leading dot Split grep arguments in a way that does not requires to add /dev/null. git-sh-setup: typofix in comments send-email: make message-id generation a bit more robust git-commit: Allow partial commit of file removal. git-commit: partial commit of paths only removed from the index Document ls-files --with-tree=<tree-ish> t/t4014: test "am -3" with mode-only change. GIT 1.5.3.2 Linus Torvalds (1): Fix the rename detection limit checking Matthias Urlichs (1): git-svnimport: Use separate arguments in the pipe for git-rev-parse Michael Smith (1): (cvs|svn)import: Ask git-tag to overwrite old tags. Michele Ballabio (2): git-gui: show unstaged symlinks in diff viewer git-gui: handle "deleted symlink" diff marker Mike Ralphson (1): Documentation / grammer nit Nicolas Pitre (1): fix doc for --compression argument to pack-objects Pierre Habouzit (1): Fix lapsus in builtin-apply.c Ramsay Jones (1): Fix a test failure (t9500-*.sh) on cygwin Shawn O. Pearce (17): git-gui: Correct starting of git-remote to handle -w option git-gui: Fix detaching current branch during checkout git-gui: Properly set the state of "Stage/Unstage Hunk" action Don't allow contrib/workdir/git-new-workdir to trash existing dirs Cleanup unnecessary file modifications in t1400-update-ref Include a git-push example for creating a remote branch git-gui: Disable Tk send in all git-gui sessions git-gui: Avoid use of libdir in Makefile git-gui: Assume untracked directories are Git submodules git-gui: Trim trailing slashes from untracked submodule names Make --no-thin the default in git-push to save server resources git-gui: Don't delete send on Windows as it doesn't exist git-gui: Make backporting changes from i18n version easier git-gui: Font chooser to handle a large number of font families git-gui: Provide 'uninstall' Makefile target to undo an installation git-gui: Paper bag fix "Commit->Revert" format arguments git-gui: Disable native platform text selection in "lists" Sven Verdoolaege (1): git-diff: don't squelch the new SHA1 in submodule diffs Ulrik Sverdrup (1): Remove duplicate note about removing commits with git-filter-branch Väinö Järvelä (1): Fixed update-hook example allow-users format. Version v1.5.3.1; changes since v1.5.3: --------------------------------------- Junio C Hamano (2): Typofix: 1.5.3 release notes GIT 1.5.3.1: obsolete git-p4 in RPM spec file. Version v1.5.3; changes since v1.5.3-rc7: ----------------------------------------- Alex Riesen (1): Temporary fix for stack smashing in mailinfo Carlos Rica (1): git-tag: Fix -l option to use better shell style globs. Eric Wong (1): git-svn: fix dcommit clobbering upstream when committing multiple changes Giuseppe Bilotta (2): git-filter-branch: more detailed USAGE git-filter-branch: document --original option Joe Perches (1): git-send-email --cc-cmd Johannes Schindelin (5): completion: also complete git-log's --left-right and --cherry-pick option filter-branch: fix remnants of old syntax in documentation rebase -i: mention the option to split commits in the man page filter-branch: provide the convenience functions also for commit filters filter-branch: introduce convenience function "skip_commit" Johannes Sixt (1): rebase -m: Fix incorrect short-logs of already applied commits. Junio C Hamano (13): git-daemon(1): assorted improvements. ls-files --error-unmatch: do not barf if the same pattern is given twice. Makefile: do not allow gnu make to remove test-*.o files filter-branch: make sure orig_namespace ends with a single slash. git-init: autodetect core.symlinks Make "git-log --" without paths behave the same as "git-log" without -- Hopefully the final update to draft release notes for 1.5.3. git-svn: Protect against "diff.color = true". git-diff: resurrect the traditional empty "diff --git" behaviour Avoid one-or-more (\+) non BRE in sed scripts. Documentation: minor AsciiDoc mark-up fixes. Update my contact address as the maintainer. GIT 1.5.3 Luben Tuikov (1): URL: allow port specification in ssh:// URLs Miles Bader (1): Make git-archimport log entries more consistent Nicolas Pitre (1): fix same sized delta logic Paul Mackerras (1): gitk: Fix bug causing undefined variable error when cherry-picking Robin Rosenberg (1): Mention -m as an abbreviation for --merge Shawn O. Pearce (1): Teach bash about completing arguments for git-tag Tom Clarke (1): Fixing comment in merge strategies Version v1.5.3-rc7; changes since v1.5.3-rc6: --------------------------------------------- Alex Riesen (1): Fix git-remote for ActiveState Perl Alexandre Julliard (1): git.el: Avoid a lisp error when there's no current branch (detached HEAD). Brian Hetro (5): Documentation: For consistency, use CVS instead of cvs. Documentation: Correct various misspellings and typos. Make usage documentation for git-am consistent. Make usage documentation for git-add consistent. When nothing to git-commit, honor the git-status color setting. David Kastrup (4): diff-delta.c: Fix broken skip calculation. Documentation/user-manual.txt: fix a few omissions of gitlink commands. Documentation/user-manual.txt: fix a few omissions of gitlink commands. git-svn.txt: fix an obvious misspelling. David Kågedal (1): git.el: Added colors for dark background Eric Wong (2): git-svn: update documentation with CAVEATS section git-svn: dcommit prints out the URL to be committed to J. Bruce Fields (5): user-manual: edit "ignoring files" for conciseness user-manual: minor editing for conciseness user-manual: introduce the word "commit" earlier user-manual: use pithier example commit user-manual: fix incorrect header level Jakub Narębski (1): gitweb: Fix escaping HTML of project owner in 'projects_list' and 'summary' views Jari Aalto (1): git-tag(1): Remove duplicate text Johannes Schindelin (2): rebase -i: fix squashing corner case name-rev: Fix non-shortest description Junio C Hamano (11): blame: check return value from read_sha1_file() pack-objects: check return value from read_sha1_file() RelNotes draft for 1.5.3 update. Fix initialization of a bare repository git --bare cmd: do not unconditionally nuke GIT_DIR git-merge: do up-to-date check also for all strategies Porcelain level "log" family should recurse when diffing. "format-patch --root rev" is the way to show everything. Documentation/git-diff: A..B and A...B cannot take tree-ishes format-patch documentation: reword to hint "--root <one-commit>" more clearly GIT 1.5.3-rc7 Linus Torvalds (1): Fix racy-git handling in git-write-tree. Mike Hommey (1): Describe two-dot and three-dot notation for diff endpoints. Petr Baudis (4): gitweb: Fix searchbox positioning gitweb: Lift any characters restriction on searched strings git-add: Make the "tried to add ignored file" error message less confusing git-add: Make the filename globbing note a bit clearer Quy Tonthat (1): Fix breakage in git-rev-list.txt René Scharfe (1): Documentation: update tar.umask default Sean Estabrooks (1): Reset terminal attributes when terminating git send-email Shawn O. Pearce (13): git-gui: Fix window manager problems on ion3 git-gui: Allow git-merge to use branch names in conflict markers git-gui: Paper bag fix "Stage Hunk For Commit" in diff context menu git-gui: Fix "unoptimized loading" to not cause git-gui to crash Fix new-workdir (again) to work on bare repositories Suggest unsetting core.bare when using new-workdir on a bare repository Update bash completion with new 1.5.3 command line options Teach bash to complete ref arguments to git-describe Teach bash about git-submodule and its subcommands git-gui: Refactor diff pane popup support for future improvements git-gui: Do not offer to stage three-way diff hunks into the index git-gui: Correct 'git gui blame' in a subdirectory Don't segfault if we failed to inflate a packed delta Simon Hausmann (2): git-p4: Make 'git-p4 branches' work after an initial clone with git clone from an origin-updated repository. git-p4: Fix warnings about non-existant refs/remotes/p4/HEAD ref when running git-p4 sync the first time after a git clone. Stefan Sperling (1): Document -u option in git-svnimport man page martin f. krafft (2): git-svn init/clone --stdlayout option to default-init trunk/tags/branches Install man3 manpages to $PREFIX/share/man/man3 even for site installs Version v1.5.3-rc6; changes since v1.5.3-rc5: --------------------------------------------- Alex Riesen (2): Fix whitespace in "Format of STDIN stream" of fast-import Avoid using va_copy in fast-import: it seems to be unportable. Arjen Laarhoven (2): gitk: Make the date/time display configurable t1301-shared-repo.sh: fix 'stat' portability issue Brian Downing (1): Clarify actual behavior of 'git add' and ignored files Brian Gernhardt (1): Minor clarifications to git-filter-branch usage and doc Dave Watson (1): Fix misspelling of 'suppress' in docs Eric Wong (1): git-svn: fix log with single revision against a non-HEAD branch Johannes Sixt (1): gitk: Handle 'copy from' and 'copy to' in diff headers. Junio C Hamano (10): Fix "git add -u" data corruption. GIT 1.5.2.5 Fix read-tree merging more than 3 trees using 3-way merge Update documentation links for older releases. git-clone: allow --bare clone Documentation/git-rebase: fix an example Clean-up read-tree error condition. fast-import pull request git clone: do not issue warning while cloning locally across filesystems GIT 1.5.3-rc6 Lars Hjemli (1): git-submodule: re-enable 'status' as the default subcommand Linus Torvalds (2): Make thin-pack generation subproject aware. Take binary diffs into account for "git rebase" Lukas Sandström (1): Add the word reflog to Documentation/config.txt:core.logAllRefUpdates Mark Levedahl (1): git-completion.bash - add support for git-bundle Matthieu Moy (1): Add and document a global --no-pager option for git. Mike Hommey (1): Clarify commit-tree documentation Nicolas Pitre (1): pack-objects: remove bogus arguments to delta_cacheable() Paul Mackerras (3): gitk: Fix warning when removing a branch gitk: Fix bug in fix for warning when removing a branch gitk: Add a window to list branches, tags and other references René Scharfe (1): path-list.c: always free strdup'ed paths Salikh Zakirov (1): git-add -u paths... now works from subdirectory Sean Estabrooks (1): Fix small typo in git send-email man page. Shawn O. Pearce (11): git-gui: Avoid Tcl error in popup menu on diff viewer Actually allow TAG_FIXUP branches in fast-import Use handy ALLOC_GROW macro in fast-import when possible Teach fast-import to ignore lines starting with '#' Make trailing LF following fast-import `data` commands optional Make trailing LF optional for all fast-import commands Allow frontends to bidirectionally communicate with fast-import Generate crash reports on die in fast-import Include recent command history in fast-import crash reports Correct documentation of 'reflog show' to explain it shows HEAD Don't allow combination of -g and --reverse as it doesn't work Steffen Prohaska (1): gitk: Let user easily specify lines of context in diff view Steven Grimm (1): Document what the stage numbers in the :$n:path syntax mean. Sven Verdoolaege (1): git-apply: apply submodule changes Väinö Järvelä (1): git-gui: Added support for OS X right click Version v1.5.3-rc5; changes since v1.5.3-rc4: --------------------------------------------- Adam Roben (1): Documentation/git-svn: how to clone a git-svn-created repository Alberto Bertogli (1): Allow git-svnimport to take "" as the trunk directory. Alex Riesen (3): Fix filehandle leak in "git branch -D" gitk: Continue and show error message in new repos gitk: Show an error and exit if no .git could be found Alexandre Julliard (3): git.el: Add support for interactive diffs. git.el: Always set the current directory in the git-diff buffer. git-add: Add support for --refresh option. Brian Downing (2): cvsserver: Fix for work trees Add read_cache to builtin-check-attr Brian Gernhardt (1): Fix t5701-clone-local for white space from wc Carlos Rica (3): Make git tag a builtin. builtin-tag.c: Fix two memory leaks and minor notation changes. Make verify-tag a builtin. David Kastrup (6): Documentation/git-commit.txt: correct bad list formatting. Add support for an info version of the user manual INSTALL: explain info installation and dependencies. Documentation/Makefile: remove cmd-list.made before redirecting to it. git-sh-setup.sh: make GIT_DIR absolute Add a test for git-commit being confused by relative GIT_DIR Gerrit Pape (1): git-am: initialize variable $resume on startup J. Bruce Fields (4): user-manual: update for new default --track behavior user-manual: mention git-gui documentation: use the word "index" in the git-add manual page documentation: use the word "index" in the git-commit man page Jakub Narębski (1): gitweb: Fix handling of $file_name in feed generation Johannes Schindelin (4): launch_editor(): Heed GIT_EDITOR and core.editor settings Teach "git stripspace" the --strip-comments option checkout-index needs a working tree Reinstate the old behaviour when GIT_DIR is set and GIT_WORK_TREE is unset Junio C Hamano (24): git-clone: aggressively optimize local clone behaviour. git-completion: add "git stash" INSTALL: add warning on docbook-xsl 1.72 and 1.73 unpack-trees.c: assume submodules are clean during check-out Fix install-doc-quick target user-manual: mention git stash setup.c:verify_non_filename(): don't die unnecessarily while disambiguating pager: find out pager setting from configuration Fix "make GZ=1 quick-install-doc" Reorder the list of commands in the manual. Fix formatting of git-blame documentation. Fix an illustration in git-rev-parse.txt tweak manpage formatting Revert "tweak manpage formatting" Optimize "diff --cached" performance. allow git-bundle to create bottomless bundle allow git-bundle to create bottomless bundle t3404: fix "fake-editor" builtin-bundle create - use lock_file git-diff: squelch "empty" diffs merge-recursive: do not rudely die on binary merge attr.c: refactoring attr.c: read .gitattributes from index as well. GIT 1.5.3-rc5 Jyotirmoy Bhattacharya (1): Fixed git-push manpage Linus Torvalds (8): connect: accept file:// URL scheme apply: remove directory that becomes empty by renaming the last file away Start moving unpack-trees to "struct tree_desc" Fix "git commit directory/" performance anomaly Move old index entry removal from "unpack_trees()" into the individual functions Optimize the common cases of git-read-tree Optimize the two-way merge of git-read-tree too Optimize the three-way merge of git-read-tree Luiz Fernando N. Capitulino (3): Avoid ambiguous error message if pack.idx header is wrong Introduces xmkstemp() Use xmkstemp() instead of mkstemp() Marco Costalba (1): Add --log-size to git log to print message size Mark Levedahl (5): builtin-bundle.c - use stream buffered input for rev-list builtin-bundle - use buffered reads for bundle header gitk: Enable selected patch text on Windows gitk: Handle MouseWheel events on Windows t3902 - skip test if file system doesn't support HT in names Paul Mackerras (4): gitk: Add a context menu for file list entries gitk: Fix bug causing the "can't unset idinlist(...)" error gitk: Fix bug introduced in commit 67a4f1a7 gitk: Fix bug causing Tcl error when updating graph Randal L. Schwartz (1): add "test-absolute-path" to .gitignore Reece H. Dunn (1): git-p4: Fix the sorting of changelists when cloning a Perforce repository. René Scharfe (2): diff: don't run pager if user asked for a diff style exit code diff: squelch empty diffs even more Shawn O. Pearce (4): Document GIT_SSH environment variable alongside other variables Teach update-paranoid how to store ACLs organized by groups Teach the update-paranoid to look at file differences Use the empty tree for base diff in paranoid-update on new branches Simon Hausmann (2): git-p4: Fix support for symlinks. git-p4: Fix git-p4 submit to include only changed files in the perforce submit template. Steffen Prohaska (1): Improved hint on how to set identity Steve Hoelzer (2): git-stash documentation: stash numbering starts at zero, not one git-stash documentation: add missing backtick Steven Grimm (1): Add a note about the index being updated by git-status in some cases Uwe Kleine-König (3): send-email: teach sanitize_address to do rfc2047 quoting send-email: rfc822 forbids using <address@domain> without a non-empty "phrase" send-email: get all the quoting of realnames right Version v1.5.3-rc4; changes since v1.5.3-rc3: --------------------------------------------- Alex Riesen (4): Add an option to specify a file to config builtin Add a test for git-config --file Make verse of git-config manpage more readable Hack git-add--interactive to make it work with ActiveState Perl Alexandre Julliard (2): git.el: Avoid using ewoc-set-data for compatibility with Emacs 21. git.el: Take into account the core.excludesfile config option. Bradford C. Smith (2): fully resolve symlinks when creating lockfiles use lockfile.c routines in git_commit_set_multivar() Brian Gernhardt (1): Document commit.template configuration variable. Christian Couder (1): rev-list --bisect: fix allocation of "int*" instead of "int". Christian Stimming (1): git-gui: Unify wording to say "to stage" instead of "to add" David Kastrup (3): Makefile: use $(FIND) instead of find git-sh-setup.sh: make GIT_EDITOR/core.editor/VISUAL/EDITOR accept commands When generating manpages, delete outdated targets first. David Soria Parra (1): Documentation/gitattributes.txt: typofix David Symonds (1): Fix documentation for core.gitproxy to reflect code Han-Wen Nienhuys (2): Sort output of "p4 change" in incremental import before further Fix style nit in Python slicing. Jakub Narębski (3): gitweb: Show submodule entries in the 'tree' view gitweb: Simplify 'opt' parameter validation, add "no merges" feeds gitweb: Allow for multivalued parameters passed to href subroutine Jeff King (2): Documentation/git-diff: remove -r from --name-status example git-diff: turn on recursion by default Jens Axboe (1): --base-path-relaxed option Johannes Schindelin (11): rebase -i: fix overzealous output redirection rebase -i: fix interrupted squashing white space fixes in setup.c Add is_absolute_path() and make_absolute_path() Add functions get_relative_cwd() and is_inside_dir() Add set_git_dir() function Clean up work-tree handling get_relative_cwd(): clarify why it handles dir == NULL rebase -i: ignore patches that are already in the upstream rebase -i: fix for optional [branch] parameter read-tree: remove unnecessary call to setup_git_directory() Julian Phillips (1): git-gui: Handle git versions of the form n.n.n.GIT Junio C Hamano (23): Make sure git-stash works from subdirectory. gitweb: fix broken snapshot git-submodule module_name: avoid using unwieldy "value_regexp" feature. git-submodule: remove redundant call to git-describe When locking in a symlinked repository, try to lock the original. git_mkstemp(): be careful not to overflow the path buffer. Update description of -z option. git-stash: do not remove a ref by hand. Add test for symlinked configuration file updates. Fix git-stash apply --index git-stash apply --index: optimize postprocessing log_ref_write() -- do not chomp reflog message at the first LF symbolic-ref, update-ref: do not refuse reflog message with LF rebase: try not to munge commit log message add_file_to_index: skip rehashing if the cached stat already matches Unset GIT_EDITOR while running tests. git.c: execution path git-commit.sh: Permit the --amend message to be given with -m/-c/-C/-F. RelNotes 1.5.3 updates before -rc4 Fix work-tree related breakages gitweb: do not choke on recursive symlink Fix bogus use of printf in t3700 test GIT 1.5.3-rc4 Kristian Høgsberg (1): Add test case for basic commit functionality. Mark Levedahl (1): gitk: Ignore ctrl-z as EOF on windows Nanako Shiraishi (1): git-stash: Make sure reflog is created for refs/stash Nguyễn Thái Ngọc Duy (1): git-write-tree should not crash if prefix does not exist Paul Mackerras (4): gitk: Show changes in index and changes in working directory separately gitk: Make the fake commit for the index changes green rather than magenta gitk: Wait for the window to become visible after creating it gitk: Fix bugs in the Find function Robert Ewald (1): git-svn: Translate invalid characters in refname Robert Schiele (2): add option to find zlib in custom path make the name of the library directory a config option Robin Rosenberg (1): Document --unified/-U option Seth Falcon (1): Rename git-rebase interactive buffer: todo => git-rebase-todo Shawn O. Pearce (49): git-gui: Skip -dirty suffix on core git versions git-gui: Brown paper bag "dirty git version fix" git-gui: Always disable the Tcl EOF character when reading git-gui: Delay searching for 'nice' until its really asked for git-gui: Don't crash in ask_popup if we haven't mapped main window yet git-gui: Change our initial GC hint to be an estimate git-gui: Let the user continue even if we cannot understand git version git-gui: Delay the GC hint until after we are running git-gui: Move feature option selection before GIT_DIR init git-gui: Allow blame/browser subcommands on bare repositories git-gui: Allow browser subcommand to start in subdirectory git-gui: Allow users to browse any branch, not just the current one git-gui: Clarify the visualize history menu options git-gui: Increase the default height of the revision picker git-gui: Convert merge dialog to use class system Don't offer my special Tools/Migrate hack unless in multicommit git-gui: Bind Ctrl/Cmd-M to merge action git-gui: Avoid unnecessary global statements when possible git-gui: Translate standard encoding names to Tcl ones git-gui: Don't show blame tooltips that we have no data for git-gui: Completely remove support for creating octopus merges git-gui: Automatically backup the user's commit buffer git-gui: Save the merge base during checkout_op processing git-gui: Factor out common fast-forward merge case git-gui: Simplify error case for unsupported merge types git-gui: Skip unnecessary read-tree work during checkout git-gui: Internally allow fetch without storing for future pull support git-gui: Completely remove my Tools/Migrate hack git-gui: Fix unnecessary fast-forward during checkout gitk: Bind keyboard actions to the command key on Mac OS git-gui: Clarify meaning of add tracked menu option git-gui: Paper bag fix quitting crash after commit git-gui: Refactor diff popup into a procedure to ease i18n work git-gui: Refactor current branch menu items to make i18n easier git-gui: Avoid unnecessary symbolic-ref call during checkout git-gui: Save remote urls obtained from config/remotes setup git-gui: Display commit/tag/remote info in tooltip of revision picker git-gui: Show ref last update times in revision chooser tooltips git-gui: Replace merge dialog with our revision picker widget git-gui: Cleanup bindings within merge dialog git-gui: Format tracking branch merges as though they were pulls git-gui: Remove usernames from absolute SSH urls during merging git-gui: Don't kill modified commit message buffer with merge templates git-gui: Honor core.excludesfile when listing extra files git-gui: Use progress bar while resetting/aborting files git-gui: Make sure remotes are loaded when picking revisions git-gui: Don't offer to stage hunks from untracked files git-gui: Use more modern looking icons in the tree browser git-gui: Minor refactoring of merge command line in merge support Simon Hausmann (1): git-p4: Fix p4 user cache population on Windows. Steve Hoelzer (1): Try to be consistent with capitalization in the documentation Thomas Schwinge (2): Don't rely on unspecified behavior Support building on GNU/Hurd Version v1.5.3-rc3; changes since v1.5.3-rc2: --------------------------------------------- Adam Roben (1): Add GIT_EDITOR environment and core.editor configuration variables Alexandre Julliard (2): git.el: Support for incremental status updates. git.el: Pass an explicit argument to enable smerge-mode. Carlos Rica (1): Rename read_pipe() with read_fd() and make its buffer nul-terminated. David Kastrup (2): contrib/emacs/Makefile: Also install .el files. Documentation/gitignore.txt: Fix the seriously misleading priority explanation Eric Wong (1): git-svn: fix commiting renames over DAV with funky file names Francis Moreau (1): Fix git-branch documentation when using remote refs Jakub Narębski (3): gitweb cleanup: Move @diff_opts declaration earlier gitweb: Fix support for legacy gitweb config for snapshots gitweb: More detailed error messages for snapshot format Jim Meyering (1): pretty-options.txt: tiny doc fix Johannes Schindelin (11): filter-branch: get rid of "set -e" rebase -i: call editor just once for a multi-squash fsck --lost-found: write blob's contents, not their SHA-1 mailinfo: fix 'fatal: cannot convert from utf-8 to utf-8' Shut "git rebase -i" up when no --verbose was given rebase -i: exchange all "if [ .. ]" by "if test .." filter-branch: Big syntax change; support rewriting multiple refs Teach revision machinery about --no-walk git log -g: Complain, but do not fail, when no reflogs are there Teach approxidate() to understand "never" git am: skip pine's internal folder data Julian Phillips (1): Force listingblocks to be monospaced in manpages Junio C Hamano (8): Update INSTALL Do not expect unlink(2) to fail on a directory. Fix VISUAL/EDITOR preference order in Documentation/config.txt. Synonyms: -i == --regexp-ignore-case, -E == --extended-regexp Mark user-manual as UTF-8 user-manual: fix typolets. t9200: Be careful when checking CVS/Entries GIT 1.5.3-rc3 Kumar Gala (1): send-email: Update regex parsing for pine aliases Linus Torvalds (2): Do a better job at guessing unknown character sets Fix up duplicate parents removal Marco Costalba (1): Avoid to duplicate commit message when is not encoded Matt McCutchen (1): gitweb: snapshot cleanups & support for offering multiple formats Nanako Shiraishi (1): Document "git stash message..." René Scharfe (2): filter-branch: fix dash complaining about "Missing '))'" cleanup unpack-trees.c: shrink struct tree_entry_list Richard MUSIL (1): git-svn: Minimalistic patch which allows svn usernames with space(s). Robin Rosenberg (1): cvsexportcommit: avoid racy CVS problem. Scott Lamb (2): git-p4: use subprocess in p4CmdList git-p4: input to "p4 files" by stdin instead of arguments Simon Hausmann (3): git-p4: Cleanup, make listExistingP4Branches a global function for later use. git-p4: Fix upstream branch detection for submit/rebase with multiple branches. git-p4: Cleanup, used common function for listing imported p4 branches Steven Grimm (2): Document how to tell git to not launch a pager Teach git-commit about commit message templates. Sven Verdoolaege (1): unpack-trees.c: assume submodules are clean during check-out Version v1.5.3-rc2; changes since v1.5.3-rc1: --------------------------------------------- Alex Riesen (1): Fix git-rebase -i to allow squashing of fast-forwardable commits Emil Medve (1): Use $(RM) in Makefiles instead of 'rm -f' Eric Wong (1): git-svn: remove leading slashes from fetch lines in the generate config Greg KH (1): make git-send-email.perl handle email addresses with no names when Email::Valid is present Jakub Narębski (3): Update git-merge documentation. Document long options '--message=<msg>' and '--no-commit' Document git commit --untracked-files and --verbose Jim Meyering (1): git-cvsserver: detect/diagnose write failure, etc. Josh Triplett (1): Remove useless uses of cat, and replace with filename arguments Junio C Hamano (7): Make show_rfc2822_date() just another date output format. Wire new date formats to --date=<format> parser. Document new --date=<format> Add contrib/stats/mailmap.pl script Update .mailmap Documentation/git-commit-tree: remove description of a nonexistent limitation GIT v1.5.3-rc2 Marius Storm-Olsen (1): Fix git-p4 on Windows to not use the Posix sysconf function. Matthieu Moy (1): More permissive "git-rm --cached" behavior without -f. Nicolas Pitre (1): Pack-objects: properly initialize the depth value Paul Mackerras (1): gitk: Fix bug introduced by previous commit Peter Hagervall (1): Make every builtin-*.c file #include "builtin.h" Robin Rosenberg (1): Support output ISO 8601 format dates Sean Estabrooks (3): Remove "WITH_P4IMPORT" knob from the Makefile Remove p4 rpm from git.spec.in. Demote git-p4import to contrib status. Shawn O. Pearce (2): Correct trivial typo in fast-import documentation Teach fast-import to recursively copy files/directories Stephen Rothwell (1): send-email: discard blank around address in extract_valid_address as well. Sven Verdoolaege (1): lockfile.c: schedule remove_lock_file only once. Version v1.5.3-rc1; changes since v1.5.3-rc0: --------------------------------------------- Alecs King (1): fix remote.origin.url in tutorial.txt Alex Riesen (4): Handle missing prefix for "Subject:" as if no prefix given Handle format.subjectprefix for every command which accepts --pretty Fix t5516 to create test repo without hooks Add -v|--verbose to git remote to show remote url Andrew Ruder (2): Remove USE_PAGER from git-pickaxe and git-annotate Add urls.txt to git-clone man page Andy Parkins (1): user-manual: grammar and style fixes Brian Downing (10): pack-objects: Prefer shallower deltas if the size is equal gitk: Fix for tree view ending in nested directories Pack information tool Correct shebang line for contrib/stats/packinfo.pl Don't try to delta if target is much smaller than source Support fetching the memory usage of a delta index Add functions for parsing integers with size suffixes Add pack-objects window memory usage limit Add --window-memory option to git-repack Add documentation for --window-memory, pack.windowMemory Brian Gernhardt (1): Add core.pager config variable. CJ van den Berg (1): git-submodule: Fix two instances of the same typo Carlos Rica (5): t7004: Skip tests for signed tags in an old version of gpg. t0030: Remove repeated instructions and add missing && t0030: Add tests with consecutive text lines and others with spaces added. t7004: Add tests for the git tag -n option. Function stripspace now gets a buffer instead file descriptors. Daniel Barkalow (2): Add allocation and freeing functions for struct refs Some cosmetic changes to remote library David Kastrup (1): Add missing functions to contrib/emacs/vc-git.el Eric Wong (1): git-svn: fix blocking with svn:// servers after do_switch Frank Lichtenheld (1): cvsserver: always initialize state in argsplit() Gerrit Pape (2): git-gui: properly popup error if gitk should be started but is not installed git-commit: don't add multiple Signed-off-by: from the same identity J. Bruce Fields (2): tutorial: Fix typo user-manual: more explanation of push and pull usage James Bowes (1): stash: allow running from a subdirectory Jim Meyering (1): Don't smash stack when $GIT_ALTERNATE_OBJECT_DIRECTORIES is too long Johannes Schindelin (24): diff --no-index: fix --name-status with added files glossary: add 'reflog' Document git-filter-branch Add diff-option --ext-diff filter-branch: add a test for the commit removal example filter-branch: make output nicer filter-branch: a few more touch ups to the man page filter-branch documentation: clarify which filters are eval'ed filter-branch: fail gracefully when a filter fails Future-proof source for changes in xdemitconf_t Teach git-stash to "apply --index" Enable "git rerere" by the config variable rerere.enabled git-branch: default to --track Fix "apply --reverse" with regard to whitespace branch.autosetupmerge: allow boolean values, or "all" rebase -i: handle --continue more like non-interactive rebase rebase -i: actually show the diffstat when being verbose rebase -i: remember the settings of -v, -s and -p when interrupted rebase -i: put a nice warning into the todo list rerere: record resolution even if file is not in merge base Fix core.sharedRepository = 2 Fix --cherry-pick with given paths Add for_each_remote() function, and extend remote_find_tracking() branch --track: code cleanup and saner handling of local branches Johannes Sixt (3): filter-branch: Avoid an error message in the map function. filter-branch documentation: some more touch-ups. Allow rebase to run if upstream is completely merged Jonas Fonseca (1): fsck --lost-found writes to subdirectories in .git/lost-found/ Junio C Hamano (22): Update draft Release Notes for 1.5.3 Update reflog message created for stashes Do not check if getcwd() result begins with a slash. Fix git-stash(1) markup. git-stash: allow more descriptive reminder message when saving Introduce diff_filespec_is_binary() Per-path attribute based hunk header selection. Fix configuration syntax to specify customized hunk header patterns. diff: honor binariness specified in attributes gitweb: make repeated calls to git_get_project_owner() bearable diff.c: make built-in hunk header pattern a separate table git-gui: use "blame -w -C -C" for "where did it come from, originally?" git-stash: try reusing cached stat info as much as possible Fix merge-one-file for our-side-added/our-side-removed cases Document custom hunk header selection revision.c: remove duplicated parents after history simplification Revert 88494423 (removal of duplicate parents in the output codepath) Re-code builtin-branch.c in UTF-8 Teach read-tree 2-way merge to ignore intermediate symlinks GIT 1.5.2.4 Update list of older git docs GIT v1.5.3-rc1 Lars Hjemli (1): git-submodule(1): update description and key names Marcus Fritzsch (1): Fixed a formulation mistake in Documentation/user-manual.txt Matt Kraai (3): Prefer EMAIL to username@hostname. Change "added.moved or removed" to "added, moved or removed" in Add [verse] to the SYNOPSIS section of git-submodule.txt. Matt McCutchen (3): gitweb: make search form generate pathinfo-style URLs gitweb: make "No commits" in project list gray, not bold green Makefile: rebuild git.o on version change, clean up git$X flags Matthias Lederhofer (3): git-init: set core.worktree if GIT_WORK_TREE is specified git-clone: split up long &&-command-chain and use a function for cleanup make git-clone GIT_WORK_TREE aware Michael Hendricks (2): git-send-email: allow an email alias for --from gitweb: configurable width for the projects list Description column Miklos Vajna (3): Document -<n> for git-format-patch gitweb: prefer git_get_project_owner() over get_file_owner() gitweb: new cgi parameter: opt Nicolas Pitre (3): apply delta depth bias to already deltified objects script to display a distribution of longest common hash prefixes reduce git-pack-objects memory usage a little more Paul Mackerras (6): gitk: Fix the find and highlight functions gitk: Fix bug in the anc_or_desc routine gitk: Remove the unused stopfindproc function gitk: Fix bug causing "can't read commitrow(0,n)" error gitk: Use git log and add support for --left-right gitk: Improve handling of -- and ambiguous arguments René Scharfe (1): diff-lib.c: don't strdup twice Sean Estabrooks (1): Alter git-checkout reflog message to include "from" branch Shawn O. Pearce (46): git-gui: Unlock the index when cancelling merge dialog git-gui: Start blame windows as tall as possible git-gui: Correct resizing of remote branch delete dialog git-gui: Don't bind F5/M1-R in all windows git-gui: Bind M1-P to push action git-gui: Include a Push action on the left toolbar git-gui: Ensure windows shortcuts always have .bat extension git-gui: Honor rerere.enabled configuration option git-gui: New Git version check support routine git-gui: Skip nicknames when selecting author initials git-gui: Teach class system to support [$this cmd] syntax git-gui: Abstract the revision picker into a mega widget git-gui: Refactor the delete branch dialog to use class system git-gui: Optimize for newstyle refs/remotes layout git-gui: Maintain remote and source ref for tracking branches git-gui: Allow users to match remote branch names locally git-gui: Fast-forward existing branch in branch create dialog git-gui: Enhance choose_rev to handle hundreds of branches git-gui: Sort tags descending by tagger date git-gui: Option to default new branches to match tracking branches git-gui: Automatically refresh tracking branches when needed git-gui: Better handling of detached HEAD git-gui: Refactor our ui_status_value update technique git-gui: Refactor branch switch to support detached head git-gui: Unabbreviate commit SHA-1s prior to display git-gui: Default selection to first matching ref git-gui: Allow double-click in checkout dialog to start checkout git-gui: Extract blame viewer status bar into mega-widget git-gui: Change the main window progress bar to use status_bar git-gui: Show a progress meter for checking out files git-gui: Always use absolute path to all git executables git-gui: Correct gitk installation location git-gui: Assume unfound commands are known by git wrapper git-gui: Treat `git version` as `git --version` git-gui: Perform our own magic shbang detection on Windows git-gui: Teach console widget to use git_read git-gui: Improve the Windows and Mac OS X shortcut creators git-gui: Correct ls-tree buffering problem in browser git-gui: Don't linewrap within console windows git-gui: Paper bag fix for Cygwin shortcut creation git-gui: Use sh.exe in Cygwin shortcuts git-gui: Include a space in Cygwin shortcut command lines Clarify documentation of fast-import's D subcommand Support wholesale directory renames in fast-import git-gui: Work around bad interaction between Tcl and cmd.exe on ^{tree} git-gui: Change prior tree SHA-1 verification to use git_read Steffen Prohaska (1): filter-branch: added missing warn function Steven Walter (1): Documentation for git-log --follow Uwe Kleine-König (2): stash: end commit log with a newline repack: don't report "Nothing new to pack." if -q is given William Pursell (1): user-manual: fix directory name in git-archive example Version v1.5.3-rc0; changes since v1.5.2.5: ------------------------------------------- Adam Roben (3): git-send-email: Add --threaded option git-send-email: make options easier to configure. format-patch: Add format.subjectprefix config option Alex Riesen (11): Fix the progress code to output LF only when it is really needed Add run_command_v_opt_cd: chdir into a directory before exec Add ability to specify environment extension to run_command Allow environment variables to be unset in the processes started by run_command Verbose connect messages to show the IP addresses used Add another verbosity level to git-fetch Add a configuration option to control diffstat after merge Fix push with refspecs containing wildcards Do not use h_errno after connect(2): the function does not set it cvsserver: Actually implement --export-all Avoid perl in t1300-repo-config Alexandre Julliard (1): pack-check: Sort entries by pack offset before unpacking them. Alexandre Vassalotti (1): git-tag: Fix "can't shift that many". Andy Whitcroft (3): cvsimport: add support for new style remote layout cvsimport: update documentation to include separate remotes option cvsimport: add <remote>/HEAD reference in separate remotes more Aneesh Kumar K.V (2): gitview: Fix the blame interface. gitview: run blame with -C -C Benjamin Sergeant (1): git-p4 fails when cloning a p4 depo. Brian Gernhardt (1): Fix t5516-fetch for systems where `wc -l` outputs whitespace. Carlos Rica (3): Fix git-stripspace to process correctly long lines and spaces. Add test script for git-stripspace. Add test-script for git-tag Dan McGee (1): git-mergetool: Allow gvimdiff to be used as a mergetool Dana L. How (8): Custom compression levels for objects and packs Alter sha1close() 3rd argument to request flush only git-repack --max-pack-size: new file statics and code restructuring git-repack --max-pack-size: write_{object,one}() respect pack limit git-repack --max-pack-size: split packs as asked by write_{object,one}() git-repack --max-pack-size: add option parsing to enable feature pack-objects: clarification & option checks for --max-pack-size Ensure git-repack -a -d --max-pack-size=N deletes correct packs Daniel Barkalow (6): Move remote parsing into a library file out of builtin-push. Move refspec parser from connect.c and cache.h to remote.{c,h} Add handlers for fetch-side configuration of remotes. Update local tracking refs when pushing Move refspec pattern matching to match_refs(). Fix pushing to a pattern with no dst Dave O'Neill (1): Generate tags with correct timestamp (git-svnimport) Elvis Pranskevichus (1): Use git-tag in git-cvsimport Emil Medve (1): git-submodule: Instead of using only annotated tags, use any tags. Eric Wong (4): git-svn: cleanup: factor out longest_common_path() function git-svn: test for creating new directories over svn:// git-svn: reduce stat() calls for a backwards compatibility check git-svn: allow dcommit to retain local merge information Fernando J. Pereda (1): Teach mailsplit about Maildir's Frank Lichtenheld (11): t9400: Add test cases for config file handling t9400: Add some more cvs update tests t9400: Add some basic pserver tests t9400: Work around CVS' deficiencies cvsserver: Handle 'cvs login' cvsserver: Make req_Root more critical of its input data cvsserver: Add some useful commandline options cvsserver: Let --base-path and pserver get along just fine cvsserver: Actually implement --export-all config: Add --null/-z option for null-delimted output config: add support for --bool and --int while setting values Geert Bosch (1): Unify write_index_file functions Gerrit Pape (3): git-branch: cleanup config file when deleting branches git-svn: trailing slash in prefix is mandatory with --branches/-b git-cvsimport: force checkout of working tree after initial import Han-Wen Nienhuys (28): Cleanups reformatting: break long lines. rename apply() to applyCommit(); apply is a python builtin add .dotest to .gitignore Robustness fixes for pipes cleanup minor cleanups clone and sync --keep-path to keep perforce path to module. use string.strip() iso. slicing. use strip() iso. slicing for removing \n add --verbose to all commands. Extract multiple paths concurrently. Diverse cleanups remove global .gitdir Read p4 files in one batch. Thinko, fix buglet. store p4 user cache in home directory. thinko. read files before creating the commit. don't p4 print deleted files. only run p4 print if necessary use p4CmdList() to get file contents in Python dicts. This is more robust. Cleanups & import into p4/master for local import remove debug print thinko: really ignore deleted files. look for 'text' and 'binary' files. print error message when p4 print fails (eg. due to permission problems) also strip p4/ from local imports. Jakub Narębski (16): gitweb: Add test t9500 for gitweb (as standalone script) Add an option to git-ls-tree to display also the size of blob gitweb: Provide links to commitdiff to each parent in 'commitdiff' view gitweb: Improve "next" link in commitdiff view gitweb: Split git_patchset_body into separate subroutines gitweb: Create special from-file/to-file header for combined diff gitweb: Add links to blobdiffs in from-file/to-file header for merges gitweb: '--cc' for merges in 'commitdiff' view Document git rev-list --full-history Document git read-tree --trivial Document git rev-parse --is-inside-git-dir Document git reflog --stale-fix Document git rev-list --timestamp Use tabs for indenting definition list for options in git-log.txt Document git log --abbrev-commit, as a kind of pretty option Document git log --full-diff James Bowes (2): Add colour support in rebase and merge tree diff stats output. rev-parse: Identify short sha1 sums correctly. Jeff King (12): cmd_log_init: remove parsing of --encoding command line parameter refactor dir_add_name dir_struct: add collect_ignored option builtin-add: simplify (and increase accuracy of) exclude handling Fix ALLOC_GROW off-by-one Fix ALLOC_GROW calls with obsolete semantics git-stash: fix "no arguments" case in documentation git-stash: fix "can't shift that many" with no arguments git-stash: don't complain when listing in a repo with no stash Documentation: quote {non-attributes} for asciidoc Documentation: quote {non-attributes} for asciidoc Documentation: minor cleanups to branch/checkout wording Jeffrey C. Ollie (2): Add an option to quiet git-init. Quiet the output from git-init when cloning, if requested. Jim Meyering (4): Don't dereference a strdup-returned NULL detect close failure on just-written file handles Don't ignore a pack-refs write failure git-log: detect dup and fdopen failure Johan Herland (1): Remove unnecessary code and comments on non-existing 8kB tag object restriction Johannes Schindelin (23): Update to SubmittingPatches Add git-filter-branch git-fsck: learn about --verbose Move buffer_is_binary() to xdiff-interface.h merge-recursive: refuse to merge binary files git-merge-file: refuse to merge binary files filter-branch: use $(($i+1)) instead of $((i+1)) filter-branch: fix behaviour of '-k' t5000: skip ZIP tests if unzip was not found Teach filter-branch about subdirectory filtering Teach diff to imply --find-copies-harder upon -C -C pp_header(): work around possible memory corruption diffcore-rename: favour identical basenames filter-branch: add example to move everything into a subdirectory Move the pick_author code to git-sh-setup Teach rebase an interactive mode rebase -i: several cleanups rebase -i: provide reasonable reflog for the rebased branch Teach rebase -i about --preserve-merges t7004: ship trustdb to avoid gpg warnings git add: respect core.filemode with unmerged entries Make '!' aliases more useful git-fsck: add --lost-found option Johannes Sixt (9): filter-branch: Use rev-list arguments to specify revision ranges. filter-branch: also don't fail in map() if a commit cannot be mapped Makefile: Remove git-merge-base from PROGRAMS. filter-branch: Simplify parent computation. filter-branch: subdirectory filter needs --full-history Avoid double-slash in path names that depend on $(sharedir). Remove trailing slash from $(template_dir). git-remote show: Also shorten non-fast-forward refs in the 'push' listing Test 'git add' for unmerged entries when core.symlinks=false. Jon Loeliger (1): Add the --numbered-files option to git-format-patch. Jonas Fonseca (2): Fix git-am(1) synopsis formatting git-rebase: suggest to use git-add instead of git-update-index Josh Triplett (1): Fix typo in git-mergetool Julian Phillips (2): Makefile: Use generic rule to build test programs new-workdir: handle rev-parse --git-dir not always giving full path Junio C Hamano (48): git-apply: Fix removal of new trailing blank lines. pack-objects: pass fullname down to add_object_entry() Teach "delta" attribute to pack-objects. builtin-pack-objects: remove unnecessary code for no-delta Fix command line parameter parser of revert/cherry-pick Remove git-applypatch mailsplit: fix for more than one input files Add DLH to .mailmap Release Notes: start preparing for 1.5.3 git-apply: what is detected and fixed is not just trailing spaces. t7003: make test repeatable git-branch --track: fix tracking branch computation. War on whitespace Test wildcard push/fetch More missing static More missing static Even more missing static remote.c: refactor match_explicit_refs() remote.c: refactor creation of new dst ref remote.c: minor clean-up of match_explicit() remote.c: fix "git push" weak match disambiguation remote.c: "git-push frotz" should update what matches at the source. git-push: Update description of refspecs and add examples git-blame: do not indent with spaces. git-blame -w: ignore whitespace mktag: minimally update the description. Lift 16kB limit of log message output Extend --pretty=oneline to cover the first paragraph, Makefile: common-cmds.h depends on generate-cmdlist.sh script Makefile: allow generating git.o for debugging purposes -Wold-style-definition fix More static Documentation: update "stale" links for 1.5.2.2 INSTALL: explain how to build documentation Two trivial -Wcast-qual fixes git-send-email: Do not make @-less message ID Add core.quotepath configuration variable. Update draft Release Notes for 1.5.3 diffcore_count_changes: pass diffcore_filespec diffcore_filespec: add is_binary diffcore-delta.c: update the comment on the algorithm. diffcore-delta.c: Ignore CR in CRLF for text files git-stash: require "save" to be explicit and update documentation Update public documentation links for 1.5.2.3 "git-push $URL" without refspecs pushes only matching branches Rewrite "git-frotz" to "git frotz" git-stash: make "save" the default action again. Mark disused commit walkers officially deprecated. Kevin Green (1): git-p4: check for existence of repo dir before trying to create Lars Hjemli (10): Add git-submodule command Add basic test-script for git-submodule git-submodule: move cloning into a separate function git-submodule: clone during update, not during init t7400: barf if git-submodule removes or replaces a file git-submodule: remember to checkout after clone Rename sections from "module" to "submodule" in .gitmodules git-submodule: give submodules proper names Add gitmodules(5) gitmodules(5): remove leading period from synopsis Linus Torvalds (9): Make "git gc" pack all refs by default Make the pack-refs interfaces usable from outside Makefile: add an explicit rule for building assembly output Finally implement "git log --follow" Fix up "git log --follow" a bit.. Clean up internal command handling Check for IO errors after running a command git: Try a bit harder not to lose errno in stdio Start deprecating "git-command" in favor of "git command" Marco Costalba (1): Teach 'git-apply --whitespace=strip' to remove empty lines at the end of file Marius Storm-Olsen (7): Make the command call silent Replace \r\n with \n when importing from p4 on Windows Ensure that the commit message is Windows formated (CRLF) before invoking the editor. Fix git-p4 clone (defaultDestination) Fix single branch import into remotes Exclude the HEAD symbolic ref from the list of known branches Only use double quotes on Windows Mark Levedahl (6): gitk: Make selection highlight color configurable gitk: Update fontsize in patch / tree list gitk: Allow specifying tabstop as other than default 8 characters. gitweb.perl - Optionally send archives as .zip files gitk: Use a spinbox for setting tabstop settings gitk: Update selection background colorbar in prefs dialog Martin Koegler (5): builtin-pack-objects: don't fail, if delta is not possible git-pack-objects: cache small deltas between big objects builtin-pack-object: cache small deltas diff-delta: use realloc instead of xrealloc gitweb: Handle non UTF-8 text better Martin Waitz (1): rename dirlink to gitlink. Matthias Lederhofer (18): add git-filter-branch to .gitignore make clean should remove all the test programs too filter-branch: prevent filters from reading from stdin chmod +x git-filter-branch.sh rev-parse: document --is-inside-git-dir rev-parse: introduce --is-bare-repository test git rev-parse introduce GIT_WORK_TREE to specify the work tree Use new semantics of is_bare/inside_git_dir/inside_work_tree extend rev-parse test for --is-inside-work-tree test GIT_WORK_TREE setup_git_directory: fix segfault if repository is found in cwd filter-branch: always export GIT_DIR if it is set gitweb: change filename/directory name of snapshots make git barf when an alias changes environment variables make dist: include configure script in tarball ignore git-rebase--interactive getenv/setenv: use constants if available Matthijs Melchior (1): Teach git-tag about showing tag annotations. Michael Ellerman (2): gitview: Use new-style classes gitview: Define __slots__ for Commit Michael Krelin (1): git-svn: honor ~/.subversion/ client cert file settings. Michael S. Tsirkin (1): connect: display connection progress Nanako Shiraishi (3): Cloning from a repo without "current branch" Add git-stash script Document git-stash Nicolas Pitre (8): allow for undeltified objects not to be reused make "repack -f" imply "pack-objects --no-reuse-object" deprecate the new loose object header format fixes to output of git-verify-pack -v improve delta long block matching with big files update diff-delta.c copyright fix repack with --max-pack-size always start looking up objects in the last used pack first Paul Mackerras (18): gitk: Use the -q flag to git checkout gitk: New infrastructure for working out branches & previous/next tags gitk: Don't try to list large numbers of tags or heads in the details pane gitk: Add some more comments to the optimize_rows procedure gitk: Improve the behaviour of the initial selection gitk: Implement a simple scheduler for the compute-intensive stuff gitk: Cope with commit messages with carriage-returns and initial blank lines gitk: Disable the head context menu entries for the checked-out branch gitk: Store ids in rowrangelist and idrowranges rather than row numbers gitk: New algorithm for drawing the graph lines gitk: Show local uncommitted changes as a fake commit gitk: Speed up the reading of references gitk: Get rid of the childlist variable gitk: Add a "reset branch to here" row context-menu operation gitk: Limit how often we change the canvas scrolling region gitk: Fix bug causing nearby tags/heads to sometimes not be displayed gitk: Improve handling of whitespace and special chars in filenames gitk: Add a progress bar to show progress while resetting Petr Baudis (2): git-rev-list: Add regexp tuning options git-applymbox: Remove command Pierre Habouzit (3): $EMAIL is a last resort fallback, as it's system-wide. Active_nr is unsigned, hence can't be < 0 Missing statics. Quy Tonthat (1): git.spec: RPM failed, looking for wrong files. Randal L. Schwartz (1): Add test-sha1 to .gitignore. René Scharfe (3): t5000: silence unzip availability check diffcore-rename: don't change similarity index based on basename equality diff: round down similarity index Robin Rosenberg (1): Add option to cvs update before export Sam Vilain (3): git-svn: avoid string eval for defining functions git-svn: use git-log rather than rev-list | xargs cat-file git-svn: cache max revision in rev_db databases Shawn O. Pearce (24): Teach git-describe how to run name-rev Lazily open pack index files on demand Micro-optimize prepare_alt_odb Attempt to delay prepare_alt_odb during get_sha1 git gui 0.8.0 git-gui: GUI support for running 'git remote prune <name>' git-gui: Show the git-gui library path in 'About git-gui' git-gui: Enable verbose Tcl loading earlier git-gui: Provide fatal error if library is unavailable git-gui: Disable tearoff menus on Windows, Mac OS X git-gui: Allow users to rename branches through 'branch -m' git-gui: Allow users to delete remote branches git-gui: Expose the merge.diffstat configuration option Allow contrib new-workdir to link into bare repositories Test for recent rev-parse $abbrev_sha1 regression Simplify index access condition in count-objects, pack-redundant Ensure the pack index is opened before access Style nit - don't put space after function names git-gui: Internalize symbolic-ref HEAD reading logic git-gui: Quiet our installation process Avoid src:dst syntax as default bash completion for git push Document git-gui, git-citool as mainporcelain manual pages Teach bash how to complete +refspec on git-push Correct usages of sed in git-tag for Mac OS X Simon Hausmann (223): Initial import of a python script to import changesets from Perforce into git. Added basic support for specifying the depot path to import from as well as the range of perforce changes. Slightly improved help usage output and made specifying the trailing slash for the depot path optional. Implemented basic support for converting the date of the perforce change to the git format. The timezone isn't correctly set up yet though. Some fixes to the timezone conversion between the date of a perforce change and the git commit. Speed up the import of individual files from Perforce into git by passing the output of "p4 print" directly to git fast-import. Also try to set the mode of the file in git correctly based on file type heuristics. Removed unused p4cat function and added helper function for the perforce python interface (p4Cmd). Changed the import mechanism to write to git fast-import through a pipe instead of having p4-fast-export write to stdout and let the caller connect it to git fast-import. Minor code cleanups and ported some p4 interfacing code over to the p4 python mode. Instead of parsing the output of "p4 users" use the python objects of "p4 -G users". Ported the remaining functions that parsed p4 shell output over to the p4 python interface. Avoid calling fstat for every imported file (slow!) and instead read the file data first into the python process and use the length of the bytes read for the size field of git fast-import. Permit calling p4-fast-export with a depot path that has the typical ... wildcard at the end. Fixed displaying import progress by calling flush on stdout. Create a git tag for every changeset imported from perforce. Fix file permissions of p4-fast-export.py to be executable. Started working on incremental imports from Perforce. Simplify the incremental import by elimination the need for a temporary import branch. Code cleanups, move the code to create a commit with fast-import into a separate function out of the main loop. Initial support for importing a directory from Perforce at a specified revision. Minor cleanups and print an error message of git fast-import if it fails. Fixed incremental imports by using the correct "from" command instead of "merge" with git fast-import. Make incremental imports easier to use by storing the p4 depot path after an import in .git/config and re-using it when we're invoked again later. Make specifying the revision ranges more convenient. Fix calculation of the newest imported revision for #head imports. Catch io exceptions from git fast-import again and print the error message. Made the name of the git branch used for the perforce import configurable through a new --branch=<name> commandline option. Added a little helper script to debug the output of the p4 python interface. Minor code cleanups. Avoid the excessive use of git tags for every perforce change and instead just create one git tag for the last imported change. Changed the default git import branch from "p4" to "master". Added a little helper script to remove unused tags from the perforce import. Create lightweight git tags (using the "reset" trick) for the incremental import instead of full-blown ones. Also fix parsing the output of git name-rev for figuring out the last imported p4 change number. Cleanups, remove unused variable. Code cleanups. Started work on p4 branch detection (experimental!). More fixes in heuristic p4 branch detection based on common path components. After marking a p4 branch as merged don't ever merge it in git again. Set git fast-import marks for every imported change for future use. When trying to map p4 integrations to git merges just record it as a single merge with the newest p4 change as secondary parent. Make it possible to specify the p4 changes to import through a text file (for debugging) and made various improvements to the branch/merge heuristic detection. Use sets.Set() instead of set() to run also with older versions of Python. Fix single-branch imports by skipping the branch/merge detection correctly. Added p4 delete behavioural emulation as todo item. Added support for --silent so that p4-fast-export can be called from cronjobs. More work in --silent support. Don't print a plain newline at the end of the execution (avoids bogus cron error mails). Adjust the output parsing of git name-rev to handle the output of the latest git version. Work in progress on detecting branches. Changed --known-branches to take a file as argument instead of a comma separated list. Fixed p4-debug file extension. Make the p4 data/command cache configurable through the --cache-debug commandline option. Minor code cleanups. More code cleanups and preparations for more branch detection heuristics. More work on branch detection by implementing changeIsBranchMerge(). Reduce the number of false "merges" by skipping "branch from" entries in the integrated output as well as by ignoring integrations of future (newer) changes. Split up the cache commandline options into (command) cache and data cache. First version of a new script to submit changes back to perforce from git repositories. Fix git-dir option and allow reading log substitutions from a file Lots of bugfixes to p4-git-sync. Automatically operate on a temporary branch, needed for cherry-pick to work when applying changes to Be nice and use /usr/bin/env python for the git-p4 scripts Ignore Apple resource files when importing from perforce to git. Auto-detect the current git branch before submitting back to perforce. Use p4 revert ... instead of revert -a ... after submitting, to make sure the p4 checkout is clean. Default to interactive syncing Improved the git dir detection. Pass the right number of arguments to commit, fixes single-branch imports. Start moving the git-p4 tools into one single script. Provide a little bit of help description for the git-p4 "tools". First (untested) attempt at migrating p4-git-sync into the final git-p4 script Part of the code is copyright by Trolltech ASA. sync-to-perforce is now called submit and fixed the gitdir check a little bit Completely untested "merge" of p4-fast-export.py into git-p4.py Added missing "self"s to make the script evaluate correctly. Fixed the initial version import by getting the file index correct by correctly skipping deleted files. Removed p4-fast-export and p4-git-sync as they've been integrated into git-p4 now. Start of the git-p4 documentation. Documentation enhancements. Added experimental but super-fast --apply-as-patch option to git-p4 submit Fix support for deletions in git-p4 submit when using --apply-as-patch by filtering out deletions in the diff-tree output. Made --apply-as-patch the default for git-p4 submit as it's significantly faster. Make it possible to invoke git-p4 from within subdirectories of a git working tree. Don't show the submit template and the diff first in less but show it in $editor right away Removed the .py extension from git-p4 as it's annoying to type every time. Changed the format of the imported log message slightly, so that it's easier to parse again. Changed the default branch for imports from "master" to "p4" Added some helper function(s) to parse the depot path and change number from the log message Helper function to check the existance of a revision Set the default branch in run, not in the constructor Brand new smart incremental import that doesn't need tags or git repo-config :) Make it possible to run git-p4 submit from within the git repository Use the new incremental import style by default Different versions of p4 have different output for the where command ;( Minor cosmetic fixlet for the git-p4 submit sync question. Prefer git command over git-command. Don't try to parse any options with git-p4 debug but pass it straight on to p4 git-p4 debug doesn't need a git repository Added support for mapping p4 labels to git tags Fix variable usage in tag import Fix the docs for git-p4 submit and turn git-p4 submit --master=foo into simply git-p4 submit mytopicbranch. Fix "compilation" :) Clean up python class names. Added git-p4 rebase convenience Provide a tree summary after git-p4 rebase Turn off potentially slow label detection by default Honor --silent for labels Added git-p4 clone convenience command Fix file determination for #head imports fix variable usage (oops) Added a simple example of usage to the "documentation" :) Allow for convenient rebasing after git-p4 submit Print an error message of some sort if git fast-import fails. Fix the timezone formatting. Now qgit also displays (parses) it correctly. Removed the old patch apply code from git-p4 submit. Slightly improved formatting of the raw_input questions. A new attempt at fixing the child-fast-import-process-not-finished race condition in the clone command Handle patch errors in git-p4 submit better. Doc cleanups. Micro cleanup cleanup, renamed self.globalPrefix to self.depotPath Cleanup, removed the old tagging code Document some implementation details, for the curious... :) Use the subprocess module instead of popen2 to make it work on Windows. Added a little .bat wrapper from Marius Make sure all popen calls use binary mode (for Windows) and Make submitting work on Windows. Converted to unix newlines Fix git-p4 clone //depot/project (head import) Make git-p4 work with bare repositories. Added the possibility of skipping patches during git-p4 submit Give a better hint if git-p4 submit fails Fix calling git-p4 rebase from within a subdirectory (git rebase wants to be in toplevel) A little todo note before I forget it :), based on a suggestion from Lars. Fixing syncing (gitdir discovery / cd) for bare repositories Always pass a sha1 for the initial parent so that git-fast-import doesn't think it's creating a new branch from itself. It's a sensible error in general but in the case of incremental imports we have to apply force :) Clean up code duplication for revision parsing and fix previous commit to not import into remotes/p4 (yet!). Removed cleantags command. It doesn't have any meaning anymore. Removed ancient and unused code to find the last imported revision from previous imports to use for the current import by looking at the p4 tags. The current approach of using the log message works better. Create the origin based import branch using git update-ref instead of git branch so that it's possible to have the import branch in refs/remotes. Changed the default p4 import branch to be refs/remotes/p4/{HEAD,master} instead of refs/heads/p4. Bite the bullet and automatically convert old style refs/heads/p4 repositories to the new style refs/remotes/p4 branching. Added support for git-p4 sync/rebase --with-origin. See git-p4.txt for details :) Removed todo item that is implemented :) Fix branch setup after initial clone. Removed unused cache variables. Started rewriting the branch detection, based on "p4 branches" and "p4 branch -o foo". Give branches a nice project prefix and don't bail out on clone if we failed to detect the master branch. More work on the incremental importing of multiple branches. Improved error detection by checking the exit code of git-fast-import. Cleanup/speed up the branch<> file split and removed change range limitation that I added for debugging (oops). More cleanups and speedups for labels and branches Removed unused variable, more cleanups Cache the output of "p4 users" for faster syncs on high latency links. Fix gitdir not being set when cloning. Needed for writing the p4 users cache. Oops, not only /set/ gitdir on clone, also set it /correctly/ :) Use git format-patch and git apply --apply when extracting patches from git and applying them to a Perforce checkout. This should make it possible to apply git commits with binary files that cannot be handled by path. Added support for git-p4 submit --direct (experimental) Specifying --detect-branches is now only needed for the initial clone/sync. Afterwards it's turned on implicitly if more p4 branches than remotes/p4/master are found. Had an idea for debugging, record it :) Another (potentially life-saving) idea for submit --direct Improved output for multi branch imports and noted another little todo item Fix conversion from old style heads/p4 to remotes/p4/master Fix error detection with git-p4 submit when the requested depot path is not in the client view. Fix git symbolic-ref warning on initial clone Detect with git-p4 submit --direct when there are no changes in the working directory Make git-p4 submit --direct safer by also creating a git commit Added a rollback command for debugging. It sets back the heads of the p4 branches to the specified p4 change number or earlier. Fix branch detection in multi-branch imports Fixes for rollback, delete branches that did not exist at the specified p4 change Added support for importing multiple branches into refs/heads instead of just refs/remotes using --import-local. Needs some further microfix but seems to work otherwise. Added support for --max-changes=<count> to ease import debugging Use refs/heads/* instead of refs/heads/p4/* for local imports Doc updates Avoid calling git symbolic-ref refs/heads/p4//HEAD (double slash) Make rollback work with locally imported branches Don't make len(p4Cmd("p4 changes -m 1 //foo/...")) == 0 succeed when the p4 command itself failed. Oops, fill the /list/ correct with the p4 exit code. Catch p4 errors in rollback early enough (before deleting refs!) Fix p4 execution in git-p4 rollback. Fix multi-branch import with --silent. Load the user map from p4 only once at run-time. Fix creating the remotes/p4 branches based on origin/* for the multi-branch import Forgot to remove this return statement from debugging Added support for --with-origin with multi-branch imports Oops, fix --with-origin to /really/ also call git fetch :) Avoid creating non-p4 branches in remotes/p4 off of remotes/origin Make git-p4 work with packed refs (don't use os.path.exists to check for the existance of a ref) Make --with-origin also work without origin :) Make --with-origin the default for syncing. Shortcut the case where we have no origin branch Forgot to remove this TODO item when I made --with-origin the default :) Added git-p4 submit --trust-me-like-a-fool for the adventurous users :) Fix creation of refs/remotes/p4/HEAD symbolic ref Fix my email address, this isn't really KDE related :) In *_pipe print the command that failed if it fails. Fixed old calls to mypopen. Fix typo in listExistingP4Branches that broke sync. Fix support for "depot-path" in older git-p4 imports Fix common path "calculation" from logs of multiple branches. Need to use min instead of max for prev/cur to avoid out-of-bounds string access. Also treat "i" as index of the last match instead of a length because in case of a complete match of the two strings i was off by one. Don't attempt to set the initialParent on multi-branch imports (useless). At some point the code paths should be unified, but for now I need a working git-p4 :) Hack to make the multi-branch import work again with self.depotPaths now that self.depotPath is gone Fix git-p4 rebase Fix git-p4 submit Fix depot-path determination for git-p4 submit Make clone behave like git clone by default again. Make git-p4 submit detect the correct reference (origin) branch when working with multi-branch imports. Only get the expensive branch mapping from the p4 server when not syncing with the help of an origin remote (which we instead then use to get new branches from). Fixed the check to make sure to exclude the HEAD symbolic refs when updating the remotes/p4 branches from origin. Fix updating/creating remotes/p4/* heads from origin/p4/* Fix project name guessing Fix depot-paths encoding for multi-path imports (don't split up //depot/path/foo) Fix support for explicit disabling of syncing with the origin Write out the options tag in the log message of imports only if we actually have options Provide some information for single branch imports where the commits go Mention remotes/p4/master also in the documentation. git-p4 submit: Fix missing quotes around p4 commands to make them work with spaces in filenames Moved the code from git-p4 submit to figure out the upstream branch point into a separate helper method. Fix git-p4 rebase to detect the correct upstream branch instead of unconditionally always rebasing on top of remotes/p4/master Fix initial multi-branch import. Fix the branch mapping detection to be independent from the order of the "p4 branches" output. Warn about conflicting p4 branch mappings and use the first one found. Added git-p4 branches command that shows the mapping of perforce depot paths to imported git branches. Make it possible to specify the HEAD for the internal findUpstreamBranchPoint function. git-new-workdir: Fix shell warning about operator == used with test. Sven Verdoolaege (4): git-update-ref: add --no-deref option for overwriting/detaching ref t9500: skip gitweb tests if perl version is too old git-submodule: provide easy way of adding new submodules git-clone: fetch possibly detached HEAD over dumb http Theodore Ts'o (4): Add --aggressive option to 'git gc' Fix minor grammatical typos in the git-gc man page git-mergetool: Make default selection of merge-tool more intelligent Don't fflush(stdout) when it's not helpful İsmail Dönmez (1): Change default man page path to /usr/share/man Version v1.5.2.5; changes since v1.5.2.4: ----------------------------------------- Christian Couder (1): rev-list --bisect: fix allocation of "int*" instead of "int". Julian Phillips (1): Force listingblocks to be monospaced in manpages Junio C Hamano (4): Do not expect unlink(2) to fail on a directory. setup.c:verify_non_filename(): don't die unnecessarily while disambiguating Fix "git add -u" data corruption. GIT 1.5.2.5 Linus Torvalds (1): apply: remove directory that becomes empty by renaming the last file away Salikh Zakirov (1): git-add -u paths... now works from subdirectory Version v1.5.2.4; changes since v1.5.2.3: ----------------------------------------- Andy Parkins (2): Make git-prune submodule aware (and fix a SEGFAULT in the process) user-manual: grammar and style fixes Gerrit Pape (1): git-gui: properly popup error if gitk should be started but is not installed J. Bruce Fields (2): tutorial: Fix typo user-manual: more explanation of push and pull usage Jim Meyering (1): Don't smash stack when $GIT_ALTERNATE_OBJECT_DIRECTORIES is too long Johannes Schindelin (3): diff --no-index: fix --name-status with added files glossary: add 'reflog' Fix "apply --reverse" with regard to whitespace Junio C Hamano (2): Teach read-tree 2-way merge to ignore intermediate symlinks GIT 1.5.2.4 Michael Hendricks (1): Correctly document the name of the global excludes file configuration Miklos Vajna (1): Document -<n> for git-format-patch Shawn O. Pearce (10): git-gui: Unlock the index when cancelling merge dialog git-gui: Don't bind F5/M1-R in all windows git-gui: Bind M1-P to push action git-gui: Include a Push action on the left toolbar git-gui: Ensure windows shortcuts always have .bat extension git-gui: Skip nicknames when selecting author initials git-gui: Correct ls-tree buffering problem in browser git-gui: Don't linewrap within console windows Clarify documentation of fast-import's D subcommand git-gui: Work around bad interaction between Tcl and cmd.exe on ^{tree} William Pursell (1): user-manual: fix directory name in git-archive example Version v1.5.2.3; changes since v1.5.2.2: ----------------------------------------- Frank Lichtenheld (2): config: Complete documentation of --get-regexp config: Change output of --get-regexp for valueless keys Junio C Hamano (1): GIT 1.5.2.3 Linus Torvalds (1): Fix zero-object version-2 packs Matt Kraai (1): Correct the name of NO_R_TO_GCC_LINKER in the comment describing it. Sam Vilain (3): cleanup merge-base test script repack: improve documentation on -a option git-remote: document -n Shawn O. Pearce (5): git-gui: Correctly install to /usr/bin on Cygwin git-gui: Bind Tab/Shift-Tab to cycle between panes in blame git-gui: Don't require $DISPLAY just to get --version git-gui: Don't nice git blame on MSYS as nice is not supported git-gui: Don't require a .pvcsrc to create Tools/Migrate menu hack Sven Verdoolaege (1): Ignore submodule commits when fetching over dumb protocols Version v1.5.2.2; changes since v1.5.2.1: ----------------------------------------- Alex Riesen (3): Make the installation target of git-gui a little less chatty Fix clone to setup the origin if its name ends with .git Add a local implementation of hstrerror for the system which do not have it Gerrit Pape (1): Fix typo in remote branch example in git user manual J. Bruce Fields (4): user-manual: quick-start updates user-manual: add a missing section ID Documentation: user-manual todo tutorial: use "project history" instead of "changelog" in header Jakub Narębski (1): Generated spec file to be ignored is named git.spec and not git-core.spec Johannes Schindelin (2): Move buffer_is_binary() to xdiff-interface.h merge-recursive: refuse to merge binary files Johannes Sixt (1): Accept dates before 2000/01/01 when specified as seconds since the epoch Junio C Hamano (6): checkout: do not get confused with ambiguous tag/branch names $EMAIL is a last resort fallback, as it's system-wide. git-branch --track: fix tracking branch computation. Avoid diff cost on "git log -z" Documentation: adjust to AsciiDoc 8 GIT 1.5.2.2 Kristian Høgsberg (1): Unquote From line from patch before comparing with given from address. Luiz Fernando N. Capitulino (1): git-cherry: Document 'limit' command-line option Matthijs Melchior (1): New selection indication and softer colors Michael Milligan (1): git-cvsimport: Make sure to use $git_dir always instead of .git sometimes Sam Vilain (2): fix documentation of unpack-objects -n Don't assume tree entries that are not dirs are blobs Shawn O. Pearce (47): git-gui: Allow creating a branch when none exists git-gui: Allow as few as 0 lines of diff context git-gui: Don't quit when we destroy a child widget git-gui: Attach font_ui to all spinbox widgets git-gui: Verify Tcl/Tk is new enough for our needs Revert "Make the installation target of git-gui a little less chatty" git-gui: Add a 4 digit commit abbreviation to the blame viewer git-gui: Cleanup blame::new widget initialization git-gui: Remove empty blank line at end of blame git-gui: Improve the coloring in blame viewer git-gui: Simplify consecutive lines that come from the same commit git-gui: Use arror cursor in blame viewer file data git-gui: Display tooltips in blame viewer git-gui: Highlight the blame commit header from everything else git-gui: Remove unnecessary reshow of blamed commit git-gui: Cleanup minor style nit git-gui: Space the commit group continuation out in blame view git-gui: Show author initials in blame groups git-gui: Allow the user to control the blame/commit split point git-gui: Display a progress bar during blame annotation gathering git-gui: Allow digging through history in blame viewer git-gui: Combine blame groups only if commit and filename match git-gui: Show original filename in blame tooltip git-gui: Use a label instead of a button for the back button git-gui: Clip the commit summaries in the blame history menu git-gui: Remove the loaded column from the blame viewer git-gui: Remove unnecessary space between columns in blame viewer git-gui: Use lighter colors in blame view git-gui: Make the line number column slightly wider in blame git-gui: Automatically expand the line number column as needed git-gui: Remove unused commit_list from blame viewer git-gui: Better document our blame variables git-gui: Cleanup redundant column management in blame viewer git-gui: Switch internal blame structure to Tcl lists git-gui: Label the uncommitted blame history entry git-gui: Rename fields in blame viewer to better descriptions git-gui: Display the "Loading annotation..." message in italic git-gui: Run blame twice on the same file and display both outputs git-gui: Display both commits in our tooltips git-gui: Jump to original line in blame viewer git-gui: Use three colors for the blame viewer background git-gui: Improve our labeling of blame annotation types git-gui: Favor the original annotations over the recent ones git-gui: Changed blame header bar background to match main window git-gui: Include 'war on whitespace' fixes from git.git git-gui: Give amend precedence to HEAD over MERGE_MSG git-gui: Save geometry before the window layout is damaged William Pursell (1): Make command description imperative statement, not third-person present. Version v1.5.2.1; changes since v1.5.2: --------------------------------------- Andy Parkins (2): Fix mishandling of $Id$ expanded in the repository copy in convert.c Add test case for $Id$ expanded in the repository Carlos Rica (1): fix memory leak in parse_object when check_sha1_signature fails Eric Wong (1): git-svn: avoid md5 calculation entirely if SVN doesn't provide one Fernando J. Pereda (1): Use PATH_MAX instead of TEMPFILE_PATH_LEN Frank Lichtenheld (7): t1300: Add tests for git-config --bool --get git-config: Correct asciidoc documentation for --int/--bool cvsserver: Correct inetd.conf example in asciidoc documentation cvsserver: Note that CVS_SERVER can also be specified as method variable cvsserver: Fix some typos in asciidoc documentation git-config: Various small fixes to asciidoc documentation git-config: Improve documentation of git-config file handling Jakub Narębski (3): Documentation: Clean up links in GIT Glossary Replace the last 'dircache's by 'index' Documentation: Add definition of "evil merge" to GIT Glossary James Bowes (1): Documentation: fix git-config.xml generation James Y Knight (1): Fix git-svn to handle svn not reporting the md5sum of a file, and test. Jeff King (3): git-am: use printf instead of echo on user-supplied strings More echo "$user_message" fixes. Documentation: robustify asciidoc GIT_VERSION replacement Jerald Fitzjerald (1): decode_85(): fix missing return. Jim Meyering (1): git-daemon: don't ignore pid-file write failure Johan Herland (1): Fix stupid typo in lookup_tag() Johannes Schindelin (2): SubmittingPatches: mention older C compiler compatibility git-status: respect core.excludesFile Jonas Fonseca (2): branch: fix segfault when resolving an invalid HEAD Update bash completion to ignore some more plumbing commands Josh Triplett (1): Create a new manpage for the gitignore format, and reference it elsewhere Junio C Hamano (6): annotate: make it work from subdirectories. git-cvsserver: fix disabling service via per-method config name-rev: tolerate clock skew in committer dates git-commit: use printf '%s\n' instead of echo on user-supplied strings Add tests for the last two fixes. GIT 1.5.2.1 Kristian Høgsberg (1): Use =20 when rfc2047 encoding spaces. Linus Torvalds (1): fix signed range problems with hex conversions Nguyễn Thái Ngọc Duy (1): Makefile: Remove git-fsck and git-verify-pack from PROGRAMS Paolo Bonzini (1): Document branch.autosetupmerge. Shawn O. Pearce (12): git-gui: Tighten internal pattern match for lib/ directory Refactor fast-import branch creation from existing commit Fix possible coredump with fast-import --import-marks Hide the plumbing diff-{files,index,tree} from bash completion Teach bash completion about git-shortlog Remove a duplicate --not option in bash completion Update bash completion header documentation Teach bash completion about 'git remote update' Teach bash completion about recent log long options Update bash completion for git-config options Correct key bindings to Control-<foo> git-gui: Guess our share/git-gui/lib path at runtime if possible Simon Hausmann (2): fast-import: Fix uninitialized variable fast-import: Fix crash when referencing already existing objects Steffen Prohaska (1): user-manual: fixed typo in example Stephan Springl (1): Use git-for-each-ref to check whether the origin branch exists. Sven Verdoolaege (1): unpack-trees.c: verify_uptodate: remove dead code Version v1.5.2; changes since v1.5.2-rc3: ----------------------------------------- Alex Riesen (1): Allow fetching references from any namespace Andy Parkins (2): Use $Id$ as the ident attribute keyword rather than $ident$ to be consistent with other VCSs Fix crlf attribute handling to match documentation Andy Whitcroft (1): git name-rev writes beyond the end of malloc() with large generations Eric Wong (6): git-svn: don't drop the username from URLs when dcommit is run git-svn: clean up caching of SVN::Ra functions git-svn: fix segfaults due to initial SVN pool being cleared git-svn: don't attempt to minimize URLs by default git-svn: avoid crashing svnserve when creating new directories git-svn: don't minimize-url when doing an init that tracks multiple paths Frank Lichtenheld (5): cvsserver: Limit config parser to needed options cvsserver: Don't send mixed messages to clients builtin-log.c: Fix typo in comment Documentation: format-patch has no --mbox option git-am: Clean up the asciidoc documentation J. Bruce Fields (14): user-manual: revise birdseye-view chapter glossary: expand and clarify some definitions, prune cross-references user-manual: move quick-start to an appendix Documentation: remove howto's now incorporated into manual user-manual: move howto/make-dist.txt into user manual user-manual: move howto/using-topic-branches into manual user-manual: add a "counting commits" example user-manual: introduce git user-manual: listing commits reachable from some refs not others user-manual: reorganize public git repo discussion tutorials: add user-manual links tutorial: revise index introduction user-manual: discourage shared repository user-manual: finding commits referencing given file content Jakub Narębski (10): gitweb: Test if $from_id and $to_id are defined before comparison gitweb: Check if requested object exists gitweb: Fix "Use of unitialized value" warnings in empty repository Documentation: Split description of pretty formats of commit log gitweb: Add a few comments about %feature hash gitweb: Do not use absolute font sizes gitweb: Separate search regexp from search text gitweb: Empty patch for merge means trivial merge, not no differences gitweb: Fix error in git_patchset_body for deletion in merge commit gitweb: Fix "Use of uninitialized value" warning in git_feed Jan Hudec (2): Updated documentation of hooks in git-receive-pack. Minor fixup to documentation of hooks in git-receive-pack. Jeff King (3): git-add: allow path limiting with -u Documentation/git-add: clarify -u with path limiting format-patch: add MIME-Version header when we add content-type. Johan Herland (3): Fix signedness on return value from xread() Ensure return value from xread() is always stored into an ssize_t user-manual: Add section on ignoring files Johannes Schindelin (2): import-tars: Use the "Link indicator" to identify directories Add a birdview-on-the-source-code section to the user manual Junio C Hamano (17): Minor copyediting on Release Notes for 1.5.2 Add has_symlink_leading_path() function. apply: do not get confused by symlinks in the middle read-tree -m -u: avoid getting confused by intermediate symlinks. t9400: Use the repository config and nothing else. checkout: allow detaching to HEAD even when switching to the tip of a branch git-config: do not forget seeing "a.b.var" means we are out of "a.var" section. Link to HTML version of external doc if available Fix git-clone buglet for remote case. Prepare for 1.5.1.5 Release Notes gitweb: fix another use of undefined value GIT v1.5.1.5 Add link to 1.5.1.5 release notes. Documentation/git.txt: Update links to older documentation pages. GIT 1.5.1.6 git-cvsserver: exit with 1 upon "I HATE YOU" GIT 1.5.2 Lars Hjemli (1): git-archive: don't die when repository uses subprojects Marco Costalba (1): Fix an unmatched comment end in arm/sha1_arm.S Matthias Kestenholz (2): Documentation: Added [verse] to SYNOPSIS where necessary Documentation: Reformatted SYNOPSIS for several commands Matthieu Castet (1): Remove stale non-static-inline prototype for tree_entry_extract() Michael Hendricks (2): git-send-email: allow leading white space on mutt aliases Document core.excludesfile for git-add Petr Baudis (5): gitweb: Normalize searchbar font size gitweb: Add support for grep searches gitweb: Allow arbitrary strings to be dug with pickaxe Documentation: git-rev-list's "patterns" gitweb: Remove redundant $searchtype setup Quy Tonthat (2): RPM spec: include files in technical/ to package. Documentation/branch: fix small typo in -D example René Scharfe (1): git-archive: convert archive entries like checkouts do Shawn O. Pearce (1): git-gui: Gracefully handle bad TCL_PATH at compile time Steffen Prohaska (4): tiny fix in documentation of git-clone git-config: test for 'do not forget "a.b.var" ends "a.var" section'. Optimized cvsexportcommit: calling 'cvs status' once instead of once per touched file. Fixed link in user-manual Version v1.5.2-rc3; changes since v1.5.2-rc2: --------------------------------------------- Alex Riesen (1): Use GIT_OBJECT_DIR for temporary files of pack-objects Amos Waterland (1): wcwidth redeclaration Frank Lichtenheld (1): cvsserver: Add test cases for git-cvsserver Gerrit Pape (1): gitweb: choose appropriate view for file type if a= parameter missing J. Bruce Fields (7): user-manual: more discussion of detached heads, fix typos user-manual: add section ID's user-manual: clean up fast-forward and dangling-objects sections user-manual: fix .gitconfig editing examples user-manual: miscellaneous editing user-manual: stop deprecating the manual user-manual: fix clone and fetch typos Jakub Narębski (6): gitweb: Add parsing of raw combined diff format to parse_difftree_raw_line gitweb: Add combined diff support to git_difftree_body gitweb: Add combined diff support to git_patchset_body gitweb: Make it possible to use pre-parsed info in git_difftree_body gitweb: Show combined diff for merge commits in 'commitdiff' view gitweb: Show combined diff for merge commits in 'commit' view Jari Aalto (1): SPECIFYING RANGES typo fix: it it => it is Jeff King (1): Documentation: don't reference non-existent 'git-cvsapplycommit' Johannes Sixt (1): git-gui: Call changes "Staged" and "Unstaged" in file list titles. Junio C Hamano (10): diff: release blobs after generating textual diff. diff.c: do not use a separate "size cache". diff -M: release the preimage candidate blobs after rename detection. diff -S: release the image after looking for needle in it GIT v1.5.1.4 Update documentation links to point at 1.5.1.4 t9400: skip cvsserver test if Perl SQLite interface is unavailable git-clone: don't get fooled by $PWD .mailmap: add some aliases GIT v1.5.2-rc3 Matthieu Moy (2): Document git add -u introduced earlier. Added a reference to git-add in the documentation for git-update-index Michael Hendricks (1): Document 'git-log --decorate' Michael Spang (3): dir.c: Omit non-excluded directories with dir->show_ignored t7300: Basic tests for git-clean Fix minor documentation errors Paul Mackerras (1): gitk: Allow user to choose whether to see the diff, old file, or new file Petr Baudis (2): Git.pm: config_boolean() -> config_bool() gitweb: Do not use absolute font sizes Quy Tonthat (2): Add howto files to rpm packages. Added new git-gui library files to rpm spec Richard P. Curnow (2): Fix documentation of tag in git-fast-import.txt Fix documentation of tag in git-fast-import.txt Shawn O. Pearce (32): git-gui: Correctly handle UTF-8 encoded commit messages git-gui: Allow spaces in path to 'wish' git-gui: Include the subject in the status bar after commit git-gui: Warn users before making an octopus merge git-gui: Correct line wrapping for too many branch message git-gui: Cleanup common font handling for font_ui git-gui: Use option database defaults to set the font git-gui: Refactor to use our git proc more often git-gui: Track our own embedded values and rebuild when they change Properly handle '0' filenames in import-tars git-gui: Refactor into multiple files to save my sanity git-gui: Move console procs into their own namespace git-gui: Allow vi keys to scroll the diff/blame regions git-gui: Move merge support into a namespace git-gui: Show all possible branches for merge git-gui: Include commit id/subject in merge choices git-gui: Use vi-like keys in merge dialog Remove duplicate exports from Makefile git-gui: Allow shift-{k,j} to select a range of branches to merge git-gui: Define a simple class/method system git-gui: Convert browser, console to "class" format git-gui: Don't attempt to inline array reads in methods git-gui: Convert blame to the "class" way of doing things git-gui: Use prefix if blame is run in a subdirectory git-gui: Smarter command line parsing for browser, blame git-gui: Generate blame on uncommitted working tree file git-gui: Cleanup minor nits in blame code git-gui: Format author/committer times in ISO format Use .git/MERGE_MSG in cherry-pick/revert git-gui: Paperbag fix blame in subdirectory git gui 0.7.0 Correct error message in revert/cherry-pick Theodore Ts'o (2): Add pack.depth option to git-pack-objects. Increase pack.depth default to 50 Version v1.5.2-rc2; changes since v1.5.2-rc1: --------------------------------------------- Alex Riesen (2): Small correction in reading of commit headers Handle return code of parse_commit in revision machinery Alexandre Julliard (1): http-fetch: Disable use of curl multi support for libcurl < 7.16. Arjen Laarhoven (1): Document 'opendiff' value in config.txt and git-mergetool.txt Bryan Larsen (2): Allow PERL_PATH="/usr/bin/env perl" posix compatibility for t4200 Carl Worth (1): Mention version 1.5.1 in tutorial and user-manual Dana L. How (1): Create pack-write.c for common pack writing code Daniel Barkalow (1): Make xstrndup common Frank Lichtenheld (1): cvsserver: Handle re-added files correctly Jakub Narębski (1): diff format documentation: describe raw combined diff format James Bowes (1): Documentation: fix typo in git-remote.txt Johannes Schindelin (1): Teach import-tars about GNU tar's @LongLink extension. Jonas Fonseca (1): git-tag(1): -v option is a subcommand; fix code block Junio C Hamano (6): blame: use .mailmap unconditionally diff.c: fix "size cache" handling. blame: Notice a wholesale incorporation of an existing file. blame: -C -C -C Add test for blame corner cases. GIT v1.5.2-rc2 Karl Wiberg (2): Fix markup in git-svn man page Add --no-rebase option to git-svn dcommit Linus Torvalds (1): Fix --boundary output Martin Koegler (1): Fix compilation of test-delta Shawn O. Pearce (3): Reuse fixup_pack_header_footer in index-pack Don't use seq in tests, not everyone has it Improve request-pull to handle non-rebased branches İsmail Dönmez (1): gitweb: use decode_utf8 directly Version v1.5.2-rc1; changes since v1.5.2-rc0: --------------------------------------------- Adam Roben (5): Remove usernames from all commit messages, not just when using svmprops git-svn: Don't rely on $_ after making a function call git-svn: Ignore usernames in URLs in find_by_url git-svn: Added 'find-rev' command git-svn: Add 'find-rev' command Alex Riesen (8): Fix handle leak in write_tree Avoid excessive rewrites in merge-recursive Add a test for merging changed and rename-changed branches Ignore merged status of the file-level merge Use strlcpy instead of strncpy in mailmap.c Fix read_mailmap to handle a caller uninterested in repo abbreviation Remove pointless calls to access(2) when checking for .mailmap Include mailmap.h in mailmap.c to catch mailmap interface changes Andrew Ruder (8): Removing -n option from git-diff-files documentation Document additional options for git-fetch Update git-fmt-merge documentation Update git-grep documentation Update -L documentation for git-blame/git-annotate Update git-http-push documentation Update git-local-fetch documentation Update git-http-fetch documentation Andy Parkins (3): post-receive-email example hook: fastforward should have been fast_forward post-receive-email example hook: detect rewind-only updates and output sensible message post-receive-email example hook: sed command for getting description was wrong Brian Gernhardt (2): Reverse the order of -b and --track in the man page. Ignore all man sections as they are generated files. Gerrit Pape (1): Documentation/git-reset.txt: suggest git commit --amend in example. Jari Aalto (3): Clarify SubmittingPatches Checklist git.7: Mention preformatted html doc location send-email documentation: clarify --smtp-server Johannes Schindelin (3): dir.c(common_prefix): Fix two bugs t4201: Do not display weird characters on the terminal import-tars: be nice to wrong directory modes Josh Triplett (5): Add clean.requireForce option, and add -f option to git-clean to override it Fix typo in git-am: s/Was is/Was it/ Create a sysconfdir variable, and use it for ETC_GITCONFIG Add missing reference to GIT_COMMITTER_DATE in git-commit-tree documentation Fall back to $EMAIL for missing GIT_AUTHOR_EMAIL and GIT_COMMITTER_EMAIL Julian Phillips (1): http.c: Fix problem with repeated calls of http_init Junio C Hamano (25): Move index-related variables into a structure. Make read-cache.c "the_index" free. Document "diff=driver" attribute t5302: avoid using tail -c t6030: grab commit object name as we go Build RPM with ETC_GITCONFIG=/etc/gitconfig Diff between two blobs should take mode changes into account now. t/test-lib.sh: Protect ourselves from common misconfiguration that exports CDPATH to the environment gitattributes documentation: clarify overriding applymbox & quiltimport: typofix. Add 'ident' conversion. Add 'filter' attribute and external filter driver definition. Add --date={local,relative,default} Start preparing for 1.5.1.3 Do not barf on too long action description Update .mailmap with "Michael" Fix import-tars fix. blame -s: suppress author name and time. Split out mailmap handling out of shortlog Apply mailmap in git-blame output. Make macros to prevent double-inclusion in headers consistent. Make sure test-genrandom and test-chmtime are builtas part of the main build. Fix symlink handling in git-svn, related to PerlIO GIT v1.5.1.3 GIT v1.5.2-rc1 Luiz Fernando N. Capitulino (5): remove_subtree(): Use strerror() when possible entry.c: Use const qualifier for 'struct checkout' parameters read_cache_from(): small simplification core-tutorial: minor fixes init_buffer(): Kill buf pointer Martin Koegler (5): Add S_IFINVALID mode add get_sha1_with_mode add add_object_array_with_mode store mode in rev_list, if <tree>:<filename> syntax is used use mode of the tree in git-diff, if <tree>:<file> syntax is used Michele Ballabio (1): git shortlog documentation: add long options and fix a typo Nicolas Pitre (1): add file checkout progress OGAWA Hirofumi (1): git-fetch: Fix "argument list too long" Robin H. Johnson (10): Document --dry-run parameter to send-email. Prefix Dry- to the message status to denote dry-runs. Debugging cleanup improvements Change the scope of the $cc variable as it is not needed outside of send_message. Perform correct quoting of recipient names. Validate @recipients before using it for sendmail and Net::SMTP. Ensure clean addresses are always used with Net::SMTP Allow users to optionally specify their envelope sender. Document --dry-run and envelope-sender for git-send-email. Sanitize @to recipients. Sami Farin (1): fast-import: size_t vs ssize_t Shawn O. Pearce (4): Don't repack existing objects in fast-import Actually handle some-low memory conditions Don't allow empty pathnames in fast-import Catch empty pathnames in trees during fsck Uwe Kleine-König (1): fix importing of subversion tars Version v1.5.2-rc0; changes since v1.5.1.6: ------------------------------------------- Alex Riesen (7): Fix passing of TCLTK_PATH to git-gui Fix t4201: accidental arithmetic expansion Fix permissions on test scripts Tests for core subproject support Simplify calling of CR/LF conversion routines Fix a typo in crlf conversion code Fix crash in t0020 (crlf conversion) Alexandre Julliard (1): git.el: Add a commit description to the reflog. Andrew Ruder (1): Add policy on user-interface changes Andy Parkins (1): Show binary file size change in diff --stat Aneesh Kumar K.V (1): gitview: annotation support Brian Gernhardt (2): Remove unused WITH_OWN_SUBPROCESS_PY from RPM spec Remove case-sensitive file in t3030-merge-recursive. Christian Couder (4): Bisect: teach "bisect start" to optionally use one bad and many good revs. Documentation: bisect: "start" accepts one bad and many good commits Bisect: simplify "bisect start" logging. Bisect: rename "t/t6030-bisect-run.sh" to "t/t6030-bisect-porcelain.sh". Eric Wong (1): git-svn: bail out on incorrect command-line options Eygene Ryabinkin (11): Add the WITH_P4IMPORT knob to the Makefile. Added git-p4 package to the list of git RPMs. Added correct Python path to the RPM specfile. NO_TCLTK Add --with-tcltk and --without-tcltk to configure. Rewrite Tcl/Tk interpreter path for the GUI tools. Eliminate checks of user-specified Tcl/Tk interpreter. Allow wish interpreter to be defined with TCLTK_PATH Teach git-gui to use the user-defined UI font everywhere. Improve look-and-feel of the git-gui tool. Do not break git-gui messages into multiple lines. Fernando J. Pereda (1): Makefile: Add '+' to QUIET_SUBDIR0 to fix parallel make. Frank Lichtenheld (16): cvsserver: Introduce new state variable 'method' cvsserver: Handle three part keys in git config correctly cvsserver: Allow to override the configuration per access method cvsserver: Make the database backend configurable cvsserver: Abort if connect to database fails Documentation: Replace @@GIT_VERSION@@ in documentation Documentation: Add version information to man pages cvsserver: Use DBI->table_info instead of DBI->tables cvsserver: Corrections to the database backend configuration cvsserver: Add asciidoc documentation for new database backend configuration gitweb: Allow forks with project list file gitweb: Allow configuring the default projects order and add order 'none' cvsserver: Allow to "add" a removed file cvsserver: Reword documentation on necessity of write access cvsserver: Document the GIT branches -> CVS modules mapping more prominently config.txt: Add gitcvs.db* variables Jakub Narębski (2): gitweb: Whitespace cleanup - tabs are for indent, spaces are for align (3) gitweb: Quote hash keys, and do not use barewords keys James Bowes (1): Document git-check-attr Jim Meyering (1): sscanf/strtoul: parse integers robustly Johannes Schindelin (1): Use print_wrapped_text() in shortlog Julian Phillips (1): refs.c: add a function to sort a ref list, rather then sorting on add Junio C Hamano (83): git-fetch: add --quiet t6002: minor spelling fix. git-rev-list: add --bisect-vars option. git-rev-list --bisect: optimization t6004: add a bit more path optimization test. rev-list --bisect: Fix "halfway" optimization. make the previous optimization work also on path-limited rev-list --bisect Documentation: unbreak user-manual. Optional Tck/Tk: ignore generated files. checkout: allow detaching to HEAD even when switching to the tip of a branch _GIT_INDEX_OUTPUT: allow plumbing to output to an alternative index file. git-read-tree --index-output=<file> add_cache_entry(): removal of file foo does not conflict with foo/bar unpack_trees.c: pass unpack_trees_options structure to keep_entry() as well. unpack-trees: get rid of *indpos parameter. Fix read-tree --prefix=dir/. Fix twoway_merge that passed d/f conflict marker to merged_entry(). Fix switching to a branch with D/F when current branch has file D. RPM spec: include git-p4 in the list of all packages. Fix bogus error message from merge-recursive error path Propagate cache error internal to refresh_cache() via parameter. Rename internal function "add_file_to_cache" in builtin-update-index.c Rename static variable write_index to update_index in builtin-apply.c Rename add_file_to_index() to add_file_to_cache() git-bisect: modernization t6030: add a bit more tests to git-bisect git-bisect: allow bisecting with only one bad commit. git-push reports the URL after failing. git-push to multiple locations does not stop at the first failure A new merge stragety 'subtree'. Start 1.5.2 cycle by prepareing RelNotes for it. shortlog -w: make wrap-line behaviour optional. t1000: fix case table. Treat D/F conflict entry more carefully in unpack-trees.c::threeway_merge() merge-recursive: do not barf on "to be removed" entries. merge-recursive: handle D/F conflict case more carefully. t3030: merge-recursive backend test. git-fetch--tool pick-rref git-fetch: use fetch--tool pick-rref to avoid local fetch from alternate Add %m to '--pretty=format:' Refactor patch-id filtering out of git-cherry and git-format-patch. git-log --cherry-pick A...B Documentation: --cherry-pick Fix git {log,show,...} --pretty=email Add basic infrastructure to assign attributes to paths Define 'crlf' attribute. Teach 'diff' about 'diff' attribute. Fix 'crlf' attribute semantics. Fix 'diff' attribute semantics. Makefile: add patch-ids.h back in. attribute macro support Define a built-in attribute macro "binary". Change attribute negation marker from '!' to '-'. send-email: do not leave an empty CC: line if no cc is present. Make sure quickfetch is not fooled with a previous, incomplete fetch. Allow more than true/false to attributes. merge-recursive: separate out xdl_merge() interface. git-gui: Honor TCLTK_PATH if supplied Allow specifying specialized merge-backend per path. Add a demonstration/test of customized merge. Update draft release notes for 1.5.2 with accumulated changes. Custom low-level merge driver support. Allow the default low-level merge driver to be configured. Custom low-level merge driver: change the configuration scheme. Allow low-level driver to specify different behaviour during internal merge. Fix funny types used in attribute value representation Counto-fix in merge-recursive Simplify code to find recursive merge driver. Documentation: support manual section (5) - file formats. Update 'crlf' attribute semantics. Document gitattributes(5) git-add -u: match the index with working tree. Fix bogus linked-list management for user defined merge drivers. convert.c: restructure the attribute checking part. lockfile: record the primary process. Update documentation links to point at v1.5.1.2 Documentation/Makefile: fix section (5) installation Update draft release notes for v1.5.2 pack-objects: quickfix for permission modes. Fix 'quickfix' on pack-objects. Update tests not to assume that generated packfiles are writable. pack-objects: make generated packfile read-only Support 'diff=pgm' attribute Linus Torvalds (24): Optimize directory listing with pathspec limiter. diff-lib: use ce_mode_from_stat() rather than messing with modes manually Avoid overflowing name buffer in deep directory structures Add 'resolve_gitlink_ref()' helper function Add "S_IFDIRLNK" file mode infrastructure for git links Teach "fsck" not to follow subproject links Teach core object handling functions about gitlinks Fix thinko in subproject entry sorting Teach directory traversal about subprojects Teach git-update-index about gitlinks Don't show gitlink directories when we want "other" files Teach git list-objects logic not to follow gitlinks Teach "git-read-tree -u" to check out submodules as a directory Fix gitlink index entry filesystem matching Teach git list-objects logic to not follow gitlinks Teach "git-read-tree -u" to check out submodules as a directory Fix some "git ls-files -o" fallout from gitlinks Expose subprojects as special files to "git diff" machinery Add a generic "object decorator" interface, and make object refs use it Add support for "commit name decorations" to log family of commands Use proper object allocators for unknown object nodes too Clean up object creation to use more common code Fix working directory errno handling when unlinking a directory Fix a copy-n-paste bug in the object decorator code. Luiz Fernando N. Capitulino (2): ident.c: Use const qualifier for 'struct passwd' parameters ident.c: Use size_t (instead of int) to store sizes Martin Koegler (1): gitweb: Show "no difference" message for empty diff Michael S. Tsirkin (1): Display the subject of the commit just made. Nicolas Pitre (32): clean up and optimize nth_packed_object_sha1() usage get rid of num_packed_objects() make overflow test on delta base offset work regardless of variable size add overflow tests on pack offset variables compute a CRC32 for each object as stored in a pack compute object CRC32 with index-pack pack-objects: learn about pack index version 2 index-pack: learn about pack index version 2 sha1_file.c: learn about index version 2 show-index.c: learn about index v2 pack-redundant.c: learn about index v2 allow forcing index v2 and 64-bit offset treshold validate reused pack data with CRC when possible simple random data generator for tests use test-genrandom in tests instead of /dev/urandom tests for various pack index features clean up add_object_entry() pack-objects: optimize preferred base handling a bit pack-objects: equal objects in size should delta against newer objects pack-objects: rework check_delta_limit usage pack-objects: clean up list sorting pack-objects: get rid of reuse_cached_pack pack-objects: get rid of create_final_object_list() pack-objects: make in_pack_header_size a variable of its own add get_size_from_delta() pack-objects: better check_object() performances pack-objects: remove obsolete comments document --index-version for index-pack and pack-objects common progress display support make progress "title" part of the common progress interface provide a facility for "delayed" progress reporting delay progress display when checking out files René Scharfe (1): git-archive: make tar the default format Robin H. Johnson (2): Add custom subject prefix support to format-patch (take 3) Add testcase for format-patch --subject-prefix (take 3) Shawn O. Pearce (8): Always bind the return key to the default button Fix lost-found to show commits only referenced by reflogs Don't yap about merge-subtree during make git-gui: Display the directory basename in the title Revert "Allow wish interpreter to be defined with TCLTK_PATH" Contribute a fairly paranoid update hook Kill the useless progress meter in merge-recursive Cleanup variables in cat-file Steven Grimm (3): Add --quiet option to suppress output of "rm" commands for removed files. git-rm: Trivial fix for a comment typo. Add --ignore-unmatch option to exit with zero status when no files are removed. Xavier Maillard (2): git-blame.el: separate git-blame-mode to ease maintenance git-blame.el: pick a set of random colors for each git-blame turn Version v1.5.1.6; changes since v1.5.1.5: ----------------------------------------- Eric Wong (2): git-svn: avoid crashing svnserve when creating new directories git-svn: don't minimize-url when doing an init that tracks multiple paths J. Bruce Fields (4): tutorials: add user-manual links tutorial: revise index introduction user-manual: discourage shared repository user-manual: finding commits referencing given file content Johan Herland (1): user-manual: Add section on ignoring files Junio C Hamano (1): GIT 1.5.1.6 Matthias Kestenholz (2): Documentation: Added [verse] to SYNOPSIS where necessary Documentation: Reformatted SYNOPSIS for several commands Version v1.5.1.5; changes since v1.5.1.4: ----------------------------------------- Alex Riesen (1): Allow fetching references from any namespace Andy Whitcroft (1): git name-rev writes beyond the end of malloc() with large generations Eric Wong (4): git-svn: don't drop the username from URLs when dcommit is run git-svn: clean up caching of SVN::Ra functions git-svn: fix segfaults due to initial SVN pool being cleared git-svn: don't attempt to minimize URLs by default Frank Lichtenheld (3): builtin-log.c: Fix typo in comment Documentation: format-patch has no --mbox option git-am: Clean up the asciidoc documentation J. Bruce Fields (10): user-manual: revise birdseye-view chapter glossary: expand and clarify some definitions, prune cross-references user-manual: move quick-start to an appendix Documentation: remove howto's now incorporated into manual user-manual: move howto/make-dist.txt into user manual user-manual: move howto/using-topic-branches into manual user-manual: add a "counting commits" example user-manual: introduce git user-manual: listing commits reachable from some refs not others user-manual: reorganize public git repo discussion Jakub Narębski (1): gitweb: Add a few comments about %feature hash Jan Hudec (1): Updated documentation of hooks in git-receive-pack. Jari Aalto (1): SPECIFYING RANGES typo fix: it it => it is Jeff King (1): format-patch: add MIME-Version header when we add content-type. Johannes Schindelin (2): import-tars: Use the "Link indicator" to identify directories Add a birdview-on-the-source-code section to the user manual Junio C Hamano (7): git-clone: don't get fooled by $PWD .mailmap: add some aliases checkout: allow detaching to HEAD even when switching to the tip of a branch git-config: do not forget seeing "a.b.var" means we are out of "a.var" section. Fix git-clone buglet for remote case. Prepare for 1.5.1.5 Release Notes GIT v1.5.1.5 Marco Costalba (1): Fix an unmatched comment end in arm/sha1_arm.S Matthieu Castet (1): Remove stale non-static-inline prototype for tree_entry_extract() Michael Hendricks (2): git-send-email: allow leading white space on mutt aliases Document core.excludesfile for git-add Petr Baudis (1): Documentation: git-rev-list's "patterns" Quy Tonthat (2): RPM spec: include files in technical/ to package. Documentation/branch: fix small typo in -D example Richard P. Curnow (2): Fix documentation of tag in git-fast-import.txt Fix documentation of tag in git-fast-import.txt Shawn O. Pearce (1): Properly handle '0' filenames in import-tars Steffen Prohaska (3): tiny fix in documentation of git-clone git-config: test for 'do not forget "a.b.var" ends "a.var" section'. Fixed link in user-manual Version v1.5.1.4; changes since v1.5.1.3: ----------------------------------------- Alex Riesen (1): Small correction in reading of commit headers Alexandre Julliard (1): http-fetch: Disable use of curl multi support for libcurl < 7.16. Amos Waterland (1): wcwidth redeclaration Arjen Laarhoven (1): Document 'opendiff' value in config.txt and git-mergetool.txt Bryan Larsen (2): Allow PERL_PATH="/usr/bin/env perl" posix compatibility for t4200 Carl Worth (1): Mention version 1.5.1 in tutorial and user-manual Daniel Barkalow (1): Make xstrndup common Frank Lichtenheld (1): cvsserver: Handle re-added files correctly J. Bruce Fields (7): user-manual: more discussion of detached heads, fix typos user-manual: add section ID's user-manual: clean up fast-forward and dangling-objects sections user-manual: fix .gitconfig editing examples user-manual: miscellaneous editing user-manual: stop deprecating the manual user-manual: fix clone and fetch typos Jakub Narębski (1): diff format documentation: describe raw combined diff format James Bowes (1): Documentation: fix typo in git-remote.txt Jeff King (1): Documentation: don't reference non-existent 'git-cvsapplycommit' Johannes Schindelin (1): Teach import-tars about GNU tar's @LongLink extension. Junio C Hamano (5): diff.c: fix "size cache" handling. blame: Notice a wholesale incorporation of an existing file. blame: -C -C -C Add test for blame corner cases. GIT v1.5.1.4 Karl Wiberg (2): Fix markup in git-svn man page Add --no-rebase option to git-svn dcommit Linus Torvalds (1): Fix --boundary output Martin Koegler (1): Fix compilation of test-delta Paul Mackerras (1): gitk: Allow user to choose whether to see the diff, old file, or new file Quy Tonthat (1): Add howto files to rpm packages. Shawn O. Pearce (1): git-gui: Allow spaces in path to 'wish' İsmail Dönmez (1): gitweb: use decode_utf8 directly Version v1.5.1.3; changes since v1.5.1.2: ----------------------------------------- Adam Roben (5): Remove usernames from all commit messages, not just when using svmprops git-svn: Don't rely on $_ after making a function call git-svn: Ignore usernames in URLs in find_by_url git-svn: Added 'find-rev' command git-svn: Add 'find-rev' command Alex Riesen (1): Fix handle leak in write_tree Andrew Ruder (8): Removing -n option from git-diff-files documentation Document additional options for git-fetch Update git-fmt-merge documentation Update git-grep documentation Update -L documentation for git-blame/git-annotate Update git-http-push documentation Update git-local-fetch documentation Update git-http-fetch documentation Brian Gernhardt (2): Reverse the order of -b and --track in the man page. Ignore all man sections as they are generated files. Gerrit Pape (1): Documentation/git-reset.txt: suggest git commit --amend in example. Jari Aalto (3): Clarify SubmittingPatches Checklist git.7: Mention preformatted html doc location send-email documentation: clarify --smtp-server Johannes Schindelin (2): dir.c(common_prefix): Fix two bugs import-tars: be nice to wrong directory modes Josh Triplett (3): Fix typo in git-am: s/Was is/Was it/ Create a sysconfdir variable, and use it for ETC_GITCONFIG Add missing reference to GIT_COMMITTER_DATE in git-commit-tree documentation Julian Phillips (1): http.c: Fix problem with repeated calls of http_init Junio C Hamano (8): Build RPM with ETC_GITCONFIG=/etc/gitconfig applymbox & quiltimport: typofix. Start preparing for 1.5.1.3 Do not barf on too long action description Update .mailmap with "Michael" Fix import-tars fix. Fix symlink handling in git-svn, related to PerlIO GIT v1.5.1.3 Michele Ballabio (1): git shortlog documentation: add long options and fix a typo Robin H. Johnson (10): Document --dry-run parameter to send-email. Prefix Dry- to the message status to denote dry-runs. Debugging cleanup improvements Change the scope of the $cc variable as it is not needed outside of send_message. Perform correct quoting of recipient names. Validate @recipients before using it for sendmail and Net::SMTP. Ensure clean addresses are always used with Net::SMTP Allow users to optionally specify their envelope sender. Document --dry-run and envelope-sender for git-send-email. Sanitize @to recipients. Shawn O. Pearce (3): Actually handle some-low memory conditions Don't allow empty pathnames in fast-import Catch empty pathnames in trees during fsck Version v1.5.1.2; changes since v1.5.1.1: ----------------------------------------- Alex Riesen (3): Use rev-list --reverse in git-rebase.sh Document -g (--walk-reflogs) option of git-log Fix overwriting of files when applying contextually independent diffs Andrew Ruder (8): Update git-am documentation Update git-applymbox documentation Update git-apply documentation Update git-annotate/git-blame documentation Update git-archive documentation Update git-cherry-pick documentation Fix unmatched emphasis tag in git-tutorial Update git-config documentation Andy Whitcroft (1): fix up strtoul_ui error handling Carlos Rica (1): Use const qualifier for 'sha1' parameter in delete_ref function Eric Wong (4): git-svn: respect lower bound of -r/--revision when following parent git-svn: quiet some warnings when run only with --version/--help git-svn: don't allow globs to match regular files perl: install private Error.pm if the site version is older than our own Eygene Ryabinkin (2): Teach gitk to use the user-defined UI font everywhere. Improve look-and-feel of the gitk tool. Frank Lichtenheld (5): config.txt: Document gitcvs.allbinary config.txt: Document core.autocrlf config.txt: Change pserver to server in description of gitcvs.* config.txt: Fix grammatical error in description of http.noEPSV git-shortlog: Fix two formatting errors in asciidoc documentation Gerrit Pape (2): variable $projectdesc needs to be set before checking against unchanged default. Have sample update hook not refuse deleting a branch through push. J. Bruce Fields (7): Documentation: minor edits of git-lost-found manpage Documentation: clarify git-checkout -f, minor editing Documentation: clarify track/no-track option. user-manual: fix discussion of default clone user-manual: detached HEAD user-manual: start revising "internals" chapter user-manual: use detached head when rewriting history Jim Meyering (1): sscanf/strtoul: parse integers robustly Junio C Hamano (4): Do not default to --no-index when given two directories. Start preparing for 1.5.1.2 git-clone: fix dumb protocol transport to clone from pack-pruned ref GIT 1.5.1.2 Linus Torvalds (1): git-quiltimport complaining yet still working Matthias Lederhofer (1): handle_options in git wrapper miscounts the options it handled. Michael Spang (1): git-blame: Fix overrun in fake_working_tree_commit() Sam Vilain (1): git-tar-tree: complete deprecation conversion message Shawn O. Pearce (1): git-gui: Brown paper bag fix division by 0 in blame Version v1.5.1.1; changes since v1.5.1: --------------------------------------- Arjen Laarhoven (4): usermanual.txt: some capitalization nits t3200-branch.sh: small language nit t5300-pack-object.sh: portability issue using /usr/bin/stat Makefile: iconv() on Darwin has the old interface Brian Gernhardt (3): Fix t4200-rerere for white-space from "wc -l" Document --left-right option to rev-list. Distinguish branches by more than case in tests. Dana L. How (1): Fix lseek(2) calls with args 2 and 3 swapped Eric Wong (3): git-svn: bail out on incorrect command-line options git-svn: dcommit/rebase confused by patches with git-svn-id: lines git-svn: fix log command to avoid infinite loop on long commit messages Frank Lichtenheld (7): cvsimport: sync usage lines with existing options cvsimport: Improve documentation of CVSROOT and CVS module determination cvsimport: Improve usage error reporting cvsimport: Reorder options in documentation for better understanding cvsimport: Improve formating consistency cvsserver: small corrections to asciidoc documentation cvsserver: Fix handling of diappeared files on update Geert Bosch (1): Fix renaming branch without config file Gerrit Pape (1): rename contrib/hooks/post-receieve-email to contrib/hooks/post-receive-email. Jakub Narębski (1): gitweb: Fix bug in "blobdiff" view for split (e.g. file to symlink) patches Jim Meyering (1): (encode_85, decode_85): Mark source buffer pointer as "const". Julian Phillips (1): Documentation: show-ref: document --exclude-existing Junio C Hamano (7): rerere: make sorting really stable. Fix dependency of common-cmds.h Documentation: tighten dependency for git.{html,txt} Prepare for 1.5.1.1 Add Documentation/cmd-list.made to .gitignore fsck: do not complain on detached HEAD. GIT 1.5.1.1 Lars Hjemli (2): rename_ref(): only print a warning when config-file update fails Make builtin-branch.c handle the git config file René Scharfe (1): Revert "builtin-archive: use RUN_SETUP" Shawn O. Pearce (1): Honor -p<n> when applying git diffs Tomash Brechko (1): cvsexportcommit -p : fix the usage of git-apply -C. Ville Skyttä (1): DESTDIR support for git/contrib/emacs YOSHIFUJI Hideaki (1): Avoid composing too long "References" header. Version v1.5.1; changes since v1.5.1-rc3: ----------------------------------------- Alex Riesen (1): Keep rename/rename conflicts of intermediate merges while doing recursive merge Andy Parkins (1): Reimplement emailing part of hooks--update in contrib/hooks/post-receive-email Christian Couder (1): Bisect: Improve error message in "bisect_next_check". Don Zickus (1): git-mailinfo fixes for patch munging Eric Wong (2): git-svn: avoid respewing similar error messages for missing paths git-svn: fail on rebase if we are unable to find a ref to rebase against Francis Daly (1): git-quiltimport /bin/sh-ism fix Frank Lichtenheld (1): cvsserver: Don't lie about binary mode in asciidoc documentation Gerrit Pape (2): Documentation/git-svnimport.txt: fix typo. Documentation/git-rev-parse.txt: fix example in SPECIFYING RANGES. H. Peter Anvin (1): git-upload-pack: make sure we close unused pipe ends Jakub Narębski (2): gitweb: Support comparing blobs (files) with different names Documentation: A few minor fixes to Git User's Manual Julian Phillips (1): contrib/workdir: add a simple script to create a working directory Junio C Hamano (6): Update draft release notes for 1.5.1 Do not bother documenting fetch--tool Hopefully final update to the draft Release Notes, preparing for 1.5.1 rerere should not repeat the earlier hunks in later ones GIT 1.5.0.7 GIT 1.5.1 Nicolas Pitre (1): Plug memory leak in index-pack collision checking codepath. Theodore Ts'o (12): Fix minor formatting issue in man page for git-mergetool mergetool: Replace use of "echo -n" with printf(1) to be more portable mergetool: Don't error out in the merge case where the local file is deleted mergetool: portability fix: don't assume true is in /bin mergetool: portability fix: don't use reserved word function mergetool: factor out common code mergetool: Remove spurious error message if merge.tool config option not set mergetool: Fix abort command when resolving symlinks and deleted files mergetool: Add support for Apple Mac OS X's opendiff command mergetool: Make git-rm quiet when resolving a deleted file conflict mergetool: Clean up description of files and prompts for merge resolutions Rename warn() to warning() to fix symbol conflicts on BSD and Mac OS Version v1.5.1-rc3; changes since v1.5.1-rc2: --------------------------------------------- Alexandre Julliard (1): git.el: Display some information about the HEAD commit. Christian Couder (2): Bisect: Use "git-show-ref --verify" when reseting. Bisect: add checks at the beginning of "git bisect run". Gerrit Pape (3): Makefile: remove test-chmtime program in target clean. http-fetch: don't use double-slash as directory separator in URLs http-fetch: remove path_len from struct alt_base, it was computed but never used H. Peter Anvin (1): git-upload-pack: make sure we close unused pipe ends Jakub Narębski (2): gitweb: Add example of config file and how to generate projects list to gitweb/INSTALL gitweb: Cleanup and uniquify die_error calls James Bowes (2): read-tree: use xcalloc use xrealloc in help.c Jeff King (6): git-rm: don't remove newly added file without -f --pretty=format: fix broken %ct and %at interpolation Add some basic tests of rev-list --pretty=format Fix "--pretty=format:" encoding item t/t6006: add tests for a slightly more complex commit messages commit: fix pretty-printing of messages with "\nencoding " Jim Meyering (1): sha1_file.c (write_sha1_from_fd): Detect close failure. Johannes Schindelin (1): t4118: be nice to non-GNU sed Junio C Hamano (7): Document git-log --first-parent sha1_file.c (write_sha1_file): Detect close failure git-commit: "read-tree -m HEAD" is not the right way to read-tree quickly Fix "--pretty=format:" for parent related items. GIT 1.5.0.6 Update main git.html page to point at 1.5.0.6 documentation GIT 1.5.1-rc3 Linus Torvalds (1): Fix "getaddrinfo()" buglet Version v1.5.1-rc2; changes since v1.5.1-rc1: --------------------------------------------- Alex Riesen (2): Document --quiet option to git-diff Use diff* with --exit-code in git-am, git-rebase and git-merge-ours Andy Parkins (2): update-hook: abort early if the project description is unset update-hook: remove e-mail sending hook. Brandon Casey (1): prefer "git COMMAND" over "git-COMMAND" in gitk Chris Wright (1): make git clone -q suppress the noise with http fetch Christian Couder (6): Bisect: implement "git bisect run <cmd>..." to automatically bisect. Documentation: bisect: reformat some paragraphs. Documentation: bisect: reword one paragraph. Documentation: bisect: reformat more paragraphs. Documentation: bisect: add some titles to some paragraphs. Documentation: bisect: make a comment fit better in the man page. Eric Wong (2): gitk: bind <F5> key to Update (reread commits) git-svn: fix rel_path() when not connected to the repository root J. Bruce Fields (5): user-manual: run xsltproc without --nonet option user-manual: Use def_ instead of ref_ for glossary references. glossary: stop generating automatically glossary: clean up cross-references user-manual: introduce "branch" and "branch head" differently Jakub Narębski (4): gitweb: Fix "next" link in commit view gitweb: Don't escape attributes in CGI.pm HTML methods gitweb: Fix not marking signoff lines in "log" view gitweb: Add some installation notes in gitweb/INSTALL James Bowes (2): Replace remaining instances of strdup with xstrdup. use xmalloc in git.c and help.c Jim Meyering (1): user-manual.txt: fix a tiny typo. Johannes Schindelin (5): xdiff/xutils.c(xdl_hash_record): factor out whitespace handling Add a HOWTO for setting up a standalone git daemon Provide some technical documentation for shallow clones t4118: be nice to non-GNU sed git-revert: Revert revert message to old behaviour Johannes Sixt (1): Teach git-remote to list pushed branches. Junio C Hamano (15): git-log --first-parent: show only the first parent log blame: micro-optimize cmp_suspect() blame: cmp_suspect is not "cmp" anymore. Teach tree_entry_interesting() that the tree entries are sorted. tree-diff: avoid strncmp() tree_entry_interesting(): allow it to say "everything is interesting" git-rebase: make 'rebase HEAD branch' work as expected. git-apply: Do not free the wrong buffer when we convert the data for writeout checkout: report where the new HEAD is upon detaching HEAD git-bisect: typofix git-bisect.sh: properly dq $GIT_DIR Fix path-limited "rev-list --bisect" termination condition. git-am documentation: describe what is taken from where. Update README to point at a few key periodical messages to the list GIT 1.5.1-rc2 Li Yang (1): gitweb: Change to use explicitly function call cgi->escapHTML() Linus Torvalds (6): Fix loose object uncompression check. Don't ever return corrupt objects from "parse_object()" Be more careful about zlib return values Remove "pathlen" from "struct name_entry" Initialize tree descriptors with a helper function rather than by hand. Switch over tree descriptors to contain a pre-parsed entry Michael S. Tsirkin (2): fix typo in git-am manpage git-merge: Put FETCH_HEAD data in merge commit message Nicolas Pitre (10): clean up the delta base cache size a bit use a LRU eviction policy for the delta base cache don't ever allow SHA1 collisions to exist by fetching a pack index-pack: use hash_sha1_file() index-pack: more validation checks and cleanups improve checkout message when asking for same branch minor git-prune optimization update HEAD reflog when branch pointed to by HEAD is directly modified make it more obvious that temporary files are temporary files write_sha1_from_fd() should make new objects read-only Peter Eriksen (1): Documentation/pack-format.txt: Clear up description of types. Santi Béjar (1): git-fetch: Fix single_force in append_fetch_head Shawn O. Pearce (1): contrib/continuous: a continuous integration build manager Uwe Kleine-König (1): Bisect: convert revs given to good and bad to commits Version v1.5.1-rc1; changes since v1.5.0.7: ------------------------------------------- Alex Riesen (7): disable t4016-diff-quote.sh on some filesystems git-gui: Support of "make -s" in: do not output anything of the build itself More build output cleaning up Support of "make -s": do not output anything of the build itself Allow "make -w" generate its usual output Allow git-diff exit with codes similar to diff(1) Add tests for --quiet option of diff programs Alexandre Julliard (1): git.el: Add support for commit hooks. Andy Parkins (7): Only show log entries for new revisions in hooks--update Have git-cvsserver call hooks/update before really altering the ref The "table-of-contents" in the update hook script should match the body cvsserver: Remove trailing "\n" from commithash in checkin function cvsserver: Make always-binary mode a config file option Sample update hook: typofix and modernization to use "git log" update-hook: fix incorrect use of git-describe and sed for finding previous tag Aneesh Kumar K.V (1): Documentation: document remote.<name>.tagopt Avi Kivity (1): git-send-email: configurable bcc and chain-reply-to Don Zickus (3): builtin-mailinfo.c infrastrcture changes restrict the patch filtering Add a couple more test cases to the suite. Eric Wong (119): git-svn: move authentication prompts into their own namespace git-svn: cleanup: move process_rm around git-svn: cleanup: put SVN workarounds into their own namespace git-svn: cleanup: avoid re-use()ing Git.pm in sub-packages git-svn: add Git::SVN module (to avoid global variables) git-svn: convert 'init' to use Git::SVN git-svn: convert multi-init over to using Git::SVN git-svn: make multi-init capable of reusing the Ra connection git-svn: add a test for show-ignore git-svn: convert show-ignore over to Git::SVN git-svn: moved the 'log' command into its own namespace git-svn: port the 'rebuild' command to use Git::SVN objects git-svn: do not let Git.pm warn if we prematurely close pipes git-svn: convert the 'commit-diff' command to Git::SVN git-svn: get rid of Memoize for now... git-svn: fetch/multi-fetch converted over to Git::SVN module git-svn: switch dcommit to using Git::SVN code git-svn: convert 'set-tree' command to use Git::SVN git-svn: remove graft-branches command git-svn: add support for metadata in .git/config git-svn: fix a regression in dcommit that caused empty log messages git-svn: reuse open SVN::Ra connections by URL git-svn: enable --minimize to simplify the config and connections git-svn: fix --follow-parent to work with Git::SVN git-svn: --follow-parent works with svn-remotes multiple branches git-svn: disallow ambigious local refspecs git-svn: allow --follow-parent on deleted directories git-svn: get rid of additional fetch-arguments git-svn: allow 'init' to work outside of tests git-svn: better error reporting if --follow-parent fails git-svn: 'init' attempts to connect to the repository root if possible git-svn: --follow-parent now works on sub-directories of larger branches git-svn: track writes writes to the index in fetch git-svn: add an odd test case that seems to cause segfaults over HTTP git-svn: avoid tracking change-less revisions git-svn: correctly track revisions made to deleted branches git-svn: fix segfaults from accessing svn_log_changed_path_t git-svn: fix committing to subdirectories, add tests git-svn: avoid an extra svn_ra connection during commits git-svn: simplify usage of the SVN::Git::Editor interface git-svn: cleanup remove unused function git-svn: allow multi-fetch to fetch things chronologically git-svn: correctly track diff-less copies with do_switch git-svn: correctly handle do_{switch,update} in deep directories git-svn: stop using path names as refnames with --follow-parent git-svn: cleanup: move editor-specific variables into the editor namespace git-svn: just use Digest::MD5 instead of requiring it git-svn: reinstate the default SVN error handler after using get_log git-svn: don't rely on do_switch + reparenting with svn(+ssh):// git-svn: fetch tracks initial change with --follow-parent git-svn: remove the 'rebuild' command and make the functionality automatic git-svn: fix several fetch bugs related to repeated invocations git-svn: reinstate --no-metadata, add --svn-remote=, variable cleanups git-svn: gracefully handle --follow-parent failures git-svn: make (multi-)fetch safer but slower git-svn: avoid a huge memory spike with high-numbered revisions git-svn: re-enable repacking flags git-svn: do our best to ensure that our ref and rev_db are consistent git-svn: avoid redundant get_log calls between invocations git-svn: use sys* IO functions for reading rev_db git-svn: don't write to the config file from --follow-parent git-svn: save paths to tags/branches with for future reuse git-svn: migrations default to [svn-remote "git-svn"] git-svn: get rid of revisions_eq check for --follow-parent git-svn: avoid extra get_log calls when refspecs are added for fetching git-svn: just name the default svn-remote "svn" instead of "git-svn" git-svn: prepare multi-init for wildcard support git-svn: reintroduce using a single get_log() to fetch git-svn: run get_log() on a sub-directory if possible git-svn: implement auto-discovery of branches/tags git-svn: --follow-parent tracks multi-parent paths git-svn: remove check_path calls before calling do_update git-svn: remove some noisy debugging messages git-svn: enable follow-parent functionality by default git-svn: fix buggy regular expression usage in several places git-svn: correctly handle the -q flag in SVN::Git::Fetcher git-svn: correctly handle globs with a right-hand-side path component git-svn: remove optimized commit stuff for set-tree git-svn: add support for SVN::Mirror/svk using revprops for metadata git-svn: add support for per-[svn-remote "..."] options git-svn: use private $GIT_DIR/svn/config file more git-svn: extra safety for noMetadata and useSvmProps users git-svn: use separate, per-repository .rev_db files git-svn: write the highest maxRex out for branches and tags git-svn: handle multi-init without --trunk, UseSvmProps fixes git-svn: make dcommit usable for glob users git-svn: include merges when calling rev-list for decommit git-svn: usability fixes for the 'git svn log' command t910*: s/repo-config/config/g; poke around possible race conditions git-svn: hopefully make 'fetch' more user-friendly git-svn: allow 'init' to act as multi-init git-svn: brown paper bag fixes git-svn: simplify the (multi-)init methods of fetching git-svn: allow --log-window-size to be specified, default to 100 git-svn: remember to check for clean indices on globbed refs, too git-svn: error checking for invalid [svn-remote "..."] sections git-svn: allow dcommit for those who only fetch from SVM with useSvmProps git-svn: documentation updates for new functionality git-svn: add support for --stat in the log command git-svn: checkout files on new fetches git-svn: add a 'rebase' command git-svn: fix some issues for people migrating from older versions git-svn: hide the private git-svn 'config' file as '.metadata' git-svn: add 'clone' command, an alias for init + fetch git-svn: allow overriding of the SVN repo root in metadata git-svn: add support for using svnsync properties git-svn: fix useSvmProps, hopefully for the last time git-svn: add test for useSvnsyncProps git-svn: documentation updates git-svn: allow metadata options to be specified with 'init' and 'clone' git-svn: give show-ignore HEAD smarts, like dcommit and log git-svn: ensure we're at the top-level and can access $GIT_DIR git-svn: fix clone when a target directory has been specified git-svn: fix reconnections to different paths of svn:// repositories git-svn: fix some potential bugs with --follow-parent Add test-chmtime: a utility to change mtime on files Update tests to use test-chmtime git-svn: fix show-ignore when not connected to the repository root git-svn: add -l/--local command to "git svn rebase" Frank Lichtenheld (3): cvsserver: Use Merged response instead of Update-existing for merged files cvsserver: Be more chatty cvsserver: further improve messages on commit and status Fredrik Kuivinen (1): New autoconf test for iconv J. Bruce Fields (1): Make git-send-email aware of Cc: lines. Jakub Narębski (1): gitweb: Don't escape attributes in CGI.pm HTML methods James Bowes (3): add: Support specifying an excludes file with a configuration variable Make gc a builtin. mergetool: Add support for vimdiff. Jeff King (1): New fast-import test case for valid tree sorting Jim Meyering (2): I like the idea of the new ':/<oneline prefix>' notation, and gave it a try, but all I could get was a segfault. It was dereferencing a NULL commit list. Fix below. With it, this example now works: git-grep: don't use sscanf Johannes Schindelin (42): Teach revision machinery about --reverse teach diff machinery about --ignore-space-at-eol name-rev: introduce the --refs=<pattern> option diff --check: use colour apply: fix memory leak in prefix_one() name-rev: avoid "^0" when unneeded rev-list --max-age, --max-count: support --boundary fetch & clone: do not output progress when not on a tty config: read system-wide defaults from /etc/gitconfig git grep: use pager Teach diff -B about colours apply: make --verbose a little more useful Teach git-diff-files the new option `--no-index` pretty-formats: add 'format:<string>' Make tests independent of global config files Add git-bundle: move objects and references by archive git-bundle: assorted fixes git-bundle: avoid fork() in verify_bundle() git-bundle: fix 'create --all' git-bundle: record commit summary in the prerequisite data Fixup no-progress for fetch & clone object name: introduce ':/<oneline prefix>' notation Fix typo: do not show name1 when name2 fails diff --no-index: also imitate the exit status of diff(1) Actually make print_wrapped_text() useful show_date(): rename the "relative" parameter to "mode" diff: make more cases implicit --no-index print_wrapped_text: fix output for negative indent Make git-revert & git-cherry-pick a builtin diff: support reading a file from stdin via "-" diff --no-index: support /dev/null as filename Get rid of the dependency to GNU diff in the tests cherry-pick: Suggest a better method to retain authorship format-patch: add --inline option and make --attach a true attachment bundle: fix wrong check of read_header()'s return value & add tests git-bundle: avoid packing objects which are in the prerequisites git-bundle: Make thin packs git-bundle: handle thin packs in subcommand "unbundle" git-bundle: die if a given ref is not included in bundle git-bundle: prevent overwriting existing bundles git-bundle: only die if pack would be empty, warn if ref is skipped Do not output "GEN " when generating perl.mak Johannes Sixt (3): Add core.symlinks to mark filesystems that do not support symbolic links. Handle core.symlinks=false case in merge-recursive. Tell multi-parent diff about core.symlinks. Julian Phillips (5): Allow fetch--tool to read from stdin Use stdin reflist passing in parse-remote Use stdin reflist passing in git-fetch.sh git-branch: improve abbreviation of sha1s in verbose mode git-branch: document new --no-abbrev option Junio C Hamano (80): git-diff/git-apply: make diff output a bit friendlier to GNU patch (part 2) Make merge-base a built-in. Allow in_merge_bases() to take more than one reference commits. Remove git-resolve. Remove git-diff-stages. Add link to v1.5.0 documentation. blame: --show-stats for easier optimization work. git-fetch: split fetch_main into fetch_dumb and fetch_native git-fetch--tool: start rewriting parts of git-fetch in C. git-fetch: move more code into C. git-fetch: rewrite another shell loop in C git-fetch: rewrite expand_ref_wildcard in C Document --ignore-space-at-eol option. Add RelNotes 1.5.1 Point top-level RelNotes link at 1.5.1 release notes being prepared. t0020: add test for auto-crlf remotes.not-origin.tagopt Teach 'git apply' to look at $GIT_DIR/config Teach core.autocrlf to 'git apply' Update draft release notes for 1.5.1 Teach 'git apply' to look at $HOME/.gitconfig even outside of a repository git-apply: do not lose cwd when run from a subdirectory. git-apply: require -p<n> when working in a subdirectory. Link 1.5.0.1 documentation from the main page. Add prefixcmp() Mechanical conversion to use prefixcmp() prefixcmp(): fix-up mechanical conversion. prefixcmp(): fix-up leftover strncmp(). t4119: add test for traditional patch and different p_value Fix botched "leak fix" git-apply: notice "diff --git" patch again git-apply: guess correct -p<n> value for non-git patches. t4119: test autocomputing -p<n> for traditional diff input. git-status: do not be totally useless in a read-only repository. update-index: do not die too early in a read-only repository. run_diff_{files,index}(): update calling convention. .mailmap maintenance after pulling from git-svn bundle: reword missing prerequisite error message git-fetch--tool takes flags before the subcommand. diff --cached: give more sensible error message when HEAD is yet to be created. Documentation: link in 1.5.0.2 material to the top documentation page. builtin-fetch--tool: adjust to updated sha1_object_info(). Make 'cvs ci' lockless in git-cvsserver by using git-update-ref fetch--tool: fix uninitialized buffer when reading from stdin builtin-fetch--tool: make sure not to overstep ls-remote-result buffer. index_fd(): use enum object_type instead of type name string. index_fd(): pass optional path parameter as hint for blob conversion index_fd(): convert blob only if it is a regular file. Add recent changes to draft 1.5.1 release notes. git-fetch: retire update-local-ref which is not used anymore. builtin-fetch--tool: fix reflog notes. diff-ni: allow running from a subdirectory. diff-ni: fix the diff with standard input .gitignore: add git-fetch--tool format-patch --attach: not folding some long headers. Post 1.5.0.3 cleanup fsck: fix broken loose object check. unpack_sha1_file(): detect corrupt loose object files. fsck: exit with non-zero status upon errors git-bundle: fix pack generation. revision walker: Fix --boundary when limited revision traversal: retire BOUNDARY_SHOW git-bundle: various fixups revision traversal: SHOWN means shown git-bundle: make verify a bit more chatty. revision --boundary: fix stupid typo revision --boundary: fix uncounted case. Fix broken create_branch() in builtin-branch. prepare_packed_git(): sort packs by age and localness. Documentation: add git-mergetool to the command list. shortlog: prompt when reading from terminal by mistake Remove unused diffcore_std_no_resolve diff --quiet Teach --quiet to diff backends. revision.c: explain what tree_difference does try-to-simplify-commit: use diff-tree --quiet machinery. applymbox: brown paper bag fix. Update main git.html page to point at 1.5.0.5 documentation Fix merge-index GIT 1.5.1-rc1 Li Yang (1): gitweb: Change to use explicitly function call cgi->escapHTML() Linus Torvalds (8): Lazy man's auto-CRLF Make AutoCRLF ternary variable. Re-fix get_sha1_oneline() Make trivial wrapper functions around delta base generation and freeing Implement a simple delta_base cache Avoid unnecessary strlen() calls Trivial cleanup of track_tree_refs() Set up for better tree diff optimizations Martin Waitz (1): Support for large files on 32bit systems. Michael Coleman (2): git-send-email: abort/usage on bad option fix various doc typos Nicolas Pitre (12): sha1_file.c: cleanup hdr usage sha1_file.c: cleanup "offset" usage sha1_file.c: don't ignore an error condition in sha1_loose_object_info() formalize typename(), and add its reverse type_from_string() convert object type handling from a string to a number get rid of lookup_object_type() make sure enum object_type is signed local-fetch.c: some error printing cleanup fix t5300-pack-object.sh add test for OFS_DELTA objects clean up pack index handling a bit Reuse cached data out of delta base cache. Paolo Bonzini (5): git-config: document --rename-section, provide --remove-section git-archimport: allow remapping branch names git-commit: add a --interactive option git-branch, git-checkout: autosetup for remote branch tracking git-fetch, git-branch: Support local --track via a special remote '.' Pavel Roskin (1): git-remote: support remotes with a dot in the name Sam Vilain (3): git-svn: make test for SVK mirror path import git-svn: don't consider SVN URL usernames significant when comparing git-svn: document --username Santi Béjar (2): t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch t/t5515-fetch-merge-logic.sh: Add two more tests Sergey Vlasov (1): Documentation/git-svn.txt: Fix formatting errors Shawn O. Pearce (43): Cleanup check_valid in commit-tree. cherry-pick: Bug fix 'cherry picked from' message. Make 'make' quieter while building git Make 'make' quiet by default Display the null SHA-1 as the base for an OBJ_OFS_DELTA. Fix mmap leak caused by reading bad indexes. Don't build external_grep if its not used General const correctness fixes Use uint32_t for all packed object counts. Use uint32_t for pack-objects counters. Use off_t when we really mean a file offset. Use off_t in pack-objects/fast-import when we mean an offset Cast 64 bit off_t to 32 bit size_t Preallocate memory earlier in fast-import Move post-update hook to after all other activity Don't run post-update hook unless a ref changed Refactor run_update_hook to be more useful Refactor handling of error_string in receive-pack Teach receive-pack to run pre-receive/post-receive hooks Use atomic updates to the fast-import mark file Allow fast-import frontends to reload the marks table Switch to run_command_v_opt in revert Remove unused run_command variants Start defining a more sophisticated run_command Split run_command into two halves (start/finish) Teach run_command how to setup a stdin pipe Refactor run_command error handling in receive-pack Split back out update_hook handling in receive-pack Change {pre,post}-receive hooks to use stdin Remove unnecessary casts from fast-import Simplify closing two fds at once in run-command.c Fix t5510-fetch's use of sed Teach run-command about stdout redirection Teach run-command to redirect stdout to /dev/null Replace fork_with_pipe in bundle with run_command Correct new compiler warnings in builtin-revert Use RUN_GIT_CMD to run push backends Use run_command for proxy connections Use run_command within merge-index Use run_command within receive-pack to invoke index-pack Use run_command within send-pack use xstrdup please Limit the size of the new delta_base_cache Simon 'corecode' Schubert (1): Allow passing of an alternative CVSROOT via -d. Theodore Ts'o (5): Teach git-remote to update existing remotes by fetching from them Add config_boolean() method to the Git perl module Allow git-remote to update named groups of remotes Add git-mergetool to run an appropriate merge conflict resolution program mergetool: print an appropriate warning if merge.tool is unknown Xavier Maillard (1): contrib/emacs: Use non-interactive function to byte-compile files Version v1.5.0.7; changes since v1.5.0.6: ----------------------------------------- Gerrit Pape (2): Documentation/git-svnimport.txt: fix typo. Documentation/git-rev-parse.txt: fix example in SPECIFYING RANGES. H. Peter Anvin (1): git-upload-pack: make sure we close unused pipe ends Junio C Hamano (2): rerere should not repeat the earlier hunks in later ones GIT 1.5.0.7 Version v1.5.0.6; changes since v1.5.0.5: ----------------------------------------- J. Bruce Fields (5): user-manual: run xsltproc without --nonet option user-manual: Use def_ instead of ref_ for glossary references. glossary: stop generating automatically glossary: clean up cross-references user-manual: introduce "branch" and "branch head" differently Jakub Narębski (4): gitweb: Fix "next" link in commit view gitweb: Don't escape attributes in CGI.pm HTML methods gitweb: Fix not marking signoff lines in "log" view gitweb: Add some installation notes in gitweb/INSTALL Jeff King (1): commit: fix pretty-printing of messages with "\nencoding " Jim Meyering (1): user-manual.txt: fix a tiny typo. Johannes Schindelin (1): t4118: be nice to non-GNU sed Junio C Hamano (2): git-commit: "read-tree -m HEAD" is not the right way to read-tree quickly GIT 1.5.0.6 Li Yang (1): gitweb: Change to use explicitly function call cgi->escapHTML() Michael S. Tsirkin (1): fix typo in git-am manpage Peter Eriksen (1): Documentation/pack-format.txt: Clear up description of types. Version v1.5.0.5; changes since v1.5.0.4: ----------------------------------------- Junio C Hamano (1): GIT 1.5.0.5 Santi Béjar (1): git-merge: finish when git-read-tree fails Version v1.5.0.4; changes since v1.5.0.3: ----------------------------------------- Alexandre Julliard (2): git.el: Avoid appending a signoff line that is already present. git.el: Retrieve commit log information from .dotest directory. Avi Kivity (1): git-send-email: Document configuration options Brian Gernhardt (1): Fix diff-options references in git-diff and git-format-patch Frank Lichtenheld (1): cvsserver: asciidoc formatting changes J. Bruce Fields (7): glossary: fix overoptimistic automatic linking of defined terms user-manual: fix inconsistent example user-manual: fix inconsistent use of pull and merge user-manual: fix missing colon in git-show example user-manual: fix rendering of history diagrams user-manual: install user manual stylesheet with other web documents git-merge: warn when -m provided on a fast forward Jeff King (2): Documentation: s/seperator/separator/ fast-import: grow tree storage more aggressively Johannes Schindelin (2): Begin SubmittingPatches with a check list make t8001 work on Mac OS X again Junio C Hamano (3): git-commit: cd to top before showing the final stat git-checkout: fix "eval" used for merge labelling. GIT 1.5.0.4 Matthias Kestenholz (1): Adjust reflog filemode in shared repository Matthias Lederhofer (1): setup_git_directory_gently: fix off-by-one error Shawn O. Pearce (13): git-gui: Relocate the menu/transport menu code. git-gui: Add Reset to the Branch menu. git-gui: Don't create empty (same tree as parent) commits. git-gui: Remove unnecessary /dev/null redirection. fast-import: Avoid infinite loop after reset fast-import: Fail if a non-existant commit is used for merge git-gui: Make 'make' quieter by default Catch write_ref_sha1 failure in receive-pack git-gui: Allow committing empty merges git-gui: Revert "Don't modify CREDITS-FILE if it hasn't changed." This reverts commit 92446aba47b0e0db28f7b858ea387efcca30ab44. git-gui: Revert "git-gui: Display all authors of git-gui." This reverts commit 871f4c97ad7e021d1a0a98c80c5da77fcf70e4af. git-gui: Allow 'git gui version' outside of a repository Don't package the git-gui credits file anymore Theodore Ts'o (1): Add definition of <commit-ish> to the main git man page. Yann Dirson (1): Clarify doc for git-config --unset-all. Version v1.5.0.3; changes since v1.5.0.2: ----------------------------------------- Alexandre Julliard (1): git.el: Set the default commit coding system from the repository config. Aneesh Kumar K.V (1): blameview: Fix the browse behavior in blameview Christian Schlotter (1): Documentation: Correct minor typo in git-add documentation. Eygene Ryabinkin (2): http-push.c::lock_remote(): validate all remote refs. Another memory overrun in http-push.c Gerrit Pape (2): git-cvsexportcommit: don't cleanup .msg if not yet committed to cvs. Fix quoting in update hook template J. Bruce Fields (6): Documentation: mention module option to git-cvsimport user-manual: reset to ORIG_HEAD not HEAD to undo merge user-manual: ensure generated manual references stylesheet user-manual: insert earlier of mention content-addressable architecture user-manual: how to replace commits older than most recent user-manual: more detailed merge discussion Jim Meyering (1): diff --cc: integer overflow given a 2GB-or-larger file Johannes Schindelin (3): fetch.o depends on the headers, too. builtin-archive: use RUN_SETUP Document the config variable format.suffix Junio C Hamano (5): git-apply: do not fix whitespaces on context lines. Documentation: git-remote add [-t <branch>] [-m <branch>] [-f] name url Start preparing Release Notes for 1.5.0.3 git-merge: fail correctly when we cannot fast forward. GIT 1.5.0.3 Linus Torvalds (2): mailinfo: do not get confused with logical lines that are too long. git-show: Reject native ref Matthias Kestenholz (1): Fix git-gc usage note Michael Coleman (2): Fix minor typos/grammar in user-manual.txt builtin-fmt-merge-msg: fix bugs in --file option Michael Poole (1): Correct ordering in git-cvsimport's option documentation Paolo Bonzini (1): git-archimport: support empty summaries, put summary on a single line. Ramsay Jones (5): Fix a "label defined but unreferenced" warning. Fix an "implicit function definition" warning. Fix some "comparison is always true/false" warnings. Fix a "pointer type missmatch" warning. Unset NO_C99_FORMAT on Cygwin. Sergey Vlasov (3): Documentation/build-docdep.perl: Fix dependencies for included asciidoc files Documentation/git-quiltimport.txt: Fix labeled list formatting Documentation/git-send-email.txt: Fix labeled list formatting Shawn O. Pearce (1): index-pack: Loop over pread until data loading is complete. Theodore Ts'o (1): Fix git-show man page formatting in the EXAMPLES section Uwe Kleine-König (1): Include config.mak in doc/Makefile Yasushi SHOJI (1): glossary: Add definitions for dangling and unreachable objects Version v1.5.0.2; changes since v1.5.0.1: ----------------------------------------- Christian Schlotter (1): git-clone: Sync documentation to usage note. Dmitry V. Levin (1): git-show-ref --verify: Fail if called without a reference Fredrik Kuivinen (1): Fix 'git commit -a' in a newly initialized repository Jason Riedy (3): Add a compat/strtoumax.c for Solaris 8. Obey NO_C99_FORMAT in fast-import.c. Check for PRIuMAX rather than NO_C99_FORMAT in fast-import.c. Johannes Schindelin (1): git-diff: fix combined diff Junio C Hamano (11): Reword git-am 3-way fallback failure message. diff-patch: Avoid emitting double-slashes in textual patch. Don't modify CREDITS-FILE if it hasn't changed. rerere: do not skip two conflicted paths next to each other. rerere: do not deal with symlinks. Add Release Notes to prepare for 1.5.0.2 merge-index: fix longstanding bug in merging symlinks merge-recursive: fix longstanding bug in merging symlinks diff --cc: fix display of symlink conflicts during a merge. Documentation: describe "-f/-t/-m" options to "git-remote add" GIT 1.5.0.2 Martin Koegler (1): git-gui: Create new branches from a tag. Michael Loeffler (1): Use gunzip -c over gzcat in import-tars example. Pavel Roskin (1): git-remote: support remotes with a dot in the name Robin Rosenberg (1): Limit filename for format-patch Roland Dreier (1): Allow arbitrary number of arguments to git-pack-objects Santi Béjar (1): core.legacyheaders: Use the description used in RelNotes-1.5.0 Shawn O. Pearce (16): git-gui: Refactor 'exec git subcmd' idiom. git-gui: Basic version check to ensure git 1.5.0 or later is used. git-gui: Permit merging tags into the current branch. git-gui: More consistently display the application name. git-gui: Print version on the console. git-gui: Prefer version file over git-describe. git-gui: Expose the browser as a subcommand. git-gui: Correct crash when saving options in blame mode. git-gui: Use mixed path for docs on Cygwin. git-gui: Display all authors of git-gui. git-gui: Change summary of git-gui. git-gui: Include browser in our usage message. git-gui: Remove TODO list. git-gui: Don't crash in citool mode on initial commit. Document the new core.bare configuration option. Include git-gui credits file in dist. Version v1.5.0.1; changes since v1.5.0: --------------------------------------- Alexandre Julliard (2): git-daemon: Avoid leaking the listening sockets into child processes. sha1_file.c: Round the mmap offset to half the window size. Fredrik Kuivinen (2): Read the config in rev-list Documentation/i18n.txt: it is i18n.commitencoding not core.commitencoding Junio C Hamano (15): Documentation: Drop full-stop from git-fast-import title. cmd-list: add git-remote Makefile: update check-docs target Clarify two backward incompatible repository options. Still updating 1.5.0 release notes. Add RelNotes 1.5.0.1 Make sure packedgitwindowsize is multiple of (pagesize * 2) Make gitk work reasonably well on Cygwin. gitk: Use show-ref instead of ls-remote GIT-VERSION-FILE: check ./version first. pretend-sha1: grave bugfix. git-merge: minor fix for no_trivial_merge_strategies. Do not take mode bits from index after type change. Update draft release notes for 1.5.0.1 GIT 1.5.0.1 Mark Levedahl (3): gitk - remove trailing whitespace from a few lines. Make gitk save and restore the user set window position. Make gitk save and restore window pane position on Linux and Cygwin. Nicolas Pitre (1): Minor corrections to release notes Paul Mackerras (1): Change git repo-config to git config Shawn O. Pearce (2): Attempt to improve git-rebase lead-in description. Convert update-index references in docs to add. Tommi Kyntola (1): git-blame: prevent argument parsing segfault Version v1.5.0; changes since v1.5.0-rc4: ----------------------------------------- Alexandre Julliard (3): diff.c: Reuse the pprint_rename function for diff --summary output. diff.c: Properly quote file names in diff --summary output. diff.c: More logical file name quoting for renames in diffstat. Andy Parkins (2): git-gui: fix typo in GIT-VERSION-GEN, "/dev/null" not "/devnull" Fix potential command line overflow in hooks--update Aneesh Kumar K.V (1): blameview: Move the commit info to a pane below the blame window. David Kågedal (5): Handle uncommitted changes and cache descriptions git-blame.el: improve color handling git-blame.el: blame unsaved changes git-blame.el: Doc fixes and cleanup git-blame.el: Autoupdate while editing Dotan Barak (1): Make it easier to override path to asciidoc command Eric Wong (1): git-svn: correctly handle boolean options via git-config Jakub Narębski (2): git-blame: Add Emacs Lisp file headers and GNU GPL boilerplate git-blame: Change installation instructions James Bowes (1): Read cvsimport options from repo-config Johannes Schindelin (5): for_each_reflog_ent: be forgiving about missing message log --reflog: honour --relative-date format-patch -n: make sorting easier by padding number log --reflog: use dwim_log git-gc: run pack-refs by default unless the repo is bare Junio C Hamano (17): create_symref(): create leading directories as needed. reflog: handle $name => remotes/%s/HEAD mapping consistently for logs Documentation/git-pull: describe default behaviour and config interactions git-fetch: document automatic tag following. wt_status_prepare(): clean up structure initialization. diff_flush_name(): take struct diff_options parameter. t4016: test quoting funny pathnames in diff output Documentation: git-rebase -C<n> Teach git-am to pass -p option down to git-apply Add discussion section to git-tag documentation. Add RPM target for git-gui Do not forget to pack objects reachable from HEAD reflog. for-each-reflog: not having $GIT_DIR/logs directory is not an error. "git-fetch --tags $URL" should not overwrite existing tags Documentation: Moving out of detached HEAD does not warn anymore. Add release notes to the distribution. GIT 1.5.0 Linus Torvalds (2): git reflog show Mark places that need blob munging later for CRLF conversion. Mark Levedahl (2): Make gitk save and restore the user set window position. Make gitk save and restore window pane position on Linux and Cygwin. Matthias Lederhofer (1): git merge documentation: -m is optional Michael Loeffler (1): import-tars: brown paper bag fix for file mode. Michael S. Tsirkin (3): Update git-log and git-show documentation add -C[NUM] to git-am Document that git-am can read standard input. Michael Spang (1): Work around Subversion race in git-svn tests. Mukund (1): Fixed some typos in git-repack docs Nicolas Pitre (2): remove mailmap.linux Update RPM core package description Pavel Roskin (1): Clarify that git-update-server-info should be run for every git-push René Scharfe (1): Avoid ugly linewrap in git help Shawn O. Pearce (313): git-gui: Initial revision. git-gui: Additional early feature development. git-gui: Fixed UI layout problems on Windows. git-gui: Corrected keyboard bindings on Windows, improved state management. git-gui: Verify we should actually perform a commit when asked to do so. git-gui: Finished commit implementation. git-gui: Implemented amended commits. git-gui: Misc. nit type of bug fixes. git-gui: Started construction of fetch and push operations. git-gui: Worked around environment variable problems on Windows. git-gui: Reorganized startup procedure to ensure gitdir is right. git-gui: Fix menu item accelerator display on Mac OS X. git-gui: Correctly handle CR vs. LF within the console of fetch. git-gui: Check for fetch or push command failure and denote it. git-gui: Don't complain if no .git/remotes exist. git-gui: Added current TODO list. git-gui: Last minute idea about fetch shortcuts. git-gui: Automatically reopen any console closed by the user. git-gui: Cache all repo-config data in an array. git-gui: Added support for pulling from default branch of a remote. git-gui: Updated TODO list now that pull is starting to work. git-gui: Corrected diff-index/diff-files protocol parsing errors. git-gui: Performance improvements for large file sets. git-gui: More performance improvements to rescan logic. git-gui: Flip commit message buffer and diff area. git-gui: Added repack database menu option, to invoke git repack. git-gui: Allow the user to disable update-index --refresh during rescan. git-gui: Grab the index lock while running pull. git-gui: Pluralize timestamps within the options menu. git-gui: Disable pull menu items when the index is locked. git-gui: Don't let the user pull into an uncommitted working directory. git-gui: Update TODO list. git-gui: Bug fix for bad variable reference in display_file. git-gui: Changed term 'check-in' to 'include'. git-gui: Show only the abbreviated SHA1 after committing. git-gui: Cache the GIT_COMMITTER_IDENT value on first sign-off. git-gui: Save window geometry to .git/config during exit. git-gui: Change accelerator for "Include All" to M1-I. git-gui: Created edit menu and basic editing bindings. git-gui: Clear undo/redo stack when loading a message file from disk. git-gui: Updated TODO list now that geometry is stored. git-gui: Always indicate the file in the diff viewer. git-gui: Correctly handle files containing LF in their name. git-gui: Efficiently update the UI after committing. git-gui: Use catch rather than array names to check file. git-gui: Rename difffont/mainfont variables. git-gui: Use native tk_messageBox for errors. git-gui: Cleaned up error message formatting. git-gui: Simplified format of geometry configuration. git-gui: Misc. formatting cleanups. git-gui: Misc. bug fixes for mouse click crashes. git-gui: Added context menus for consoles and commit message buffer. git-gui: Fix mouse cursor behavior when in widgets. git-gui: Teach sign off to be more intelligent. git-gui: Corrected font used for options menu items. git-gui: Honor system font and let user configure fonts. git-gui: Allow the user to change the diff viewer font size. git-gui: Refresh a file if it has an empty diff. git-gui: Make use of the Tk font system rather than faking it. git-gui: Improve right click context menu binding on all platforms. git-gui: Rename quitting global to is_quitting. git-gui: Use arrow cursor rather than left_ptr. git-gui: Refactor options menu into an options dialog. git-gui: Allow the user to manipulate the fonts from the options panel. git-gui: Supply progress feedback when running update-index. git-gui: Minor options dialog UI cleanups. git-gui: Added Options... menu item to end of diff context menu. git-gui: Use 'after 1' to post UI rather than tkwait. git-gui: Correct bugs in font config handling. git-gui: Hide non-commit related commands when invoked as git-citool. git-gui: Don't load the global options unless necessary. git-gui: Allow the user to disable diff stat summary during pull. git-gui: Run the pre-commit hook in the background. git-gui: Remove the commit_active global variable. git-gui: Added post-commit invocation after the commit is done. git-gui: Always use eq/ne for string comparsions. git-gui: Reshow diff if we sent the file to update-index. git-gui: Cleanup diff construction code to prepare for more options. git-gui: Allow the user to control the number of context lines in a diff. git-gui: Sort the list of paths being updated in the index. git-gui: Use a smaller pipe buffer for update-index. git-gui: Allow the user to copy name of the file in the diff viewer. git-gui: Correct language for M_/A_ status codes. git-gui: Display status on left in diff header. git-gui: Minor UI layout improvements for console windows. git-gui: Reverted file name text field to a label. git-gui: By default don't allow partially included files. git-gui: Refactor mouse clicking on file names/icons. git-gui: Narrow the no differences information message. git-gui: Implemented multiple selection in file lists. git-gui: Refactor update_status -> rescan. git-gui: Provide an after-rescan script to rescan. git-gui: Allow update_index to also run a script when it completes. git-gui: Automatically update-index all included files before commit. git-gui: Disable diff actions when no diff is active. git-gui: Created makefile to install the program. git-gui: Correctly handle GIT_DIR environment variable. git-gui: Create Windows shortcut icons for git-gui. git-gui: Protect ourselves from funny GIT_DIR/working directory setups. git-gui: Handle ' within paths when creating Windows shortcuts. git-gui: Only populate a fetch or push if we have an action. git-gui: Create a .app file on MacOS X if requested. git-gui: Display error dialog on Mac OS X when no .git found. git-gui: Make initial commits work properly. git-gui: Only reshow diff when really necessary. git-gui: Refactor file state representations. git-gui: Add menu option to include only selected files. git-gui: Misc. comment formatting cleanups. git-gui: Start UI with the index locked. git-gui: Remove completed items from TODO list. git-gui: Toggle between new commit and amend commit modes. git-gui: Verify the user has GIT_COMMITTER_IDENT before comitting. git-gui: Rephrase rescan before commit informational message. git-gui: Allow adding untracked files in selection. git-gui: Don't create PkgInfo on Mac OS X "desktop icons". git-gui: Teach the gui how to uninclude a file. git-gui: Make consecutive icon clicks toggle included status of a file. git-gui: Correct toggling of deleted file status. git-gui: Fix list loading corruption introduced by 1461c5f3. git-gui: Describe deleted symlinks in a more friendly way. git-gui: Correct toggling of added/untracked status for new files. git-gui: Updated TODO list now that a task is complete. git-gui: Refactored diff line display formatting logic. git-gui: Restore the all important shebang line. git-gui: Update in memory states after commit. git-gui: Correct some state matchings for include/remove. git-gui: Improve handling of merge commits. git-gui: Allow users to run fsck-objects from the gui. git-gui: Don't save amended commit message buffer. git-gui: Reworded verify console title. git-gui: Seperate out the database operations in project menu. git-gui: Rename Project menu to Repository. git-gui: Added about dialog box. git-gui: Be more Macintosh like. git-gui: Make the copyright notice serve double duty. git-gui: Include the Tcl/Tk version in the about dialog. git-gui: Abstract out windows platform test to is_Windows proc. git-gui: Correct is_MacOSX platform test. git-gui: Warn Cygwin users about possible environment issues. git-gui: Added configuration editor TODO list. git-gui: Refactor M1 binding selection. git-gui: Added menu command to visualize all branches. git-gui: Don't start 'gitk --all' on Mac OS X. git-gui: Improve pull error dialogs. git-gui: Added revert changes command. git-gui: Display the current branch. git-gui: Support file state MD (modified/deleted). git-gui: Created Branch menu. git-gui: Parse off refs/remotes when showing current branch. git-gui: Abort on not implemented branch switching. git-gui: Automatically skip tracking branches in branch menu. git-gui: Rename all_branches -> all_heads. git-gui: Misc. comment and formatting cleanups. git-gui: Started implementation of switch_branch. git-gui: Set a proper title on our revert confirm dialog box. git-gui: Updated todo list. git-gui: Enable resolution of merge conflicts. git-gui: Auto-update any A? or M? files during rescan. git-gui: Reworded 'Include' to 'Add' to match core Git. git-gui: Created very crude Tools menu, to support miga. git-gui: Show all fetched branches for remote pulls. git-gui: Run git-gc rather than git-repack. git-gui: Corrected behavior of deleted (but existing in HEAD) files. git-gui: Correct wording of the revert confirmation dialog. git-gui: Work around odd cygpath bug on Windows. git-gui: Change more 'include' language to 'add'. git-gui: Hide the ugly bash command line from the windows desktop icon. git-gui: Modified makefile to embed version into git-gui script. git-gui: Display the git-gui version in the Help->About dialog. git-gui: Display the full GPL copyright notice in about dialog. git-gui: Ensure version number is always current. git-gui: Allow the user to copy the version data to the clipboard. git-gui: Don't offer my miga hack if its configuration file isn't present. git-gui: Suggest when running 'git gc' may be worthwhile. git-gui: Refactor reponame computation. git-gui: Cleanup usage of gitdir global variable. git-gui: Allow [gitdir ...] to act as [file join [gitdir] ...]. git-gui: Make the gitk starting message match our usual format. git-gui: Display the directory we are entering during startup. git-gui: Start file status display refactoring. git-gui: Convert UI to use 'staged for commit' interface. git-gui: Correct DD file state to be only D_. git-gui: Remove invalid DM state. git-gui: Cleanup state descriptions. git-gui: Refactor add/remove proc names to align with reality. git-gui: Add or unstage based on the specific icon used. git-gui: Refactor the revert (aka checkout-index) implementation. git-gui: Refactor the add to commit state filters. git-gui: Simplify printing of index info to update-index. git-gui: Only permit selection in one list at a time. git-gui: Pad the cancel/save buttons in the options window. git-gui: Implemented create branch GUI. git-gui: Bind M1-N to create branch. git-gui: Implemented local branch deletion. git-gui: Allow users to delete branches merged upstream. git-gui: Allow creating branches from tracking heads. git-gui: Use borders on text fields in branch dialog. git-gui: Remove 'Allow Partially Added Files' option. git-gui: Move commit_prehook into commit_tree. git-gui: Improve the branch delete confirmation dialogs. git-gui: Don't delete the test target branch. git-gui: Attempt to checkout the new branch after creation. git-gui: Refactor current_diff -> current_diff_path. git-gui: Remove combined diff showing behavior. git-gui: Improve the display of merge conflicts. git-gui: Improve diff --cc viewing for unmerged files. git-gui: Fix bug in unmerged file display. git-gui: Clear diff from viewer if the side changed. git-gui: Correct disappearing unstaged files. git-gui: Add Refresh to diff viewer context menu. git-gui: Correct unmerged file detection at commit time. git-gui: Pad new branch name input box. git-gui: Use a grid layout for branch dialog. git-gui: Improve the merge check interface for branch deletion. git-gui: Change rude error popup to info popup. git-gui: Correctly ignore '* Unmerged path' during diff. git-gui: Make diff viewer colors match gitk's defaults. git-gui: Never line wrap in file lists. git-gui: Don't offer tracking branches if none exist. git-gui: Give a better error message on an empty branch name. git-gui: Allow user to specify a branch name pattern. git-gui: Improve keyboard traversal in dialogs. git-gui: Fully select a field when entering into it. git-gui: Automatically toggle the relevant radio buttons. git-gui: Correctly categorize tracking branches and heads. git-gui: Update todo list with finished and new items. git-gui: Slightly tweak new window geometry. git-gui: Create missing branch head on initial commit. git-gui: Don't format the mode line of a diff. git-gui: Force an update-index --refresh on unchanged files. git-gui: Don't attempt to tag new file/deleted file headers in diffs. git-gui: Fix 'Select All' action on Windows. git-gui: Ignore 'No newline at end of file' marker line. git-gui: Always start a rescan on an empty diff. git-gui: Don't show content of untracked binary files. git-gui: Limit display of large untracked files. git-gui: When possible show the type of an untracked file. git-gui: Don't try to tag the 'Binary files * and * differ' line. git-gui: Remove spurious newline in untracked file display. git-gui: Honor system encoding for filenames. git-gui: Handle commit encoding better. git-gui: Display database stats (count-objects -v) on demand. git-gui: Implement basic branch switching through read-tree. git-gui: Use system default labelframe bordering. git-gui: Display the size of the pack directory. git-gui: Only allow Refresh in diff context menu when we have a diff. git-gui: Allow staging/unstaging individual diff hunks. git-gui: Elide CRs appearing in diff output from display. git-gui: Cleanup end-of-line whitespace in commit messages. git-gui: Unset unnecessary UI setup variable. git-gui: Force focus to the diff viewer on mouse click. git-gui: Support 'Visualize All Branches' on Mac OS X. git-gui: Pad the database statistics dialog window. git-gui: Prefer Tk's entry widget over a 1 line text field. git-gui: Remove Pull menu and cleanup Branch/Fetch/Push menus. git-gui: Don't switch branches if changing to the current branch. git-gui: Maintain the same file list for diff during refresh. git-gui: Always use lsearch -exact, to prevent globbing. git-gui: Added arbitrary branch pushing support. git-gui: Remove no longer used pull from remote code. git-gui: Always use -v option to push. git-gui: Refactor console success/failure handling. git-gui: Use builtin version of 'git gc'. git-gui: Implement local merge operations. git-gui: Let users abort with `reset --hard` type logic. git-gui: Update status bar during a merge. git-gui: Don't allow users to commit a bad octopus merge. git-gui: Don't allow merges in the middle of other things. git-gui: Always offer scrollbars for branch lists. git-gui: Support merge.summary, merge.verbosity. git-gui: Reword meaning of merge.summary. git-gui: Offer quick access to the HTML formatted documentation. git-gui: Test for Cygwin differently than from Windows. git-gui: Implemented file browser and incremental blame. git-gui: Improve the icons used in the browser display. git-gui: Display the current branch name in browsers. git-gui: Allow users to edit user.name, user.email from options. git-gui: Use -M and -C when running blame. git-gui: Correctly handle spaces in filepaths. git-gui: Display original filename and line number in blame. git-gui: Install column headers in blame viewer. git-gui: Use a grid layout for the blame viewer. git-gui: Assign background colors to each blame hunk. Correct ^0 asciidoc syntax in fast-import docs. Correct some language in fast-import documentation. Correct spelling of fast-import in docs. tar archive frontend for fast-import. git-gui: Update known branches during rescan. git-gui: Support keyboard traversal in browser. git-gui: Replace \ with \\ when showing paths. git-gui: Refactor single_commit to a proc. git-gui: Separate transport/branch menus from multicommit. git-gui: Optionally save commit buffer on exit. git-gui: View blame from the command line. git-gui: Select subcommands like git does. git-gui: Relabel the Add All action. git-gui: Use git-config now over git-repo-config. git-gui: Redesign the display of annotated files. git-gui: Jump to the first annotation block as soon as its available. git-gui: Improve annotated file display. git-gui: Focus into blame panels on Mac OS. git-gui: Stop deleting gitk preferences. fast-import: Hide the pack boundary commits by default. fast-import: Add tip about importing renames. bash: Hide git-fast-import. fast-import: Support reusing 'from' and brown paper bag fix reset. git-gui: Allow gitexecdir, INSTALL to be set by the caller. git-gui: Rename GIT_VERSION to GITGUI_VERSION. git-gui: Generate a version file on demand. git-gui: Handle gitgui tags in version gen. git-gui: Guess our version accurately as a subproject. git-gui: Change base version to 0.6. Link git-gui into the master Makefile. Theodore Ts'o (2): Print a sane error message if an alias expands to an invalid git command Allow aliases to expand to shell commands Version v1.5.0-rc4; changes since v1.5.0-rc3: --------------------------------------------- Alex Riesen (1): Avoid ActiveState Perl IO in t800[12] Andy Parkins (2): doc: hooks.txt said post-commit default sends an email, it doesn't git-for-each-ref doesn't return "the bit after $GIT_DIR/refs" Aneesh Kumar K.V (1): blameview: Support browsable functionality to blameview. David Kågedal (1): git-blame: an Emacs minor mode to view file with git-blame output. Eric Wong (2): git-svn: do not let Git.pm warn if we prematurely close pipes Disallow invalid --pretty= abbreviations Gerrit Pape (1): git-archimport: initial import needs empty directory Horst H. von Brand (1): Call make always with CFLAGS in git.spec Johannes Schindelin (4): Teach the '@{...}' notation to git-log -g Update the documentation for the new '@{...}' syntax Commands requiring a work tree must not run in GIT_DIR fast-import: Fix compile warnings Junio C Hamano (36): create_symref(): do not assume pathname from git_path() persists long enough detached HEAD -- finishing touches Use "git checkout -q" in git-bisect Tutorial: fix asciidoc formatting of "git add" section. Tutorial-2: Adjust git-status output to recent reality. core-tutorial: http reference link fix fix reflog entries for "git-branch" honor GIT_REFLOG_ACTION in git-commit Why is it bad to rewind a branch that has already been pushed out? combine-diff: special case --unified=0 show-branch -g: default to the current branch. git-clone --reference: saner handling of borrowed symrefs. Revert "Allow branch.*.merge to talk about remote tracking branches." Rename get_ident() to fmt_ident() and make it available to outside t9200: Work around HFS+ issues. bisect: it needs to be done in a working tree. git-blame: no rev means start from the working tree file. Add pretend_sha1_file() interface. Use pretend_sha1_file() in git-blame and git-merge-recursive. blame: document --contents option Teach git-remote add to fetch and track Fix longstanding mismerge of ALL_CFLAGS vs BASIC_CFLAGS gitk: Use show-ref instead of ls-remote git-push: allow globbing wildcard refspec. gitweb: fix mismatched parenthesis annotate: fix for cvsserver. S_IFLNK != 0140000 Remove contrib/colordiff Add deprecation notices. Remove git-merge-recur git-clone --reference: work well with pack-ref'ed reference repository for-each-reflog: fix case for empty log directory t4200: skip gc-rerere test on systems with non GNU date. git-add -i: update removed path correctly. Documentation: Add gfi to the main command list. GIT v1.5.0-rc4 Linus Torvalds (2): pager: Work around window resizing bug in 'less' Fix "git log -z" behaviour Mark Levedahl (2): gitk - remove trailing whitespace from a few lines. Make gitk work reasonably well on Cygwin. Michael Coleman (1): Fix some documentation typos and grammar Michele Ballabio (1): Documentation: add KMail in SubmittingPatches Nicolas Pitre (14): make reflog filename independent from struct ref_lock lock_ref_sha1_basic(): remember the original name of a ref when resolving it enable separate reflog for HEAD add reflog entries for HEAD when detached move create_symref() past log_ref_write() add logref support to git-symbolic-ref add reflog when moving HEAD to a new branch reword the detached head message a little again add a quiet option to git-checkout prevent HEAD reflog to be interpreted as current branch reflog provide a nice @{...} syntax to always mean the current branch reflog scan reflogs independently from refs Enable HEAD@{...} and make it independent from the current branch Let git-checkout always drop any detached head Pavel Roskin (2): git-config --rename-section could rename wrong section Assorted typo fixes Robin Rosenberg (1): Why is it bad to rewind a branch that has already been pushed out? Shawn O. Pearce (113): Created fast-import, a tool to quickly generating a pack from blobs. Added automatic index generation to fast-import. Cleaned up memory allocation for object_entry structs. Refactored fast-import's internals for future additions. Added basic command handler to fast-import. Implemented branch handling and basic tree support in fast-import. Added tree and commit writing to fast-import. Implement blob ID validation in fast-import. Converted fast-import to a text based protocol. Changed fast-import's pack header creation to use pack.h Allow symlink blobs in trees during fast-import. Fixed segfault in fast-import after growing a tree. Converted fast-import to accept standard command line parameters. Added mark store/find to fast-import. Added branch load counter to fast-import. Implemented 'tag' command in fast-import. Implemented tree reloading in fast-import. Round out memory pool allocations in fast-import to pointer sizes. Remove branch creation command from fast-import. Moved from command to after data to help cvs2svn. Account for tree entry memory costs in fast-import. Added option to export the marks table when fast-import terminates. Added --branch-log to option to fast-import. Fixed GPF in fast-import caused by unterminated linked list. Fixed compile error in fast-import. Map only part of the generated pack file at any point in time. Added 'reset' command to clear a branch's tree. Don't crash fast-import if no branch log was requested. Converted hash memcpy/memcmp to new hashcpy/hashcmp/hashclr. Implemented tree delta compression in fast-import. Recycle data buffers for tree generation in fast-import. Reuse the same buffer for all commits/tags in fast-import. Replace ywrite in fast-import with the standard write_or_die. Correct tree corruption problems in fast-import. Additional fast-import tree delta corruption cleanups. Fix repository corruption when using marks for modified blobs. Support creation of merge commits in fast-import. Allow creating branches without committing in fast-import. Improve reuse of sha1_file library within fast-import. Misc. type cleanups within fast-import. Restructure fast-import to support creating multiple packfiles. Remove unnecessary duplicate_count in fast-import. Implemented manual packfile switching in fast-import. Don't create a final empty packfile in fast-import. Optimize index creation on large object sets in fast-import. Implemented automatic checkpoints within fast-import. Print the packfile names to stdout from fast-import. Corrected buffer overflow during automatic checkpoint in fast-import. Use uintmax_t for marks in fast-import. Replace redundant yread() with read_in_full() in fast-import. Reuse sha1 in packed_git in fast-import. Use .keep files in fast-import during processing. Ensure we close the packfile after creating it in fast-import. Remove unnecessary pack_fd global in fast-import. Correct max_packsize default in fast-import. Correct object_count type and stat output in fast-import. Print out the edge commits for each packfile in fast-import. Corrected BNF input documentation for fast-import. Correct a few types to be unsigned in fast-import. Declare no-arg functions as (void) in fast-import. Correct packfile edge output in fast-import. Always use struct pack_header for pack header in fast-import. Use fixed-size integers when writing out the index in fast-import. Remove unnecessary options from fast-import. Support delimited data regions in fast-import. Create test case for fast-import. Reduce value duplication in t9300-fast-import. Accept 'inline' file data in fast-import commit structure. Pull out remote listing functions in git-remote. Teach 'git remote' how to cleanup stale tracking branches. Cleanup prepare_packed_git_one to reuse install_packed_git. Correct comment in prepare_packed_git_one. Refactor open_packed_git to return an error code. Don't find objects in packs which aren't available anymore. Don't leak file descriptors from unavailable pack files. Cleanup subcommand documentation for git-remote. Keep untracked files not involved in a merge. Default GIT_MERGE_VERBOSITY to 5 during tests. bash: Remove short option completions for branch/checkout/diff. bash: Classify cat-file and reflog as plumbing. bash: Complete long options to git-add. bash: Add space after unique command name is completed. bash: Classify more commends out of completion. bash: Support unique completion on git-config. bash: Support unique completion when possible. bash: Support internal revlist options better. Include checkpoint command in the BNF. Reduce memory usage of fast-import. Show an example of deleting commits with git-rebase. bash: Support completion on git-cherry. bash: Hide diff-stages from completion. bash: Offer --prune completion for git-gc. bash: Hide git-resolve, its deprecated. bash: Support --add completion to git-config. bash: Support git-bisect and its subcommands. Don't support shell-quoted refnames in fast-import. Initial draft of fast-import documentation. bash: Support git-rebase -m continuation completion. bash: Complete git-remote subcommands. Remove --branch-log from fast-import. Correct compiler warnings in fast-import. Correct minor style issue in fast-import. Correct fast-import timezone documentation. Remove unnecessary null pointer checks in fast-import. Minor fast-import documentation corrections. Support RFC 2822 date parsing in fast-import. Don't do non-fastforward updates in fast-import. Minor timestamp related documentation corrections for fast-import. Teach fast-import how to clear the internal branch content. Teach fast-import how to sit quietly in the corner. Dump all refs and marks during a checkpoint in fast-import. Don't crash fast-import if the marks cannot be exported. Add a Tips and Tricks section to fast-import's manual. Simon 'corecode' Schubert (1): Allow forcing of a parent commit, even if the parent is not a direct one. Stelian Pop (1): Add hg-to-git conversion utility. Uwe Kleine-König (1): add replay and log to the usage string of git-bisect Yasushi SHOJI (1): gitweb: Convert project name to UTF-8 Version v1.5.0-rc3; changes since v1.5.0-rc2: --------------------------------------------- Alex Riesen (5): Insert ACTIVESTATE_STRING in Git.pm Force Activestate Perl to tie git command pipe handle to a handle class Cleanup uninitialized value in chomp Allow default core.logallrefupdates to be overridden with template's config Fix git-update-index to work with relative pathnames. Alexandre Julliard (1): vc-git.el: Take into account the destination name in vc-checkout. Andy Parkins (5): New files in git weren't being downloaded during CVS update If abbrev is set to zero in git-describe, don't add the unique suffix Allow the tag signing key to be specified in the config file UNIX reference time of 1970-01-01 00:00 is UTC timezone, not local time zone Heavily expanded update hook to send more useful emails than the old hook Aneesh Kumar K.V (2): blameview: Use git-cat-file to read the file content. Update git-cat-file documentation Bill Lear (1): Document --check option to git diff. David Kågedal (1): Improved error message from git-rebase Eric Wong (1): git-svn: remove leading slash when printing removed directories J. Bruce Fields (31): Documentation: add git user's manual Documentation: expand preface and todo's Documentation: git-rebase discussion, miscellaneous user-manual updates Documentation: more user-manual todo's Documentation: reorder development section, todo's Documentation: begin discussion of git-remote in user manual Documentation: rev-list -> rev-parse, other typos, start examples user manual: answer some comments from Junio user-manual: replace init-db by init user-manual: reindent user-manual: rewrap, fix heading levels user-manual: add "quick start" as chapter 1 user-manual: minor quickstart reorganization user-manual: clarify difference between tag and branch user-manual: update references discussion user-manual: update git-gc discussion user-manual: stub discussion of fsck and reflog user-manual: reorganize fetch discussion, add internals, etc. user-manual: git-fsck, dangling objects user-manual: fsck-objects -> fsck user-manual: repo-config -> config user-manual: add references to git-config man page user-manual: typo fix user-manual: fix a header level user-manual: reflogs, other recovery user-manual: rewrap a few long lines user-manual: minor "TODO" updates user-manual: document git-show-branch example user-manual: SHA1 -> object name user-manual: point to README for gitweb information user-manual: todo's Jakub Narębski (3): Documentation/config.txt: Document config file syntax better t/t1300-repo-config.sh: value continued on next line Documentation/config.txt: Correct info about subsection name Jason Riedy (1): Use inttypes.h rather than stdint.h. Jeff King (4): format-patch: fix bug with --stdout in a subdirectory contrib/vim: update syntax for changed commit template diffcore-pickaxe: fix infinite loop on zero-length needle Add a sample program 'blameview' to show how to use git-blame --incremental Johannes Schindelin (2): annotate: use pager reflog inspection: introduce shortcut "-g" Johannes Sixt (1): Add a missing fork() error check. Junio C Hamano (43): User manual: fix typos in examples Documentation/tutorial-2: Fix interesting typo in an example. Revert "prune: --grace=time" Make sure git_connect() always give two file descriptors. is_repository_shallow(): prototype fix. shallow repository: disable unsupported operations for now. git-gc: do not run git-prune by default. cvsimport: activate -a option, really. .mailmap: fix screw-ups in Uwe's name honor --author even with --amend, -C, and -c. reflog gc: a tag that does not point at a commit is not a crime. git-checkout -m: fix merge case git-daemon documentation on enabling services. ls-remote and clone: accept --upload-pack=<path> as well. Refactor the pack header reading function out of receive-pack.c Allow fetch-pack to decide keeping the fetched pack without exploding fetch-pack: remove --keep-auto and make it the default. Consolidate {receive,fetch}.unpackLimit Allow non-developer to clone, checkout and fetch more easily. parse-remote: do not barf on a remote shorthand without any refs to fetch. show-branch -g: default to HEAD Documentation: pack-refs --all vs default behaviour Make sure we do not write bogus reflog entries. git-merge: leave sensible reflog message when used as the first level UI. create_symref: check error return from open(). write_in_full: size_t is unsigned. Don't force everybody to call setup_ident(). git-blame --porcelain: quote filename in c-style when needed. Update describe documentation. Document 'git-blame --incremental' git-fsck-objects is now synonym to git-fsck Two small typofixes. lock_any_ref_for_update(): do not accept malformatted refs. git-commit -s: no extra space when sign-offs appear at the end already. git-blame: somewhat better commenting. git-send-email: remove debugging output. Fix git-tag -u Documentation: "git-checkout <tree> <path>" takes any tree-ish t9200: Re-code non-ascii path test in UTF-8 t9200: do not test -x bit if the filesystem does not support it. git main documentation: point at the user's manual. Do not use hardcoded path to xhmtl.xsl to generate user's manual GIT v1.5.0-rc3 Linus Torvalds (5): fsck-objects: refactor checking for connectivity Fix seriously broken "git pack-refs" Add dangling objects tips. git-blame --incremental git-push through git protocol Mark Wooding (3): wt-status: Actually accept `color.status.BLAH' configuration variables. Documentation/config.txt: Fix documentation of colour config tweaks. Make fsck and fsck-objects be builtins. Nicolas Pitre (3): fix suggested branch creation command when detaching head git-log -g --pretty=oneline should display the reflog message tone down the detached head warning Peter Eriksen (2): sha1_file.c: Avoid multiple calls to find_pack_entry(). Documentation: --amend cannot be combined with -c/-C/-F. René Scharfe (1): git-blame --incremental: don't use pager Sam Vilain (1): contrib/emacs/vc-git.el: support vc-version-other-window Santi Béjar (1): git-fetch: Allow fetching the remote HEAD Shawn O. Pearce (6): Remove unnecessary found variable from describe. Teach git-describe to display distances from tags. Compute accurate distances in git-describe before output. Teach for-each-ref about a little language called Tcl. Don't coredump on bad refs in update-server-info. Escape --upload-pack from expr. Simon 'corecode' Schubert (1): Replace perl code with pure shell code Tom Prince (1): Rename git-repo-config to git-config. Uwe Kleine-König (2): rename --exec to --upload-pack for fetch-pack and peek-remote make --upload-pack option to git-fetch configurable Version v1.5.0-rc2; changes since v1.5.0-rc1: --------------------------------------------- Bob Proulx (1): git-revert: Fix die before git-sh-setup defines it. Chris Wedgwood (1): cache.h; fix a couple of prototypes David Kågedal (2): Shell syntax fix in git-reset Document --ignore-if-in-upstream in git-format-patch Doug Maxey (1): gitk: add current directory to main window title Eric Wong (2): git-svn: fix tests to work with older svn git-svn: print and flush authentication prompts to STDERR Jason Riedy (4): Start all test scripts with /bin/sh. Set _ALL_SOURCE for AIX, but avoid its struct list. Replace "echo -n" with printf in shell scripts. Solaris 5.8 returns ENOTDIR for inappropriate renames. Jeff King (1): git-pull: disallow implicit merging to detached HEAD Johannes Schindelin (9): Fix spurious compile error config_set_multivar(): disallow newlines in keys show_date(): fix relative dates apply --cached: fix crash in subdirectory Do not verify filenames in a bare repository Teach the revision walker to walk by reflogs with --walk-reflogs --walk-reflogs: disallow uninteresting commits --walk-reflogs: actually find the right commit by date. --walk-reflogs: do not crash with cyclic reflog ancestry Junio C Hamano (69): reflog-expire: brown paper bag fix. merge-recursive: do not report the resulting tree object name Explain "Not a git repository: '.git'". glossary typofix Make git-prune-packed a bit more chatty. Define cd_to_toplevel shell function in git-sh-setup Use cd_to_toplevel in scripts that implement it by hand. Allow whole-tree operations to be started from a subdirectory Use log output encoding in --pretty=email headers. t3901: test "format-patch | am" pipe with i18n git-commit documentation: -a adds and also removes Consistent message encoding while reusing log from an existing commit. More tests in t3901. git log documentation: teach -<n> form. Add describe test. Documentation: merge-output is not too verbose now. Use merge-recursive in git-revert/git-cherry-pick git reflog expire: document --stale-fix option. Fix git-fetch while on detached HEAD not to give needlessly alarming errors git-push documentation: remaining bits git-rm documentation: remove broken behaviour from the example. tutorial: shorthand for remotes but show distributed nature of git git-commit documentation: remove comment on unfixed git-rm Use merge-recursive in git-checkout -m (branch switching) Document where configuration files are in config.txt git-commit: document log message formatting convention Documentation/SubmittingPatches: Gnus tips Documentation/git-tag: the command can be used to also verify a tag. Documentation/git-tools.txt: mention tig and refer to wiki Documentation/git-tar-tree.txt: default umask is now 002 Documentation/git-status.txt: mention color configuration Documentation/git-whatchanged.txt: show -<n> instead of --max-count. Documentation/git-sh-setup.txt: programmer's docs Documentation: detached HEAD Make a short-and-sweet "git-add -i" synonym for "git-add --interactive" Documentation: describe shallow repository Documentation/glossary.txt: unpacked objects are loose. Documentation/glossary.txt: describe remotes/ tracking and packed-refs Introduce 'git-format-patch --suffix=.patch' git-format-patch: do not crash with format.headers without value. Documentation/git-resolve: deprecated. Documentation: suggest corresponding Porcelain-level in plumbing docs. Documentation: m can be relative in "git-blame -Ln,m" Documentation/git-parse-remote.txt: we deal with config vars as well git-format-patch -3 Add --summary to git-format-patch by default git-format-patch: make --binary on by default git-format-patch: the default suffix is now .patch, not .txt Use fixed-size integers for .idx file I/O Documentation: move command list in git.txt into separate files. Documentation: sync git.txt command list and manual page title Documentation: Generate command lists. for_each_reflog_ent: do not leak FILE * refs.c::read_ref_at(): fix bogus munmap() call. Documentation: generated cmds-*.txt does not depend on git.txt Documentation/git.txt: command re-classification dwim_ref(): Separate name-to-ref DWIM code out. Extend read_ref_at() to be usable from places other than sha1_name. show-branch --reflog: show the reflog message at the top. show-branch --reflog: tighten input validation. show-branch --reflog: fix show_date() call Stop ignoring Documentation/README git-tag -d: allow deleting multiple tags at once. branch -f: no reason to forbid updating the current branch in a bare repo. git-rebase: allow rebasing a detached HEAD. log --walk-reflog: documentation reflog-walk: build fixes Fix --walk-reflog with --pretty=oneline GIT v1.5.0-rc2 Linus Torvalds (2): Clean up write_in_full() users Fix up totally buggered read_or_die() Matthias Lederhofer (2): prune-packed: add -q to usage prune: --grace=time Michael S. Tsirkin (1): fix documentation for git-commit --no-verify Nicolas Pitre (4): use 'init' instead of 'init-db' for shipped docs and tools simplify the "no changes added to commit" message some doc updates sanitize content of README file Peter Baumann (1): Make gitk work when launched in a subdirectory Quy Tonthat (1): git-remote: no longer silent on unknown commands. René Scharfe (1): Documentation: a few spelling fixes Santi Béjar (1): tutorial: Use only separate layout Shawn O. Pearce (18): Improve merge performance by avoiding in-index merges. Hide output about SVN::Core not being found during tests. Remove read_or_die in favor of better error messages. Remove unnecessary call_depth parameter in merge-recursive. Allow the user to control the verbosity of merge-recursive. Enable output buffering in merge-recursive. Display a progress meter during merge-recursive. Convert output messages in merge-recursive to past tense. Always perfer annotated tags in git-describe. Hash tags by commit SHA1 in git-describe. Use binary searching on large buckets in git-describe. Improve git-describe performance by reducing revision listing. Correct priority of lightweight tags in git-describe. Remove hash in git-describe in favor of util slot. Use nice names in conflict markers during cherry-pick/revert. Document the master@{n} reflog query syntax. Refer users to git-rev-parse for revision specification syntax. Document pack .idx file format upgrade strategy. Simon 'corecode' Schubert (2): Use fixed-size integers for the on-disk pack structure. Use standard -t option for touch. Uwe Kleine-König (4): document --exec for git-push Update documentation of fetch-pack, push and send-pack make --exec=... option to git-push configurable rename --exec to --receive-pack for push and send-pack Version v1.5.0-rc1; changes since v1.5.0-rc0: --------------------------------------------- Alex Riesen (1): Speed-up recursive by flushing index only once for all entries Alexandre Julliard (12): Shallow clone: do not ignore shallowness when following tags fetch-pack: Properly remove the shallow file when it becomes empty. upload-pack: Check for NOT_SHALLOW flag before sending a shallow to the client. git-fetch: Reset shallow_depth before auto-following tags. get_shallow_commits: Avoid memory leak if a commit has been reached already. fetch-pack: Do not fetch tags for shallow clones. git-clean: Fix the -q option. git.el: Don't use --info-only when resolving a file. git.el: Avoid setting font lock keywords before entering log-edit mode. git-apply: Remove directories that have become empty after deleting a file. git-clone: Make sure the master branch exists before running cat on it. git.el: Define the propertize function if needed, for XEmacs compatibility. Andy Parkins (1): hooks/commit-msg: add example to add Signed-off-by line to message Andy Whitcroft (6): send pack check for failure to send revisions list ssh-upload: prevent buffer overrun short i/o: clean up the naming for the write_{in,or}_xxx family short i/o: fix calls to read to use xread or read_in_full short i/o: fix calls to write to use xwrite or write_in_full short i/o: fix config updates to use write_in_full Brian Gernhardt (3): Add documentation for git-branch's color configuration. Ignore git-init and git-remote Auto-quote config values in config.c:store_write_pair() Eric Wong (21): git-svn: quiet down tests and fix some unportable shell constructs git-svn: dcommit should diff against the current HEAD after committing t6024-recursive-merge: quiet down this test test-lib: quiet down init-db output for tests t9200-git-cvsexportcommit.sh: quiet down commit git-svn: remove non-delta fetch code paths git-svn: print out the SVN library version in --version, too git-svn: verify_ref() should actually --verify git-svn: sort multi-init output git-svn: remove svnadmin dependency from the tests git-svn: t/t9100-git-svn-basic: remove old check for NO_SYMLINK git-svn: t/t91??-*: optimize the tests a bit instaweb: load Apache mime and dir modules if they are needed git-svn: make multi-init less confusing git-svn: update documentation for multi-{init|fetch} git-svn: make --repack work consistently between fetch and multi-fetch Documentation/git-svn: clarify dcommit, rebase vs pull/merge git-svn: fix show-ignore git-svn: add --prefix= option to multi-init git-svn: pass an unambiguous ref to rev-list when grafting-branches Avoid errors and warnings when attempting to do I/O on zero bytes Fredrik Kuivinen (1): instaweb: Nicer error message when the http daemon isn't found J. Bruce Fields (9): Docs: update cvs-migration.txt to reflect clone's new default behavior Documentation: update git-clone.txt for clone's new default behavior Documentation: update glossary entry for "origin" Documentation: update tutorial's discussion of origin Documentation: update git-pull.txt for new clone behavior Documentation: remove master:origin example from pull-fetch-param.txt Documentation: tutorial editing Documentation: clarify definition of "reachable" Documentation: add git-remote man page Jakub Narębski (14): gitweb: Add mod_perl version string to "generator" meta header gitweb: Precompile CGI routines for mod_perl Add info about new test families (8 and 9) to t/README gitweb: Fix error in git_project_index subroutine gitweb: Fix bug in git_difftree_body (was '!=' instead of 'ne') gitweb: There can be empty patches (in git_patchset_body) gitweb: Fix "Use of uninitialized value" warning in git_tags_body gitweb: Fix error in git_patchest_body for file creation/deletion patch gitweb: Fix error in "rename to"/"copy to" git diff header output gitweb: Fix errors in git_patchset_body for empty patches Revert "gitweb: There can be empty patches (in git_patchset_body)" gitweb: Fix split patches output (e.g. file to symlink) gitweb: Remove superfluous "|" in "commit" view gitweb: Fix git_patchset_body not closing <div class="patch"> Jeff King (1): get_tree_entry: map blank requested entry to tree root Jim Meyering (1): update hook: redirect _both_ diagnostic lines to stderr upon tag failure Johannes Schindelin (9): upload-pack: no longer call rev-list support fetching into a shallow repository allow cloning a repository "shallowly" allow deepening of a shallow repository add tests for shallow stuff xdl_merge(): fix a segmentation fault when refining conflicts Fix yet another subtle xdl_merge() bug Sanitize for_each_reflog_ent() Fix t1410 for core.filemode==false Junio C Hamano (106): We should make sure that the protocol is still extensible. Why does it mean we do not have to register shallow if we have one? Why didn't we mark want_obj as ~UNINTERESTING in the old code? shallow clone: unparse and reparse an unshallowed commit add for_each_reflog_ent() iterator Protect commits recorded in reflog from pruning. Teach git-repack to preserve objects referred to by reflog entries. reflog: fix warning message. Move in_merge_bases() to commit.c git reflog expire reflog expire: prune commits that are not incomplete reflog expire: do not punt on tags that point at non commits. show-branch --reflog: add documentation. Document --numstat in git-apply and git-diff Document git-reset <commit> -- <paths>... Move encoding conversion routine out of mailinfo to utf8.c i18n.logToUTF8: convert commit log message to UTF-8 Teach log family --encoding everyday: update for v1.5.0 count-objects -v: show number of packs as well. rerere gc: honor configuration and document it git-reflog: gc.* configuration and documentation. everyday: replace a few 'prune' and 'repack' with 'gc' Use 'repack -a -d -l' instead of 'repack -a -d' in git-gc Set NO_MMAP for Cygwin by default UTF-8: introduce i18n.logoutputencoding. gcc does not necessarily pass runtime libpath with -R Work around http-fetch built with cURL 7.16.0 Rename t3900 test vector file t3900: test conversion to non UTF-8 as well GIT_SKIP_TESTS: allow users to omit tests that are known to break core.logallrefupdates: log remotes/ tracking branches. Allow non-fast-forward of remote tracking branches in default clone t5400 send-pack test: try a bit more nontrivial transfer. Revert "read_directory: show_both option." Fix 'git add' with .gitignore pack-objects: fix use of use_pack(). mmap: set FD_CLOEXEC for file descriptors we keep open for mmap() send-pack: fix pipeline. Documentation: illustrate send-pack pipeline. commit re-encoding: fix confusion between no and default conversion. t3900: test log --encoding=none Documentation: i18n commit log message notes. Documentation: minor rewording for git-log and git-show pages. Move commit reencoding parameter parsing to revision.c commit-tree: cope with different ways "utf-8" can be spelled. i18n: drop "encoding" header in the output after re-coding. Documentation/config.txt (and repo-config manpage): mark-up fix. Update documentation for update hook. send-pack.c: use is_null_sha1() send-pack: tell pack-objects to use its internal rev-list. Do not merge random set of refs out of wildcarded refs i18n: do not leak 'encoding' header even when we cheat the conversion. Update send-pack pipeline documentation. fail pull/merge early in the middle of conflicted merge git-fetch: remove .keep file at the end. Strongly discourage --update-head-ok in fetch-options documentation. Update clone/fetch documentation with --depth (shallow clone) option Remove unused variable (git-commit.sh) fetch-pack: do not use lockfile structure on stack. Fix infinite loop when deleting multiple packed refs. tutorial: misc updates. git-verify-tag: make sure we remove temporary file. pack-check.c::verify_packfile(): don't run SHA-1 update on huge data rerere: Fix removal of already resolved path. git-remote builtin-prune: memory diet. Fix timestamp for test-tick builtin-prune: make file-scope static struct to an argument. builtin-prune: separate ref walking from reflog walking. Move traversal of reachable objects into a separate library. reflog expire --fix-stale reflog --fix-stale: do not check the same trees and commits repeatedly. diff-index --cached --raw: show tree entry on the LHS for unmerged entries. git-reset <tree> -- <path> restores absense of <path> in <tree> Spell default packedgitlimit slightly differently Move initialization of log_all_ref_updates Introduce is_bare_repository() and core.bare configuration variable git-fetch: allow updating the current branch in a bare repository. git-status: show detached HEAD Detached HEAD (experimental) git-checkout: do not warn detaching HEAD when it is already detached. git-checkout: rewording comments regarding detached HEAD. git-checkout: safety when coming back from the detached HEAD state. git-checkout: fix branch name output from the command --utf8 is now default for 'git-am' --prune is now default for 'pack-refs' rm git-rerere.perl -- it is now a built-in. merge-base: do not leak commit list Do not ignore a detected patchfile brokenness. Fix "Do not ignore a detected patchfile brokenness." builtin-archive: do not free a tree held by the object layer. git-checkout: safety check for detached HEAD checks existing refs git-checkout: handle local changes sanely when detaching HEAD git-am: should work when "--no-utf8 --utf8" is given -u is now default for 'git-applymbox' -u is now default for 'git-mailinfo'. Makefile: remove $foo when $foo.exe is built/installed. merge-recursive: do not use on-file index when not needed. Document git-init index-pack: write-or-die instead of unchecked write-in-full. config-set: check write-in-full returns in set_multivar git-rm: do not fail on already removed file. git-status: wording update to deal with deleted files. plug a few leaks in revision walking used in describe. GIT v1.5.0-rc1 Jürgen Rühle (7): Clarify syntax and role of git-add in status output Improve "nothing to commit" part of status output Support --amend on initial commit in status output Improve cached content header of status output Remove unnecessary git-rm --cached reference from status output send-email: work around double encoding of in-body From field. Provide better feedback for the untracked only case in status output Lars Hjemli (3): Skip excessive blank lines before commit body Refactor print-functions in builtin-branch git-branch: show detached HEAD Linus Torvalds (3): write-cache: do not leak the serialized cache-tree data. write_in_full: really write in full or return error on disk full. Better error messages for corrupt databases Luben Tuikov (1): Blame "linenr" link jumps to previous state at "orig_lineno" Martin Langhoff (6): cvsimport: skip commits that are too recent cvsimport: skip commits that are too recent (option and documentation) cvsimport: document -S and -L options cvsimport: cleanup temporary cvsps file cvsserver: detect early of we are up to date and avoid costly rev-list cvsserver: fix revision number during file adds Michael Loeffler (1): git-commit: do not fail to print the diffstat even if there is a file named HEAD Nicolas Pitre (5): add .mailmap for git-shortlog output with the git repository Add git-reflog to .gitignore move git-blame to its place in .gitignore "init-db" can really be just "init" Add git-init documentation. Pavel Roskin (1): Fix warnings in sha1_file.c - use C99 printf format if available Quy Tonthat (1): git-send-email: default value for "From:" field. René Scharfe (3): Make check target depend on common-cmds.h Remove shadowing variable from traverse_trees() Set default "tar" umask to 002 and owner.group to root.root Robert Fitzsimons (2): gitweb: Re-enable rev-list --parents for parse_commit. gitweb: Fix shortlog only showing HEAD revision. Santi Béjar (2): Documentation/tutorial: misc updates git-tag: add flag to verify a tag Sasha Khapyorsky (3): git-svnimport: support for incremental import git-svnimport: clean svn path when accessing SVN repo git-svnimport: fix edge revisions double importing Shawn O. Pearce (49): Don't crash during repack of a reflog with pruned commits. Create 'git gc' to perform common maintenance operations. Use GIT_REFLOG_ACTION environment variable instead. Honor GIT_REFLOG_ACTION in git-rebase. Use branch names in 'git-rebase -m' conflict hunks. Ensure `git-pull` fails if `git-merge` fails. Honor pull.{twohead,octopus} in git-merge. Allow git-merge to select the default strategy. Move better_branch_name above get_ref in merge-recursive. Allow merging bare trees in merge-recursive. Use merge-recursive in git-am -3. Replace unpack_entry_gently with unpack_entry. Introduce new config option for mmap limit. Refactor packed_git to prepare for sliding mmap windows. Use off_t for index and pack file lengths. Create read_or_die utility routine. Refactor how we open pack files to prepare for multiple windows. Replace use_packed_git with window cursors. Loop over pack_windows when inflating/accessing data. Document why header parsing won't exceed a window. Unmap individual windows rather than entire files. Fully activate the sliding window pack access. Load core configuration in git-verify-pack. Ensure core.packedGitWindowSize cannot be less than 2 pages. Improve error message when packfile mmap fails. Support unmapping windows on 'temporary' packfiles. Create pack_report() as a debugging aid. Test suite for sliding window mmap implementation. Default core.packdGitWindowSize to 1 MiB if NO_MMAP. Release pack windows before reporting out of memory. Replace mmap with xmmap, better handling MAP_FAILED. Cleanup read_cache_from error handling. Fix random segfaults in pack-objects. Force core.filemode to false on Cygwin. Use PATH_MAX constant for --bare. Replace "GIT_DIR" with GIT_DIR_ENVIRONMENT. Automatically detect a bare git repository. Remove unnecessary argc parameter from run_command_v. Redirect update hook stdout to stderr. Use /dev/null for update hook stdin. Teach Git how to parse standard power of 2 suffixes. Update packedGit config option documentation. Add test case for update hooks in receive-pack. Increase packedGit{Limit,WindowSize} on 64 bit systems. Don't die in git-http-fetch when fetching packs. Don't save the commit buffer in git-describe. Make git-describe a builtin. Disallow working directory commands in a bare repository. Chose better tag names in git-describe after merges. Stefan-W. Hahn (1): Replacing the system call pread() with lseek()/xread()/lseek() sequence. Steven Grimm (3): Describe git-clone's actual behavior in the summary Print a more accurate error message when we fail to create a lock file. Update git-svn manpage to remove the implication that SVN::* is optional. Theodore Ts'o (2): Fix formatting for urls section of fetch, pull, and push manpages Fix formatting for urls section of fetch, pull, and push manpages Version v1.5.0-rc0; changes since v1.4.4.5: ------------------------------------------- Alex Riesen (1): Make perl/ build procedure ActiveState friendly. Alexandre Julliard (1): vc-git: Ignore errors caused by a non-existent directory in vc-git-registered. Andreas Ericsson (2): ls-files: Give hints when errors happen. git-diff: Introduce --index and deprecate --cached. Andy Parkins (8): Improve git-prune -n output Add support to git-branch to show local and remote branches Use .git/config for storing "origin" shortcut repository De-emphasise the symbolic link documentation. Explicitly add the default "git pull" behaviour to .git/config on clone Colourise git-branch output Allow subcommand.color and color.subcommand color configuration git-status always says what branch it's on Aneesh Kumar K.V (1): Add config example with respect to branch Brian Gernhardt (6): Add --add option to git-repo-config Make git-diff documentation use [--] when it should. Add documentation for show-branch --topics Remove COLLISION_CHECK from Makefile since it's not used. Keep "git --git-dir" from causing a bus error. Make git-show-branch options similar to git-branch. David S. Miller (1): Pass -M to diff in request-pull Eric Wong (29): git-svn: handle authentication without relying on cached tokens on disk git-svn: correctly access repos when only given partial read permissions git-svn: exit with status 1 for test failures git-svn: allow SVN:: lib users to track the root of the repository (again) git-svn: use ~/.subversion config files when using SVN:: libraries git-svn: enable delta transfers during fetches when using SVN:: libs git-svn: update tests for recent changes git-svn: error out when the SVN connection fails during a fetch git-svn: fix output reporting from the delta fetcher git-svn: color support for the log command git-svn: documentation updates git-svn: fix multi-init git-svn: avoid network timeouts for long-running fetches git-svn: extra error check to ensure we open a file correctly git-svn: use do_switch for --follow-parent if the SVN library supports it rerere: add clear, diff, and status commands rerere: record (or avoid misrecording) resolved, skipped or aborted rebase/am git-svn: enable logging of information not supported by git git-svn: allow dcommit to take an alternate head git-svn: correctly display fatal() error messages git-svn: correctly handle packed-refs in refs/remotes/ git-svn: correctly handle "(no author)" when using an authors file git-svn: convert to using Git.pm git-svn: remove support for the svn command-line client git-svn: rename 'commit' command to 'set-tree' git-cvsserver: fix breakage when calling git merge-file Remove NO_ACCURATE_DIFF options from build systems git-svn: enable common fetch/commit options for dcommit Makefile: add quick-install-doc for installing pre-built manpages Han-Wen Nienhuys (2): git-tag: allow empty tag message if -m is given explicitly. ident.c: Trim hint printed when gecos is empty. Iñaki Arenaza (1): git-cvsimport: add support for CVS pserver method HTTP/1.x proxying J. Bruce Fields (5): Documentation: clarify tutorial pull/merge discussion cvs-migration: improved section titles, better push/commit explanation Documentation: reorganize cvs-migration.txt Documentation: update git-clone man page with new behavior Documentation: simpler shared repository creation Jakub Narębski (26): gitweb: Protect against possible warning in git_commitdiff gitweb: Buffer diff header to deal with split patches + git_patchset_body refactoring gitweb: Default to $hash_base or HEAD for $hash in "commit" and "commitdiff" gitweb: New improved formatting of chunk header in diff gitweb: Add an option to href() to return full URL gitweb: Refactor feed generation, make output prettier, add Atom feed gitweb: Finish restoring "blob" links in git_difftree_body gitweb: Replace SPC with also in tag comment gitweb: Do not use esc_html in esc_path gitweb: Use git-show-ref instead of git-peek-remote gitweb: Add author and committer email extraction to parse_commit gitweb: Add author and contributor email to Atom feed gitweb: Use author_epoch for pubdate in gitweb feeds gitweb: Make project description in projects list link to summary view gitweb: Fix Atom feed <logo>: it is $logo, not $logo_url git-clone: Rename --use-immingled-remote option to --no-separate-remote Document git-diff whitespace flags -b and -w gitweb: Allow PNG, GIF, JPEG images to be displayed in "blob" view gitweb: Don't use Content-Encoding: header in git_snapshot gitweb: Show target of symbolic link in "tree" view gitweb: Add generic git_object subroutine to display object of any type gitweb: Hyperlink target of symbolic link in "tree" view (if possible) gitweb: SHA-1 in commit log message links to "object" view gitweb: Do not show difftree for merges in "commit" view gitweb: Add title attribute to ref marker with full ref name gitweb: Add "next" link to commit view Jeff King (2): shortlog: fix segfault on empty authorname vim syntax: follow recent changes to commit template Jim Meyering (1): Set permissions of each new file before "cvs add"ing it. Johannes Schindelin (30): Build in shortlog shortlog: do not crash on parsing "[PATCH" shortlog: read mailmap from ./.mailmap again shortlog: handle email addresses case-insensitively shortlog: fix "-n" shortlog: use pager sha1_object_info(): be consistent with read_sha1_file() xdiff: add xdl_merge() xdl_merge(): fix an off-by-one bug xdl_merge(): fix thinko diff -b: ignore whitespace at end of line xdl_merge(): fix and simplify conflict handling cvs-migration document: make the need for "push" more obvious Add builtin merge-file, a minimal replacement for RCS merge merge-file: support -p and -q; fix compile warnings Get rid of the dependency on RCS' merge program merge-recursive: add/add really is modify/modify with an empty base INSTALL: no need to have GNU diff installed git-show: grok blobs, trees and tags, too Document git-merge-file add a function to rename sections in the config git-branch: rename config vars branch.<branch>.*, too Introduce GIT_TEMPLATE_DIR Use git-merge-file in git-merge-one-file, too git-tag: support -F <file> option git-reset --hard: tell the user what the HEAD was reset to move read_mmfile() into xdiff-interface Add a test for git-rerere Make git-rerere a builtin commit-tree: encourage UTF-8 commit messages. Josef Weidendorfer (2): Add branch.*.merge warning and documentation update Move "no merge candidate" warning into git-pull Junio C Hamano (115): upload-pack: stop the other side when they have more roots than we do. apply --numstat: mark binary diffstat with - -, not 0 0 pack-objects: tweak "do not even attempt delta" heuristics Store peeled refs in packed-refs file. remove merge-recursive-old git-merge: make it usable as the first class UI merge: allow merging into a yet-to-be-born branch. Store peeled refs in packed-refs (take 2). git-fetch: reuse ls-remote result. git-fetch: fix dumb protocol transport to fetch from pack-pruned ref git-fetch: allow glob pattern in refspec refs outside refs/{heads,tags} match less strongly. Typefix builtin-prune.c::prune_object() Allow git push to delete remote ref. gitweb: (style) use chomp without parentheses consistently. git-clone: stop dumb protocol from copying refs outside heads/ and tags/. git-branch -D: make it work even when on a yet-to-be-born branch git-shortlog: fix common repository prefix abbreviation. git-shortlog: make common repository prefix configurable with .mailmap git-commit: show --summary after successful commit. git-fetch: exit with non-zero status when fast-forward check fails git-fetch: allow forcing glob pattern in refspec fetch-pack: do not barf when duplicate re patterns are given grep: do not skip unmerged entries when grepping in the working tree. git-merge: tighten error checking. git-merge: do not leak rev-parse output used for checking internally. cvsimport: style fixup. git-merge: fix confusion between tag and branch xmerge: make return value from xdl_merge() more usable. merge-recursive: use xdl_merge(). read-tree: further loosen "working file will be lost" check. Loosen "working file will be lost" check in Porcelain-ish read-tree: document --exclude-per-directory git-merge: squelch needless error message. git-merge: fix "fix confusion between tag and branch" for real Fix perl/ build. git-rerere: add 'gc' command. Documentation/git-commit: rewrite to make it more end-user friendly. git-commit: allow --only to lose what was staged earlier. shortlog: remove "[PATCH]" prefix from shortlog output shortlog: fix segfault on empty authorname diff --numstat: show binary with '-' to match "apply --numstat" add test case for recursive merge git-push: document removal of remote ref with :<dst> pathspec Revert "git-diff: Introduce --index and deprecate --cached." git merge: reword failure message. spurious .sp in manpages git-push: accept tag <tag> as advertised. send-pack: tighten checks for remote names branch --color: change default color selection. git-blame: show lines attributed to boundary commits differently. config documentation: group color items together. git-svn: allow both diff.color and color.diff Update git-diff documentation git-fetch: make it work from within a subdirectory. git-reset: make it work from within a subdirectory. git-reset [--mixed] <tree> [--] <paths>... merge: give a bit prettier merge message to "merge branch~$n" git-clone: use wildcard specification for tracking branches git-pull: refuse default merge without branch.*.merge git-clone: lose the artificial "first" fetch refspec git-clone: lose the traditional 'no-separate-remote' layout update-index: make D/F conflict error a bit more verbose. git-add: remove conflicting entry when adding. Fix check_file_directory_conflict(). Fix mis-mark-up in git-merge-file.txt documentation markup fix in svnimport documentation. rev-list --left-right Teach all of log family --left-right output. Make left-right automatic. Teach show-branch how to show ref-log data. git-fetch: Avoid reading packed refs over and over again avoid accessing _all_ loose refs in git-show-ref --verify show-ref: fix --quiet --verify show-ref: fix --verify --hash=length parse-remote::expand_refs_wildcard() show-ref: fix --exclude-existing racy-git: documentation updates. rerere: fix breakage of resolving. fix testsuite: make sure they use templates freshly built from the source Teach git-branch to delete tracking branches with -r -d blame: -b (blame.blankboundary) and --root (blame.showroot) git-add --interactive git-add --interactive: hunk splitting Revert "fix testsuite: make sure they use templates freshly built from the source" Do not create $GIT_DIR/remotes/ directory anymore. Use preprocessor constants for environment variable names. Revert "Make left-right automatic." fix populate-filespec config_rename_section: fix FILE* leak simplify inclusion of system header files. revision: --skip=<n> git-add: error out when given no arguments. compat/inet_ntop: do not use u_int diff documentation: mostly talk about <commit> Revert "git-pull: refuse default merge without branch.*.merge" parse-remote: mark all refs not for merge only when fetching more than one _XOPEN_SOURCE problem also exists on FreeBSD commit-tree: do not overflow MAXPARENT merge and reset: adjust for "reset --hard" messages default pull: forget about "newbie protection" for now. Do not support "partial URL shorthand" anymore. Really fix headers for __FreeBSD__ git-tag: lose exit after die Allow branch.*.merge to talk about remote tracking branches. git-add --interactive: add documentation match_pathspec() -- return how well the spec matched git-rm: update to saner semantics t3600: update the test for updated git rm git-rm: Documentation read_directory: show_both option. git-add: add ignored files when asked explicitly. git-add: warn when adding an ignored file with an explicit request. git-add -f: allow adding otherwise ignored files. GIT v1.5.0 preview Lars Hjemli (4): Add -v and --abbrev options to git-branch git-branch: add options and tests for branch renaming rename_ref: use lstat(2) when testing for symlink git-branch: let caller specify logmsg Luben Tuikov (1): Export PERL_PATH Michael Loeffler (1): git-fetch: ignore dereferenced tags in expand_refs_wildcard Nicolas Pitre (11): builtin git-shortlog is broken pack-objects: remove redundent status information make 'git add' a first class user friendly interface to the index change the unpack limit treshold to a saner value repacked packs should be read-only make commit message a little more consistent and conforting make patch_delta() error cases a bit more verbose make git a bit less cryptic on fetch errors index-pack usage of mmap() is unacceptably slower on many OSes other than Linux clarify some error messages wrt unknown object types checkout: make the message about the need for a new branch a bit clearer Paul Mackerras (1): gitk: Fix enabling/disabling of menu items on Mac OS X Peter Baumann (1): config option log.showroot to show the diff of root commits Petr Baudis (1): Make git-clone --use-separate-remote the default Quy Tonthat (4): git-clone documentation Documentation: new option -P for git-svnimport git-branch -d: do not stop at the first failure. Documentation/git-branch: new -r to delete remote-tracking branches. René Scharfe (1): shortlog: remove range check Robert Fitzsimons (17): gitweb: Show '...' links in "summary" view only if there are more items gitweb: Add missing show '...' links change. gitweb: optimize git_get_last_activity. gitweb: optimize git_shortlog_body. gitweb: optimize git_summary. gitweb: Use rev-list pattern search options. gitweb: Require a minimum of two character for the search text. gitweb: Allow search to be disabled from the config file. gitweb: Paginate commit/author/committer search output gitweb: Add parse_commits, used to bulk load commit objects. gitweb: We do longer need the --parents flag in rev-list. gitweb: Change summary, shortlog actions to use parse_commits. gitweb: Change log action to use parse_commits. gitweb: Change header search action to use parse_commits. gitweb: Change atom, rss actions to use parse_commits. gitweb: Change history action to use parse_commits. gitweb: Use rev-list --skip option. Robin Rosenberg (1): Make cvsexportcommit work with filenames with spaces and non-ascii characters. Sean Estabrooks (1): Update documentation to remove incorrect GIT_DIFF_OPTS example. Shawn O. Pearce (30): Teach git-completion.bash how to complete git-merge. Hide plumbing/transport commands from bash completion. Teach bash how to complete options for git-name-rev. Add current branch in PS1 support to git-completion.bash. Teach bash how to complete git-format-patch. Teach bash how to complete git-cherry-pick. Teach bash how to complete git-rebase. Teach bash about git log/show/whatchanged options. Support bash completion of refs/remote. Teach bash about git-repo-config. Support --strategy=x completion in addition to --strategy x. Cache the list of merge strategies and available commands during load. Teach bash about git-am/git-apply and their whitespace options. Teach bash how to complete long options for git-commit. Fix broken bash completion of local refs. Remove uncontested renamed files during merge. Avoid accessing a slow working copy during diffcore operations. Provide more meaningful output from 'git init-db'. Enable reflogs by default in any repository with a working directory. Teach bash the new features of 'git show'. Suggest use of "git add file1 file2" when there is nothing to commit. Align section headers of 'git status' to new 'git add'. Default GIT_COMMITTER_NAME to login name in recieve-pack. Suggest 'add' in am/revert/cherry-pick. Rename imap-send's internal info/warn functions. Introduce a global level warn() function. Use extended SHA1 syntax in merge-recursive conflicts. Display 'theirs' branch name when possible in merge. Rename gitfakemmap to git_mmap. Switch git_mmap to use pread. Terje Sten Bjerkseth (1): Fix system header problems on Mac OS X Uwe Kleine-König (1): Fix documentation copy&paste typo Version v1.4.4.5; changes since v1.4.4.4: ----------------------------------------- Nicolas Pitre (5): clean up pack index handling a bit clean up and optimize nth_packed_object_sha1() usage get rid of num_packed_objects() pack-objects: learn about pack index version 2 sha1_file.c: learn about index version 2 Version v1.4.4.4; changes since v1.4.4.3: ----------------------------------------- Johannes Schindelin (1): diff --check: fix off by one error Junio C Hamano (3): spurious .sp in manpages Fix infinite loop when deleting multiple packed refs. pack-check.c::verify_packfile(): don't run SHA-1 update on huge data Version v1.4.4.3; changes since v1.4.4.2: ----------------------------------------- Alex Riesen (1): Clarify fetch error for missing objects. Brian Gernhardt (1): Move Fink and Ports check to after config file Chris Wright (1): no need to install manpages as executable Eric Wong (2): git-svn: exit with status 1 for test failures git-svn: correctly display fatal() error messages Jim Meyering (1): Don't use memcpy when source and dest. buffers may overlap Junio C Hamano (1): GIT 1.4.4.3 Martin Langhoff (1): cvsserver: Avoid miscounting bytes in Perl v5.8.x Shawn O. Pearce (2): Make sure the empty tree exists when needed in merge-recursive. Bypass expensive content comparsion during rename detection. Version v1.4.4.2; changes since v1.4.4.1: ----------------------------------------- Alex Riesen (1): git-blame: fix rev parameter handling. Andy Parkins (2): Increase length of function name buffer Document git-repo-config --bool/--int options. Eric Wong (4): git-svn: error out from dcommit on a parent-less commit git-svn: correctly handle revision 0 in SVN repositories git-svn: preserve uncommitted changes after dcommit git-svn: avoid fetching files twice in the same revision Johannes Schindelin (1): git-mv: search more precisely for source directory in index Junio C Hamano (5): git blame -C: fix output format tweaks when crossing file boundary. tutorial: talk about user.name early and don't start with commit -a receive-pack: do not insist on fast-forward outside refs/heads/ unpack-trees: make sure "df_conflict_entry.name" is NUL terminated. git-reset to remove "$GIT_DIR/MERGE_MSG" René Scharfe (1): archive-zip: don't use sizeof(struct ...) Version v1.4.4.1; changes since v1.4.4: --------------------------------------- Alexandre Julliard (1): gitweb: Put back shortlog instead of graphiclog in the project list. Chris Riddoch (1): Move --pretty options into Documentation/pretty-formats.txt Jim Meyering (1): Run "git repack -a -d" once more at end, if there's 1MB or more of not-packed data. Johannes Schindelin (1): Seek back to current filepos when mmap()ing with NO_MMAP Junio C Hamano (7): git-checkout: do not allow -f and -m at the same time. git-checkout: allow pathspec to recover lost working tree directory convert-objects: set _XOPEN_SOURCE to 600 git-fetch: follow lightweit tags as well. do_for_each_ref: perform the same sanity check for leftovers. trust-executable-bit: fix breakage for symlinks GIT 1.4.4.1 Linus Torvalds (2): git-pull: allow pulling into an empty repository "git fmt-merge-msg" SIGSEGV Michal Rokos (1): archive: use setvbuf() instead of setlinebuf() Paolo Ciarrocchi (2): Teach SubmittingPatches about git-commit -s Doc: Make comment about merging in tutorial.txt more clear Petr Baudis (4): Fix git-for-each-refs broken for tags git-apply: Documentation typo fix Documentation: Define symref and update HEAD description Documentation: Correct alternates documentation, document http-alternates René Scharfe (4): sparse fix: non-ANSI function declaration sparse fix: Using plain integer as NULL pointer git-apply: slightly clean up bitfield usage Document git-runstatus Version v1.4.4; changes since v1.4.4-rc2: ----------------------------------------- Johannes Sixt (2): test-lib.sh: A command dying due to a signal is an unexpected failure. Catch errors when writing an index that contains invalid objects. Jonas Fonseca (1): git-update-index(1): fix use of quoting in section title Junio C Hamano (1): GIT 1.4.4 Robin Rosenberg (1): Rework cvsexportcommit to handle binary files for all cases. Version v1.4.4-rc2; changes since v1.4.4-rc1: --------------------------------------------- Eric Wong (3): git-svn: avoid printing filenames of files we're not tracking git-svn: don't die on rebuild when --upgrade is specified git-svn: fix dcommit losing changes when out-of-date from svn Jakub Narębski (3): gitweb: Better git-unquoting and gitweb-quoting of pathnames gitweb: Use character or octal escape codes (and add span.cntrl) in esc_path gitweb: New improved patchset view Junio C Hamano (14): gitweb: fix disabling of "forks" gitweb: minimally fix "fork" support. gitweb: do not give blame link unconditionally in diff-tree view git-status: quote LF in its output git-pickaxe: retire pickaxe gitweb: protect blob and diff output lines from controls. gitweb: protect commit messages from controls. gitweb: fix unmatched div in commitdiff Documentation: move blame examples git-annotate: no need to exec blame; it is built-in now. git-annotate: fix -S on graft file with comments. path-list: fix path-list-insert return value git-cvsserver: read from git with -z to get non-ASCII pathnames. GIT 1.4.4-rc2 OGAWA Hirofumi (1): gitk: Fix nextfile() and add prevfile() Petr Baudis (1): Nicer error messages in case saving an object to db goes wrong Robert Shearman (1): git-rebase: Use --ignore-if-in-upstream option when executing git-format-patch. Version v1.4.4-rc1; changes since v1.4.3.5: ------------------------------------------- Alan Chandler (1): Gitweb - provide site headers and footers Alexandre Julliard (5): pack-refs: Store the full name of the ref even when packing only tags. git.el: Added functions for moving to the next/prev unmerged file. git.el: Added a function to open the current file in another window. git.el: Move point after the log message header when entering log-edit mode. git.el: Include MERGE_MSG in the log-edit buffer even when not committing a merge. Andy Parkins (2): Make filenames line up in git-status output Remove uneccessarily similar printf() from print_ref_list() in builtin-branch Andy Whitcroft (2): cvsimport: move over to using git-for-each-ref to read refs. git-for-each-ref: improve the documentation on scripting modes Aneesh Kumar K.V (1): gitweb: Remove extra "/" in path names for git_get_project_list Christian Couder (12): Add [-s|--hash] option to Linus' show-ref. Use Linus' show ref in "git-branch.sh". Document git-show-ref [-s|--hash] option. Fix show-ref usage for --dereference. Add pack-refs and show-ref test cases. When creating branch c/d check that branch c does not already exists. Uncomment test case: git branch c/d should barf if branch c exists. Fix a remove_empty_dir_recursive problem. Clean up "git-branch.sh" and add remove recursive dir test cases. Use git-update-ref to delete a tag instead of rm()ing the ref file. Check that a tag exists using show-ref instead of looking for the ref file. Do not create tag leading directories since git update-ref does it. Dennis Stosberg (3): lock_ref_sha1_basic does not remove empty directories on BSD Remove bashism from t3210-pack-refs.sh Bash completion support for aliases Dmitry V. Levin (1): git-clone: define die() and use it. Edgar Toernig (1): Use memmove instead of memcpy for overlapping areas Eric Wong (3): git-send-email: do not pass custom Date: header git-svn: avoid printing filenames of files we're not tracking git-svn: don't die on rebuild when --upgrade is specified Jakub Narębski (14): gitweb: Improve git_print_page_path gitweb: Add '..' (up directory) to tree view if applicable gitweb: Get rid of git_print_simplified_log gitweb: Filter out commit ID from @difftree in git_commit and git_commitdiff gitweb: Print commit message without title in commitdiff only if there is any gitweb: Use --no-commit-id in git_commit and git_commitdiff Documentation: Update information about <format> in git-for-each-ref gitweb: Move git_get_last_activity subroutine earlier gitweb: Add "next" link to commitdiff view gitweb: Secure against commit-ish/tree-ish with the same name as path gitweb: Use 's' regexp modifier to secure against filenames with LF gitweb: Use git-for-each-ref to generate list of heads and/or tags gitweb: Output also empty patches in "commitdiff" view gitweb: Better support for non-CSS aware web browsers Jeff King (4): wt-status: use simplified resolve_ref to find current branch gitignore: git-pack-refs is a generated file. gitignore: git-show-ref is a generated file. git-pickaxe: work properly in a subdirectory. Jim Meyering (1): Don't use $author_name undefined when $from contains no /\s</. Johannes Schindelin (3): Fix git-update-index --again show-branch: mark active branch with a '*' again Turn on recursive with --summary Jonas Fonseca (1): Add man page for git-show-ref Junio C Hamano (96): Add git-for-each-ref: helper for language bindings Fix t1400-update-ref test minimally fsck-objects: adjust to resolve_ref() clean-up. symbolit-ref: fix resolve_ref conversion. Add callback data to for_each_ref() family. Tell between packed, unpacked and symbolic refs. pack-refs: do not pack symbolic refs. git-pack-refs --prune pack-refs: fix git_path() usage. lock_ref_sha1_basic: remove unused parameter "plen". Clean-up lock-ref implementation update-ref: -d flag and ref creation safety. update a few Porcelain-ish for ref lock safety. Teach receive-pack about ref-log receive-pack: call setup_ident before git_config grep --all-match teach revision walker about --all-match. git-diff/git-apply: make diff output a bit friendlier to GNU patch (part 1) ref locking: allow 'foo' when 'foo/bar' used to exist but not anymore. refs: minor restructuring of cached refs data. lock_ref_sha1(): do not sometimes error() and sometimes die(). lock_ref_sha1(): check D/F conflict with packed ref when creating. delete_ref(): delete packed ref git-branch: remove D/F check done by hand. show-ref --hash=len, --abbrev=len, and --abbrev git-fetch: adjust to packed-refs. Fix refs.c;:repack_without_ref() clean-up path gitweb: make leftmost column of blame less cluttered. git-fetch: do not look into $GIT_DIR/refs to see if a tag exists. pack-refs: use lockfile as everybody else does. gitweb: prepare for repositories with packed refs. Revert 954a6183756a073723a7c9fd8d2feb13132876b0 pack-refs: call fflush before fsync. blame.c: whitespace and formatting clean-up. git-blame: --show-name (and -f) git-blame: --show-number (and -n) blame.c: move code to output metainfo into a separate function. git-send-email: do not drop custom headers the user prepared ref-log: allow ref@{count} syntax. git-send-email: real name with period need to be dq-quoted on From: line git-blame --porcelain gitweb: use blame --porcelain Make git-send-email detect mbox-style patches more readily core.logallrefupdates create new log file only for branch heads. git-pack-refs --all core.logallrefupdates thinko-fix pack-objects: document --delta-base-offset option blame: Document and add help text for -f, -n, and -p gitweb: spell "blame --porcelain" with -p git-repack: repo.usedeltabaseoffset diff --numstat gitweb: use for-each-ref to show the latest activity across branches ref-log: fix D/F conflict coming from deleted refs. git-pickaxe: blame rewritten. git-pickaxe -M: blame line movements within a file. git-pickaxe -C: blame cut-and-pasted lines. git-pickaxe: pagenate output by default. git-pickaxe: fix nth_line() git-pickaxe: improve "best match" heuristics git-pickaxe: introduce heuristics to avoid "trivial" chunks git-pickaxe: do not keep commit buffer. git-pickaxe: do not confuse two origins that are the same. git-pickaxe: get rid of wasteful find_origin(). git-pickaxe: swap comparison loop used for -C sha1_name.c: avoid compilation warnings. t3200: git-branch testsuite update tests: merge-recursive is usable without Python merge: loosen overcautious "working file will be lost" check. merge-recursive: use abbreviated commit object name. merge-recursive: make a few functions static. merge-recursive: adjust to loosened "working file clobbered" check t6022: ignoring untracked files by merge-recursive when they do not matter Documentation: fix git-format-patch mark-up and link it from git.txt send-pack --keep: do not explode into loose objects on the receiving end. git-pickaxe: WIP to refcount origin structure. git-pickaxe: allow -Ln,m as well as -L n,m git-pickaxe: refcount origin correctly in find_copy_in_parent() git-pickaxe: tighten sanity checks. Revert "send-pack --keep: do not explode into loose objects on the receiving end." git-pickaxe: split find_origin() into find_rename() and find_origin(). git-pickaxe: cache one already found path per commit. Introduce a new revision set operator <rev>^! branch: work in subdirectories. for-each-ref: "creator" and "creatordate" fields git-pickaxe: rename detection optimization git-pickaxe: simplify Octopus merges further git-pickaxe: re-scan the blob after making progress with -M git-pickaxe: re-scan the blob after making progress with -C git-pickaxe: fix origin refcounting cherry is built-in, do not ship git-cherry.sh git-blame: add internal statistics to count read blobs. git-pickaxe: optimize by avoiding repeated read_sha1_file(). Document git-pack-refs and link it to git(7). git-pickaxe: -L /regexp/,/regexp/ git-pickaxe: allow "-L <something>,+N" GIT 1.4.3-rc1 Karl Wiberg (1): ignore-errors requires cl Lars Hjemli (2): Make git-branch a builtin Fix show-ref usagestring Linus Torvalds (8): Add "git show-ref" builtin command Teach "git checkout" to use git-show-ref Start handling references internally as a sorted in-memory list Add support for negative refs Make ref resolution saner Enable the packed refs file format Allow '-' in config variable names git push: add verbose flag and allow overriding of default target repository Luben Tuikov (5): gitweb: blame: print commit-8 on the leading row of a commit-block gitweb: blame: Mouse-over commit-8 shows author and date gitweb: blame porcelain: lineno and orig lineno swapped git-revert with conflicts to behave as git-merge with conflicts gitweb: esc_html() author in blame Martin Waitz (2): gitweb: start to generate PATH_INFO URLs. gitweb: warn if feature cannot be overridden. Matthew Wilcox (1): Add --dry-run option to git-send-email Nicolas Pitre (24): introduce delta objects with offset to base teach git-unpack-objects about deltas with offset to base teach git-index-pack about deltas with offset to base make git-pack-objects able to create deltas with offset to base make pack data reuse compatible with both delta types let the GIT native protocol use offsets to delta base when possible zap a debug remnant allow delta data reuse even if base object is a preferred base index-pack: compare only the first 20-bytes of the key. add the capability for index-pack to read from a stream enable index-pack streaming capability make index-pack able to complete thin packs. add progress status to index-pack mimic unpack-objects when --stdin is used with index-pack enhance clone and fetch -k experience index-pack: minor fixes to comment and function name missing small substitution make git-push a bit more verbose Allow pack header preprocessing before unpack-objects/index-pack. git-fetch can use both --thin and --keep with fetch-pack now improve fetch-pack's handling of kept packs have index-pack create .keep file more carefully remove .keep pack lock files when done with refs update git-pack-objects progress flag documentation and cleanup Petr Baudis (11): Fix broken sha1 locking Fix buggy ref recording gitweb: Document features better gitweb: Fix search form when PATH_INFO is enabled bisect reset: Leave the tree in usable state if git-checkout failed gitweb: Restore object-named links in item lists gitweb: Make search type a popup menu gitweb: Do not automatically append " git" to custom site name gitweb: Show project's README.html if available gitweb: Support for 'forks' gitweb: Fix up bogus $stylesheet declarations René Scharfe (4): git-archive --format=zip: use default version ID git-archive --format=zip: add symlink support Built-in cherry Make git-cherry handle root trees Robert Shearman (2): git-rebase: Use --ignore-if-in-upstream option when executing git-format-patch. git-rebase: Add a -v option to show a diffstat of the changes upstream at the start of a rebase. Robin Rosenberg (2): Mention that pull can work locally in the synopsis Swap the porcelain and plumbing commands in the git man page Ryan Anderson (1): Remove git-annotate.perl and create a builtin-alias for git-blame Santi Béjar (2): fetch: Misc output cleanup merge and resolve: Output short hashes and .. in "Updating ..." Sasha Khapyorsky (2): git-svnimport.perl: copying directory from original SVN place git-svnimport: support for partial imports Sean Estabrooks (1): Add --global option to git-repo-config. Sergey Vlasov (2): git-send-email: Document support for local sendmail instead of SMTP server git-send-email: Read the default SMTP server from the GIT config file Shawn O. Pearce (15): Use column indexes in git-cvsserver where necessary. Allow short pack names to git-pack-objects --unpacked=. Only repack active packs by skipping over kept packs. Teach git-index-pack how to keep a pack file. Remove unused variable in receive-pack. Move deny_non_fast_forwards handling completely into receive-pack. Teach receive-pack how to keep pack files based on object count. Added completion support for git-branch.exe. Added bash completion support for git-reset. Added missing completions for show-branch and merge-base. Only load .exe suffix'd completions on Cygwin. Bash completion support for remotes in .git/config. Take --git-dir into consideration during bash completion. Support bash completion on symmetric difference operator. Remove more sed invocations from within bash completion. Version v1.4.3.5; changes since v1.4.3.4: ----------------------------------------- Alex Riesen (1): merge-recursive implicitely depends on trust_executable_bit Eric Wong (3): git-svn: avoid printing filenames of files we're not tracking git-svn: don't die on rebuild when --upgrade is specified git-svn: fix dcommit losing changes when out-of-date from svn Jakub Narębski (1): Documentation: Transplanting branch with git-rebase --onto Jeff King (1): Fix git-runstatus for repositories containing a file named HEAD Junio C Hamano (3): adjust_shared_perm: chmod() only when needed. path-list: fix path-list-insert return value git-cvsserver: read from git with -z to get non-ASCII pathnames. Petr Baudis (1): Nicer error messages in case saving an object to db goes wrong Robert Shearman (1): git-rebase: Use --ignore-if-in-upstream option when executing git-format-patch. Tero Roponen (1): remove an unneeded test Version v1.4.3.4; changes since v1.4.3.3: ----------------------------------------- Andy Parkins (2): Minor grammar fixes for git-diff-index.txt git-clone documentation didn't mention --origin as equivalent of -o Christian Couder (3): Remove --syslog in git-daemon inetd documentation examples. Documentation: add upload-archive service to git-daemon. Documentation: add git in /etc/services. Edgar Toernig (1): Use memmove instead of memcpy for overlapping areas J. Bruce Fields (1): Documentation: updates to "Everyday GIT" Jakub Narębski (3): diff-format.txt: Combined diff format documentation supplement diff-format.txt: Correct information about pathnames quoting in patch format gitweb: Check git base URLs before generating URL from it Jan Harkes (1): Continue traversal when rev-list --unpacked finds a packed commit. Johannes Schindelin (1): link_temp_to_file: call adjust_shared_perm() only when we created the directory Junio C Hamano (9): Documentation: clarify refname disambiguation rules. combine-diff: a few more finishing touches. combine-diff: fix hunk_comment_line logic. combine-diff: honour --no-commit-id Surround "#define DEBUG 0" with "#ifndef DEBUG..#endif" quote.c: ensure the same quoting across platforms. revision traversal: --unpacked does not limit commit list anymore. link_temp_to_file: don't leave the path truncated on adjust_shared_perm failure apply: handle "traditional" creation/deletion diff correctly. Nicolas Pitre (1): pack-objects doesn't create random pack names René Scharfe (1): git-cherry: document limit and add diagram Shawn O. Pearce (3): Use ULONG_MAX rather than implicit cast of -1. Remove SIMPLE_PROGRAMS and make git-daemon a normal program. Remove unsupported C99 style struct initializers in git-archive. Version v1.4.3.3; changes since v1.4.3.2: ----------------------------------------- Eric Wong (1): git-svn: fix symlink-to-file changes when using command-line svn 1.4.0 Gerrit Pape (1): Set $HOME for selftests Junio C Hamano (5): Documentation: note about contrib/. RPM package re-classification. Refer to git-rev-parse:Specifying Revisions from git.txt Update cherry documentation. Documentation/SubmittingPatches: 3+1 != 6 Petr Baudis (1): xdiff: Match GNU diff behaviour when deciding hunk comment worthiness of lines Tuncer Ayaz (1): git-fetch.sh printed protocol fix Version v1.4.3.2; changes since v1.4.3.1: ----------------------------------------- Alexandre Julliard (1): prune-packed: Fix uninitialized variable. J. Bruce Fields (1): Make prune also run prune-packed Jakub Narębski (2): gitweb: Whitespace cleanup - tabs are for indent, spaces are for align (2) gitweb: Do not esc_html $basedir argument to git_print_tree_entry Jim Meyering (2): git-clone: honor --quiet xdiff/xemit.c (xdl_find_func): Elide trailing white space in a context header. Junio C Hamano (2): pager: default to LESS=FRSX not LESS=FRS daemon: do not die on older clients. Karl Wiberg (1): git-vc: better installation instructions Lars Hjemli (1): Fix usagestring for git-branch Petr Baudis (1): gitweb: Fix setting $/ in parse_commit() René Scharfe (1): git-merge: show usage if run without arguments Santi Béjar (1): Documentation for the [remote] config Version v1.4.3.1; changes since v1.4.3: --------------------------------------- Junio C Hamano (1): pager: default to LESS=FRS Lars Hjemli (1): Fix typo in show-index.c Linus Torvalds (1): git-apply: prepare for upcoming GNU diff -u format change. Nguyễn Thái Ngọc Duy (2): Reject hexstring longer than 40-bytes in get_short_sha1() Add revspec documentation for ':path', ':[0-3]:path' and git-describe Nicolas Pitre (1): reduce delta head inflated size Version v1.4.3; changes since v1.4.3-rc3: ----------------------------------------- Andy Whitcroft (1): add proper dependancies on the xdiff source Junio C Hamano (1): Revert "move pack creation to version 3" Linus Torvalds (1): Fix hash function in xdiff library Markus Amsler (1): git-imap-send: Strip smtp From_ header from imap message. Petr Baudis (1): svnimport: Fix broken tags being generated René Scharfe (2): Make write_sha1_file_prepare() void Replace open-coded version of hash_sha1_file() Version v1.4.3-rc3; changes since v1.4.3-rc2: --------------------------------------------- Christian Couder (1): Fix tracing when GIT_TRACE is set to an empty string. Eric Wong (8): git-svn: multi-init saves and reuses --tags and --branches arguments git-svn: log command fixes Documentation/git-svn: document some of the newer features git-svn: -h(elp) message formatting fixes commit: fix a segfault when displaying a commit with unreachable parents git-svn: add a message encouraging use of SVN::* libraries git-svn: fix commits over svn+ssh:// git-svn: reduce memory usage for large commits Johannes Schindelin (3): diff: fix 2 whitespace issues cvsserver: Show correct letters for modified, removed and added files cvsserver: fix "cvs diff" in a subdirectory Junio C Hamano (6): Add WEBDAV timeout to http-fetch. git-fetch --update-head-ok typofix git-pull: we say commit X, not X commit. git.spec.in: perl subpackage is installed in perl_vendorlib not vendorarch apply --numstat -z: line termination fix. t4015: work-around here document problem on Cygwin. Martin Waitz (1): paginate git-diff by default Nicolas Pitre (1): atomic write for sideband remote messages René Scharfe (3): Documentation: add missing second colons and remove a typo Add hash_sha1_file() Make write_sha1_file_prepare() static Yasushi SHOJI (1): clone: the given repository dir should be relative to $PWD Version v1.4.3-rc2; changes since v1.4.3-rc1: --------------------------------------------- Alan Chandler (2): Update the gitweb/README file to include setting the GITWEB_CONFIG environment Fix usage string to match that given in the man page Alexandre Julliard (2): git.el: Fixed inverted "renamed from/to" message. vc-git.el: Switch to using git-blame instead of git-annotate. Dennis Stosberg (2): lock_ref_sha1_basic does not remove empty directories on BSD Add default values for --window and --depth to the docs Franck Bui-Huu (1): Add git-upload-archive to the main git man page Jakub Narębski (1): gitweb: Cleanup Git logo and Git logo target generation Junio C Hamano (9): Makefile: install and clean merge-recur, still. git-mv: invalidate the removed path properly in cache-tree git-push: .git/remotes/ file does not require SP after colon escape tilde in Documentation/git-rev-parse.txt tar-tree deprecation: we eat our own dog food. gitweb: Make the Git logo link target to point to the homepage git-send-email: avoid uninitialized variable warning. cherry-pick: make -r the default Fix git-revert Luben Tuikov (3): gitweb: Escape ESCAPE (\e) character gitweb: Do not print "log" and "shortlog" redundantly in commit view gitweb: blame: Minimize vertical table row padding Martin Waitz (4): gitweb: document webserver configuration for common gitweb/repo URLs. git-commit: cleanup unused function. git-commit: fix coding style. test-lib: separate individual test better in verbose mode. Nicolas Pitre (1): add commit count options to git-shortlog Petr Baudis (4): Show snapshot link in shortlog only if have_snapsho gitweb: Separate (new) and (deleted) in commitdiff by a space gitweb: Handle commits with empty commit messages more reasonably gitweb: [commit view] Do not suppress commitdiff link in root commit René Scharfe (1): git-tar-tree: don't RUN_SETUP Robin Rosenberg (1): Error in test description of t1200-tutorial Yasushi SHOJI (1): gitweb: refactor decode() for utf8 conversion Version v1.4.3-rc1; changes since v1.4.2.4: ------------------------------------------- Alex Riesen (3): Use const for interpolate arguments fix daemon.c compilation for NO_IPV6=1 do not discard constness in interp_set_entry value argument Andy Whitcroft (3): send-pack: remove remote reference limit send-pack: switch to using git-rev-list --stdin svnimport: add support for parsing From: lines for author Aneesh Kumar K.V (4): gitweb: Support for snapshot gitweb: fix snapshot support gitweb: Make blame and snapshot a feature. gitweb: Fix git_blame Art Haas (1): Patch for http-fetch.c and older curl releases Christian Couder (8): Trace into open fd and refactor tracing code. Trace into a file or an open fd and refactor tracing code. Update GIT_TRACE documentation. Fix memory leak in prepend_to_path (git.c). Move add_to_string to "quote.c" and make it extern. Fix a memory leak in "connect.c" and die if command too long. Fix space in string " false" problem in "trace.c". Remove empty ref directories that prevent creating a ref. David Rientjes (18): blame.c return cleanup builtin-grep.c cleanup builtin-push.c cleanup diff.c cleanup http-push.c cleanup read-cache.c cleanup Make pprint_tag void and cleans up call in cmd_cat_file. Make show_entry void Make checkout_all void. Make fsck_dir void. Make pack_objects void. Make track_tree_refs void. Make upload_pack void and remove conditional return. Make sha1flush void and remove conditional return. make inline is_null_sha1 global use appropriate typedefs remove unnecessary initializations Do not use memcmp(sha1_1, sha1_2, 20) with hardcoded length. Dennis Stosberg (10): "test" in Solaris' /bin/sh does not support -e Makefile fix for Solaris Add possibility to pass CFLAGS and LDFLAGS specific to the perl subdir Solaris has strlcpy() at least since version 8 Look for sockaddr_storage in sys/socket.h Fix detection of ipv6 on Solaris Fix compilation with Sun CC gitweb: Use --git-dir parameter instead of setting $ENV{'GIT_DIR'} gitweb: Remove forgotten call to git_to_hash use do() instead of require() to include configuration Dmitry V. Levin (3): Make count-objects, describe and merge-tree work in subdirectory Documentation: Fix broken links Handle invalid argc gently Eric Wong (5): pass DESTDIR to the generated perl/Makefile git-svn: establish new connections on commit after fork git-svn: recommend rebase for syncing against an SVN repo git-svn: add the 'dcommit' command git-svn: stop repeatedly reusing the first commit message with dcommit Franck Bui-Huu (10): Add a newline before appending "Signed-off-by: " line log-tree.c: cleanup a bit append_signoff() Add git-archive git-archive: wire up TAR format. git-archive: wire up ZIP format. Add git-upload-archive connect.c: finish_connect(): allow null pid parameter Test return value of finish_connect() upload-archive: monitor child communication even more carefully. git-archive: update documentation Haavard Skinnemoen (1): git-send-email: Don't set author_not_sender from Cc: lines Jakub Narębski (138): gitweb: whitespace cleanup gitweb: Use list for of open for running git commands, thorougly. gitweb: simplify git_get_hash_by_path gitweb: More explicit error messages for open "-|" gitweb: Cleanup - chomp $line in consistent style gitweb: Cleanup - chomp @lines in consistent style gitweb: Add git_page_nav for later use gitweb: Navbar refactoring - use git_page_nav to generate navigation bar gitweb: Replace form-feed character by ^L gitweb: Show project descriptions with utf-8 characters in project list correctly gitweb: Add "\n" after <br/> in git_page_nav gitweb: Pager refactoring - use git_get_paging_nav for pagination gitweb: Remove $project from git_get_paging_nav arguments gitweb: Headers refactoring - use git_header_div for header divs gitweb: Remove characters entities entirely when shortening string gitweb: Ref refactoring - use git_get_referencing for marking tagged/head commits gitweb: Refactor generation of shortlog, tags and heads body gitweb: do not quote path for list version of open "-|" gitweb: Remove characters entities entirely when shortening string -- correction gitweb: Reordering code and dividing it into categories gitweb: Refactoring git_project_list autoconf: Add support for setting SHELL_PATH and PERL_PATH autoconf: Move site configuration section earlier in configure.ac autoconf: Add support for setting PYTHON_PATH or NO_PYTHON autoconf: Check for ll hh j z t size specifiers introduced by C99 autoconf: Typo cleanup, reordering etc. Copy description of new build configuration variables to configure.ac autoconf: Set NEEDS_LIBICONV unconditionally if there is no iconv in libc gitweb: Separate input validation and dispatch, add comment about opml action gitweb: die_error first (optional) parameter is HTTP status gitweb: Use undef for die_error to use default first (status) parameter value gitweb: Don't undefine query parameter related variables before die_error gitweb: Cleanup and uniquify error messages gitweb: No periods for error messages gitweb: No error messages with unescaped/unprotected user input gitweb: PATH_INFO=/ means no project gitweb: Inline $rss_link gitweb: Refactor untabifying - converting tabs to spaces gitweb: fix commitdiff for root commits gitweb: Skip nonmatching lines in difftree output, consistently autoconf: Unset NO_STH and NEED_STH when it is detected not needed gitweb: Remove unused variables in git_shortlog_body and git_heads autoconf: Add configure target to main Makefile autoconf: Error out on --without-shell and --without-perl autoconf: Improvements in NO_PYTHON/PYTHON_PATH handling autoconf: Move variables which we always set to config.mak.in autoconf: It is --without-python, not --no-python autoconf: Add support for setting CURLDIR, OPENSSLDIR, EXPATDIR gitweb: Whitespace cleanup - tabs are for indent, spaces are for align gitweb: Great subroutines renaming gitweb: Separate ref parsing in git_get_refs_list into parse_ref gitweb: Refactor printing shortened title in git_shortlog_body and git_tags_body gitweb: Separate main part of git_history into git_history_body gitweb: Separate finding project owner into git_get_project_owner gitweb: Change appereance of marker of refs pointing to given object gitweb: Skip comments in mime.types like file gitweb: True fix: Support for the standard mime.types map in gitweb gitweb: Separate printing difftree in git_commit into git_difftree_body gitweb: Show project's git URL on summary page gitweb: Add support for per project git URLs gitweb: Uniquify version info output, add meta generator in page header gitweb: Refactor printing commit message gitweb: Added parse_difftree_raw_line function for later use gitweb: Use parse_difftree_raw_line in git_difftree_body gitweb: bugfix: a.list formatting regression gitweb: Replace some presentational HTML by CSS gitweb: Whitespace cleanup: realign, reindent gitweb: Use underscore instead of hyphen to separate words in HTTP headers names gitweb: Route rest of action subroutines through %actions gitweb: Use here-doc gitweb: Drop the href() params which keys are not in %mapping gitweb: Sort CGI parameters returned by href() gitweb: Use git-diff-tree patch output for commitdiff gitweb: Show information about incomplete lines in commitdiff gitweb: Remove invalid comment in format_diff_line gitweb: Streamify patch output in git_commitdiff gitweb: Add git_get_{following,preceding}_references functions gitweb: Faster return from git_get_preceding_references if possible gitweb: Add git_get_rev_name_tags function gitweb: Use git_get_name_rev_tags for commitdiff_plain X-Git-Tag: header gitweb: Add support for hash_parent_base parameter for blobdiffs gitweb: Allow for pre-parsed difftree info in git_patchset_body gitweb: Parse two-line from-file/to-file diff header in git_patchset_body gitweb: Add invisible hyperlink to from-file/to-file diff header gitweb: Always display link to blobdiff_plain in git_blobdiff gitweb: Change here-doc back for style consistency in git_blobdiff gitweb: Use git-diff-tree or git-diff patch output for blobdiff gitweb: git_blobdiff_plain is git_blobdiff('plain') gitweb: Remove git_diff_print subroutine gitweb: Remove creating directory for temporary files gitweb: git_annotate didn't expect negative numeric timezone gitweb: Remove workaround for git-diff bug fixed in f82cd3c gitweb: Improve comments about gitweb features configuration gitweb: blobs defined by non-textual hash ids can be cached gitweb: Fix typo in git_difftree_body gitweb: Fix typo in git_patchset_body gitweb: Remove unused git_get_{preceding,following}_references gitweb: Remove git_to_hash function gitweb: Use @diff_opts, default ('M'), as git-diff and git-diff-tree paramete gitweb: Make git_print_log generic; git_print_simplified_log uses it gitweb: Do not remove signoff lines in git_print_simplified_log gitweb: Add author information to commitdiff view gitweb: git_print_log: signoff line is non-empty line gitweb: Add diff tree, with links to patches, to commitdiff view gitweb: Add local time and timezone to git_print_authorship gitweb: Move git-ls-tree output parsing to parse_ls_tree_line gitweb: Separate printing of git_tree row into git_print_tree_entry gitweb: Extend parse_difftree_raw_line to save commit info gitweb: Change the name of diff to parent link in "commit" view to "diff gitweb: Add GIT favicon, assuming image/png type gitweb: Correct typo: '==' instead of 'eq' in git_difftree_body gitweb: Divide page path into directories -- path's "breadcrumbs" autoconf: Add -liconv to LIBS when NEEDS_LIBICONV autoconf: Check for subprocess.py autoconf: Quote AC_CACHE_CHECK arguments autoconf: Fix copy'n'paste error autoconf: Set NO_ICONV if iconv is found neither in libc, nor in libiconv autoconf: Add support for setting NO_ICONV and ICONVDIR autoconf: Add config.cache to .gitignore gitweb: Make pickaxe search a feature gitweb: Paginate history output gitweb: Use File::Find::find in git_get_projects_list gitweb: Do not parse refs by hand, use git-peek-remote instead gitweb: Add git_project_index for generating index.aux gitweb: Allow for href() to be used for links without project param gitweb: Add link to "project_index" view to "project_list" page gitweb: Fix mimetype_guess_file for files with multiple extensions gitweb: Even more support for PATH_INFO based URLs gitweb: Require project for almost all actions gitweb: Always use git-peek-remote in git_get_references gitweb: Make git_get_refs_list do work of git_get_references gitweb: Fix thinko in git_tags and git_heads gitweb: Make git_get_hash_by_path check type if provided gitweb: Strip trailing slashes from $path in git_get_hash_by_path gitweb: Use "return" instead of "return undef" for some subs gitweb: Split validate_input into validate_pathname and validate_refname gitweb: Add git_url subroutine, and use it to quote full URLs gitweb: Quote filename in HTTP Content-Disposition: header Jeff King (9): gitweb: optionally read config from GITWEB_CONFIG diff: support custom callbacks for output Move color option parsing out of diff.c and into color.[ch] git-commit.sh: convert run_status to a C builtin git-status: document colorization config options contrib/vim: add syntax highlighting file for commits wt-status: remove extraneous newline from 'deleted:' output rev-list: fix segfault with --{author,committer,grep} git-repack: allow git-repack to run in subdirectory Johannes Schindelin (35): Git.xs: older perl do not know const char * Status update on merge-recursive in C Cumulative update of merge-recursive in C merge-recur: Convert variable names to lower_case merge-recur: Get rid of debug code merge-recur: Remove dead code merge-recur: Fix compiler warning with -pedantic merge-recur: Cleanup last mixedCase variables... merge-recur: Explain why sha_eq() and struct stage_data cannot go merge-recur: fix thinko in unique_path() read-trees: refactor the unpack_trees() part read-tree: move merge functions to the library merge-recur: use the unpack_trees() interface instead of exec()ing read-tree merge-recur: virtual commits shall never be parsed merge-recursive: fix rename handling http-push: avoid fork() by calling merge_bases() directly merge-recur: do not call git-write-tree merge-recur: do not setenv("GIT_INDEX_FILE") merge-recur: if there is no common ancestor, fake empty one merge-recur: try to merge older merge bases first merge-recur: do not die unnecessarily discard_cache(): discard index, even if no file was mmap()ed Add the --color-words option to the diff options family builtin-mv: readability patch unpack-objects: remove unused variable "eof" Makefile: fix typo Remove uneeded #include fmt-merge-msg: fix off-by-one bug Teach runstatus about --untracked add receive.denyNonFastforwards config variable receive-pack: plug memory leak in fast-forward checking code. Document receive.denyNonFastforwards runstatus: do not recurse into subdirectories if not needed daemon: default to 256 for HOST_NAME_MAX if it is not defined diff --stat: ensure at least one '-' for deletions, and one '+' for additions Jon Loeliger (3): Add virtualization support to git-daemon Cleaned up git-daemon virtual hosting support. Removed memory leaks from interpolation table uses. Jonas Fonseca (21): git-apply(1): document missing options and improve existing ones git-ls-remote(1): document --upload-pack git-blame(1): mention options in the synopsis and advertise pickaxe gitk(1): expand the manpage to look less like a template git(7): put the synopsis in a verse style paragraph gitview.txt: improve asciidoc markup git-svn(1): improve asciidoc markup describe: fix off-by-one error in --abbrev=40 handling Use PATH_MAX instead of MAXPATHLEN Use xrealloc instead of realloc Use fstat instead of fseek Use xcalloc instead of calloc Add --relative-date option to the revision interface git(7): move gitk(1) to the list of porcelain commands Use xmalloc instead of malloc Include config.mak.autogen in the doc Makefile git-rev-list(1): group options; reformat; document more options git-apply(1): document --unidiff-zero git-repack(1): document --window and --depth Fix trivial typos and inconsistencies in hooks documentation gitk(1): mention --all Junio C Hamano (125): Perl interface: add build-time configuration to allow building with -fPIC Perl interface: make testsuite work again. perl: fix make clean Git.pm: tentative fix to test the freshly built Git.pm Perly Git: arrange include path settings properly. Makefile: Set USE_PIC on x86-64 Perly git: work around buggy make implementations. Git.pm: clean generated files. Perly Git: make sure we do test the freshly built one. INSTALL: a tip for running after building but without installing. Work around sed and make interactions on the backslash at the end of line. upload-pack: use object pointer not copy of sha1 to keep track of has/needs. upload-pack: lift MAX_NEEDS and MAX_HAS limitation recur vs recursive: help testing without touching too many stuff. sha1_file.c: expose map_sha1_file() interface. pack-objects: reuse deflated data from new-style loose objects. unpack-objects: read configuration data upon startup. Makefile: git-merge-recur depends on xdiff libraries. gitweb: There can be more than two levels of subdirectories gitweb: an obvious cut and paste error. gitweb: fix use of uninitialized value. gitweb: when showing history of a tree, show tree link not blob gitweb: avoid undefined value warning in print_page_path gitweb/README: do not bug Kay with gitweb questions anymore Makefile: gitweb/gitweb.cgi is now generated. gitweb: do not use @@FOO@@ for replaced tokens .gitignore: git-merge-recur is a built file. Make git-checkout-index a builtin builtins: Makefile clean-up git.c: Rename NEEDS_PREFIX to RUN_SETUP autoconf: fix NEEDS_SSL_WITH_CRYPTO autoconf: NO_IPV6 Racy git: avoid having to be always too careful read-cache: tweak racy-git delay logic autoconf: clean temporary file mak.append git-grep: show pathnames relative to the current directory upload-pack: minor clean-up in multi-ack logic Fix type of combine-diff.c::show_patch_diff() Remove combine-diff.c::uninteresting() t4116 apply --reverse test git-apply --reverse: simplify reverse option. git-apply --binary: clean up and prepare for --reverse avoid nanosleep(2) Documentation/technical/racy-git.txt Add check program "git-check-racy" Remove the "delay writing to avoid runtime penalty of racy-git avoidance" builtin-grep: remove unused debugging cruft. builtin-apply --reverse: two bugfixes. diff.c: make binary patch reversible. apply --reverse: tie it all together. git-apply --reject git-apply --reject: send rejects to .rej files. git-apply --verbose apply --reject: count hunks starting from 1, not 0 Convert memset(hash,0,20) to hashclr(hash). hashcpy/hashcmp remaining bits. builtin-grep.c: remove unused debugging piece. update-index -g git-apply --reject: finishing touches. free(NULL) is perfectly valid. daemon: prepare for multiple services. daemon: add upload-tar service. multi-service daemon: documentation t5710: fix two thinkos. Constness tightening for move/link_temp_to_file() consolidate two copies of new style object header parsing code. pack-objects: re-validate data we copy from elsewhere. Revert "Convert git-annotate to use Git.pm" Revert "Git.pm: Introduce fast get_object() method" Revert "Make it possible to set up libgit directly (instead of from the environment)" pack-objects: fix thinko in revalidate code more lightweight revalidation while reusing deflated stream in packing unpack-objects desperately salvages objects from a corrupt pack revision.c: allow injecting revision parameters after setup_revisions(). Teach rev-list an option to read revs from the standard input. Revert "daemon: add upload-tar service." Make apply --binary a no-op. diff --binary generates full index on binary files. Separate object listing routines out of rev-list pack-objects: run rev-list equivalent internally. pack-objects: further work on internal rev-list logic. pack-objects --unpacked=<existing pack> option. get_sha1_hex() micro-optimization archive: allow remote to have more formats than we understand. Move sideband client side support into reusable form. Move sideband server side support into reusable form. archive: force line buffered output to stderr Add --verbose to git-archive Teach --exec to git-archive --remote Prepare larger packet buffer for upload-pack protocol. Add sideband status report to git-archive protocol upload-archive: monitor child communication more carefully. builtin-archive.c: rename remote_request() to extract_remote_arg() pack-objects: document --revs, --unpacked and --all. http-fetch: fix alternates handling. unpack-objects -r: call it "recover". Document git-grep -[Hh] Define fallback PATH_MAX on systems that do not define one in <limits.h> Fix git-am safety checks http-fetch.c: consolidate code to detect missing fetch target Add ftp:// protocol support for git-http-fetch t1400: make test debuggable. apply --unidiff-zero: loosen sanity checks for --unidiff=0 patches builtin-grep: make pieces of it available as library. revision traversal: prepare for commit log match. revision traversal: --author, --committer, and --grep. repack: use only pack-objects, not rev-list. Update grep internal for grepping only in head/body git log: Unify header_filter and message_filter into one. Make hexval() available to others. sha1_name.c: understand "describe" output as a valid object name diff.c: second war on whitespace. git-apply: second war on whitespace. Add t5510 to test per branch configuration affecting git-fetch. Remove upload-tar and make git-tar-tree a thin wrapper to git-archive Deprecate merge-recursive.py diff --stat: allow custom diffstat output width. diff --stat: color output. An illustration of rev-list --parents --pretty=raw grep: free expressions and patterns when done. grep: fix --fixed-strings combined with expression. Contributed bash completion support for core Git tools. git-diff -B output fix. Remove -fPIC which was only needed for Git.xs GIT 1.4.3-rc1 Linus Torvalds (10): Relative timestamps in git log git-fsck-objects: lacking default references should not be fatal Fix git-fsck-objects SIGSEGV/divide-by-zero Add "-h/-H" parsing to "git grep" Allow multiple "git_path()" uses git-log --author and --committer are not left-anchored by default Clean up approxidate() in preparation for fixes Fix approxidate() to understand more extended numbers diff --stat=width[,name-width]: allow custom diffstat output width. Fix approxidate() to understand 12:34 AM/PM are 00:34 and 12:34 Liu Yubao (1): Fix duplicate xmalloc in builtin-add Luben Tuikov (19): gitweb: git_tree displays blame based on repository config gitweb: bugfix: git_commit and git_commitdiff parents gitweb: blame table row no highlight fix gitweb: bugfix: commitdiff regression gitweb: bugfix: git_print_page_path() needs the hash base gitweb: tree view: eliminate redundant "blob" gitweb: Remove redundant "tree" link gitweb: extend blame to show links to diff and previous Revert "gitweb: extend blame to show links to diff and previous" gitweb: Remove excessively redundant entries from git_difftree_body gitweb: Add history and blame to git_difftree_body() gitweb: "alternate" starts with shade (i.e. 1) gitweb: Remove redundant "commit" link from shortlog gitweb: Factor out gitweb_have_snapshot() gitweb: Add snapshot to shortlog gitweb: Don't use quotemeta on internally generated strings gitweb: Remove redundant "commit" from history gitweb: History: blob and tree are first, then commitdiff, etc gitweb: tree view: hash_base and hash are now context sensitive Martin Langhoff (1): git-repack: create new packs inside $GIT_DIR, not cwd Martin Waitz (11): gitweb: fill in gitweb configuration by Makefile gitweb: use out-of-line GIT logo. gitweb: provide function to format the URL for an action link. gitweb: consolidate action URL generation. gitweb: continue consolidation of URL generation. gitweb: support for "fp" parameter. gitweb: support for / as home_link. gitweb: fix project list if PATH_INFO=="/". gitweb: more support for PATH_INFO based URLs gitweb: fix uninitialized variable warning. gitweb: fix display of trees via PATH_INFO. Matthias Kestenholz (6): Make git-name-rev a builtin Make git-pack-objects a builtin Make git-unpack-objects a builtin Make git-symbolic-ref a builtin Add gitweb.cgi to .gitignore Check if pack directory exists prior to descending into it Matthias Lederhofer (12): pager: environment variable GIT_PAGER to override PAGER gitweb: use a hash to lookup the sub for an action gitweb: require $ENV{'GITWEB_CONFIG'} gitweb: check if HTTP_ACCEPT is really set gitweb: fix commitdiff_plain for root commits gitweb: fix $project usage gitweb: do not use 'No such directory' error message gitweb: export options gitweb: fix warnings in PATH_INFO code and add export_ok/strict_export gitweb fix validating pg (page) parameter format-patch: use cwd as default output directory git-format-patch: fix bug using -o in subdirectories Nicolas Pitre (2): move pack creation to version 3 many cleanups to sha1_file.c Paul Mackerras (10): gitk: Minor cleanups gitk: Recompute ancestor/descendent heads/tags when rereading refs gitk: Add a row context-menu item for creating a new branch gitk: Add a context menu for heads gitk: Fix a couple of buglets in the branch head menu items gitk: Add a menu item for cherry-picking commits gitk: Update preceding/following tag info when creating a tag gitk: Improve responsiveness while reading and layout out the graph gitk: Fix some bugs in the new cherry-picking code diff-index --cc shows a 3-way diff between HEAD, index and working tree. Pavel Roskin (3): Fix probing for already installed Error.pm Delete manuals if compiling without docs Make perl interface a separate package Petr Baudis (43): Introduce Git.pm (v4) Git.pm: Implement Git::exec_path() Git.pm: Call external commands using execv_git_cmd() Git.pm: Implement Git::version() Add Error.pm to the distribution Git.pm: Better error handling Git.pm: Handle failed commands' output Git.pm: Enhance the command_pipe() mechanism Git.pm: Implement options for the command interface Git.pm: Add support for subdirectories inside of working copies Convert git-mv to use Git.pm Git.pm: assorted build related fixes. Git.pm: Try to support ActiveState output pipe Git.pm: Swap hash_object() parameters Git.pm: Fix Git->repository("/somewhere/totally/elsewhere") Git.pm: Support for perl/ being built by a different compiler Git.pm: Remove PerlIO usage from Git.xs Git.pm: Avoid ppport.h Git.pm: Don't #define around die Use $GITPERLLIB instead of $RUNNING_GIT_TESTS and centralize @INC munging Git.pm: Add config() method Convert git-send-email to use Git.pm Git.pm: Introduce ident() and ident_person() methods Make it possible to set up libgit directly (instead of from the environment) Git.pm: Introduce fast get_object() method Convert git-annotate to use Git.pm Eliminate Scalar::Util usage from private-Error.pm Fix showing of path in tree view gitweb: Link (HEAD) tree for each project from projects list gitweb: More per-view navigation bar links gitweb: Link to tree instead of snapshot in shortlog gitweb: Link to latest tree from the head line in heads list gitweb: Link to associated tree from a particular log item in full log view gitweb: Rename "plain" labels to "raw" gitweb: Relabel "head" as "HEAD" Make path in tree view look nicer gitweb: Fix tree link associated with each commit log entry. gitweb: Fix @git_base_url_list usage Fix snapshot link in tree view Git.pm: Kill Git.xs for now Deprecate git-resolve.sh gitweb: Consolidate escaping/validation of query string gitweb: fix over-eager application of esc_html(). Pierre Habouzit (7): Fix a comparison bug in diff-delta.c avoid to use error that shadows the function name, use err instead. git_dir holds pointers to local strings, hence MUST be const. missing 'static' keywords remove ugly shadowing of loop indexes in subloops. use name[len] in switch directly, instead of creating a shadowed variable. n is in fact unused, and is later shadowed. Randal L. Schwartz (1): builtin-upload-archive.c broken on openbsd René Scharfe (15): git-verify-pack: make builtin Axe the last ent Add write_or_die(), a helper function Add git-zip-tree git-cherry: remove unused variable git-reset: remove unused variable Add git-zip-tree to .gitignore git-archive: make compression level of ZIP archives configurable Use xstrdup instead of strdup in builtin-{tar,zip}-tree.c git-archive: inline default_parse_extra() git-tar-tree: devolve git-tar-tree into a wrapper for git-archive Remove git-zip-tree Rename builtin-zip-tree.c to archive-zip.c git-tar-tree: Remove duplicate git_config() call git-tar-tree: Move code for git-archive --format=tar to archive-tar.c Robin Rosenberg (2): Quote arguments to tr in test-lib Make cvsexportcommit remove files. Santi Béjar (4): Fetch: default remote repository from branch properties fetch: get the remote branches to merge from the branch properties Add test for the default merges in fetch. fetch: Reset remote refs list each time fetch_main is called Sasha Khapyorsky (3): Trivial support for cloning and fetching via ftp://. git-svnimport: Parse log message for Signed-off-by: lines http/ftp: optionally ask curl to not use EPSV command Sergey Vlasov (2): Documentation: Fix howto/revert-branch-rebase.html generation git-svn: Fix fetch --no-ignore-externals with GIT_SVN_NO_LIB=1 Shawn O. Pearce (15): Verify we know how to read a pack before trying to using it. Remove unnecessary forward declaration of unpack_entry. Convert memcpy(a,b,20) to hashcpy(a,b). Convert memcpy(a,b,20) to hashcpy(a,b). Reorganize/rename unpack_non_delta_entry to unpack_compressed_entry. Reuse compression code in unpack_compressed_entry. Cleanup unpack_entry_gently and friends to use type_name array. Cleanup unpack_object_header to use only offsets. Convert unpack_entry_gently and friends to use offsets. Replace uses of strdup with xstrdup. Allow 'svn fetch' on '(no date)' revisions in Subversion. Allow '(no author)' in git-svn's authors file. Ignore executable bit when adding files if filemode=0. Allow git-checkout when on a non-existant branch. Corrected copy-and-paste thinko in ignore executable bit test case. Tilman Sauerbeck (2): Indentation fix. Added support for dropping privileges to git-daemon. Timo Hirvonen (2): --name-only, --name-status, --check and -s are mutually exclusive Remove awkward compatibility warts Ville Skyttä (1): Be nicer if git executable is not installed Yasushi SHOJI (2): gitweb: configurable home link string gitweb: Decode long title for link tooltips Version v1.4.2.4; changes since v1.4.2.3: ----------------------------------------- Linus Torvalds (1): Fix hash function in xdiff library Version v1.4.2.3; changes since v1.4.2.2: ----------------------------------------- Junio C Hamano (2): git-mv: invalidate the removed path properly in cache-tree git-push: .git/remotes/ file does not require SP after colon Version v1.4.2.2; changes since v1.4.2.1: ----------------------------------------- Junio C Hamano (2): Fix git-am safety checks git-diff -B output fix. Liu Yubao (1): Fix duplicate xmalloc in builtin-add Version v1.4.2.1; changes since v1.4.2: --------------------------------------- Dennis Stosberg (1): Solaris does not support C99 format strings before version 10 Johannes Schindelin (5): git-mv: succeed even if source is a prefix of destination git-mv: add more path normalization git-mv: special case destination "." git-mv: fix off-by-one error builtin-mv: readability patch Junio C Hamano (2): finish_connect(): thinkofix http-fetch: fix alternates handling. Luben Tuikov (2): Fix regex pattern in commit-msg sample commit-msg hook: no silent exit on duplicate Signed-off-by lines Version v1.4.2; changes since v1.4.2-rc4: ----------------------------------------- Eric Wong (3): git-svn: correctly kill keyword expansion without munging EOLs git-svn: bugfix: allow SVN:: lib users to track the root of the repository git-svn: split the path from the url correctly with limited perms Junio C Hamano (8): git-apply: applying a patch to make a symlink shorter. combine-diff: use color Fix git-diff A...B builtin-apply: remove unused increment git-sh-setup: do not use repo-config to test the git directory git-am: give better diagnostics when the patch does not apply during --3way Better error message when we are unable to lock the index file t/t4013: fix futzing with the version string. Matthias Lederhofer (1): upload-pack: fix timeout in create_pack_file Paul Mackerras (2): gitk: Allow the user to set some colors gitk: Show the currently checked-out head in bold font Ramsay Jones (1): Fix header breakage with _XOPEN_SOURCE. René Scharfe (9): Add has_extension() git-verify-pack: show usage when no pack was specified git-verify-pack: more careful path handling git-verify-pack: insist on .idx extension git-verify-pack: get rid of while loop git-verify-pack: free pack after use and a cleanup git-verify-pack: buffer overrun paranoia git-verify-pack: no need to count errors drop length argument of has_extension Rutger Nijlunsing (2): http-push: Make WebDAV work with (broken?) default apache2 WebDAV module Add Documentation/howto/setup-git-server-over-http.txt Version v1.4.2-rc4; changes since v1.4.2-rc3: --------------------------------------------- Jeff King (1): git-push: allow pushing from subdirectories Johannes Schindelin (1): Fix crash when GIT_DIR is invalid Jonas Fonseca (1): Update git-init-db(1) and documentation of core.sharedRepository Junio C Hamano (13): Cygwin needs NO_C99_FORMAT??? Further clean-up: usage() vs die() Makefile: Cygwin does not seem to need NO_STRLCPY Fix "grep -w" debugging: XMALLOC_POISON builtin-mv: fix use of uninitialized memory. GIT-VERSION-GEN: adjust for ancient git Documentation: git-status takes the same options as git-commit Fix tutorial-2.html check return value from diff_setup_done() find_unique_abbrev() with len=0 should not abbreviate make --find-copies-harder imply -C allow diff.renamelimit to be set regardless of -M/-C Michael Krelin (1): handle https:// protocol in git-clone Ramsay Jones (4): Fixup command names in some usage strings. Replace some calls to die(usage_str) with usage(usage_str). Allow config file to specify Signed-off-by identity in format-patch. commit walkers: setup_ident() to record correct committer in ref-log. René Scharfe (1): git-tar-tree: fix minor memory leak Ryan Anderson (2): log-tree: show_log() should respect the setting of diffopt->line_termination annotate: Fix bug when parsing merges with differing real and logical parents. Uwe Zeisberger (1): Document rev-list's option --merge Version v1.4.2-rc3; changes since v1.4.2-rc2: --------------------------------------------- Gerrit Pape (1): Build on Debian GNU/kFreeBSD Jakub Narębski (11): Allow INSTALL, bindir, mandir to be set in main Makefile Rename man1 and man7 variables to man1dir and man7dir autoconf: Use autoconf to write installation directories to config.mak.autogen Teach make clean about configure and autoconf Copy description of build configuration variables to configure.ac autoconf: Preparing the way for autodetection autoconf: Checks for typedefs, structures, and compiler characteristics. autoconf: Checks for some library functions. autoconf: Checks for libraries autoconf: Checks for some programs configure.ac vertical whitespace usage cleanup Jeff King (4): git-push: allow -f as an alias for --force git-push: remove obsolete git-push.sh Documentation: convert uses of git-link macro to gitlink git-annotate: remove extraneous debugging line Johannes Schindelin (16): Allow an alias to start with "-p" git wrapper: add --git-dir=<path> and --bare options git-instaweb: some Apache have mod_cgi builtin git-instaweb: respect bindir from Makefile gitweb: fix two warnings t7001: add test for git-mv dir1 dir2/ git-cvsserver: support multiline commit messages Extract helper bits from c-merge-recursive work Make git-mv a builtin builtin git-mv: support moving directories instaweb: Be more clear if httpd or the browser fail cvsserver: imitate git-update-ref when committing Makefile: ssh-pull.o depends on ssh-fetch.c Teach git-apply about '-R' Fix http-fetch tar-tree: illustrate an obscure feature better Josef Weidendorfer (1): Extend testing git-mv for renaming of subdirectories Junio C Hamano (18): git-diff A...B to (usually) mean "git-diff `git-merge-base A B` B" t4112: simplify the test and remove unneeded working tree file. lost-found: use fsck-objects --full git-reset: detect update-ref error and report it. log and diff family: honor config even from subdirectories git-apply -R: binary patches are irreversible for now. t4103: fix binary patch application test. git-checkout: allow "checkout HEAD -- path" Builtins: control the use of pager from the command table. fetch/clone: mark messages from remote side stand out. Fix "git diff blob1 blob2" showing the diff in reverse. read-tree: shadowed variable fix. Add a couple of subdirectory tests. diff.c: do not use pathname comparison to tell renames Show both blob names from "git diff blob1 blob2" sideband: do not use color, just say "remote:" Documentation/git.txt: link git-svn and git-instaweb from the main page. GIT 1.4.2-rc3 Linus Torvalds (4): Call setup_git_directory() early Call setup_git_directory() much earlier Fix double "close()" in ce_compare_data Fix up some fallout from "setup_git_directory()" cleanups Luben Tuikov (8): gitweb.cgi: Teach git_history() to read hash from $hash_base gitweb.cgi: Include direct link to "raw" files from "history" gitweb.cgi: git_blame2: an alternative simple working git blame gitweb.cgi: git_blame2: Allow back-trekking through commits gitweb.cgi: Show "raw" head of project link even when $hash is not defined gitweb.cgi: git_blame2: Revision blocks now have alternating colors gitweb.cgi: Centralize printing of the page path gitweb.cgi: git_blame2: slight optimization reading the blame lines Matthias Kestenholz (3): Make git-prune-packed a builtin Make git-repo-config a builtin use declarations from builtin.h for builtin commands Matthias Lederhofer (5): daemon: documentation for --reuseaddr, --detach and --pid-file setup_git_directory_gently: do not barf when GIT_DIR is given. git.c: allow alias expansion without a git directory pager: config variable pager.color git-grep: document --and, --or, --not, ( and ) Michael S. Tsirkin (1): mailinfo: accept >From in message header Michele Ballabio (1): fixed variable declaration in gitk Pavel Roskin (3): Typofix in configure.ac comment. Quote all calls to GIT_CONF_APPEND_LINE Set datarootdir in config.mak.in Petr Baudis (5): Remove -d from *-fetch usage strings Make pull() take some implicit data as explicit arguments Make pull() support fetching multiple targets at once Teach git-local-fetch the --stdin switch Teach git-http-fetch the --stdin switch Ramsay Jones (7): Ensure git-clone exits with error if perl script fails. Fix annotate test script; notice when git-annotate fails. Fix installation of templates on ancient systems. New tests and en-passant modifications to mktag. Add NO_C99_FORMAT to support older compilers. Fix header breakage due to redefining PATH_MAX. Remove cmd_usage() routine and re-organize the help/usage code. Robert Shearman (2): rebase: Fix the detection of fast-forwarding of the current branch to upstream. rebase: Make the fast-fowarding message more user-friendly by using branch names instead of SHA1 IDs. Shawn O. Pearce (1): Display an error from update-ref if target ref name is invalid. Version v1.4.2-rc2; changes since v1.4.2-rc1: --------------------------------------------- Alex Riesen (1): Trivial path optimization test Alexandre Julliard (5): git.el: Run git-rerere on commits if the rr-cache directory exists. git.el: Prepend a slash to the file name when adding to .gitignore. git.el: Try to reuse an existing buffer when running git-status. git.el: Put the git customize group in the 'tools' parent group. show-branch: Fix another performance problem. Daniel Drake (1): gitweb: escape tag comments Eric Wong (2): typechange tests for git apply (currently failing) git-svn: fix fetching new directories copies when using SVN:: libs Jeff King (2): pack-objects: check pack.window for default window size Colorize 'commit' lines in log ui Johannes Schindelin (4): Fix t4114 on cygwin Always reset the color _before_ printing out the newline cvsserver: suppress warnings cvsserver: avoid warning about active db handles Josh Triplett (3): git-format-patch: Make the second and subsequent mails replies to the first Add option to enable threading headers Add option to set initial In-Reply-To/References Junio C Hamano (8): fetch/clone: check return status from ls-remote builtin-log: typefix for recent format-patch changes. checkout -f failed to check out a file if an existing directory interfered. apply: check D/F conflicts more carefully. apply: split out removal and creation into different phases. apply: handle type-changing patch correctly. git-fetch: fix --keep vs --thin unpack-objects: remove stale and confusing comment Linus Torvalds (1): sha1_file: add the ability to parse objects in "pack file format" Lukas Sandström (1): git-am: Don't accept an mbox on stdin of we already have a .dotest directory Martin Langhoff (1): cvsexportcommit - add -a (add author line) flag, cleanup warnings Matthias Lederhofer (1): upload-pack: fix timeout in create_pack_file Peter Eriksen (1): Substitute xmalloc()+memset(0) with xcalloc(). Santi Béjar (1): Defaulting fetch to origin when set in the repo-config Shawn O. Pearce (1): Disable linking with Fink or DarwinPorts. Willy Tarreau (1): tar-tree: add the "tar.umask" config option Version v1.4.2-rc1; changes since v1.4.1.1: ------------------------------------------- A Large Angry SCM (1): Additional merge-base tests (revised) Alex Riesen (1): Do not use perl in git-commit.sh Alp Toker (9): Fix some doubled word typos Fix some doubled word typos Fix typos involving the word 'commit' typofix (git-name-rev documentation) git-send-email: Remove redundant Reply-To header gitweb: Send XHTML as 'application/xhtml+xml' where possible gitweb: Include a site name in page titles gitweb: Make command invocations go through the git wrapper documentation (urls.txt) typofix Dennis Stosberg (2): gitweb: Declare global variables with "our" gitweb: Declare global variables with "our" Eric Wong (12): Add git-instaweb, instantly browse the working repo with gitweb instaweb: fix unportable ';' usage in sed t8001-annotate: fix a bash-ism in this test git-svn: avoid fetching files outside of the URL we're tracking git-svn: migrate out of contrib builtin-log: respect diff configuration options diff.c: respect diff.renames config option templates/hooks--update: replace diffstat calls with git diff --stat git-svn: fix --file/-F option in commit-diff tests: Set EDITOR=: and VISUAL=: globally git-fetch: fix a bashism (==) git-svn: don't check for migrations/upgrades on commit-diff Jakub Narębski (3): send-email: format 2822 datestring ourselves. Wrap long lines in docstrings in contrib/emacs/git.el Display help for Git mode after pressing `h' or `?' in *git-status* Joachim Berdal Haga (2): Make zlib compression level configurable, and change default. core.compression documentation formatting fix. Johannes Schindelin (7): refactor merge_bases() as preparation to libify merge-base move get_merge_bases() to core lib. Makefile: replace ugly and unportable sed invocation Make git-fmt-merge-msg a builtin Makefile: export NO_SVN_TESTS Close the index file between writing and committing Fix linking for not-so-clever linkers. Jonas Fonseca (1): Documentation/urls.txt: Use substitution to escape square brackets Junio C Hamano (49): Makefile: add framework to verify and bench sha1 implementations. test-sha1: test hashing large buffer t4013: add tests for diff/log family output options. t4013: add more tests around -c and --cc Fix some more diff options changes. t4013 test updates for new output code. combine-diff.c: type sanity. format-patch: fix diff format option implementation t4013: add format-patch tests. t4013: note improvements brought by the new output code. gitweb: optimize per-file history generation gitweb: optimize per-file history generation t4013: add "diff" UI program tests. builtin-diff: turn recursive on when defaulting to --patch format. commit.c: do not redefine UNINTERESTING bit. get_merge_bases: clean up even when there is no common commit. revert clear-commit-marks for now. boolean: accept yes and no as well send-email: do not barf when Term::ReadLine does not like your terminal t6200: fmt-merge-msg test. git-grep: fix parsing of pathspec separator '--' git-grep: fix exit code when we use external grep. git-grep: use a bit more specific error messages. Re-fix clear_commit_marks(). git-grep: boolean expression on pattern matching. git-reset: complain and exit upon seeing an unknown parameter. mailinfo: assume input is latin-1 on the header as we do for the body diffcore-rename: try matching up renames without populating filespec first. builtin-rev-parse.c: constness tightening show-branch: match documentation and usage rev-parse documentation: talk about range notation. git-svn: migrate out of contrib (follow-up) diff.c: --no-color to defeat diff.color configuration. Update diff-options and config documentation. git log -p --merge [[--] paths...] colored diff: diff.color = auto fix diff: do not use configuration magic at the core-level "git -p cmd" to page anywhere merge-base: update the clean-up postprocessing fmt-merge-msg fix Fix grammatical error in git-revert git-repack: avoid redirecting stderr into git-pack-objects test-lib: unset GIT_TRACE t4013 diff format tests update Adjust t4013 tests to corrected format-patch. Documentation: Fix ssh://[user@]host.xz URL builtin-prune.c: forgot TYPE => OBJ changes. Documentation/Makefile: product depends on asciidoc.conf show-branch: fix performance problem. Linus Torvalds (7): xdiff: generate "anti-diffs" aka what is common to two files Prepare "git-merge-tree" for future work Improved three-way blob merging code Improve git-peek-remote builtin "git prune" Make the unpacked object header functions static to sha1_file.c Remove TYPE_* constant macros and use object_type enums consistently. Luben Tuikov (6): gitweb: Enable tree (directory) history display gitweb: Enable tree (directory) history display Add "raw" output option to blobs in "tree" view format gitweb.cgi: Create $git_temp if it doesn't exist gitweb.cgi: Teach "a=blob" action to know the blob/file mime type gitweb.css: Use monospace fonts for commits and tree-diff. Matthias Lederhofer (10): GIT_TRACE: show which built-in/external commands are executed change ent to tree in git-diff documentation git-rev-list: add documentation for --parents, --no-merges daemon: use a custom die routine with syslog daemon: if one of the standard fds is missing open it to /dev/null upload-pack: ignore write errors to stderr daemon: new option --pid-file=<path> to store the pid daemon: new option --detach to run git-daemon in background Documentation about exclude/ignore files argv created by handle_alias should be NULL terminated Michal Rokos (2): sed -e '/RE/r rfile/' needs space in 'r rfile' Using 'perl' in *.sh Pavel Roskin (4): Assorted typo fixes Typofix in Makefile comment. Fix more typos, primarily in the code Avoid C99 comments, use old-style C comments instead. Peter Baumann (1): git-cvsexportcommit can't handle merge commits correctly René Scharfe (5): Add get_merge_bases_clean() Add '...' operator for revisions Make clear_commit_marks() clean harder Fold get_merge_bases_clean() into get_merge_bases() rev-list: free commit_list in ... handler Robert Shearman (1): format-patch: Generate a newline between the subject header and the message body Ryan Anderson (3): annotate: Support annotation of files on other revisions. annotate: Correct most merge following to annotate correctly. Disable color detection during format-patch Santi Béjar (1): Teach rev-parse the ... syntax. Sergey Vlasov (1): Fix "git-fetch --tags" exit status when nothing has been changed Shawn O. Pearce (9): Avoid C99 initializers Allow user.name and user.email to drive reflog entry. Record the type of commit operation in the reflog. Log ref changes made by git-fetch and git-pull. Log ref changes made by git-merge and git-pull. Log ref changes made by quiltimport. Log ref changes made by resolve. Make lazy mkdir more robust. Record rebase changes as 'rebase' in the reflog. Stephan Feder (5): Do not drop data from '\0' until eol in patch output Teach --text option to diff Teach diff -a as shorthand for --text Add -a and --text to common diff options help diff-options: Explain --text and -a Timo Hirvonen (14): Merge with_raw, with_stat and summary variables to output_format Make --raw option available for all diff commands Set default diff output format after parsing command line DIFF_FORMAT_RAW is not default anymore Add msg_sep to diff_options Don't xcalloc() struct diffstat_t whatchanged: Default to DIFF_FORMAT_RAW Print empty line between raw, stat, summary and patch diff-tree: Use ---\n as a message separator log --raw: Don't descend into subdirectories by default Fix diff-tree -s GIT_TRACE: fix a mixed declarations and code warning diff: Support both attributes and colors diff: Support 256 colors Ville Skyttä (1): Fix print-log and diff compatibility with recent vc versions Yakov Lerner (1): Mention the [user@] part in documentation of ssh:// urls. anonymous (1): A better-scheduled PPC SHA-1 implementation. Version v1.4.1.1; changes since v1.4.1: --------------------------------------- Junio C Hamano (1): Makefile: tighten git-http-{fetch,push} dependencies Linus Torvalds (1): revision.c: fix "dense" under --remove-empty Matthias Lederhofer (1): upload-pack: fix timeout in create_pack_file Robin Rosenberg (1): Empty author may be presented by svn as an empty string or a null value. Version v1.4.1; changes since v1.4.1-rc2: ----------------------------------------- Eric Wong (1): git-svn: allow a local target directory to be specified for init Johannes Schindelin (4): add diff_flush_patch_id() to calculate the patch id format-patch: introduce "--ignore-if-in-upstream" t4014: fix for whitespace from "wc -l" format-patch: use clear_commit_marks() instead of some ad-hockery Junio C Hamano (6): git-repack: Be careful when updating the same pack as an existing one. t4014: add format-patch --ignore-if-in-upstream test t4014: fix test commit labels. diff.c: fix get_patch_id() Racy GIT (part #3) upload-pack.c: <sys/poll.h> includes <ctype.h> on OpenBSD 3.8 Linus Torvalds (4): Do not try futile object pairs when repacking. Abstract out accesses to object hash array revision.c: --full-history fix. git object hash cleanups Nicolas Pitre (2): consider previous pack undeltified object state only when reusing delta data don't load objects needlessly when repacking Petr Baudis (1): Fix errno usage in connect.c Robin Rosenberg (1): Minor documentation fixup. Version v1.4.1-rc2; changes since v1.4.1-rc1: --------------------------------------------- Andreas Ericsson (1): git wrapper: fix command name in an error message. Dennis Stosberg (3): Solaris needs inclusion of signal.h for signal() Fix pkt-line.h to compile with a non-GCC compiler Fix expr usage for FreeBSD Eric Wong (10): rebase: allow --merge option to handle patches merged upstream rebase: cleanup rebasing with --merge rebase: allow --skip to work with --merge git-svn: SVN 1.1.x library compatibility git-svn: several graft-branches improvements git-svn: add the commit-diff command git-svn: add --follow-parent and --no-metadata options to fetch git-svn: be verbose by default on fetch/commit, add -q/--quiet option rebase: get rid of outdated MRESOLVEMSG rebase: check for errors from git-commit Jeff King (2): git-commit: allow -e option anywhere on command line quote.c: silence compiler warnings from EMIT macro Johannes Schindelin (5): patch-id: take "commit" prefix as well as "diff-tree" prefix Teach diff about -b and -w flags cvsimport: always set $ENV{GIT_INDEX_FILE} to $index{$branch} apply: replace NO_ACCURATE_DIFF with --inaccurate-eof runtime flag. Save errno in handle_alias() Junio C Hamano (12): Makefile: do not recompile main programs when libraries have changed. usage: minimum type fix. git-pull: abort when fmt-merge-msg fails. git-merge --squash diff --color: use reset sequence when we mean reset. repo-config: fix printing of bool diff --color: use $GIT_DIR/config combine-diff.c: type sanity connect.c: remove unused parameters from tcp_connect and proxy_connect connect.c: check the commit buffer boundary while parsing. t/README: start testing porcelainish checkout -m: fix read-tree invocation Linus Torvalds (1): Tweak diff colors Martin Langhoff (3): git-repack -- respect -q and be quiet cvsimport: setup indexes correctly for ancestors and incremental imports cvsimport - cleanup of the multi-indexes handling Matthias Kestenholz (1): add GIT-CFLAGS to .gitignore Matthias Lederhofer (1): correct documentation for git grep Peter Eriksen (1): Rename safe_strncpy() to strlcpy(). Petr Baudis (1): Customizable error handlers Timo Hirvonen (3): git-merge: Don't use -p when outputting summary Clean up diff.c Make some strings const Yann Dirson (1): git-commit: filter out log message lines only when editor was run. Version v1.4.1-rc1; changes since v1.4.0: ----------------------------------------- Andre Noll (1): object-refs: avoid division by zero David Woodhouse (1): Log peer address when git-daemon called from inetd Dennis Stosberg (3): Make t4101-apply-nonl bring along its patches Make t8001-annotate and t8002-blame more portable Fix t8001-annotate and t8002-blame for ActiveState Perl Eric W. Biederman (3): Don't parse any headers in the real body of an email message. Fix git-format-patch -s Check and document the options to prevent mistakes. Eric Wong (29): git-svn: t0000: add -f flag to checkout git-svn: fix handling of filenames with embedded '@' git-svn: eol_cp corner-case fixes git-svn: restore original LC_ALL setting (or unset) for commit git-svn: don't allow commit if svn tree is not current git-svn: support -C<num> passing to git-diff-tree git-svn: --branch-all-refs / -B support git-svn: optimize --branch and --branch-all-ref git-svn: support manually placed initial trees from fetch git-svn: Move all git-svn-related paths into $GIT_DIR/svn git-svn: minor cleanups, extra error-checking git-svn: add --repack and --repack-flags= options git-svn: add --shared and --template= options to pass to init-db git-svn: add some functionality to better support branches in svn git-svn: add UTF-8 message test git-svn: add 'log' command, a facsimile of basic `svn log' git-svn: add support for Perl SVN::* libraries git-svn: make the $GIT_DIR/svn/*/revs directory obsolete git-svn: avoid creating some small files git-svn: fix several small bugs, enable branch optimization git-svn: Eliminate temp file usage in libsvn_get_file() git-svn: bugfix and optimize the 'log' command git-svn: tests no longer fail if LC_ALL is not a UTF-8 locale git-svn: svn (command-line) 1.0.x compatibility git-svn: rebuild convenience and bugfixes git-svn: fix --rmdir when using SVN:: libraries rebase: Allow merge strategies to be used when rebasing rebase: error out for NO_PYTHON if they use recursive merge git-svn: fix commit --edit flag when using SVN:: libraries Florian Forster (9): gitweb: Adding a `blame' interface. gitweb: Make the `blame' interface in gitweb optional. Remove ranges from switch statements. Initialize FAMs using `FLEX_ARRAY'. Don't instantiate structures with FAMs. Cast pointers to `void *' when used in a format. Don't use empty structure initializers. Change types used in bitfields to be `int's. Remove all void-pointer arithmetic. Fredrik Kuivinen (1): blame: Add --time to produce raw timestamps Jakub Narębski (15): Update gitweb README: gitweb is now included with git Move gitweb style to gitweb.css gitweb: safely output binary files for 'blob_plain' action gitweb: text files for 'blob_plain' action without charset by default Fix gitweb stylesheet Make CSS file gitweb/gitweb.css more readable gitweb: add type="text/css" to stylesheet link Fix: Support for the standard mime.types map in gitweb gitweb: A couple of page title tweaking gitweb: style done with stylesheet gitweb: whitespace cleanup Add git version to gitweb output Move $gitbin earlier in gitweb.cgi gitweb: Make use of $PATH_INFO for project parameter gitweb: whitespace cleanup around '=' Johannes Schindelin (6): diff options: add --color Initialize lock_file struct to all zero. Fix setting config variables with an alternative GIT_CONFIG Read configuration also from $HOME/.gitconfig repo-config: Fix late-night bug git_config: access() returns 0 on success, not > 0 Junio C Hamano (31): Revert all the rev-list option parsing changes. Clean-up Geert's similarity fingerprint code. Extract "log [diff options]" parser out. whatchanged options parser fix. Built-in git-whatchanged Geert's similarity Try using Geert similarity code in pack-objects. Retire rabinpoly fingerprinting code Fix mismerged update-index from jc/cache-tree branch. read-tree: --prefix=<path>/ option. write-tree: --prefix=<path> read-tree: reorganize bind_merge code. fetch-pack: give up after getting too many "ack continue" Fix earlier mismerges. shared repository: optionally allow reading to "others". gitk: rereadrefs needs listrefs fix git alias t5100: mailinfo and mailsplit tests. mailinfo: ignore blanks after in-body headers. fix rfc2047 formatter. xdiff: minor changes to match libxdiff-0.21 Restore SIGCHLD to SIG_DFL where we care about waitpid(). checkout -f: do not leave untracked working tree files. upload-pack: avoid sending an incomplete pack upon failure upload-pack: prepare for sideband message support. Retire git-clone-pack upload-pack/fetch-pack: support side-band communication Add renaming-rebase test. daemon: send stderr to /dev/null instead of closing. rebase --merge: fix for rebasing more than 7 commits. Makefile: do not force unneeded recompilation upon GIT_VERSION changes Linus Torvalds (9): Tentative built-in "git show" gitweb.cgi history not shown Shrink "struct object" a bit Move "void *util" from "struct object" into "struct commit" Some more memory leak avoidance Remove "refs" field from "struct object" Add specialized object allocator Add "named object array" concept Fix grow_refs_hash() Lukas Sandström (6): Make git-write-tree a builtin Make git-mailsplit a builtin Make git-mailinfo a builtin Make git-stripspace a builtin Make git-update-index a builtin Make git-update-ref a builtin Martin Langhoff (3): cvsimport: ignore CVSPS_NO_BRANCH and impossible branches cvsimport: complete the cvsps run before starting the import cvsimport: keep one index per branch during import Paul Eggert (1): date.c: improve guess between timezone offset and year. Paul Mackerras (1): Fix PPC SHA1 routine for large input buffers Peter Eriksen (1): Implement safe_strncpy() as strlcpy() and use it more. Petr Baudis (2): Support for extracting configuration from different files Support for the standard mime.types map in gitweb René Scharfe (4): git-tar-tree: Simplify write_trailer() git-tar-tree: documentation update git-tar-tree: no more void pointer arithmetic Make release tarballs friendlier to older tar versions Sean Estabrooks (1): Add a "--notags" option for git-p4import. Sven Verdoolaege (1): git-cvsexportcommit.perl: fix typo Timo Hirvonen (1): gitweb: Use $hash_base as $search_hash if possible Uwe Kleine-König (1): Fix possible out-of-bounds array access Yakov Lerner (2): auto-detect changed prefix and/or changed build flags Pass -DDEFAULT_GIT_TEMPLATE_DIR only where actually used. Version v1.4.0; changes since v1.4.0-rc2: ----------------------------------------- Horst H. von Brand (1): Fix formatting of Documentation/git-clone.txt Junio C Hamano (7): allow working in repositories with textual symref HEAD git-clone: fix duplicated "master" in $GIT_DIR/remotes/origin git-rm: honor -n flag. builtin-init-db: spell the in-program configuration variable in lowercase. shared repository - add a few missing calls to adjust_shared_perm(). git-clone: fix --bare over dumb-http GIT 1.4.0 Kay Sievers (143): first working version v000 v000 v001 v002 v003 v003 v004 v005 v006 v014 v016 v020 v021 v021 v021 v021 v025 v026 v027 v031 v035 v041 v041 v042 v043 v048 v049 v053 v055 v056 v057 v062 v063 v064 v070 v071 v073 v077 v078 v080 v082 v085 v088 v089 v107 v118 v121 v125 v133 v136 v142 v143 v145 v148 v149 v150 v152 v154 v157 v160 v163 v164 v165 v203 v205 v206 v220 v225 v227 v229 v232 v233 v234 v235 v236 add README Make the tag view look like commit header. allow sorting of index page by project path, owner and age make index page sorting more visible and increase RSS item count fix search parsing, later git does not print a trailing space don't chop_str if adding ... is longer than the original Show tooltips (like this one :)) containing full titles for truncated commit titles in the summary and shortlog views. v241 v242 common input validation to allow passing of textual hash id's v243 translate reference into hash while reading a commit fix typo in link parameter of git_commit v244 switch to git-rev-list for commit reading v245 start searching at the current $hash value v246 rename "branches" to "heads" v247 provide filename for "save as" in plaintext views add Expires: +1d header to commit and commitdiff pages v248 add test files update the test files to have a diff escape '+' and ' ' in url's make ' ' and '+' in filenames some kind of working v249 escape ' ' with '+' in url's replace invalid utf8 sequences by UTF-8 REPLACEMENT CHARACTER (efbfbd) v250 add missing esc() rename v251 fix another typo v252 fix utf8 decoding add ut8 test file add broken latin encoding to test file set logo output to raw mode v253 allow utf8 characters in url parameter escape v254 v255 fix quoted filename lookup v256 fix "rename" output v257 show tags in lists v258 show multiple tags v259 attach tag to the link v260 more tags fix leading whitespace in commit text v261 define default colors v262 resolve textual hashes when looking up "refs" v263 fix: Use of uninitialized value v264 handle utf8 characters from /etc/passwd v265 remove Christian's email address v266 v267 Paul T Darga (1): check for error return from fork() René Scharfe (1): Built-in git-get-tar-commit-id Rocco Rutte (1): prepend '--' to filelist when calling git-diff-tree Uwe Kleine-König (1): Document git-clone --use-separate-remote Yasushi SHOJI (1): Add <author> and <guid> to RSS feed Version v1.4.0-rc2; changes since v1.4.0-rc1: --------------------------------------------- Francis Daly (3): Some doc typo fixes config.txt grammar, typo, and asciidoc fixes git-cvsserver asciidoc formatting tweaks Horst H. von Brand (1): Cleanup git-send-email.perl:extract_valid_email Johannes Schindelin (1): If you have a config containing something like this: Jon Loeliger (1): Refactor git_tcp_connect() functions a little. Jonas Fonseca (2): Misc doc improvements Document git-ls-tree --fullname Junio C Hamano (12): git alias: try alias last. send-email: be more lenient and just catch obvious mistakes. send-email: a bit more careful domain regexp. git-format-patch: add --output-directory long option again HTTP cleanup Make index file locking code reusable to others. refs.c: convert it to use lockfile interface. ref-log: style fixes. Documentation: add missing docs make check-docs found. make clean: remove dist-doc targets. Documentation: git-ls-tree (typofix) Documentation: add another example to git-ls-files Nick Hengeveld (2): HTTP cleanup http-fetch: fix possible segfault Paul Mackerras (12): gitk: Make a row of controls for controlling highlighting gitk: Highlight entries in the file list as well gitk: Highlight paths of interest in tree view as well gitk: First cut at a search function in the patch/file display window gitk: Improve the text window search function gitk: Move "pickaxe" find function to highlight facility gitk: Fix bug in highlight stuff when no line is selected gitk: Provide ability to highlight based on relationship to selected commit gitk: Add a goto next/previous highlighted commit function gitk: Show nearby tags gitk: Show branch name(s) as well, if "show nearby tags" is enabled gitk: Re-read the descendent/ancestor tag & head info on update Petr Baudis (2): Document git aliases support Documentation: git aliases René Scharfe (1): Off-by-one error in get_path_prefix(), found by Valgrind Robert Fitzsimons (1): builtin-grep: pass ignore case option to external grep Version v1.4.0-rc1; changes since v1.3.3: ----------------------------------------- Alex Riesen (2): make update-index --chmod work with multiple files and --stdin remove superflous "const" Aneesh Kumar K.V (3): gitview: Add key binding for F5. gitview: Move the console error messages to message dialog gitview: Add some useful keybindings. Björn Engelmann (2): remove the artificial restriction tagsize < 8kb add more informative error messages to git-mktag Catalin Marinas (1): Add a test-case for git-apply trying to add an ending line Christian Couder (1): Builtin git-rev-parse. Dennis Stosberg (3): git-write-tree writes garbage on sparc64 git-clean fails on files beginning with a dash Update documentation for git-format-patch Dmitry V. Levin (2): execv_git_cmd: Fix stack buffer overflow. git_exec_path, execv_git_cmd: ignore empty environment variables Elrond (1): git-cvsimport: Handle "Removed" from pserver Eric W. Biederman (8): Implement git-quiltimport Implement a --dry-run option to git-quiltimport Make read_one_header_line return a flag not a length. Move B and Q decoding into check header. Refactor commit messge handling. In handle_body only read a line if we don't already have one. More accurately detect header lines in read_one_header_line Allow in body headers beyond the in body header prefix. Eric Wong (15): git-svn: documentation updates git-svn 1.0.0 send-email: address expansion for common mailers Install git-send-email by default send-email: allow sendmail binary to be used instead of SMTP send-email: quiet some warnings, reject invalid addresses commit: allow --pretty= args to be abbreviated git-svn: starting a 1.1.0-pre development version git-svn: ignore expansion of svn:keywords t3300-funny-names: shell portability fixes tests: Remove heredoc usage inside quotes t5500-fetch-pack: remove local (bashism) usage. t6000lib: workaround a possible dash bug git-svn: t0001: workaround a heredoc bug in old versions of dash git-svn: remove assertion that broke with older versions of svn Florian Forster (1): git-svnimport: Improved detection of merges. Fredrik Kuivinen (2): blame: Fix path pruning Update the documentation for git-merge-base Horst H. von Brand (4): Fix some documentation typoes Documentation: Spelling fixes Add example xinetd(8) configuration to Documentation/everyday.txt Fix Documentation/everyday.txt: Junio's workflow J. Bruce Fields (7): tutorial: replace "whatchanged" by "log" tutorial: expanded discussion of commit history tutorial: add discussion of index file, object database documentation: mention gitk font adjustment in tutorial documentation: add brief mention of cat-file to tutorial part I Documentation: retitle the git-core tutorial Documentation: fix a tutorial-2 typo Jeff King (7): cvsimport: use git-update-index --index-info cvsimport: cleanup commit function cvsimport: set up commit environment in perl instead of using env cat-file: document -p option cvsimport: avoid "use" with :tag handle concurrent pruning of packed objects sha1_file: avoid re-preparing duplicate packs Jim Meyering (1): Don't write directly to a make target ($@). Johannes Schindelin (25): builtin-push: resurrect parsing of Push: lines cache-tree: replace a sscanf() by two strtol() calls builtin-push: also ask config for remote information fetch, pull: ask config for remote information repo-config: fix segfault with no argument. repo-config: trim white-space before comment repo-config: support --get-regexp repo-config: deconvolute logics fetch, pull: ask config for remote information Add a conversion tool to migrate remote information into the config builtin-push: --all and --tags _are_ explicit refspecs Teach fmt-patch to write individual files. fmt-patch: output file names to stdout fmt-patch: implement -o <dir> Teach fmt-patch about --numbered Teach fmt-patch about --keep-subject fmt-patch: understand old <his> notation Fix users of prefix_path() to free() only when necessary Fix users of prefix_path() to free() only when necessary Fix crash when reading the empty tree diff family: add --check option fmt-patch: Support --attach git-format-patch --start-number <n> send-email: only 'require' instead of 'use' Net::SMTP format-patch: resurrect extra headers from config Josef Weidendorfer (1): gitk: Add a visual tag for remote refs Junio C Hamano (156): Fix up default abbrev in setup_revisions() argument parser. Fix up rev-list option parsing. Split init_revisions() out of setup_revisions() rev-list option parser fix. Built-in git-whatchanged. Do not fork PAGER=cat Simplify common default options setup for built-in log family. log/whatchanged/show - log formatting cleanup. rev-list --header: output format fix git.c: LOGSIZE is unused after log printing cleanup. combine-diff: show diffstat with the first parent. Fix "git log --stat": make sure to set recursive with --stat. Tentative built-in format-patch. sha1_name.c: prepare to make get_tree_entry() reusable from others. sha1_name.c: no need to include diff.h; tree-walk.h will do. get_tree_entry(): make it available from tree-walk Minor tweak on subject line in --pretty=email diff: move diff.c to diff-lib.c to make room. Add git-unresolve <paths>... diff --stat: do not drop rename information. git-update-index --unresolve rename internal format-patch wip Makefile: dependency for builtin-help.o Add colordiff for git to contrib/colordiff. Fix "git show --stat" Libify diff-files. Libify diff-index. git-fmt-patch: thinkofix to show [PATCH] properly. Libified diff-index: backward compatibility fix. read-cache/write-cache: optionally return cache checksum SHA1. Add cache-tree. Update write-tree to use cache-tree. Invalidate cache-tree entries for touched paths in git-apply. Use cache-tree in update-index. Add test-dump-cache-tree cache-tree: protect against "git prune". index: make the index file format extensible. Teach fsck-objects about cache-tree. cache-tree: sort the subtree entries. test-dump-cache-tree: report number of subtrees. Makefile: remove and create libgit.a from scratch. diff --stat: show complete rewrites consistently. git-cvsserver: typofixes t0000-basic: Add ls-tree recursive test back. Makefile: remove and create xdiff library from scratch. commit-tree: allow generic object name for the tree as well. revision parsing: make "rev -- paths" checks stronger. t0000-basic: more commit-tree tests. update-index: when --unresolve, smudge the relevant cache-tree entries. read-tree: teach 1 and 2 way merges about cache-tree. read-tree: teach 1-way merege and plain read to prime cache-tree. diff-index: fix compilation warnings. cache_tree_update: give an option to update cache-tree only. test-dump-cache-tree: validate the cached data as well. pack-objects: update size heuristucs. built-in count-objects. cache-tree.c: typefix built-in diff. built-in diff: assorted updates. builtin-diff.c: die() formatting type fix. Fix builtin-push to honor Push: lines in remotes file. Extended SHA1 -- "rev^@" syntax to mean "all parents" get_sha1(): :path and :[0-3]:path to extract from index. built-in "git grep" Use RFC2822 dates from "git fmt-patch". builtin-grep: wildcard pathspec fixes builtin-grep: support '-l' option. builtin-grep: do not use setup_revisions() fsck-objects: mark objects reachable from cache-tree builtin-count-objects: make it official. builtin-diff: call it "git-diff", really. builtin-log/whatchanged/show: make them official. show-branch: omit uninteresting merges. builtin-push: make it official. builtin-grep: printf %.*s length is int, not ptrdiff_t. Revert "fetch, pull: ask config for remote information" builtin-grep: allow -<n> and -[ABC]<n> notation for context lines. builtin-grep: allow more than one patterns. builtin-grep: support -c (--count). builtin-grep: support -w (--word-regexp). builtin-grep: tighten path wildcard vs tree traversal. core.prefersymlinkrefs: use symlinks for .git/HEAD repo-config: readability fixups. builtin-count-objects: open packs when running -v Fix test-dump-cache-tree in one-tree disappeared case. read-tree: invalidate cache-tree entry when a new index entry is added. cache-tree: a bit more debugging support. builtin-grep: terminate correctly at EOF builtin-grep: binary files -a and -I fsck-objects: do not segfault on missing tree in cache-tree builtin-grep: -L (--files-without-match). Makefile: do not link rev-list any specially. delta: stricter constness pack-object: squelch eye-candy on non-tty binary patch. binary diff: further updates. update-index --unresolve: work from a subdirectory. checkout-index: plug memory leak from prefix_path() update-index: plug memory leak from prefix_path() update-index --again update-index --again: take optional pathspecs binary diff and apply: testsuite. Teach -f <file> option to builtin-grep. builtin-grep: documentation get_sha1() - fix infinite loop on nonexistent stage. Teach git-clean optional <paths>... parameters. builtin-grep: tighten argument parsing. builtin-grep: typofix builtin-grep: -w fix builtin-grep: -F (--fixed-strings) checkout: use --aggressive when running a 3-way merge (-m). diffstat rename squashing fix. read-tree -u one-way merge fix to check out locally modified paths. apply --numstat: show new name, not old name. builtin-grep: unparse more command line options. apply --cached: apply a patch without using working tree. git-am: use apply --cached builtin-diff: fix comparison between two blobs. merge-base: Clarify the comments on post processing. read-tree -m -u: do not overwrite or remove untracked working tree files. builtin-grep: workaround for non GNU grep. Revert "builtin-grep: workaround for non GNU grep." apply --cached: do not check newly added file in the working tree builtin-add: fix unmatched pathspec warnings. builtin-diff: do not say files are renamed when blob and file are given Fix build procedure for builtin-init-db built-in tar-tree and remote tar-tree git-format-patch: now built-in. checkdiff_consume: strtol parameter fix. git-rebase: use canonical A..B syntax to format-patch tutorial-2: typofix in examples. mailinfo: skip bogus UNIX From line inside body CMIT_FMT_EMAIL: Q-encode Subject: and display-name part of From: fields. builtin format-patch: squelch content-type for 7-bit ASCII diff: minor option combination fix. fetch-pack: output refs in the order they were given on the command line. Tutorial #2: broken link fix. builtin-rm: squelch compiler warnings. cvsimport: do not barf on creation of an empty file. apply: force matching at the beginning. fetch.c: remove an unused variable and dead code. ls-remote: fix rsync:// to report HEAD mailinfo: More carefully parse header lines in read_one_header_line() gitk: start-up bugfix built-in format-patch: various fixups. format-patch: -n and -k are mutually exclusive. Let git-clone to pass --template=dir option to git-init-db. git-fetch: avoid using "case ... in (arm)" adjust to the rebased series by Linus. send-email: do not pass bogus address to local sendmail binary format-patch --signoff fetch.c: do not pass uninitialized lock to unlock_ref(). fetch.c: do not call process_tree() from process_tree(). fetch: do not report "same" unless -verbose. read-tree --reset: update working tree file for conflicted paths. rev-parse: tighten constness properly. Linus Torvalds (60): Common option parsing for "git log --diff" and friends Tentative built-in "git show" Fixes for option parsing Log message printout cleanups Log message printout cleanups (#2) Log message printout cleanups (#3): fix --pretty=oneline Fix uninteresting tags in new revision parsing get_sha1() shorthands for blob/tree objects Allow "git repack" users to specify repacking window/depth git log: don't do merge diffs by default Split up builtin commands into separate files from git.c Fix "git help -a" terminal autosizing git builtin "push" Fix "git-log --parents" breakage post v1.3.0 sha1_to_hex() usage cleanup git diff: support "-U" and "--unified" options properly Allow one-way tree merge to remove old files Simplify "git reset --hard" builtin-grep: use external grep when we can take advantage of it read-tree --reset -u fix. Fix silly typo in new builtin grep Remove old "git-grep.sh" remnants libify git-ls-files directory traversal Clean up git-ls-file directory walking library interface Do "git add" as a builtin builtin-add: warn on unmatched pathspecs builtin-grep: workaround for non GNU grep. Remove old "git-add.sh" remnants Prevent bogus paths from being added to the index. Make "git rev-list" be a builtin Libify the index refresh logic Move pathspec matching from builtin-add.c into dir.c Add builtin "git rm" command cvsimport: repack every kilo-commits. apply: treat EOF as proper context. Clean up sha1 file writing bogus "fatal: Not a git repository" t1002: use -U0 instead of --unified=0 Fix "--abbrev=xyz" for revision listing Fix memory leak in "git rev-list --objects" Don't use "sscanf()" for tree mode scanning Add raw tree buffer info to "struct tree" Make "tree_entry" have a SHA1 instead of a union of object pointers Switch "read_tree_recursive()" over to tree-walk functionality Remove "tree->entries" tree-entry list from tree parser Make "struct tree" contain the pointer to the tree buffer Make "tree_entry" have a SHA1 instead of a union of object pointers Switch "read_tree_recursive()" over to tree-walk functionality builtin-read-tree.c: avoid tree_entry_list in prime_cache_tree_rec() Remove "tree->entries" tree-entry list from tree parser fsck-objects: avoid unnecessary tree_entry_list usage Remove unused "zeropad" entry from tree_list_entry Convert "mark_tree_uninteresting()" to raw tree walker Convert fetch.c: process_tree() to raw tree walker Remove last vestiges of generic tree_entry_list tree_entry(): new tree-walking helper function read-tree: fix eye-candy. Fix typo in tutorial-2.txt rev-list: fix process_tree() conversion. pack-objects: improve path grouping heuristics. Lukas Sandström (2): Make git-check-format-ref a builtin. SubmittingPatches: The download location of External Editor has moved Martin Langhoff (7): git-cvsexportcommit: Add -f(orce) and -m(essage prefix) flags, small cleanups. cvsserver: use git-rev-list instead of git-log cvsserver: use git-rev-list instead of git-log cvsimport: minor fixups cvsimport: replace anonymous sub ref with a normal sub cvsimport: introduce -L<imit> option to workaround memory leaks cvsimport: introduce _fetchfile() method and used a 1M buffer to read() Martin Waitz (6): Transitively read alternatives test case for transitive info/alternates clone: don't clone the info/alternates file git help: remove whatchanged from list of common commands Documentation/Makefile: remove extra / Add instructions to commit template. Martyn Smith (3): Added logged warnings for CVS error returns Many fixes for most operations in Eclipse. Change to allow subdir updates from Eclipse Matthias Kestenholz (1): add documentation for update-index --unresolve Matthias Lederhofer (1): git status: skip empty directories, and add -u to show all untracked files Nick Hengeveld (3): git-fetch: resolve remote symrefs for HTTP transport http: prevent segfault during curl handle reuse builtin-push: don't pass --thin to HTTP transport Nicolas Pitre (10): split the diff-delta interface use delta index data when finding best delta matches replace adler32 with Rabin's polynomial in diff-delta tiny optimization to diff-delta improve diff-delta with sparse and/or repetitive data improve base85 generated assembly code fix diff-delta bad memory access simple euristic for further free packing improvements pack-object: slightly more efficient improve depth heuristic for maximum delta size Paul Mackerras (19): gitk: Implement multiple views gitk: Make File->Update work properly again gitk: Fix various bugs in the view support gitk: Don't reread git-rev-list output from scratch on view switch gitk: Remember the view in the history list gitk: Let git-rev-list do the argument list parsing gitk: Use git-rev-parse only to identify file/dir names on cmd line gitk: Implement "permanent" views (stored in ~/.gitk) gitk: add menu item for editing the current view gitk: Use a text widget for the file list gitk: Add a tree-browsing mode gitk: Basic support for highlighting one view within another gitk: Fix file list display when files are renamed gitk: Allow view to specify arbitrary arguments to git-rev-list gitk: Fix display of "(...)" for parents/children we haven't drawn Provide a way to flush git-diff-tree's output gitk: Fix bug where page-up/down wouldn't always work properly gitk: show_error fix Make git-diff-tree indicate when it flushes Peter Eriksen (9): Add git-quiltimport to .gitignore. Builtin git-ls-files. Builtin git-ls-tree. Builtin git-tar-tree. Builtin git-read-tree. Builtin git-commit-tree. Builtin git-apply. Builtin git-show-branch. Builtin git-diff-files, git-diff-index, git-diff-stages, and git-diff-tree. Peter Hagervall (1): Sparse fix for builtin-diff Petr Baudis (3): git-repo-config --list support Deprecate usage of git-var -l for getting config vars list Call builtin ls-tree in git-cat-file -p Ryan Anderson (4): git-send-email: Add References: headers to emails, in addition to In-Reply-To: Add support for --bcc to git-send-email. Fix a bug in email extraction used in git-send-email. Add a basic test case for git send-email, and fix some real bugs discovered. Salikh Zakirov (1): Fixed Cygwin CR-munging problem in mailsplit Santi Béjar (1): Document that "git add" only adds non-ignored files. Sean Estabrooks (19): Add --continue and --abort options to git-rebase. Several trivial documentation touch ups. Fix up docs where "--" isn't displayed correctly. Update git-unpack-objects documentation. Clarify git-cherry documentation. Another config file parsing fix. t1300-repo-config: two new config parsing tests. Add "--branches", "--tags" and "--remotes" options to git-rev-parse. Make git rebase interactive help match documentation. Add "--summary" option to git diff. Convert some "apply --summary" users to "diff --summary". Strip useless "tags/" prefix from git-tag -l output Allow pickaxe and diff-filter options to be used by git log. Avoid segfault in diff --stat rename output. Change GIT-VERSION-GEN to call git commands with "git" not "git-". Install git builtins into gitexecdir rather than bindir. Remove possible segfault in http-fetch. --summary output should print immediately after stats. A Perforce importer for git. Serge E. Hallyn (1): socksetup: don't return on set_reuse_addr() error Sergey Vlasov (1): gitk: Display commit messages with word wrap Shawn O. Pearce (24): Remove unnecessary local in get_ref_sha1. Improve abstraction of ref lock/write. Convert update-ref to use ref_lock API. Log ref updates to logs/refs/<ref> Support 'master@2 hours ago' syntax Fix ref log parsing so it works properly. General ref log reading improvements. Added logs/ directory to repository layout. Force writing ref if it doesn't exist. Log ref updates made by fetch. Change 'master@noon' syntax to 'master@{noon}'. Correct force_write bug in refs.c Change order of -m option to update-ref. Include ref log detail in commit, reset, etc. Create/delete branch ref logs. Enable ref log creation in git checkout -b. Reference git-check-ref-format in git-branch. Elaborate on why ':' is a bad idea in a ref name. Built git-upload-tar should be ignored. Verify git-commit provides a reflog message. Test that git-branch -l works. Remove unnecessary output from t3600-rm. Improved pack format documentation. Allow multiple -m options to git-commit. Tilman Sauerbeck (1): Documentation/Makefile: create tarballs for the man pages and html files Timo Hirvonen (3): Builtin git-init-db Builtin git-cat-file gitk: Replace "git-" commands with "git " Yakov Lerner (2): NO_INET_NTOP and compat/inet_ntop.c for some systems (e.g. old Cygwin). Problem: 'trap...exit' causes error message when /bin/sh is ash. Yann Dirson (3): Do not call 'cmp' with non-existant -q flag. Document current cvsexportcommit limitations. Make cvsexportcommit create parent directories as needed. Version v1.3.3; changes since v1.3.2: ------------------------------------- Ben Clifford (1): include header to define uint32_t, necessary on Mac OS X Dennis Stosberg (2): Fix git-pack-objects for 64-bit platforms Fix compilation on newer NetBSD systems Dmitry V. Levin (1): Separate object name errors from usage errors Eric Wong (2): apply: fix infinite loop with multiple patches with --index Install git-send-email by default Johannes Schindelin (1): repo-config: trim white-space before comment Junio C Hamano (6): core.prefersymlinkrefs: use symlinks for .git/HEAD repo-config: document what value_regexp does a bit more clearly. Fix repo-config set-multivar error return path. Documentation: {caret} fixes (git-rev-list.txt) checkout: use --aggressive when running a 3-way merge (-m). Fix pack-index issue on 64-bit platforms a bit more portably. Linus Torvalds (3): Fix "git diff --stat" with long filenames revert/cherry-pick: use aggressive merge. git config syntax updates Martin Waitz (2): clone: keep --reference even with -l -s repack: honor -d even when no new pack was created Matthias Lederhofer (1): core-tutorial.txt: escape asterisk Pavel Roskin (1): Release config lock if the regex is invalid Sean Estabrooks (3): Fix for config file section parsing. Another config file parsing fix. Ensure author & committer before asking for commit message. Yakov Lerner (1): read-cache.c: use xcalloc() not calloc() Version v1.3.2; changes since v1.3.1: ------------------------------------- Huw Davies (1): git-format-patch: Use rfc2822 compliant date. Jon Loeliger (3): Alphabetize the glossary. Added definitions for a few words: Add a few more words to the glossary. Junio C Hamano (4): rebase: typofix. commit-tree.c: check_valid() microoptimization. verify-pack: check integrity in a saner order. git-am --resolved: more usable error message. Linus Torvalds (1): Fix filename verification when in a subdirectory Martin Langhoff (1): git-send-email: fix version string to be valid perl Matthias Kestenholz (3): annotate: fix warning about uninitialized scalar annotate: display usage information if no filename was given fix various typos in documentation Robert Shearman (1): Give the user a hint for how to continue in the case that git-am fails because it requires user intervention Sean Estabrooks (4): Update the git-branch man page to include the "-r" option, Fix up remaining man pages that use asciidoc "callouts". Properly render asciidoc "callouts" in git man pages. Fix trivial typo in git-log man page. Version v1.3.1; changes since v1.3.0: ------------------------------------- Jonas Fonseca (1): Fix filename scaling for binary files Junio C Hamano (5): git-merge: a bit more readable user guidance. pre-commit hook: complain about conflict markers. git-commit --amend: two fixes. pack-objects: do not stop at object that is "too small" mailinfo: decode underscore used in "Q" encoding properly. Linus Torvalds (1): git-log produces no output Nicolas Pitre (1): fix pack-object buffer size Paul Mackerras (1): rev-parse: better error message for ambiguous arguments Petr Baudis (2): Document git-var -l listing also configuration variables Document the configuration file Santi Béjar (1): Reintroduce svn pools to solve the memory leak. Serge E. Hallyn (1): socksetup: don't return on set_reuse_addr() error Shawn O. Pearce (1): Document git-clone --reference Version v1.3.0; changes since v1.3.0-rc4: ----------------------------------------- A Large Angry SCM (1): Makefile fixups. Herbert Valerio Riedel (1): git-svnimport symlink support Johannes Schindelin (2): diff-options: add --patch-with-stat pager: do not fork a pager if PAGER is set to empty. Jonas Fonseca (1): Add git-annotate(1) and git-blame(1) Junio C Hamano (9): rev-list --bisect: limit list before bisecting. diff-tree: typefix. diff --stat: do not do its own three-dashes. diff-files --stat: do not dump core with unmerged index. reading $GIT_DIR/info/graft - skip comments correctly. rev-list --boundary: show boundary commits even when limited otherwise. packed_object_info_detail(): check for corrupt packfile. diff --stat: make sure to set recursive. GIT 1.3.0 Linus Torvalds (1): Support "git cmd --help" syntax Paul Mackerras (1): gitk: Fix bug caused by missing commitlisted elements Serge E. Hallyn (5): cleanups: Fix potential bugs in connect.c cleanups: Remove unused vars from combine-diff.c cleanups: Remove impossible case in quote.c cleanups: prevent leak of two strduped strings in config.c cleanups: remove unused variable from exec_cmd.c Yann Dirson (1): Allow empty lines in info/grafts Version v1.3.0-rc4; changes since v1.3.0-rc3: --------------------------------------------- Davide Libenzi (1): xdiff: post-process hunks to make them consistent. Dennis Stosberg (2): Solaris 9 also wants our own unsetenv/setenv. Replace index() with strchr(). Eric W. Biederman (1): Implement limited context matching in git-apply. Johannes Schindelin (2): diff-options: add --stat (take 2) diff-options: add --stat (take 2) Junio C Hamano (31): git-log: match rev-list --abbrev and --abbrev-commit diff: fix output of total-rewrite diff. diffcore-rename: fix merging back a broken pair. log-tree: separate major part of diff-tree. git log [diff-tree options]... Retire diffcore-pathspec. tree-diff: do not assume we use only one pathspec git log --full-diff Retire git-log.sh blame and friends: adjust to multiple pathspec change. Retire git-log.sh (take#2) diff-* --patch-with-raw Retire git-log.sh (take #3) combine-diff: do not lose hunks with only deletion at end. combine-diff: fix hunks at the end (take #2). Retire t5501-old-fetch-and-upload test. git-commit: do not muck with commit message when no_edit is set. stripspace: make sure not to leave an incomplete line. combine-diff: type fix. Documentation: add a couple of missing docs. Makefile: $(MAKE) check-docs git-log: do not output excess blank line between commits t3600-rm: skip failed-remove test when we cannot make an unremovable file. Fix-up previous expr changes. diff --stat: no need to ask funcnames nor context. t5500: test fix stripspace: incomplete line fix (take #2) Retire git-log.sh (take #4) git-log <diff-options> <paths> documentation "git cmd -h" for shell scripts. GIT v1.3.0-rc4 Linus Torvalds (4): Make "--parents" logs also be incremental When showing a commit message, do not lose an incomplete line. Use less memory in "git log" Clean up trailing whitespace when pretty-printing commits Marco Roeland (1): xdiff/xdiffi.c: fix warnings about possibly uninitialized variables Mark Wooding (1): Shell utilities: Guard against expr' magic tokens. Petr Baudis (3): Improve the git-diff-tree -c/-cc documentation Document --patch-with-raw Separate the raw diff and patch with a newline Version v1.3.0-rc3; changes since v1.3.0-rc2: --------------------------------------------- Francis Daly (1): Tweaks to make asciidoc play nice. Johannes Schindelin (3): cvsimport: use git-update-ref when updating On some platforms, certain headers need to be included before regex.h Fix compile with expat, but an old curl version Jon Loeliger (1): Added Packing Heursitics IRC writeup. Junio C Hamano (16): git-clone: fix handling of upsteram whose HEAD does not point at master. combine-diff: use built-in xdiff. parse_date(): fix parsing 03/10/2006 combine-diff: refactor built-in xdiff interface. diff_flush(): leakfix. combine-diff: move the code to parse hunk-header into common library. blame: use built-in xdiff date parsing: be friendlier to our European friends. blame.c: fix completely broken ancestry traversal. Match ofs/cnt types in diff interface. blame -S <ancestry-file> Add Documentation/technical/pack-format.txt Thin pack generation: optimization. rev-list --abbrev-commit count-delta: match get_delta_hdr_size() changes. GIT 1.3.0-rc3 Karl Wiberg (1): git-svnimport: Don't assume that copied files haven't changed Keith Packard (1): Provide configurable UI font for gitk Marco Roeland (1): git-commit: document --amend Mark Wooding (1): gitk: Use git wrapper to run git-ls-remote. Mike McCormack (3): Avoid a divide by zero if there's no messages to send. Avoid a crash if realloc returns a different pointer. Add documentation for git-imap-send. Nick Hengeveld (1): http-fetch: add optional DAV-based pack list Nicolas Pitre (1): check patch_delta bounds more carefully Paul Mackerras (3): gitk: replace parent and children arrays with lists gitk: Add a help menu item to display key bindings gitk: Fix incorrect invocation of getmergediffline Pavel Roskin (2): Add git-clean command gitk: Fix searching for filenames in gitk Petr Baudis (1): Support for pickaxe matching regular expressions Rutger Nijlunsing (1): gitk: add key bindings for selecting first and last commit Stephen Rothwell (1): gitk: allow goto heads Version v1.3.0-rc2; changes since v1.3.0-rc1: --------------------------------------------- Davide Libenzi (1): Clean-up trivially redundant diff. Eric Wong (6): contrib/git-svn: force GIT_DIR to an absolute path contrib/git-svn: accept configuration via repo-config contrib/git-svn: documentation updates contrib/git-svn: ensure repo-config returns a value before using it contrib/git-svn: make sure our git-svn is up-to-date for test contrib/git-svn: handle array values correctly J. Bruce Fields (1): Documentation: revise top of git man page Jason Riedy (2): Add ALL_LDFLAGS to the git target. Use sigaction and SA_RESTART in read-tree.c; add option in Makefile. Jim Radford (1): fix repacking with lots of tags Junio C Hamano (14): rev-list --no-merges: argument parsing fix. rev-list: memory usage reduction. rev-list --boundary revision arguments: ..B means HEAD..B, just like A.. means A..HEAD revision.c "..B" syntax: constness fix assume unchanged git: diff-index fix. tree/diff header cleanup. rev-list --boundary: fix re-injecting boundary commits. Makefile: many programs now depend on xdiff/lib.a having been built. revision: --topo-order and --unpacked revision: simplify argument parsing. revision: --max-age alone does not need limit_list() anymore. safe_fgets() - even more anal fgets() GIT 1.3.0-rc2 Linus Torvalds (5): Move "--parent" parsing into generic revision.c library code Make path-limiting be incremental when possible. revision: Fix --topo-order and --max-age with reachability limiting. Fix Solaris stdio signal handling stupidities pack-objects: be incredibly anal about stdio semantics Mark Wooding (1): xdiff: Show function names in hunk headers. Nick Hengeveld (2): git-ls-remote: send no-cache header when fetching info/refs Set HTTP user agent to git/GIT_VERSION Paul Mackerras (5): gitk: Use the new --boundary flag to git-rev-list gitk: Show diffs for boundary commits gitk: Prevent parent link from overwriting commit headline gitk: Allow top panes to scroll horizontally with mouse button 2 gitk: Better workaround for arrows on diagonal line segments Peter Eriksen (2): Use blob_, commit_, tag_, and tree_type throughout. Replace xmalloc+memset(0) with xcalloc. René Scharfe (3): Remove useless pointer update Fix sparse warnings about usage of 0 instead of NULL Fix sparse warnings about non-ANSI function prototypes Yasushi SHOJI (2): Make git-clone to take long double-dashed origin option (--origin) git-clone: exit early if repo isn't specified Version v1.3.0-rc1; changes since v1.2.6: ----------------------------------------- Alex Riesen (2): PATCH: simplify calls to git programs in git-fmt-merge-msg workaround fat/ntfs deficiencies for t3600-rm.sh (git-rm) Alexandre Julliard (12): Add an Emacs interface in contrib. git-format-patch: Always add a blank line between headers and body. contrib/emacs: Add an Emacs VC backend. git.el: Portability fixes for XEmacs and Emacs CVS. git.el: Set default directory before running the status mode setup hooks. git.el: Automatically update .gitignore status. git.el: Added support for Signed-off-by. git.el: Added customize support for all parameters. ls-files: Don't require exclude files to end with a newline. git.el: More robust handling of subprocess errors when returning strings. git.el: Get the default user name and email from the repository config. git.el: Added a function to diff against the other heads in a merge. Anand Kumria (1): git-svnimport: if a limit is specified, respect it Aneesh Kumar K.V (16): Add contrib/gitview from Aneesh. Add a README for gitview gitview: typofix gitview: Read tag and branch information using git ls-remote gitview: Use monospace font to draw the branch and tag name gitview: Display the lines joining commit nodes clearly. gitview: Fix DeprecationWarning gitview: Bump the rev gitview: Code cleanup gitview: Fix the graph display . gitview: Fix the encoding related bug gitview: Remove trailing white space gitview: Some window layout changes. gitview: Set the default width of graph cell gitview: Use horizontal scroll bar in the tree view gitview: pass the missing argument _show_clicked_cb. Carl Worth (5): git-rebase: Clarify usage statement and copy it into the actual documentation. New test to verify that when git-clone fails it cleans up the new directory. git-ls-files: Fix, document, and add test for --error-unmatch option. Add new git-rm command with documentation git-rm: Fix to properly handle files with spaces, tabs, newlines, etc. Dmitry V. Levin (1): git/Documentation: fix SYNOPSIS style bugs Eric Wong (43): Introducing contrib/git-svn. git-svn: fix revision order when XML::Simple is not loaded git-svn: ensure fetch always works chronologically. git-svn: remove files from the index before adding/updating git-svn: fix a typo in defining the --no-stop-on-copy option git-svn: allow --find-copies-harder and -l<num> to be passed on commit git-svn: Allow for more argument types for commit (from..to) git-svn: remove any need for the XML::Simple dependency git-svn: change ; to && in addremove() contrib/git-svn.txt: add a note about renamed/copied directory support git-svn: fix several corner-case and rare bugs with 'commit' contrib/git-svn: add Makefile, test, and associated ignores git-svn: 0.9.1: add --version and copyright/license (GPL v2+) information contrib/git-svn: add show-ignore command contrib/git-svn: optimize sequential commits to svn contrib/git-svn: version 0.10.0 contrib/git-svn: tell the user to not modify git-svn-HEAD directly contrib/git-svn: correct commit example in manpage contrib/git-svn: use refs/remotes/git-svn instead of git-svn-HEAD git-branch: add -r switch to list refs/remotes/* contrib/git-svn: add -b/--branch switch for branch detection contrib/git-svn: several small bug fixes and changes contrib/git-svn: strip 'git-svn-id:' when commiting to SVN contrib/git-svn: allow --authors-file to be specified contrib/git-svn: cleanup option parsing contrib/git-svn: create a more recent master if one does not exist contrib/git-svn: avoid re-reading the repository uuid, it never changes contrib/git-svn: add --id/-i=$GIT_SVN_ID command-line switch contrib/git-svn: better documenting of CLI switches send-email: accept --no-signed-off-by-cc as the documentation states contrib/git-svn: fix a copied-tree bug in an overzealous assertion contrib/git-svn: fix svn compat and fetch args contrib/git-svn: remove the --no-stop-on-copy flag contrib/git-svn: fix a harmless warning on rebuild (with old repos) fetch,parse-remote,fmt-merge-msg: refs/remotes/* support ls-tree: add --abbrev[=<n>] option ls-files: add --abbrev[=<n>] option contrib/git-svn: allow rebuild to work on non-linear remote heads send-email: use built-in time() instead of /bin/date '+%s' send-email: Change from Mail::Sendmail to Net::SMTP send-email: try to order messages in email clients more correctly send-email: lazy-load Email::Valid and make it optional contrib/git-svn: stabilize memory usage for big fetches Fernando J. Pereda (1): Allow building Git in systems without iconv Francis Daly (4): AsciiDoc fix for tutorial Tweak asciidoc output to work with broken docbook-xsl Fix multi-paragraph list items in OPTIONS section Format tweaks for asciidoc. Fredrik Kuivinen (13): Add git-blame, a tool for assigning blame. git-blame, take 2 git-blame: Make the output human readable git-blame: Use the same tests for git-blame as for git-annotate Fix some inconsistencies in the docs Remove trailing dot after short description Nicer output from 'git' Make it possible to not clobber object.util in sort_in_topological_order (take 2) rev-lib: Make it easy to do rename tracking (take 2) blame: Rename detection (take 2) blame: Nicer output blame: Fix git-blame <directory> Makefile: Add TAGS and tags targets J. Bruce Fields (1): Document git-rebase behavior on conflicts. Jason Riedy (1): Fix typo in git-rebase.sh. Jeff Muizelaar (2): cosmetics: change from 'See-Also' to 'See Also' documentation: add 'see also' sections to git-rm and git-add Johannes Schindelin (13): Fix cpio call Optionally support old diffs Support Irix Optionally work without python Fixes for ancient versions of GNU make avoid makefile override warning Really honour NO_PYTHON Fix "gmake -j" Use Ryan's git-annotate instead of jsannotate Warn about invalid refs Fix test case for some sed imap-send: Add missing #include for macosx Remove dependency on a file named "-lz" Jon Loeliger (9): Add git-show reference Call out the two different uses of git-branch and fix a typo. Document the default source of template files. Clarify git-rebase example commands. Reference git-commit-tree for env vars. Fix minor typo. Rewrite synopsis to clarify the two primary uses of git-checkout. Clarify and expand some hook documentation. Removed bogus "<snap>" identifier. Jonas Fonseca (2): manpages: insert two missing [verse] markers for multi-line SYNOPSIS repo-config: give value_ a sane default so regexec won't segfault Josef Weidendorfer (1): git-mv: fix moves into a subdir from outside Junio C Hamano (137): "Assume unchanged" git "Assume unchanged" git: do not set CE_VALID with --refresh ls-files: debugging aid for CE_VALID changes. "Assume unchanged" git: --really-refresh fix. ls-files: split "show-valid-bit" into a different option. "assume unchanged" git: documentation. cache_name_compare() compares name and stage, nothing else. git-commit: Now --only semantics is the default. rebase: allow a hook to refuse rebasing. commit: detect misspelled pathspec while making a partial commit. rebase: allow rebasing onto different base. ls-files --error-unmatch pathspec error reporting fix. Detect misspelled pathspec to git-add packed objects: minor cleanup topo-order: make --date-order optional. pack-objects: reuse data from existing packs. pack-objects: finishing touches. git-repack: allow passing a couple of flags to pack-objects. git-tag: -l to list tags (usability). Add contrib/README. SubmittingPatches: note on whitespaces pack-objects: avoid delta chains that are too long. Make "empty ident" error message a bit more helpful. Delay "empty ident" errors until they really matter. Keep Porcelainish from failing by broken ident after making changes. fmt-merge-msg: say which branch things were merged into unless 'master' Allow git-mv to accept ./ in paths. Documentation: fix typo in rev-parse --short option description. fmt-merge-msg: do not add excess newline at the end. rev-list --objects-edge Thin pack - create packfile with missing delta base. send-pack --thin: use "thin pack" delta transfer. Add git-push --thin. Use thin pack transfer in "git fetch". fmt-merge-msg: avoid open "-|" list form for Perl 5.6 rerere: avoid open "-|" list form for Perl 5.6 send-email: avoid open "-|" list form for Perl 5.6 svnimport: avoid open "-|" list form for Perl 5.6 cvsimport: avoid open "-|" list form for Perl 5.6 Fix fmt-merge-msg counting. cherry-pick/revert: error-help message rewording. git-mktree: reverse of git-ls-tree. rev-list.c: fix non-grammatical comments. send-pack: do not give up when remote has insanely large number of refs. gitview: ls-remote invocation shellquote safety. pack-objects: thin pack micro-optimization. pack-objects: use full pathname to help hashing with "thin" pack. count-delta: tweak counting of copied source material. count-delta: fix counting of copied source. Tweak break/merge score to adjust to the new delta generation code. pack-objects: allow "thin" packs to exceed depth limits rev-list --objects-edge: remove duplicated edge commit output. rev-list --objects: use full pathname to help hashing. pack-objects: hash basename and direname a bit differently. Revert "diff-delta: produce optimal pack data" Build and install git-mailinfo. rev-list split: minimum fixup. apply --whitespace fixes and enhancements. apply: squelch excessive errors and --whitespace=error-all apply --whitespace: configuration option. git-apply --whitespace=nowarn Revert "Revert "diff-delta: produce optimal pack data"" git-apply: war on whitespace -- finishing touches. diffcore-break: micro-optimize by avoiding delta between identical files. diffcore-rename: split out the delta counting code. diffcore-delta: stop using deltifier for packing. git-am: --whitespace=x option. diff-delta: cull collided hash bucket more aggressively. git-log (internal): add approxidate. git-log (internal): more options. Pretty-print tagger dates. war on whitespaces: documentation. Documentation: read-tree --aggressive Documentation: rev-list --objects-edge annotate: resurrect raw timestamps. setup_revisions(): handle -n<n> and -<n> internally. GIT-VERSION-GEN: squelch unneeded error from "cat version" show-branch --topics git-commit --amend git-commit: make sure we protect against races. diffcore-rename: similarity estimator fix. show-branch --topics: omit more uninteresting commits. count-delta: no need for this anymore. diffcore-break: similarity estimator fix. diffcore-delta: make change counter to byte oriented again. git-commit --amend: allow empty commit. Const tightening. verify-pack -v: show delta-chain histogram. blame: avoid -lm by not using log(). blame and annotate: show localtime with timezone. blame: avoid "diff -u0". annotate/blame tests updates. annotate-blame test: don't "source", but say "." annotate-blame test: add evil merge. blame: unbreak "diff -U 0". annotate-blame: tests incomplete lines. pack-objects: simplify "thin" pack. Use #define ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0])) refs.c::do_for_each_ref(): Finish error message lines with "\n" fsck-objects: Remove --standalone Fix t1200 test for breakage caused by removal of full-stop at the end of fast-forward message. try_to_simplify_commit(): do not skip inspecting tree change at boundary. repack: prune loose objects when -d is given git-diff: -p disables rename detection. diffcore-rename: somewhat optimized. revision traversal: --remove-empty fix. revision traversal: --remove-empty fix (take #2). diffcore-delta: make the hash a bit denser. diffcore-delta: tweak hashbase value. cvsimport: honor -i and non -i upon subsequent imports fetch: exit non-zero when fast-forward check fails. cvsimport: fix reading from rev-parse git-pull: run repo-config with dash form. unpack_delta_entry(): reduce memory footprint. generate-cmdlist: style cleanups. revamp git-clone. git-merge knows some strategies want to skip trivial merges http-fetch: nicer warning for a server with unreliable 404 status core.warnambiguousrefs: warns when "name" is used and both "name" branch and tag exists. revamp git-clone (take #2). get_sha1_basic(): try refs/... and finally refs/remotes/$foo/HEAD clone: record the remote primary branch with remotes/$origin/HEAD http-push.c: squelch C90 warnings. git-apply: do not barf when updating an originally empty file. rev-list --timestamp git-clone: typofix. git-pull: further safety while on tracking branch. git-pull: reword "impossible to fast-forward" message. sha1_name: warning ambiguous refs. sha1_name: make core.warnambiguousrefs the default. send-email: Identify author at the top when sending e-mail commit-tree: check return value from write_sha1_file() built-in diff: minimum tweaks true built-in diff: run everything in-core. git-push: make --thin pack transfer the default. add clean and ignore rules for xdiff/ GIT 1.3.0 rc1 Karl Wiberg (7): git-svnimport: -r adds svn revision number to commit messages svnimport: Mention -r in usage summary svnimport: Convert executable flag svnimport: Convert the svn:ignore property svnimport: Read author names and emails from a file Let git-svnimport's author file use same syntax as git-cvsimport's Save username -> Full Name <email@addr.es> map file Linus Torvalds (21): Handling large files with GIT Handling large files with GIT git-merge-tree: generalize the "traverse <n> trees in sync" functionality Teach the "git" command to handle some commands internally First cut at libifying revlist generation Make git diff-generation use a simpler spawn-like interface The war on trailing whitespace Splitting rev-list into revisions lib, end of beginning. git-rev-list libification: rev-list walking Introduce trivial new pager.c helper infrastructure Tie it all together: "git log" Rip out merge-order and make "git log <paths>..." work again. get_revision(): do not dig deeper when we know we are at the end. git-fmt-merge-msg cleanup Fix up diffcore-rename scoring diffcore-delta: 64-byte-or-EOL ultrafast replacement. diffcore-delta: 64-byte-or-EOL ultrafast replacement (hash fix). git-apply: safety fixes Use a *real* built-in diff generator builtin-diff: \No newline at end of file. Fix error handling for nonexistent names Lukas Sandström (1): git-fetch: print the new and old ref when fast-forwarding Marco Costalba (1): Add a Documentation/git-tools.txt Marco Roeland (1): imap-send: cleanup execl() call to use NULL sentinel instead of 0 Mark Hollomon (1): Let merge set the default strategy. Mark Wooding (6): combine-diff: Honour --full-index. combine-diff: Honour -z option correctly. Documentation/Makefile: Some `git-*.txt' files aren't manpages. gitignore: Ignore some more boring things. contrib/emacs/Makefile: Provide tool for byte-compiling files. annotate-tests: override VISUAL when running tests. Martin Langhoff (18): Introducing git-cvsserver -- a CVS emulator for git. cvsserver: add notes on how to get a checkout under Eclipse cvsserver: Eclipse compat fixes - implement Questionable, alias rlog, add a space after the U cvsserver: Eclipse compat - browsing 'modules' (heads in our case) works cvsserver: add notes on how to get a checkout under Eclipse cvsserver: Eclipse compat fixes - implement Questionable, alias rlog, add a space after the U cvsserver: Eclipse compat - browsing 'modules' (heads in our case) works cvsserver: Checkout correctly on Eclipse annotate: fix -S parameter to take a string cvsserver: Eclipse compat -- now "compare with latest from HEAD" works cvsserver: checkout faster by sending files in a sensible order cvsserver: fix checkouts with -d <somedir> cvsserver: checkout faster by sending files in a sensible order cvsserver: fix checkouts with -d <somedir> cvsserver: nested directory creation fixups for Eclipse clients cvsserver: better error messages cvsserver: anonymous cvs via pserver support cvsserver: updated documentation Martin Mares (1): gitk: Make error_popup react to Return Matthias Urlichs (2): cvsimport: Remove master-updating code Don't recurse into parents marked uninteresting. Mike McCormack (5): Allow adding arbitary lines in the mail header generated by format-patch. Allow format-patch to attach patches Document the --attach flag. Describe how to add extra mail header lines in mail generated by git-format-patch. Add git-imap-send, derived from isync 1.0.1. Nick Hengeveld (10): Update http-push functionality http-push: fix revision walk HTTP slot reuse fixes http-push: refactor remote file/directory processing http-push: improve remote lock management http-push: support for updating remote info/refs http-push: cleanup Fix broken slot reuse when fetching alternates http-push: add support for deleting remote branches http-push: don't assume char is signed Nicolas Pitre (11): relax delta selection filtering in pack-objects diff-delta: fold two special tests into one plus cleanups diff-delta: produce optimal pack data diff-delta: big code simplification diff-delta: bound hash list length to avoid O(m*n) behavior diff-delta: produce optimal pack data diff-delta: bound hash list length to avoid O(m*n) behavior diff-delta: allow reusing of the reference buffer index test-delta needs zlib to compile diff-delta: bound hash list length to avoid O(m*n) behavior 3% tighter packs for free Olaf Hering (1): allow double click on current HEAD id after git-pull Paul Jakma (1): Makefile tweaks: Solaris 9+ dont need iconv / move up uname variables Paul Mackerras (13): gitk: Make "find" on "Files" work again. gitk: New improved gitk gitk: Fix clicks on arrows on line ends gitk: Fix Update menu item gitk: Various speed improvements gitk: Further speedups gitk: Fix a bug in drawing the selected line as a thick line gitk: Fix display of diff lines beginning with --- or +++ gitk: Make commitdata an array rather than a list gitk: Don't change cursor at end of layout if find in progress gitk: Make downward-pointing arrows end in vertical line segment gitk: Improve appearance of first child links gitk: Fix two bugs reported by users Pavel Roskin (1): gitview: Select the text color based on whether the entry in highlighted. Use standard font. Petr Baudis (2): Properly git-bisect reset after bisecting from non-master head Optionally do not list empty directories in git-ls-files --others Randal L. Schwartz (1): fix imap-send for OSX René Scharfe (5): tar-tree: Use SHA1 of root tree for the basedir tar-tree: Introduce write_entry() tar-tree: Use write_entry() to write the archive contents tar-tree: Remove obsolete code tar-tree: Use the prefix field of a tar header Ryan Anderson (9): send-email: Add some options for controlling how addresses are automatically added to the cc: list. send-email: Add --cc Add git-annotate, a tool for assigning blame. annotate: Handle dirty state and arbitrary revisions. annotate: Convert all -| calls to use a helper open_pipe(). annotate: Use qx{} for pipes on activestate. annotate: handle \No newline at end of file. annotate: Add a basic set of test cases. annotate: Support annotation of files on other revisions. Sean Estabrooks (1): annotate.perl triggers rpm bug Shawn O. Pearce (7): git ls files recursively show ignored files Add missing programs to ignore list Darwin: Ignore missing /sw/lib Teach git-checkout-index to read filenames from stdin. Prevent --index-info from ignoring -z. Add --temp and --stage=all options to checkout-index. Add missing semicolon to sed command. Timo Hirvonen (1): Use setenv(), fix warnings Tony Luck (4): fix warning from pack-objects.c Re-fix compilation warnings. annotate should number lines starting with 1 fix field width/precision warnings in blame.c Yasushi SHOJI (1): Be verbose when !initial commit Version v1.2.6; changes since v1.2.5: ------------------------------------- Junio C Hamano (3): parse_date(): fix parsing 03/10/2006 diff_flush(): leakfix. count-delta: match get_delta_hdr_size() changes. Nicolas Pitre (1): check patch_delta bounds more carefully Version v1.2.5; changes since v1.2.4: ------------------------------------- Jason Riedy (1): Use sigaction and SA_RESTART in read-tree.c; add option in Makefile. Junio C Hamano (3): read-tree --aggressive: remove deleted entry from the working tree. tar-tree: file/dirmode fix. safe_fgets() - even more anal fgets() Linus Torvalds (2): Fix Solaris stdio signal handling stupidities pack-objects: be incredibly anal about stdio semantics Version v1.2.4; changes since v1.2.3: ------------------------------------- Alex Riesen (1): fix t5600-clone-fail-cleanup.sh on windows Josef Weidendorfer (2): git-mv: Allow -h without repo & fix error message git-mv: fixes for path handling Junio C Hamano (13): checkout - eye candy. Give no terminating LF to error() function. diffcore-rename: plug memory leak. git-am: do not allow empty commits by mistake. sample hooks template. apply --whitespace fixes and enhancements. apply: squelch excessive errors and --whitespace=error-all apply --whitespace: configuration option. git-apply --whitespace=nowarn git-apply: war on whitespace -- finishing touches. git-am: --whitespace=x option. diffcore-break: micro-optimize by avoiding delta between identical files. Allow git-mv to accept ./ in paths. Linus Torvalds (1): The war on trailing whitespace Mark Wooding (2): combine-diff: Honour --full-index. combine-diff: Honour -z option correctly. Version v1.2.3; changes since v1.2.2: ------------------------------------- Carl Worth (2): git-add: Add support for --, documentation, and test. git-push: Update documentation to describe the no-refspec behavior. Junio C Hamano (11): format-patch: pretty-print timestamp correctly. detect broken alternates. pack-objects: reuse data from existing packs. pack-objects: finishing touches. git-repack: allow passing a couple of flags to pack-objects. pack-objects: avoid delta chains that are too long. Make "empty ident" error message a bit more helpful. Delay "empty ident" errors until they really matter. Keep Porcelainish from failing by broken ident after making changes. pack-objects eye-candy: finishing touches. git-fetch: follow tag only when tracking remote branch. Nicolas Pitre (2): nicer eye candies for pack-objects also adds progress when actually writing a pack Version v1.2.2; changes since v1.2.1: ------------------------------------- Carl Worth (3): Trap exit to clean up created directory if clone fails. Abstract test_create_repo out for use in tests. Prevent git-upload-pack segfault if object cannot be found Eric Wong (1): archimport: remove files from the index before adding/updating Jonas Fonseca (2): git-rev-parse: Fix --short= option parsing Document --short and --git-dir in git-rev-parse(1) Martin Mares (1): Fix retries in git-cvsimport Shawn O. Pearce (1): Make git-reset delete empty directories Version v1.2.1; changes since v1.2.0: ------------------------------------- Fernando J. Pereda (1): Print an error if cloning a http repo and NO_CURL is set Fredrik Kuivinen (1): s/SHELL/SHELL_PATH/ in Makefile Josef Weidendorfer (1): More useful/hinting error messages in git-checkout Junio C Hamano (6): Documentation: git-commit in 1.2.X series defaults to --include. Documentation: git-ls-files asciidocco. bisect: remove BISECT_NAMES after done. combine-diff: diff-files fix. combine-diff: diff-files fix (#2) checkout: fix dirty-file display. Version v1.2.0; changes since v1.1.6: ------------------------------------- Alecs King (1): Add freebsd support in Makefile Alex Riesen (2): fix "test: 2: unexpected operator" on bsd avoid echo -e, there are systems where it does not work Andreas Ericsson (4): git-cvsimport: Add -A <author-conv-file> option update-hook: Major overhaul (handling tags, mainly). format-patch: Remove last vestiges of --mbox option .gitignore git-rerere and config.mak Christian Biesinger (1): Use a relative path for SVN importing Daniel Barkalow (4): Only use a single parser for tree objects Use struct tree in tar-tree Use struct commit in tar-tree Make apply accept the -pNUM option like patch does. Eric W. Biederman (1): Fix git-format-patch -s to include a Signed-off-by: line... Eric Wong (2): rev-list: allow -n<n> as shorthand for --max-count=<n> rev-list: allow -<n> as shorthand for --max-count=<n> Florian Weimer (1): AsciiDoc fixes for the git-svnimport manpage Fredrik Kuivinen (2): merge-recursive: Make use of provided bases merge-recursive: Speed up commit graph construction J. Bruce Fields (7): Minor git-reset and git-commit documentation fixes Mention install-doc in INSTALL New tutorial cvs-migration documentation update Docs: split up pull-fetch-param.txt Docs: move git url and remotes text to separate sections Docs: minor git-push copyediting Jason Riedy (4): Run GIT-VERSION-GEN with $(SHELL), not sh. Add compat/unsetenv.c . Use sha1_file.c's mkdir-like routine in apply.c. stat() for existence in safe_create_leading_directories() Johannes Schindelin (1): Use a hashtable for objects instead of a sorted list Jon Loeliger (1): Add --diff-filter= documentation paragraph Junio C Hamano (112): show-branch: take default arguments from configuration file. git-describe: default to HEAD Makefile: add 'strip' target octopus: allow criss-cross and clarify the message when it rejects Fix the installation location. checkout: automerge local changes while switching branches. checkout: merge local modifications while switching branches. git-push: avoid falling back on pushing "matching" refs. checkout: show dirty state upon switching branches. clone: --naked option. format-patch: always --mbox and show sane Date: octopus: allow manual resolve on the last round. Documentation: show-branch. show-branch: make the current branch and merge commits stand out. show-branch: --current includes the current branch. cvsimport: ease migration from CVSROOT/users format git-push: fix --tags and document it. Allow building of RPM from interim snapshot. Revert "git-push: avoid falling back on pushing "matching" refs." Makefile: do not assume lack of IPV6 means no sockaddr_storage. fsck-objects: support platforms without d_ino in struct dirent. DT_UNKNOWN: do not fully trust existence of DT_UNKNOWN t4011: "sleep 1" is not enough on FAT Undef DT_* before redefining them. git-grep: clarification on parameters. Recommend to remove unused `origin` in a shared repository. Documentation: finishing touches to the new tutorial. sample update-hook: sanely handle a new branch head. git-clone: PG13 --naked option to --bare. clone: do not create remotes/origin nor origin branch in a bare repository. clone: do not accept more than one -o option. tests: adjust breakage by stricter rev-parse git-fetch --upload-pack: disambiguate. merge: seed the commit message with list of conflicted files. diff-tree -c: show a merge commit a bit more sensibly. diff-tree --cc: denser combined diff output for a merge commit. combine-diff: fix appending at the tail of a list. combine-diff: minor output changes. combine-diff: extend --cc logic to Octopus. diff-tree --cc: squelch header generation on empty patch. combine-diff: better hunk splitting. diff-files: -c and --cc options. rev-list --remove-empty: add minimum help and doc entry. abbrev cleanup: use symbolic constants rev-parse: --abbrev option. diff-tree: abbreviate merge parent object names with --abbrev --pretty. rev-parse --abbrev: do not try abbrev shorter than minimum. Rename rev-parse --abbrev to --short. pretty_print_commit(): pass commit object instead of commit->buffer. pretty_print_commit: honor grafts. diff --abbrev=<n> option fix. rev-parse: make "whatchanged -- git-fetch-script" work again. diff-files -c/--cc: combine only when both ours and theirs exist. Documentation: diff -c/--cc documentation: cvs migration - typofix. update-index --index-info: allow stage 0 entries. rev-list: omit duplicated parents. combine-diff: reuse diff from the same blob. combine-diff: update --cc "uninteresting hunks" logic. combine-diff: add safety check to --cc. combine-diff: fix placement of deletion. Documentation: git-diff-tree --cc also omits empty commits commit.c: "Merge" fix in pretty_print_commit. combine-diff: add a bit more comments. combine-diff: show parent line numbers as well. combine-diff: cleanup. combine-diff: finishing touches to git-diff-tree --cc whitespace cleanup. get_sha1_1: allow octopus^12 to be properly parsed. git-merge: Properly quote $merge_msg variable. Do not fall back on vi on dumb terminals. diff-index: make --cc a synonym for -p for now. git-diff: use --cc instead of -p. git-show daemon: do not forbid user relative paths unconditionally under --base-path daemon: extend user-relative path notation. combine-diff: remove misguided --show-empty hack. git-diff-tree --stdin: show all parents. git-diff: do not fall back on --cc when -[123], --ours etc. are given. core-tutorial: adjust to recent reality. combine-diff: do not send NULL to printf combine-diff: show mode changes as well. combine-diff: do not punt on removed or added files. mailinfo: reset CTE after each multipart read-tree --aggressive fmt-merge-msg: show summary of what is merged. git-rerere: reuse recorded resolve. git-commit: revamp the git-commit semantics. git-commit: finishing touches. Do not allow empty name or email. t6000: fix a careless test library add-on. ls-files: honour per-directory ignore file from higher directories. combined-diff: use diffcore before intersecting paths. call git_config() after setup_git_directory() combine-diff: move formatting logic to show_combined_diff() count-delta.c: Match the delta data semantics change in version 3. git-status -v find_unique_abbrev() simplification. combine-diff: Record diff status a bit more faithfully rev-list: default to abbreviate merge parent names under --pretty. git-commit -v: have patch at the end. Define GIT_(AUTHOR|COMMITTER)_(NAME|EMAIL) to known values. fetch-clone progress: finishing touches. Only call git-rerere if $GIT_DIR/rr-cache exists. t5500: adjust to change in pack-object reporting behaviour. diff-tree: do not default to -c Avoid using "git-var -l" until it gets fixed. hashtable-based objects: minimum fixups. Make pack-objects chattier. git-commit: show dirtiness including index. Fix "test: unexpected operator" on bsd GIT 1.2.0 Kent Engstrom (1): Add howto about separating topics. Linus Torvalds (14): Make git-rev-list and git-rev-parse argument parsing stricter git-whatchanged: exit out early on errors rev-list: stop when the file disappears Make the "struct tree_desc" operations available to others Make git-tar-tree use the tree_desc abstractions Fix git-rev-parse over-eager errors diff-tree --always flag rev-parse lstat() workaround cleanup. Fix "git diff a..b" breakage diff-tree -c raw output Make "git clone" less of a deathly quiet experience Make "git clone" pack-fetching download statistics better Fix fetch-clone in the presense of signals Fix object re-hashing Mark Wooding (7): daemon: Provide missing argument for logerror() call. http-fetch: Fix object list corruption in fill_active_slots(). http-fetch: Fix message reporting rename of object file. http: Turn on verbose Curl messages if GIT_CURL_VERBOSE set in environment http-fetch: Tidy control flow in process_alternate_response daemon: Set SO_REUSEADDR on listening sockets. http-fetch: Abort requests for objects which arrived in packs Martin Langhoff (3): cvsimport: Add -S <skipfileregex> support and -v announces files retrieved exportcommit: replace backticks with safe_pipe_capture() or system() - initial pass cvsexportcommit: add some examples to the documentation Matt Draisey (1): local push/pull env cleanup Michal Ostrowski (3): Exec git programs without using PATH. git-fetch: pass --upload-pack to fetch-pack git-{fetch,peek-remote} handling of --upload-pack Nick Hengeveld (2): Fix HTTP request result processing after slot reuse Use local structs for HTTP slot callback data Nicolas Pitre (3): remove delta-against-self bit count-delta.c: comment fixes delta micro optimization Paul Mackerras (2): gitk: Add braces around if expressions gitk: Use git-diff-tree --cc for showing the diffs for merges Pavel Roskin (2): Disable USE_SYMLINK_HEAD by default Don't include ../README in git.txt - make a local copy Peter Eriksen (1): Use adler32() from zlib instead of defining our own. Petr Baudis (5): Document git-ls-files --directory Allow diff and index commands to be interrupted Document git-diff-tree --always Basic documentation for git-show Add support for explicit type specifiers when calling git-repo-config Ryan Anderson (3): Provide a more meaningful initial "From " line when using --compose in git-send-email. git-send-email: Add --quiet to reduce some of the chatter when sending emails. git-send-email: Fully implement --quiet and document it. Sasha Khapyorsky (1): git-svnimport.perl: fix for 'arg list too long...' Tom Prince (1): Add --keep option to keep downloaded packs to git-fetch. Tony Luck (1): update using-topic-branches Uwe Kleine-König (3): Fix generation of "humanish" part of source repo Remove unneeded header Use symbolic name SHORT_NAME_AMBIGUOUS as error return value Uwe Zeisberger (1): Make GIT-VERSION-GEN tolerate missing git describe command again Version v1.1.6; changes since v1.1.5: ------------------------------------- Fredrik Kuivinen (2): merge-recursive: Improve the error message printed when merge(1) isn't found. git-branch: Documentation fixes J. Bruce Fields (1): git push -f documentation Junio C Hamano (1): pre-commit sample hook: do not barf on the initial import Version v1.1.5; changes since v1.1.4: ------------------------------------- Junio C Hamano (1): checkout: do not make a temporary copy of symlink target. Version v1.1.4; changes since v1.1.3: ------------------------------------- Johannes Schindelin (1): git-fetch-pack: really do not ask for funny refs Junio C Hamano (1): Revert "check_packed_git_idx(): check integrity of the idx file itself." Version v1.1.3; changes since v1.1.2: ------------------------------------- Junio C Hamano (2): diffcore-break/diffcore-rename: integer overflow. describe: omit clearing marks on the last one. Version v1.1.2; changes since v1.1.1: ------------------------------------- J. Bruce Fields (1): Documentation: clarify fetch parameter descriptions. Junio C Hamano (6): update-index: work with c-quoted name describe: do not silently ignore indescribable commits name-rev: do not omit leading components of ref name. show-branch: handle [] globs as well. Documentation: git-commit -a Documentation: git-reset - interrupted workflow. Tom Prince (1): Add git-describe to .gitignore. Version v1.1.1; changes since v1.1.0: ------------------------------------- H. Peter Anvin (1): For release tarballs, include the proper version Johannes Schindelin (1): glossary: explain "master" and "origin" Junio C Hamano (1): GIT-VERSION-GEN: detect dirty tree and mark the version accordingly. Version v1.1.0; changes since v1.0.13: -------------------------------------- Johannes Schindelin (3): git-clone: Support changing the origin branch with -o Introduce core.sharedrepository git-init-db: initialize shared repositories with --shared John Ellson (1): Make GIT-VERSION-GEN tolerate missing git describe command Junio C Hamano (23): Post 1.0.0 development track. Versioning scheme changes. merge-recursive: conflicting rename case. whatchanged: customize diff-tree output rev-parse: --show-cdup check_packed_git_idx(): check integrity of the idx file itself. checkout: sometimes work from a subdirectory. ls-tree: chomp leading directories when run from a subdirectory git-clone: do not special case dumb http. Tutorial: mention shared repository management. git-describe: really prefer tags only. git-describe: use find_unique_abbrev() git-describe: --tags and --abbrev git-describe: still prefer annotated tag under --all and --tags git-describe: documentation. Makefile: use git-describe to mark the git version. send-pack/receive-pack: allow errors to be reported back to pusher. git-fetch: auto-following tags. ls-files --others --directory: fix a bug with index entry ordering ls-files --others --directory: give trailing slash git-status: use ls-files --others --directory for untracked list. ls-files --others --directory: test describe: allow more than one revs to be named. Linus Torvalds (2): Add a "git-describe" command ls-files -o: optionally skip showing the contents in "untracked" directories Lukas Sandström (1): git-pack-redundant: speed and memory usage improvements Petr Baudis (1): git-daemon --base-path YOSHIFUJI Hideaki (1): GIT: Support [address] in URLs Yann Dirson (3): Add an optional limit to git-cherry Add a minimal test for git-cherry Add a test for rebase when a change was picked upstream Version v1.0.13; changes since v1.0.12: --------------------------------------- Junio C Hamano (1): checkout: do not make a temporary copy of symlink target. Version v1.0.12; changes since v1.0.11: --------------------------------------- Johannes Schindelin (1): git-fetch-pack: really do not ask for funny refs Junio C Hamano (1): Revert "check_packed_git_idx(): check integrity of the idx file itself." Version v1.0.11; changes since v1.0.10: --------------------------------------- Junio C Hamano (1): diffcore-break/diffcore-rename: integer overflow. Version v1.0.10; changes since v1.0.9: -------------------------------------- J. Bruce Fields (1): Documentation: clarify fetch parameter descriptions. Junio C Hamano (5): update-index: work with c-quoted name name-rev: do not omit leading components of ref name. show-branch: handle [] globs as well. Documentation: git-commit -a Documentation: git-reset - interrupted workflow. Version v1.0.9; changes since v1.0.8: ------------------------------------- Johannes Schindelin (1): glossary: explain "master" and "origin" Version v1.0.8; changes since v1.0.7: ------------------------------------- Joe English (1): Substitute "/" with $opt_s in tag names as well as branch names Junio C Hamano (7): unpack-objects: default to quiet if stderr is not a tty. Retire debian/ directory. prune: do not show error from pack-redundant when no packs are found. Compilation: zero-length array declaration. tar-tree: finish honoring extractor's umask in git-tar-tree. revert/cherry-pick: handle single quote in author name. mailsplit: allow empty input from stdin Yann Dirson (3): Teach cvsexportcommit to add new files Fix typo in debug stanza of t2001 Fix git-format-patch usage string wrt output modes. Version v1.0.7; changes since v1.0.6: ------------------------------------- Alex Riesen (12): trivial: retval of waitpid is not errno trivial: O_EXCL makes O_TRUNC redundant fix potential deadlock in create_one_file use result of open(2) to check for presence trivial: typo in git-commit.sh trivial: clarify, what are the config's user.name and user.email about trivial: remove the dots at the end of file names from merge-one-file trivial: use git-repo-config to detect if the test can be run on the repository trivial: use git-repo-config to detect how to run tests in the test repository trivial: .gitignore precompiled python modules trivial: check, if t/trash directory was successfully created use GIT_DIR instead of /var/tmp Amos Waterland (1): AIX compile fix for repo-config.c Andreas Ericsson (1): git: grok 'help' to mean '--help'. Eric Wong (2): svnimport: support repositories requiring SSL authentication Documentation/git-svnimport: document -T and -t switches correctly Gerrit Pape (1): Fix skipping merge-order test with NO_OPENSSL=1. Jon Loeliger (1): Fix git-symbolic-ref typo in git.txt. Jonas Fonseca (2): git-init-db(1): Describe --shared and the idempotent nature of init-db Wrap synopsis lines and use [verse] to keep formatting Junio C Hamano (6): Documentation: spell. code comments: spell ?alloc: do not return NULL when asked for zero bytes git-fetch --tags: reject malformed tags. format-patch/commit: Quote single quote in the author name properly. t3300: skip when filesystem does not like TAB in filenames. Linus Torvalds (1): Fix nasty approxidate bug Version v1.0.6; changes since v1.0.5: ------------------------------------- Junio C Hamano (3): Guard a test against wc that pads its output with whitespace Fix bogus tests on rev-list output. Do not mark tags fetched via --tags flag as mergeable Sam Ravnborg (1): copy_fd: close ifd on error Version v1.0.5; changes since v1.0.4: ------------------------------------- Eric Wong (1): short circuit out of a few places where we would allocate zero bytes Johannes Schindelin (1): Handle symlinks graciously Junio C Hamano (2): avoid asking ?alloc() for zero bytes. t5300: avoid false failures. Version v1.0.4; changes since v1.0.3: ------------------------------------- Junio C Hamano (5): check_packed_git_idx(): check integrity of the idx file itself. show-branch: usability updates. merge --no-commit: tweak message ls-files --full-name: usage string and documentation. mailinfo: iconv does not like "latin-1" -- should spell it "latin1" Version v1.0.3; changes since v1.0.2: ------------------------------------- Alex Riesen (1): \n usage in stderr output Johannes Schindelin (2): git-format-patch should show the correct version sha1_to_hex: properly terminate the SHA1 Junio C Hamano (1): send-pack: reword non-fast-forward error message. Nick Hengeveld (1): Fix for http-fetch from file:// URLs Pavel Roskin (1): sanity check in add_packed_git() Version v1.0.2; changes since v1.0.1: ------------------------------------- Junio C Hamano (1): server-info: skip empty lines. Pavel Roskin (1): quote.c: Make loop control more readable. Version v1.0.1; changes since v1.0.0b: -------------------------------------- Version v1.0.0b; changes since v1.0.0a: --------------------------------------- Junio C Hamano (1): server-info: skip empty lines. Pavel Roskin (1): quote.c: Make loop control more readable. Version v1.0.0a; changes since v1.0.0: -------------------------------------- Johannes Schindelin (1): Avoid misleading success message on error Junio C Hamano (3): objects/info/packs: work around bug in http-fetch.c::fetch_indices() http-fetch.c: fix objects/info/pack parsing. GIT 1.0.0a Pavel Roskin (1): An off-by-one bug found by valgrind Version v1.0.0; changes since v1.0rc6: -------------------------------------- Eric Wong (1): Documentation/git-archimport: document -o, -a, f, -D options Fredrik Kuivinen (3): git-diff: Usage string clean-up git-log: Add usage string git-whatchanged: Add usage string Jan Harkes (1): Fix git-am --skip Johannes Schindelin (1): We do not like "HEAD" as a new branch name Junio C Hamano (32): clone-pack: make it usable for partial branch cloning. Documentation: tutorial get_sha1_basic(): corner case ambiguity fix applymbox: typofix Sort globbed refname in show-branch. refs.c: off-by-one fix. Examples of resetting. Forbid pattern maching characters in refnames. Comment fixes. Documentation: HTTP needs update-server-info. Remove misguided branch disambiguation. Revert "refs.c: off-by-one fix." Revert "We do not like "HEAD" as a new branch name" Revert "get_sha1_basic(): corner case ambiguity fix" fetch-pack: -k option to keep downloaded pack. clone-pack: remove unused and undocumented --keep flag Documentation: typos and small fixes in "everyday". howto/using-topic-branches: Recommend public URL git://git.kernel.org/ rev-list --objects: fix object list without commit. Documentation: stdout of update-hook is connected to /dev/null Remove generated files */*.py[co] Remove unused cmd-rename.sh Remove "octopus". tests: make scripts executable xread/xwrite: do not worry about EINTR at calling sites. diff: --abbrev option diff --abbrev: document --abbrev=<n> form. format-patch: make sure header and body are separated. Racy GIT Racy GIT (part #2) ce_smudge_racily_clean_entry: explain why it works. A shared repository should be writable by members. Linus Torvalds (3): Make "git help" react to window size correctly Make "git help" sort git commands in columns Make "git-send-pack" less verbose by default Martin Langhoff (1): svnimport: exit cleanly when we are up to date Nicolas Pitre (1): small cleanup for diff-delta.c Version v1.0rc6; changes since v1.0rc5: --------------------------------------- Amos Waterland (1): git rebase loses author name/email if given bad email address Fredrik Kuivinen (12): Usage message clean-up, take #2 Trivial usage string clean-up git-verify-tag: Usage string clean-up, emit usage string at incorrect invocation git-revert: Usage string clean-up git-am: Usage string clean-up git-applypatch: Usage string clean-up, emit usage string at incorrect invocation git-cherry: Usage string clean-up, use the 'usage' function git-fetch: Usage string clean-up, emit usage string at unrecognized option git-lost-found: Usage string clean-up, emit usage string at incorrect invocation git-prune: Usage string clean-up, use the 'usage' function git-rebase: Usage string clean-up, emit usage string at incorrect invocation git-repack: Usage string clean-up, emit usage at incorrect invocation H. Peter Anvin (1): git-am support for naked email messages (take 2) Junio C Hamano (22): diffcore-break.c: check diff_delta() return value. Add deltifier test. diff-delta.c: allow delta with empty blob. Everyday: some examples. Revert "diff-delta.c: allow delta with empty blob." Revert "Add deltifier test." diffcore-break: do not break too small filepair. Everyday: a bit more example. Documentation: more examples. Documentation: fix missing links to git(7) Documentation: diff examples. Documentation: not learning core git commands. git-clone: tell the user a bit more about clone-pack failure. allow merging any committish checkout-index: fix checking out specific path. Everyday: a bit more examples. t3200: branch --help does not die anymore. applypatch: no need to do non-portable [[ ... ]] Documentation: topic branches rebase: do not get confused in fast-forward situation. Do not let errors pass by unnoticed when running `make check'. mailinfo and git-am: allow "John Doe <johndoe>" Lukas Sandström (1): Bugfixes for git-rebase Martin Atukunda (1): define MAXPATHLEN for hosts that don't support it Petr Baudis (1): Make git-send-pack exit with error when some refs couldn't be pushed out Version v1.0rc5; changes since v1.0rc4: --------------------------------------- Alex Riesen (1): use "git init-db" in tests Daniel Barkalow (3): Warn when send-pack does nothing Clean up file descriptors when calling hooks. Allow saving an object from a pipe Eric Wong (9): archimport: first, make sure it still compiles archimport: remove String::ShellQuote dependency. archimport: fix -t tmpdir switch archimport: remove git wrapper dependency archimport: add -D <depth> and -a switch archimport: safer log file parsing archimport: Add the accurate changeset applyer archimport: Fix a bug I introduced in the new log parser archimport: fix a in new changeset applyer addition Jason Riedy (3): Document config.mak in INSTALL. Initial AIX portability fixes. Use printf rather than echo -n. Jon Loeliger (1): Added documentation for few missing options. Junio C Hamano (51): compat/setenv: do not free what we fed putenv(3). git.c: two fixes, gitsetenv type and off-by-one error. show-branch: allow glob pattern to name branches to show. Documentation: rebase does not use cherry-pick anymore. struct tree: remove unused field "parent" git.c: remove excess output for debugging when command is too long. sha1_file.c: make sure packs in an alternate odb is named properly. server-info.c: drop unused D lines. server-info: stop sorting packs by latest date. server-info: throw away T computation as well. Documentation: talk about pathspec in bisect. Documentation: git-mv manpage workaround. Documentation: git-diff asciidoc table workaround. Documentation: push/receive hook references. Documentation: shared repository management in tutorial. server-info.c: use pack_local like everybody else. server-info.c: and two functions are not used anymore. config.c: remove unnecessary header in minimum configuration file. Clean up compatibility definitions. Fix 5501 test git-mv to work with Perl 5.6 hash-object: -- and --help init-db: check extra arguments and complain. write-tree: check extra arguments and die but be a bit more helpful. Documentation: hash-object. Documentaiton (read-tree): update description of 3-way git-merge-one-file: resurrect leading path creation. qsort() ptrdiff_t may be larger than int checkout-index: allow checking out from higher stages. git-merge-one: new merge world order. update-index: allow --index-info to add higher stages. Documentation: git.html/git.7 Documentation(glossary): minor formatting clean-ups. Documentation(cvs-migration): minor cleanups. Documentation(tutorial): adjust merge example to the new merge world order. refs.c: make sure leading directories exist before writing a ref. Make sure we use compat/subprocess.py with Python 2.3 while running tests. Documentation: recursive is the default strategy these days. show-branch: comment typo Documentation: git-prune qsort(): ptrdiff_t may be larger than int git-prune: never lose objects reachable from our refs. Use GIT_EXEC_PATH explicitly for initial git-init-db in tests. Everyday GIT with 20 commands Link Everyday GIT to main documentation tree. t3300: funny name test t0000: catch trivial pilot errors. format-patch: use same number of digits in numbers merge-recursive: leave unmerged entries in the index. merge-recursive: cleanup setIndexStages t/t6022: a new test for renaming merge. Nikolai Weibull (16): Document the --non-empty command-line option to git-pack-objects. Fix the description of --utf8 and --keep to git-am. Use uniform description for the '--' option. Documentation/git-commit.txt: Add long options and -- to documentation. Documentation/git-verify-pack.txt: added documentation for --. Documentation/git-cvsimport.txt: Fix a slight glitch in description heading. Documentation/git-cherry-pick: Add --replay and --no-commit. Add documentation for git-revert and git-cherry-pick. Add documentation for the --topo-order option to git-show-branch. Documentation/git-format-patch.txt: Add --signoff, --check, and long option-names. Documentation/git-ls-remote.txt: Add -h and -t. Documentation/git-repack.txt: Add -l and -n. Documentation/git-http-fetch.txt: Document the commit-id argument. Documentation/git-update-server-info.txt: Add -f alias for --force to documentation. Documentation/git-tag.txt: Fix the order of sections (DESCRIPTION should come before OPTIONS). Documentation/git-read-tree.txt: Add --reset to SYNOPSIS. Paul Mackerras (3): gitk: Factored out some common code into a new start_rev_list procedure gitk: Some improvements for the code for updating the display gitk: Work around Tcl's non-standard names for encodings Petr Baudis (2): Update the git-ls-tree documentation Document the --(no-)edit switch of git-revert and git-cherry-pick Sven Verdoolaege (1): gitk: add Update menu item. Version v1.0rc4; changes since v1.0rc3: --------------------------------------- Alecs King (1): Documentation/git-log.txt: trivial typo fix. Alex Riesen (5): speedup allocation in pack-redundant.c remove unused variable arguments cleanup and some formatting Add tests for git-mv in subdirectories git wrapper: more careful argument stuffing Alexander Litvinov (1): git-mv is not able to handle big directories Andreas Ericsson (13): git-daemon: --inetd implies --syslog C implementation of the 'git' program, take two. Update git(7) man-page for the C wrapper. git --help COMMAND brings up the git-COMMAND man-page. daemon.c: fix arg parsing bugs Library code for user-relative paths, take three. Server-side support for user-relative paths. Client side support for user-relative paths. Documentation update for user-relative paths. git-reset.txt: Small fix + clarifications. git-daemon support for user-relative paths. Introduce $(ALL_PROGRAMS) for 'all:' and 'install:' to operate on. cvsimport: Don't let local settings hinder cvs user-migration. Eric Wong (3): remove shellquote usage for tags archimport: don't die on merge-base failure Disambiguate the term 'branch' in Arch vs git Frank Sorenson (1): gitk: Specify line hover font Fredrik Kuivinen (5): merge-recursive: Replace 'except:' git-merge: Exit with code 2 if no strategy was able to handle the merge. test-lib.sh: Add new function, test_expect_code New test case: merge with directory/file conflicts New test case: Criss-cross merge H. Peter Anvin (3): git-core-foo -> git-foo, except the core package rename/copy score parsing updates. A few more options for git-cat-file Jan Andres (1): Fix typo in http-push.c Jason Riedy (1): Add compat/setenv.c, use in git.c. Jeff Hobbs (1): gitk: put braces around exprs Johannes Schindelin (13): Add config variable core.symrefsonly Fix tests with new git in C Give python a chance to find "backported" modules Add functions git_config_set() and git_config_set_multivar() Add git-config-set, a simple helper for scripts to set config variables Add documentation for git-config-set Add test case for git-config-set git-config-set: add more options git-config-set: support selecting values by non-matching regex git-config-set: Properly terminate strings with '\0' Allow hierarchical section names Rename git-config-set to git-repo-config Make git-mv work in subdirectories, too Jon Loeliger (1): Fix typos and minor format issues. Jonas Fonseca (1): Fix git(1) link to git-index-pack Josef Weidendorfer (6): Fix git-mv for moving directories with 1 file git-mv: shrink usage, no usage on error git-mv: keep git index consistent with file system on failed rename git-mv: fully detect 'directory moved into itself' Small fixes in Documentation/git-mv.txt git-mv: follow -k request even on failing renames Junio C Hamano (108): Documentation: do not blindly run 'cat' .git/HEAD, or echo into it. diff: make default rename detection limit configurable. sha1_file.c::add_packed_git(): fix type mismatch. git wrapper: basic fixes. git-apply: fail if a patch cannot be applied. git-am: --resolved. apply: allow-binary-replacement. diff: --full-index tests: binary diff application. Add approxidate test calls. Deal with binary diff output from GNU diff 2.8.7 git-am: --binary; document --resume and --binary. git-prune: quote possibly empty $dryrun as parameter to test Cygwin *might* be helped with NO_MMAP Do not show .exe in git command list. git-branch: -f to forcibly reset branch head. Rewrite rebase to use git-format-patch piped to git-am. readrefs: grab all refs with one call to ls-remote. git-count-objects: dc replacement git-repack: do not do complex redundancy check. Documentation: rebase-from-internal minor updates. merge-one-file: remove empty directories merge-recursive::removeFile: remove empty directories http.c: reorder to avoid compilation failure. Do not DWIM in userpath library under strict mode. Documentation: add hooks/update example. merge-one-file: use rmdir -p Fix "do not DWIM" patch to enter_repo" Make sure heads/foo and tags/foo do not confuse things. Fix hooks/update template. format-patch: fix two-argument special case, and make it easier to pick single commits rename detection with -M100 means "exact renames only". tutorial: setting up a tree for subsystem maintainers daemon: further tweaks. git-proxy updates. Move diff.renamelimit out of default configuration. git-var: constness and globalness cleanup. pack-redundant: type cleanups. git-merge: make recursive the default strategy git-revert: make --edit default. Teach update-index to read from ls-tree. diff-tree: teach single-commit diff-tree to honour grafts config.c: avoid shadowing global. Prevent "git-commit -a path1 path2..." parse-remote and ls-remote clean-up. git-sh-setup: die if outside git repository. git-var: make it work in subdirectory. setup_git_directory: make sure GIT_DIR is a valid repository. git-sh-setup: move the repository check to a core program. shell.c: complain on insufficient arguments. name-rev: fix off-by-one error in --stdin. format-patch: output filename reported to stdout verbatim. Repository format version check. Check repository format version in enter_repo(). init-db: check template and repository format. setup_git_directory(): check repository format version. Introduce i18n.commitencoding. mailinfo: allow -u to fall back on latin1 to utf8 conversion. mailinfo: Use i18n.commitencoding mailinfo: Do not use -u=<encoding>; say --encoding=<encoding> config.c: constness tightening to avoid compilation warning. gitk: Use i18n.commitencoding configuration item. git-mv: quote $src in regexp properly. rebase: one safety net, one bugfix and one optimization. name-rev: fix parent counting. Documentation: Describe merge operation a bit better. write_name_quoted(): make one of the path a counted string. ls-tree: Resurrect funny name quoting lost during rewrite. ls-tree: match the test to the new semantics. bisect: quote pathnames for eval safety. working from subdirectory: preparation git-apply: work from subdirectory. peek-remote: honor proxy config even from subdirectory. fsck-objects: work from subdirectory. checkout-index: work from subdirectory. hash-object: work within subdirectory. ls-tree: work from subdirectory. Make networking commands to work from a subdirectory. Make the rest of commands work from a subdirectory. count-objects: make it operable from a subdirectory. ls-remote: define die() now we do not use git-sh-setup branch: make it operable from a subdirectory. lost-found: make it operable from a subdirectory. tag: make it operable from a subdirectory. verify-tag: make it operable from a subdirectory. define die() for scripts that use it. hash-object.c: type-fix to squelch compiler warnings. applymbox: typofix to enable -m option. applypatch: use "index" lines not "applies-to". format-patch: remove applies-to. format-patch: do not abuse 3-dash marker line. format-patch: run diff in C locale git-diff: do not turn off -p/-M with any diff options. diff-files: show diffs with stage0 and unmerged stage at the same time. merge-recursive: match the unmerged index entry behaviour with merge-resolve Tutorial: adjust merge example to recursive strategy. Documentation: describe '-f' option to git-fetch. Makefile: say the default target upfront. ls-tree: resurrect '-d' to mean 'show trees only' ls-tree: --name-only git-merge-one-file: do not worry about 'rmdir -p' not removing directory. merge-recursive: adjust git-ls-tree use for the latest. t3100: add ls-tree -t and -d tests. merge-one-file: make sure we create the merged file. merge-one-file: make sure we do not mismerge symbolic links. git-merge documentation: conflicting merge leaves higher stages in index documentation: git-bisect (help HTML break man) daemon.c and path.enter_repo(): revamp path validation. Kevin Geiss (4): git-cvsexportcommit.perl: Fix usage() output. git-cvsexportcommit.perl: use getopts to get binary flags git-cvsexportcommit.perl: exit with non-0 status if patch fails. git-cvsexportcommit.perl: fix typos in output Linus Torvalds (14): Disallow empty pattern in "git grep" git's rev-parse.c function show_datestring presumes gnu date Teach "approxidate" about weekday syntax Make "git fetch" less verbose by default Teach "approxidate" about weekday syntax git-repack: Properly abort in corrupt repository Allow editing of a revert-message ls-tree: major rewrite to do pathspec ls-tree: further cleanup to parallel ls-files. ls-tree: further tweaks of the rewrite bisect: limit the searchspace by pathspecs diff-files: -1/-2/-3 to diff against unmerged stage. merge-one-file: leave unmerged index entries upon automerge failure. git-ls-tree: add "-t" option to always show the tree entries Luben Tuikov (1): max-count in terms of intersection Lukas Sandström (8): Fix llist_sorted_difference_inplace in git-pack-redundant Make git-pack-redundant non-horribly slow on large sets of packs Fix bug introduced by the latest changes to git-pack-redundant Fix a bug in get_all_permutations. Remove all old packfiles when doing "git repack -a -d" Improve the readability of git-pack-redundant Document the "ignore objects" feature of git-pack-redundant Make git-pack-redundant take a list of unimportant objs on stdin Martin Langhoff (1): archimport: allow for old style branch and public tag names Matthias Urlichs (1): SVN import: Use one log call Nick Hengeveld (7): Isolate shared HTTP request functionality Make http-fetch request types more clear Improve pack list response handling Improve XML parsing in http-push http-push memory/fd cleanup Decide whether to build http-push in the Makefile http-push cleanup Nicolas Pitre (1): 'make clean' forgot about some files Paul Collins (1): proxy-command support for git:// Paul Mackerras (5): Add -r flag and some speedups gitk: Fix some bugs introduced by speedup changes gitk: Disable fastdate stuff for now gitk: Fix diff this->selected and selected->this functions gitk: Add a preferences dialog with some basic stuff Paul Serice (2): git-daemon not listening when compiled with -DNO_IPV6 Fixed git:// IPv4 address problem when compiled with -DNO_IPV6. Pavel Roskin (4): symref support for import scripts gitk: use git-diff-tree --no-commit-id gitk: UTF-8 support git-clone --shared should imply --local Petr Baudis (1): Fix bunch of fd leaks in http-fetch Ralf Baechle (1): git-repack: Fix variable name Ryan Anderson (1): Add Python version checks to the Makefile to automatically set WITH_OWN_SUBPROCESS_PY Sergey Vlasov (2): git-fsck-objects: Free tree entries after use Rework object refs tracking to reduce memory usage Stefan-W. Hahn (1): gitk: moving all three panes if clicking on an arrow. Timo Hirvonen (2): Fix sparse warnings Move couple of ifdefs after "include config.mk" Tommi Virtanen (1): Do not attempt to access literal dirname "GIT_OBJECT_DIRECTORY". Tony Luck (1): Update pull/fetch --tags documentation YOSHIFUJI Hideaki (2): GIT: Fix compilation error in connect.c Fix a warning about unused value. Yann Dirson (1): Fix gitk this->selected diffs anonymous (2): documentation: clarify read-tree --reset documentation: git-tag Version v1.0rc3; changes since v1.0rc2: --------------------------------------- Junio C Hamano (1): GIT 0.99.9j aka 1.0rc3 Version v1.0rc2; changes since v1.0rc1: --------------------------------------- Alex Riesen (1): allow git-update-ref create refs with slashes in names Andreas Ericsson (1): git-branch: Mention -d and -D in man-page. Josef Weidendorfer (2): Bugfix: stop if directory already exists Remove git-rename. git-mv does the same Junio C Hamano (5): Debian: build-depend on libexpat-dev. Rename lost+found to lost-found. Separate LDFLAGS and CFLAGS. apply: fix binary patch detection. Update topo-order test. Kai Ruemmler (1): Fix compilation warnings in pack-redundant.c Linus Torvalds (1): Fix git-rev-list "date order" with --topo-order Matthias Urlichs (3): debian packaging: git-cvs needs cvsps Remove trailing slashes Depend on asciidoc 7 (at least). Nick Hengeveld (2): Fix for multiple alternates requests in http-fetch Fix fd leak in http-fetch Nikolai Weibull (3): Document the -n command-line option to git-unpack-objects Document a couple of missing command-line options. Documentation nitpicking Thomas Matysik (2): Add expat and expat-devel dependencies (for http-push) to RPM spec. Split gitk into seperate RPM package