En

Git官网普通更新(2020-01-13)

来源:Git官网 发布日期:2020-01-13 阅读次数:15 评论:0

基本信息

发布日期:2020-01-13(官方当地时间)

更新类型:普通更新

更新版本:Git v2.25.0

感知时间:2020-01-15 01:00:29

风险等级:未知

情报贡献:TSRC

更新标题

[ANNOUNCE] Git v2.25.0

更新详情

From: Junio C Hamano
To: git@vger.kernel.org
Cc: Linux Kernel ,
git-packagers@googlegroups.com
Subject: [ANNOUNCE] Git v2.25.0
Date: Mon, 13 Jan 2020 11:28:30 -0800
Message-ID: (raw)

The latest feature release Git v2.25.0 is now available at the
usual places. It is comprised of 583 non-merge commits since
v2.24.0, contributed by 84 people, 32 of which are new faces.

The tarballs are found at:

https://www.kernel.org/pub/software/scm/git/

The following public repositories all have a copy of the 'v2.25.0'
tag and the 'master' branch that the tag points at:

url = https://kernel.googlesource.com/pub/scm/git/git
url = git://repo.or.cz/alt-git.git
url = https://github.com/gitster/git

New contributors whose contributions weren't in v2.24.0 are as follows.
Welcome to the Git development community!

Ben Keene, Colin Stolley, Dominic Jäger, Erik Chen, Hariom
Verma, Heba Waly, James Coglan, James Shubin, Johannes Schindelin
via GitGitGadget, Jonathan Gilbert, Josh Holland, Kazuhiro
Kato, Łukasz Niemier, Manish Goregaokar, Matthew Rogers,
Mihail Atanassov, Miriam Rubio, Nathan Stocks, Naveen Nathan,
Nika Layzell, pan93412, Paul Menzel, Philippe Blain, Prarit
Bhargava, r.burenkov, Ruud van Asseldonk, ryenus, Slavica
Đukić, Thomas Menzel, Utsav Shah, Yi-Jyun Pan, and Zoli Szabó.

Returning contributors who helped this release are as follows.
Thanks for your continued support.

Alban Gruin, Alessandro Menti, Alexander Shopov, Alexandr
Miloslavskiy, Andreas Schwab, Andrei Rybak, brian m. carlson,
Christopher Diaz Riveros, Daniel Ferreira, Denis Ovsienko,
Denton Liu, Derrick Stolee, Dimitriy Ryazantcev, Đoàn Trần
Công Danh, Ed Maste, Elia Pinto, Elijah Newren, Emily Shaffer,
Eric Wong, Garima Singh, Hans Jerry Illikainen, Jean-Noël
Avila, Jeff Hostetler, Jeff King, Jiang Xin, Johannes Berg,
Johannes Schindelin, Johannes Sixt, Jonathan Nieder, Jonathan
Tan, Jordi Mas, Junio C Hamano, Kevin Willford, Martin Ågren,
Matthias Rüster, Mike Hommey, Peter Krefting, Philip Oakley,
Phillip Wood, Pratyush Yadav, Ralf Thielow, René Scharfe, Robin
H. Johnson, Rohit Ashiwal, SZEDER Gábor, Tanushree Tumane,
Taylor Blau, Thomas Braun, Thomas Gummerer, Todd Zullinger,
Trần Ngọc Quân, and William Baker.

----------------------------------------------------------------

Git 2.25 Release Notes
======================

Updates since v2.24
-------------------

Backward compatibility notes


UI, Workflows & Features

* A tutorial on object enumeration has been added.

* The branch description ("git branch --edit-description") has been
used to fill the body of the cover letters by the format-patch
command; this has been enhanced so that the subject can also be
filled.

* "git rebase --preserve-merges" has been marked as deprecated; this
release stops advertising it in the "git rebase -h" output.

* The code to generate multi-pack index learned to show (or not to
show) progress indicators.

* "git apply --3way" learned to honor merge.conflictStyle
configuration variable, like merges would.

* The custom format for "git log --format=" learned the l/L
placeholder that is similar to e/E that fills in the e-mail
address, but only the local part on the left side of '@'.

* Documentation pages for "git shortlog" now list commit limiting
options explicitly.

* The patterns to detect function boundary for Elixir language has
been added.

* The completion script (in contrib/) learned that the "--onto"
option of "git rebase" can take its argument as the value of the
option.

* The userdiff machinery has been taught that "async def" is another
way to begin a "function" in Python.

* "git range-diff" learned to take the "--notes=" and the
"--no-notes" options to control the commit notes included in the
log message that gets compared.

* "git rev-parse --show-toplevel" run outside of any working tree did
not error out, which has been corrected.

* A few commands learned to take the pathspec from the standard input
or a named file, instead of taking it as the command line
arguments, with the "--pathspec-from-file" option.

* "git submodule" learned a subcommand "set-url".

* "git log" family learned "--pretty=reference" that gives the name
of a commit in the format that is often used to refer to it in log
messages.

* The interaction between "git clone --recurse-submodules" and
alternate object store was ill-designed. The documentation and
code have been taught to make more clear recommendations when the
users see failures.

* Management of sparsely checked-out working tree has gained a
dedicated "sparse-checkout" command.

* Miscellaneous small UX improvements on "git-p4".

* "git sparse-checkout list" subcommand learned to give its output in
a more concise form when the "cone" mode is in effect.


Performance, Internal Implementation, Development Support etc.

* Debugging support for lazy cloning has been a bit improved.

* Move the definition of a set of bitmask constants from 0ctal
literal to (1Utree 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
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

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 Berg (1):
multi-pack-index: correct configuration in documentation

Johannes Schindelin (96):
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
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
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
mingw: short-circuit the conversion of `/dev/null` to UTF-16
mingw: refuse paths containing reserved names
mingw: only test index entries for backslashes, not tree entries

Johannes Schindelin via GitGitGadget (1):
mingw: safeguard better against backslashes in file names

Johannes Sixt (1):
t3008: find test-tool through path lookup

Jonathan Gilbert (3):
git-gui: consolidate naming conventions
git-gui: update status bar to track operations
git-gui: revert untracked files by deleting them

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

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

Jordi Mas (2):
l10n: Update Catalan translation
l10n: Update Catalan translation

Josh Holland (1):
userdiff: support Python async functions

Junio C Hamano (19):
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
mailmap: mask accentless variant for Công Danh
Git 2.25-rc1
The final batch before -rc2
Git 2.25-rc2
Revert "Merge branch 'ra/rebase-i-more-options'"
Git 2.25

Kazuhiro Kato (1):
git gui: fix branch name encoding error

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 (2):
t7004: check existence of correct tag
config/advice.txt: fix description list separator

Matthew Rogers (1):
rebase -r: let `label` generate safer labels

Matthias Rüster (1):
l10n: de.po: Update German translation v2.25.0 round 1

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

Paul Menzel (1):
am: document that Date: can appear as an in-body header

Peter Krefting (1):
l10n: sv.po: Update Swedish translation (4800t0f0u)

Philip Oakley (1):
Doc: Bundle file usage

Philippe Blain (6):
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
doc: log, gitk: document accepted line-log diff formats
doc: log, gitk: line-log arguments must exist in starting revision

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 (2):
git-shortlog.txt: include commit limiting options
git-gui: allow closing console window with Escape

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.

Taylor Blau (1):
Documentation/git-sparse-checkout.txt: fix a typo

Thomas Braun (1):
l10n: de.po: Reword generation numbers

Thomas Gummerer (1):
stash: make sure we have a valid index before writing it

Thomas Menzel (1):
doc: submodule: fix typo for command absorbgitdirs

Todd Zullinger (1):
t7812: expect failure for grep -i with invalid UTF-8 data

Trần Ngọc Quân (1):
l10n: vi(4800t): Updated Vietnamese translation v2.25.0

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.

Yi-Jyun Pan (1):
l10n: zh_TW: add translation for v2.24.0

Zoli Szabó (1):
git-gui: allow opening currently selected file in default app

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

pan93412 (1):
l10n: zh_TW.po: update translation for v2.25.0 round 1

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

软件描述

Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 [1] Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

CVE编号

TSRC分析

暂无

业界资讯

暂无

评论

提交评论 您输入的评论有误,请重新输入