We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Here's the Weekly Digest for gitgitgadget/git:
Last week 26 issues were created. Of these, 2 issues have been closed and 24 issues are still open.
💚 #251 Turn the fetch_if_missing global into a field of struct repository, by dscho 💚 #250 Implement command-line options to change branch.<name>.remote/pushRemote configs, by Denton-L 💚 #249 Make git diff .. less confusing for newbies, by Denton-L 💚 #248 Don't run Cocci on compat/ files that are pulled externally, by Denton-L 💚 #247 format.outputDirectory should be based on the top of the repository, by Denton-L 💚 #246 Make Git subcommand documentation more consistent, by Denton-L 💚 #245 Investigate -Wformat-signedness, by Denton-L 💚 #244 Fix formatting of config values in documentation, by Denton-L 💚 #243 Document --stdin (and other options in setup_revisions), by Denton-L 💚 #242 Split the linux-gcc in our CI builds into two separate jobs, by dscho 💚 #241 Fix flaky "t0021.15 required process filter should filter data", by dscho 💚 #240 Fix flaky "t5516.81 deny fetch unreachable SHA1, allowtipsha1inwant=false", by dscho 💚 #239 some PRs need effective rebasing between gfs and upstream git., by PhilipOakley 💚 #238 Document that Unspecified options should initialize to -1, by PhilipOakley 💚 #237 CodingGuidelines: recommend to use -1 for unspecified values of command-line options of config settings, by PhilipOakley 💚 #236 Invent a way to retain reflogs for a while after the ref was deleted, by dscho 💚 #235 Fix inconsistent regexp usage, by dscho 💚 #234 Add another set of GIT_{AUTHOR,COMMITTER}_{NAME,EMAIL} with lower priorities, by dscho 💚 #233 Add more config IncludeIf conditions, by dscho 💚 #231 Teach git stash and git commit the -A option, by dscho 💚 #230 Reconcile dir_exists() and is_directory(), by dscho 💚 #229 git-completion: sanitize the command names, by MrMebelMan 💚 #228 sha1-file: split OBJECT_INFO_FOR_PREFETCH, by derrickstolee 💚 #226 bundle verify: improve the user experience when called without a .git/ directory, by dscho
fetch_if_missing
struct repository
branch.<name>.remote/pushRemote
git diff ..
linux-gcc
git stash
git commit
-A
dir_exists()
is_directory()
❤️ #232 Having grep support the -o option like GNU grep et al, by dscho ❤️ #227 Deprecate git rebase -p even more, by dscho
git rebase -p
🔈 #227 Deprecate git rebase -p even more, by dscho It received 12 comments.
Last week, 16 pull requests were created, updated or merged.
Last week, 16 pull requests were updated. 💛 #238 Document that Unspecified options should initialize to -1, by PhilipOakley 💛 #229 git-completion: sanitize the command names, by MrMebelMan 💛 #228 sha1-file: split OBJECT_INFO_FOR_PREFETCH, by derrickstolee 💛 #226 bundle verify: improve the user experience when called without a .git/ directory, by dscho 💛 #223 Fix racy fsmonitor, by dscho 💛 #221 Fix two issues pointed out by Coverity, by dscho 💛 #219 Show an error if too-long paths are seen by git clean -dfx, by dscho 💛 #208 Close commit-graph before calling 'gc', by derrickstolee 💛 #196 status: remove the empty line after hints, by johnlinp 💛 #195 Drop support for git rebase --preserve-merges, by dscho 💛 #194 Clean up after the removal of the scripted rebase, by dscho 💛 #189 trace2: Add variable description to git.txt, by derrickstolee 💛 #184 [RFC] Commit-graph: Write incremental files, by derrickstolee 💛 #183 p4: fix "Not a valid object name HEAD0" when unshelving, by mdymike 💛 #177 documentation: add lab for first contribution, by nasamuffin 💛 #112 Commit-graph write refactor (was: Create commit-graph file format v2), by derrickstolee
git clean -dfx
git rebase --preserve-merges
Last week there were 23 commits. 🛠️ Git 2.22-rc2 Signed-off-by: Junio C Hamano gitster@pobox.com by gitster 🛠️ Merge branch 'js/rebase-config-bitfix' * js/rebase-config-bitfix: rebase: replace incorrect logical negation by correct bitwise one by gitster 🛠️ Merge branch 'es/doc-gitsubmodules-markup' Doc markup fix. * es/doc-gitsubmodules-markup: gitsubmodules: align html and nroff lists by gitster 🛠️ Merge branch 'ja/diff-opt-typofix' Typofix. * ja/diff-opt-typofix: diff: fix mistake in translatable strings by gitster 🛠️ Merge branch 'jt/clone-server-option' A brown-paper-bag bugfix to a change already in 'master'. * jt/clone-server-option: fetch-pack: send server options after command by gitster 🛠️ Merge branch 'sg/progress-off-by-one-fix' A brown-paper-bag bugfix to a change already in 'master'. * sg/progress-off-by-one-fix: progress: avoid empty line when breaking the progress line by gitster 🛠️ Merge branch 'js/rebase-deprecate-preserve-merges' A bit more leftover clean-up to deprepcate "rebase -p". * js/rebase-deprecate-preserve-merges: rebase docs: recommend -r over -p docs: say that --rebase=preserve is deprecated tests: mark a couple more test cases as requiring rebase -p by gitster 🛠️ Merge branch 'sg/trace2-rename' Rename environment variables that are used to control the "trace2" mechanism to a more readable name. * sg/trace2-rename: trace2: document the supported values of GIT_TRACE2* env variables trace2: rename environment variables to GIT_TRACE2* by gitster 🛠️ Merge branch 'jh/trace2' * jh/trace2: trace2: fix tracing when NO_PTHREADS is defined by gitster 🛠️ Merge branch 'nd/diff-parseopt' A brown-paper-bag bugfix to a change already in 'master'. * nd/diff-parseopt: parse-options: check empty value in OPT_INTEGER and OPT_ABBREV diff-parseopt: restore -U (no argument) behavior diff-parseopt: correct variable types that are used by parseopt by gitster 🛠️ parse-options: check empty value in OPT_INTEGER and OPT_ABBREV When parsing the argument for OPT_INTEGER and OPT_ABBREV, we check if we can parse the entire argument to a number with "if (*s)". There is one missing check: if "arg" is empty to begin with, we fail to notice. This could happen with long option by writing like git diff --inter-hunk-context= blah blah Before 16ed6c97cc (diff-parseopt: convert --inter-hunk-context, 2019-03-24), --inter-hunk-context is handled by a custom parser opt_arg() and does detect this correctly. This restores the bahvior for --inter-hunk-context and make sure all other integer options are handled the same (sane) way. For OPT_ABBREV this is new behavior. But it makes it consistent with the rest. PS. OPT_MAGNITUDE has similar code but git_parse_ulong() does detect empty "arg". So it's good to go. Signed-off-by: Nguyễn Thái Ngọc Duy pclouds@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by pclouds 🛠️ diff-parseopt: restore -U (no argument) behavior Before d473e2e0e8 (diff.c: convert -U|--unified, 2019-01-27), -U and --unified are implemented with a custom parser opt_arg() in diff.c. I didn't check this code carefully and not realize that it's the equivalent of PARSE_OPT_NONEG | PARSE_OPT_OPTARG. In other words, if -U is specified without any argument, the option should be accepted, and the default value should be used. Without PARSE_OPT_OPTARG, parse_options() will reject this case and cause a regression. Reported-by: Bryan Turner bturner@atlassian.com Signed-off-by: Nguyễn Thái Ngọc Duy pclouds@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by pclouds 🛠️ diff-parseopt: correct variable types that are used by parseopt Most number-related OPT_ macros store the value in an 'int' variable. Many of the variables in 'struct diff_options' have a different type, but during the conversion to using parse_options() I failed to notice and correct. The problem was reported on s360x which is a big-endian architechture. The variable to store '-w' option in this case is xdl_opts, 'long' type, 8 bytes. But since parse_options() assumes 'int' (4 bytes), it will store bits in the wrong part of xdl_opts. The problem was found on little-endian platforms because parse_options() will accidentally store at the right part of xdl_opts. There aren't much to say about the type change (except that 'int' for xdl_opts should still be big enough, since Windows' long is the same size as 'int' and nobody has complained so far). Some safety checks may be implemented in the future to prevent class of bugs. Reported-by: Todd Zullinger tmz@pobox.com Signed-off-by: Nguyễn Thái Ngọc Duy pclouds@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by pclouds 🛠️ rebase docs: recommend -r over -p The --preserve-merges option is now deprecated in favor of --rebase-merges; Let's stop recommending the former. Signed-off-by: Johannes Schindelin johannes.schindelin@gmx.de Signed-off-by: Junio C Hamano gitster@pobox.com by dscho 🛠️ docs: say that --rebase=preserve is deprecated As of Git v2.22.0, the --preserve-merges backend of git rebase will be officially deprecated in favor of the --rebase-merges backend. Consequently, git pull --rebase=preserve will also be deprected. State this explicitly. Signed-off-by: Johannes Schindelin johannes.schindelin@gmx.de Signed-off-by: Junio C Hamano gitster@pobox.com by dscho 🛠️ tests: mark a couple more test cases as requiring rebase -p The --preserve-merges option has been deprecated, and as a consequence we started to mark test cases that require that option to be supported, in preparation for removing that support eventually. Since we marked those test cases, a couple more crept into the test suite, and with this patch, we mark them, too. Signed-off-by: Johannes Schindelin johannes.schindelin@gmx.de Signed-off-by: Junio C Hamano gitster@pobox.com by dscho 🛠️ fetch-pack: send server options after command Currently, if any server options are specified during a protocol v2 fetch, server options will be sent before "command=fetch". Write server options to the request buffer in send_fetch_request() so that the components of the request are sent in the correct order. The protocol documentation states that the command must come first. The Git server implementation in serve.c (see process_request() in that file) tolerates any order of command and capability, which is perhaps why we haven't noticed this. This was noticed when testing against a JGit server implementation, which follows the documentation in this regard. Signed-off-by: Jonathan Tan jonathantanmy@google.com Acked-by: Jonathan Nieder jrnieder@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by jonathantanmy 🛠️ trace2: fix tracing when NO_PTHREADS is defined Teach trace2 TLS code to not rely on pthread_getspecific() when NO_PTHREADS is defined. Instead, always assume the context data of the main thread. Signed-off-by: Jeff Hostetler jeffhost@microsoft.com Signed-off-by: Junio C Hamano gitster@pobox.com by jeffhostetler 🛠️ rebase: replace incorrect logical negation by correct bitwise one In bff014dac7d9 (builtin rebase: support the verbose and diffstat options, 2018-09-04), we added a line that wanted to remove the REBASE_DIFFSTAT bit from the flags, but it used an incorrect negation. Found by Coverity. Signed-off-by: Johannes Schindelin johannes.schindelin@gmx.de Signed-off-by: Junio C Hamano gitster@pobox.com by dscho 🛠️ progress: avoid empty line when breaking the progress line Since commit 545dc345eb (progress: break too long progress bar lines, 2019-04-12) when splitting a too long progress line, sometimes it looks as if a superfluous empty line were added between the title line and the counters. To make sure that the previously displayed progress line is completely covered up when writing the new, shorter title line, we calculate how many characters need to be overwritten with spaces. Alas, this calculation doesn't account for the newline character at the end of the new title line, and resulted in printing one more space than strictly necessary. This extra space character doesn't matter, if the length of the previous progress line was shorter than the width of the terminal. However, if the previous line matched the terminal width, then this extra space made the new line longer, effectively adding that empty line after the title line. Fix this off-by-one to avoid that spurious empty line. Signed-off-by: SZEDER Gábor szeder.dev@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by szeder 🛠️ trace2: document the supported values of GIT_TRACE2* env variables The descriptions of the GIT_TRACE2* environment variables link to the technical docs for further details on the supported values. However, a link like this only really works if the docs are viewed in a browser and the full documentation is available. OTOH, in 'man git' there are no links to conveniently click on, and distro-shipped git packages tend to include only the man pages, while the technical docs and the docs in html format are in a separate 'git-doc' package. So let's describe the supported values to make the manpage more self-contained, but still keep the references to the technical docs because the details of the SID, and the JSON and perf output formats are definitely beyond the scope of 'man git'. Signed-off-by: SZEDER Gábor szeder.dev@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by szeder 🛠️ trace2: rename environment variables to GIT_TRACE2* For an environment variable that is supposed to be set by users, the GIT_TR2* env vars are just too unclear, inconsistent, and ugly. Most of the established GIT_* environment variables don't use abbreviations, and in case of the few that do (GIT_DIR, GIT_COMMON_DIR, GIT_DIFF_OPTS) it's quite obvious what the abbreviations (DIR and OPTS) stand for. But what does TR stand for? Track, traditional, trailer, transaction, transfer, transformation, transition, translation, transplant, transport, traversal, tree, trigger, truncate, trust, or ...?! The trace2 facility, as the '2' suffix in its name suggests, is supposed to eventually supercede Git's original trace facility. It's reasonable to expect that the corresponding environment variables follow suit, and after the original GIT_TRACE variables they are called GIT_TRACE2; there is no such thing is 'GIT_TR'. All trace2-specific config variables are, very sensibly, in the 'trace2' section, not in 'tr2'. OTOH, we don't gain anything at all by omitting the last three characters of "trace" from the names of these environment variables. So let's rename all GIT_TR2* environment variables to GIT_TRACE2*, before they make their way into a stable release. Signed-off-by: SZEDER Gábor szeder.dev@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by szeder 🛠️ gitsubmodules: align html and nroff lists There appears to be a bug in the toolchain generating manpages from lettered lists. When a list is enumerated with letters, the resulting nroff shows numbers instead. Mostly this is harmless, but in the case of gitsubmodules, the paragraph following the list refers back to each bullet by letter. As a result, reading this documentation via man gitsubmodules is hard to parse - readers must infer that a bug exists and a refers to 1, b refers to 2, and c refers to 3 in the list above. The problem specifically was introduced in ad47194; previously rather than generating numerated lists the bulleted area was entirely monospaced in HTML and shown in plaintext in nroff. The bug seems to exist in docbook-xml - I've reported it on May 1 via the docbook-apps mail list - but for now it may make more sense to just work around the issue. Signed-off-by: Emily Shaffer emilyshaffer@google.com Reviewed-by: Jonathan Nieder jrnieder@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by nasamuffin
-r
-p
--rebase=preserve
rebase -p
--preserve-merges
--rebase-merges
git rebase
git pull --rebase=preserve
verbose
diffstat
REBASE_DIFFSTAT
man gitsubmodules
Last week there were 7 contributors. 👤 gitster 👤 pclouds 👤 dscho 👤 jonathantanmy 👤 jeffhostetler 👤 szeder 👤 nasamuffin
Last week there was 1 stargazer. ⭐ rafasc You are the star! 🌟
Last week there were no releases.
That's all for last week, please 👀 Watch and ⭐ Star the repository gitgitgadget/git to receive next weekly updates. 😃
You can also view all Weekly Digests by clicking here.
Your Weekly Digest bot. 📆
The text was updated successfully, but these errors were encountered:
No branches or pull requests
Here's the Weekly Digest for gitgitgadget/git:
ISSUES
Last week 26 issues were created.
Of these, 2 issues have been closed and 24 issues are still open.
OPEN ISSUES
💚 #251 Turn the
fetch_if_missing
global into a field ofstruct repository
, by dscho💚 #250 Implement command-line options to change
branch.<name>.remote/pushRemote
configs, by Denton-L💚 #249 Make
git diff ..
less confusing for newbies, by Denton-L💚 #248 Don't run Cocci on compat/ files that are pulled externally, by Denton-L
💚 #247 format.outputDirectory should be based on the top of the repository, by Denton-L
💚 #246 Make Git subcommand documentation more consistent, by Denton-L
💚 #245 Investigate -Wformat-signedness, by Denton-L
💚 #244 Fix formatting of config values in documentation, by Denton-L
💚 #243 Document --stdin (and other options in setup_revisions), by Denton-L
💚 #242 Split the
linux-gcc
in our CI builds into two separate jobs, by dscho💚 #241 Fix flaky "t0021.15 required process filter should filter data", by dscho
💚 #240 Fix flaky "t5516.81 deny fetch unreachable SHA1, allowtipsha1inwant=false", by dscho
💚 #239 some PRs need effective rebasing between gfs and upstream git., by PhilipOakley
💚 #238 Document that Unspecified options should initialize to -1, by PhilipOakley
💚 #237 CodingGuidelines: recommend to use -1 for unspecified values of command-line options of config settings, by PhilipOakley
💚 #236 Invent a way to retain reflogs for a while after the ref was deleted, by dscho
💚 #235 Fix inconsistent regexp usage, by dscho
💚 #234 Add another set of GIT_{AUTHOR,COMMITTER}_{NAME,EMAIL} with lower priorities, by dscho
💚 #233 Add more config IncludeIf conditions, by dscho
💚 #231 Teach
git stash
andgit commit
the-A
option, by dscho💚 #230 Reconcile
dir_exists()
andis_directory()
, by dscho💚 #229 git-completion: sanitize the command names, by MrMebelMan
💚 #228 sha1-file: split OBJECT_INFO_FOR_PREFETCH, by derrickstolee
💚 #226 bundle verify: improve the user experience when called without a .git/ directory, by dscho
CLOSED ISSUES
❤️ #232 Having grep support the -o option like GNU grep et al, by dscho
❤️ #227 Deprecate
git rebase -p
even more, by dschoNOISY ISSUE
🔈 #227 Deprecate
git rebase -p
even more, by dschoIt received 12 comments.
PULL REQUESTS
Last week, 16 pull requests were created, updated or merged.
UPDATED PULL REQUEST
Last week, 16 pull requests were updated.
💛 #238 Document that Unspecified options should initialize to -1, by PhilipOakley
💛 #229 git-completion: sanitize the command names, by MrMebelMan
💛 #228 sha1-file: split OBJECT_INFO_FOR_PREFETCH, by derrickstolee
💛 #226 bundle verify: improve the user experience when called without a .git/ directory, by dscho
💛 #223 Fix racy fsmonitor, by dscho
💛 #221 Fix two issues pointed out by Coverity, by dscho
💛 #219 Show an error if too-long paths are seen by
git clean -dfx
, by dscho💛 #208 Close commit-graph before calling 'gc', by derrickstolee
💛 #196 status: remove the empty line after hints, by johnlinp
💛 #195 Drop support for
git rebase --preserve-merges
, by dscho💛 #194 Clean up after the removal of the scripted rebase, by dscho
💛 #189 trace2: Add variable description to git.txt, by derrickstolee
💛 #184 [RFC] Commit-graph: Write incremental files, by derrickstolee
💛 #183 p4: fix "Not a valid object name HEAD0" when unshelving, by mdymike
💛 #177 documentation: add lab for first contribution, by nasamuffin
💛 #112 Commit-graph write refactor (was: Create commit-graph file format v2), by derrickstolee
COMMITS
Last week there were 23 commits.
🛠️ Git 2.22-rc2 Signed-off-by: Junio C Hamano gitster@pobox.com by gitster
🛠️ Merge branch 'js/rebase-config-bitfix' * js/rebase-config-bitfix: rebase: replace incorrect logical negation by correct bitwise one by gitster
🛠️ Merge branch 'es/doc-gitsubmodules-markup' Doc markup fix. * es/doc-gitsubmodules-markup: gitsubmodules: align html and nroff lists by gitster
🛠️ Merge branch 'ja/diff-opt-typofix' Typofix. * ja/diff-opt-typofix: diff: fix mistake in translatable strings by gitster
🛠️ Merge branch 'jt/clone-server-option' A brown-paper-bag bugfix to a change already in 'master'. * jt/clone-server-option: fetch-pack: send server options after command by gitster
🛠️ Merge branch 'sg/progress-off-by-one-fix' A brown-paper-bag bugfix to a change already in 'master'. * sg/progress-off-by-one-fix: progress: avoid empty line when breaking the progress line by gitster
🛠️ Merge branch 'js/rebase-deprecate-preserve-merges' A bit more leftover clean-up to deprepcate "rebase -p". * js/rebase-deprecate-preserve-merges: rebase docs: recommend
-r
over-p
docs: say that--rebase=preserve
is deprecated tests: mark a couple more test cases as requiringrebase -p
by gitster🛠️ Merge branch 'sg/trace2-rename' Rename environment variables that are used to control the "trace2" mechanism to a more readable name. * sg/trace2-rename: trace2: document the supported values of GIT_TRACE2* env variables trace2: rename environment variables to GIT_TRACE2* by gitster
🛠️ Merge branch 'jh/trace2' * jh/trace2: trace2: fix tracing when NO_PTHREADS is defined by gitster
🛠️ Merge branch 'nd/diff-parseopt' A brown-paper-bag bugfix to a change already in 'master'. * nd/diff-parseopt: parse-options: check empty value in OPT_INTEGER and OPT_ABBREV diff-parseopt: restore -U (no argument) behavior diff-parseopt: correct variable types that are used by parseopt by gitster
🛠️ parse-options: check empty value in OPT_INTEGER and OPT_ABBREV When parsing the argument for OPT_INTEGER and OPT_ABBREV, we check if we can parse the entire argument to a number with "if (*s)". There is one missing check: if "arg" is empty to begin with, we fail to notice. This could happen with long option by writing like git diff --inter-hunk-context= blah blah Before 16ed6c97cc (diff-parseopt: convert --inter-hunk-context, 2019-03-24), --inter-hunk-context is handled by a custom parser opt_arg() and does detect this correctly. This restores the bahvior for --inter-hunk-context and make sure all other integer options are handled the same (sane) way. For OPT_ABBREV this is new behavior. But it makes it consistent with the rest. PS. OPT_MAGNITUDE has similar code but git_parse_ulong() does detect empty "arg". So it's good to go. Signed-off-by: Nguyễn Thái Ngọc Duy pclouds@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by pclouds
🛠️ diff-parseopt: restore -U (no argument) behavior Before d473e2e0e8 (diff.c: convert -U|--unified, 2019-01-27), -U and --unified are implemented with a custom parser opt_arg() in diff.c. I didn't check this code carefully and not realize that it's the equivalent of PARSE_OPT_NONEG | PARSE_OPT_OPTARG. In other words, if -U is specified without any argument, the option should be accepted, and the default value should be used. Without PARSE_OPT_OPTARG, parse_options() will reject this case and cause a regression. Reported-by: Bryan Turner bturner@atlassian.com Signed-off-by: Nguyễn Thái Ngọc Duy pclouds@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by pclouds
🛠️ diff-parseopt: correct variable types that are used by parseopt Most number-related OPT_ macros store the value in an 'int' variable. Many of the variables in 'struct diff_options' have a different type, but during the conversion to using parse_options() I failed to notice and correct. The problem was reported on s360x which is a big-endian architechture. The variable to store '-w' option in this case is xdl_opts, 'long' type, 8 bytes. But since parse_options() assumes 'int' (4 bytes), it will store bits in the wrong part of xdl_opts. The problem was found on little-endian platforms because parse_options() will accidentally store at the right part of xdl_opts. There aren't much to say about the type change (except that 'int' for xdl_opts should still be big enough, since Windows' long is the same size as 'int' and nobody has complained so far). Some safety checks may be implemented in the future to prevent class of bugs. Reported-by: Todd Zullinger tmz@pobox.com Signed-off-by: Nguyễn Thái Ngọc Duy pclouds@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by pclouds
🛠️ rebase docs: recommend
-r
over-p
The--preserve-merges
option is now deprecated in favor of--rebase-merges
; Let's stop recommending the former. Signed-off-by: Johannes Schindelin johannes.schindelin@gmx.de Signed-off-by: Junio C Hamano gitster@pobox.com by dscho🛠️ docs: say that
--rebase=preserve
is deprecated As of Git v2.22.0, the--preserve-merges
backend ofgit rebase
will be officially deprecated in favor of the--rebase-merges
backend. Consequently,git pull --rebase=preserve
will also be deprected. State this explicitly. Signed-off-by: Johannes Schindelin johannes.schindelin@gmx.de Signed-off-by: Junio C Hamano gitster@pobox.com by dscho🛠️ tests: mark a couple more test cases as requiring
rebase -p
The--preserve-merges
option has been deprecated, and as a consequence we started to mark test cases that require that option to be supported, in preparation for removing that support eventually. Since we marked those test cases, a couple more crept into the test suite, and with this patch, we mark them, too. Signed-off-by: Johannes Schindelin johannes.schindelin@gmx.de Signed-off-by: Junio C Hamano gitster@pobox.com by dscho🛠️ fetch-pack: send server options after command Currently, if any server options are specified during a protocol v2 fetch, server options will be sent before "command=fetch". Write server options to the request buffer in send_fetch_request() so that the components of the request are sent in the correct order. The protocol documentation states that the command must come first. The Git server implementation in serve.c (see process_request() in that file) tolerates any order of command and capability, which is perhaps why we haven't noticed this. This was noticed when testing against a JGit server implementation, which follows the documentation in this regard. Signed-off-by: Jonathan Tan jonathantanmy@google.com Acked-by: Jonathan Nieder jrnieder@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by jonathantanmy
🛠️ trace2: fix tracing when NO_PTHREADS is defined Teach trace2 TLS code to not rely on pthread_getspecific() when NO_PTHREADS is defined. Instead, always assume the context data of the main thread. Signed-off-by: Jeff Hostetler jeffhost@microsoft.com Signed-off-by: Junio C Hamano gitster@pobox.com by jeffhostetler
🛠️ rebase: replace incorrect logical negation by correct bitwise one In bff014dac7d9 (builtin rebase: support the
verbose
anddiffstat
options, 2018-09-04), we added a line that wanted to remove theREBASE_DIFFSTAT
bit from the flags, but it used an incorrect negation. Found by Coverity. Signed-off-by: Johannes Schindelin johannes.schindelin@gmx.de Signed-off-by: Junio C Hamano gitster@pobox.com by dscho🛠️ progress: avoid empty line when breaking the progress line Since commit 545dc345eb (progress: break too long progress bar lines, 2019-04-12) when splitting a too long progress line, sometimes it looks as if a superfluous empty line were added between the title line and the counters. To make sure that the previously displayed progress line is completely covered up when writing the new, shorter title line, we calculate how many characters need to be overwritten with spaces. Alas, this calculation doesn't account for the newline character at the end of the new title line, and resulted in printing one more space than strictly necessary. This extra space character doesn't matter, if the length of the previous progress line was shorter than the width of the terminal. However, if the previous line matched the terminal width, then this extra space made the new line longer, effectively adding that empty line after the title line. Fix this off-by-one to avoid that spurious empty line. Signed-off-by: SZEDER Gábor szeder.dev@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by szeder
🛠️ trace2: document the supported values of GIT_TRACE2* env variables The descriptions of the GIT_TRACE2* environment variables link to the technical docs for further details on the supported values. However, a link like this only really works if the docs are viewed in a browser and the full documentation is available. OTOH, in 'man git' there are no links to conveniently click on, and distro-shipped git packages tend to include only the man pages, while the technical docs and the docs in html format are in a separate 'git-doc' package. So let's describe the supported values to make the manpage more self-contained, but still keep the references to the technical docs because the details of the SID, and the JSON and perf output formats are definitely beyond the scope of 'man git'. Signed-off-by: SZEDER Gábor szeder.dev@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by szeder
🛠️ trace2: rename environment variables to GIT_TRACE2* For an environment variable that is supposed to be set by users, the GIT_TR2* env vars are just too unclear, inconsistent, and ugly. Most of the established GIT_* environment variables don't use abbreviations, and in case of the few that do (GIT_DIR, GIT_COMMON_DIR, GIT_DIFF_OPTS) it's quite obvious what the abbreviations (DIR and OPTS) stand for. But what does TR stand for? Track, traditional, trailer, transaction, transfer, transformation, transition, translation, transplant, transport, traversal, tree, trigger, truncate, trust, or ...?! The trace2 facility, as the '2' suffix in its name suggests, is supposed to eventually supercede Git's original trace facility. It's reasonable to expect that the corresponding environment variables follow suit, and after the original GIT_TRACE variables they are called GIT_TRACE2; there is no such thing is 'GIT_TR'. All trace2-specific config variables are, very sensibly, in the 'trace2' section, not in 'tr2'. OTOH, we don't gain anything at all by omitting the last three characters of "trace" from the names of these environment variables. So let's rename all GIT_TR2* environment variables to GIT_TRACE2*, before they make their way into a stable release. Signed-off-by: SZEDER Gábor szeder.dev@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by szeder
🛠️ gitsubmodules: align html and nroff lists There appears to be a bug in the toolchain generating manpages from lettered lists. When a list is enumerated with letters, the resulting nroff shows numbers instead. Mostly this is harmless, but in the case of gitsubmodules, the paragraph following the list refers back to each bullet by letter. As a result, reading this documentation via
man gitsubmodules
is hard to parse - readers must infer that a bug exists and a refers to 1, b refers to 2, and c refers to 3 in the list above. The problem specifically was introduced in ad47194; previously rather than generating numerated lists the bulleted area was entirely monospaced in HTML and shown in plaintext in nroff. The bug seems to exist in docbook-xml - I've reported it on May 1 via the docbook-apps mail list - but for now it may make more sense to just work around the issue. Signed-off-by: Emily Shaffer emilyshaffer@google.com Reviewed-by: Jonathan Nieder jrnieder@gmail.com Signed-off-by: Junio C Hamano gitster@pobox.com by nasamuffinCONTRIBUTORS
Last week there were 7 contributors.
👤 gitster
👤 pclouds
👤 dscho
👤 jonathantanmy
👤 jeffhostetler
👤 szeder
👤 nasamuffin
STARGAZERS
Last week there was 1 stargazer.
⭐ rafasc
You are the star! 🌟
RELEASES
Last week there were no releases.
That's all for last week, please 👀 Watch and ⭐ Star the repository gitgitgadget/git to receive next weekly updates. 😃
You can also view all Weekly Digests by clicking here.
The text was updated successfully, but these errors were encountered: