Skip to content

Commit 70ac334

Browse files
committed
Merge branch 'master' into fscanf-64bit-constants
2 parents 4b096a0 + 9e6ddd0 commit 70ac334

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+506
-367
lines changed

.mailmap

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ Alex Riesen <[email protected]> <[email protected]>
1313
1414
1515
Alexander Gavrilov <[email protected]>
16+
Alexander Kuleshov <[email protected]>
1617
1718
1819

Documentation/Makefile

Lines changed: 42 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -265,9 +265,9 @@ docdep_prereqs = \
265265
cmd-list.made $(cmds_txt)
266266

267267
doc.dep : $(docdep_prereqs) $(wildcard *.txt) build-docdep.perl
268-
$(QUIET_GEN)$(RM) $@+ $@ && \
269-
$(PERL_PATH) ./build-docdep.perl >$@+ $(QUIET_STDERR) && \
270-
mv $@+ $@
268+
$(QUIET_GEN)$(RM) $@.new $@ && \
269+
$(PERL_PATH) ./build-docdep.perl >$@.new $(QUIET_STDERR) && \
270+
mv $@.new $@
271271

272272
-include doc.dep
273273

@@ -303,23 +303,23 @@ mergetools-list.made: ../git-mergetool--lib.sh $(wildcard ../mergetools/*)
303303
date >$@
304304

305305
clean:
306-
$(RM) *.xml *.xml+ *.html *.html+ *.1 *.5 *.7
307-
$(RM) *.texi *.texi+ *.texi++ git.info gitman.info
306+
$(RM) *.xml *.xml.new *.html *.html.new *.1 *.5 *.7
307+
$(RM) *.texi *.texi.new *.texi.new.new git.info gitman.info
308308
$(RM) *.pdf
309309
$(RM) howto-index.txt howto/*.html doc.dep
310310
$(RM) technical/*.html technical/api-index.txt
311311
$(RM) $(cmds_txt) $(mergetools_txt) *.made
312312
$(RM) manpage-base-url.xsl
313313

314314
$(MAN_HTML): %.html : %.txt asciidoc.conf
315-
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
316-
$(TXT_TO_HTML) -d manpage -o $@+ $< && \
317-
mv $@+ $@
315+
$(QUIET_ASCIIDOC)$(RM) $@.new $@ && \
316+
$(TXT_TO_HTML) -d manpage -o $@.new $< && \
317+
mv $@.new $@
318318

319319
$(OBSOLETE_HTML): %.html : %.txto asciidoc.conf
320-
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
321-
$(TXT_TO_HTML) -o $@+ $< && \
322-
mv $@+ $@
320+
$(QUIET_ASCIIDOC)$(RM) $@.new $@ && \
321+
$(TXT_TO_HTML) -o $@.new $< && \
322+
mv $@.new $@
323323

324324
manpage-base-url.xsl: manpage-base-url.xsl.in
325325
sed "s|@@MAN_BASE_URL@@|$(MAN_BASE_URL)|" $< > $@
@@ -329,14 +329,14 @@ manpage-base-url.xsl: manpage-base-url.xsl.in
329329
$(XMLTO) -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $<
330330

331331
%.xml : %.txt asciidoc.conf
332-
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
333-
$(TXT_TO_XML) -d manpage -o $@+ $< && \
334-
mv $@+ $@
332+
$(QUIET_ASCIIDOC)$(RM) $@.new $@ && \
333+
$(TXT_TO_XML) -d manpage -o $@.new $< && \
334+
mv $@.new $@
335335

336336
user-manual.xml: user-manual.txt user-manual.conf
337-
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
338-
$(TXT_TO_XML) -d article -o $@+ $< && \
339-
mv $@+ $@
337+
$(QUIET_ASCIIDOC)$(RM) $@.new $@ && \
338+
$(TXT_TO_XML) -d article -o $@.new $< && \
339+
mv $@.new $@
340340

341341
technical/api-index.txt: technical/api-index-skel.txt \
342342
technical/api-index.sh $(patsubst %,%.txt,$(API_DOCS))
@@ -350,45 +350,45 @@ XSLT = docbook.xsl
350350
XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
351351

352352
user-manual.html: user-manual.xml $(XSLT)
353-
$(QUIET_XSLTPROC)$(RM) $@+ $@ && \
354-
xsltproc $(XSLTOPTS) -o $@+ $(XSLT) $< && \
355-
mv $@+ $@
353+
$(QUIET_XSLTPROC)$(RM) $@.new $@ && \
354+
xsltproc $(XSLTOPTS) -o $@.new $(XSLT) $< && \
355+
mv $@.new $@
356356

357357
git.info: user-manual.texi
358358
$(QUIET_MAKEINFO)$(MAKEINFO) --no-split -o $@ user-manual.texi
359359

360360
user-manual.texi: user-manual.xml
361-
$(QUIET_DB2TEXI)$(RM) $@+ $@ && \
362-
$(DOCBOOK2X_TEXI) user-manual.xml --encoding=UTF-8 --to-stdout >$@++ && \
363-
$(PERL_PATH) fix-texi.perl <$@++ >$@+ && \
364-
rm $@++ && \
365-
mv $@+ $@
361+
$(QUIET_DB2TEXI)$(RM) $@.new $@ && \
362+
$(DOCBOOK2X_TEXI) user-manual.xml --encoding=UTF-8 --to-stdout >$@.new.new && \
363+
$(PERL_PATH) fix-texi.perl <$@.new.new >$@.new && \
364+
rm $@.new.new && \
365+
mv $@.new $@
366366

367367
user-manual.pdf: user-manual.xml
368-
$(QUIET_DBLATEX)$(RM) $@+ $@ && \
369-
$(DBLATEX) -o $@+ -p $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.xsl -s $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.sty $< && \
370-
mv $@+ $@
368+
$(QUIET_DBLATEX)$(RM) $@.new $@ && \
369+
$(DBLATEX) -o $@.new -p $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.xsl -s $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.sty $< && \
370+
mv $@.new $@
371371

372372
gitman.texi: $(MAN_XML) cat-texi.perl
373-
$(QUIET_DB2TEXI)$(RM) $@+ $@ && \
373+
$(QUIET_DB2TEXI)$(RM) $@.new $@ && \
374374
($(foreach xml,$(MAN_XML),$(DOCBOOK2X_TEXI) --encoding=UTF-8 \
375-
--to-stdout $(xml) &&) true) > $@++ && \
376-
$(PERL_PATH) cat-texi.perl $@ <$@++ >$@+ && \
377-
rm $@++ && \
378-
mv $@+ $@
375+
--to-stdout $(xml) &&) true) > $@.new.new && \
376+
$(PERL_PATH) cat-texi.perl $@ <$@.new.new >$@.new && \
377+
rm $@.new.new && \
378+
mv $@.new $@
379379

380380
gitman.info: gitman.texi
381381
$(QUIET_MAKEINFO)$(MAKEINFO) --no-split --no-validate $*.texi
382382

383383
$(patsubst %.txt,%.texi,$(MAN_TXT)): %.texi : %.xml
384-
$(QUIET_DB2TEXI)$(RM) $@+ $@ && \
385-
$(DOCBOOK2X_TEXI) --to-stdout $*.xml >$@+ && \
386-
mv $@+ $@
384+
$(QUIET_DB2TEXI)$(RM) $@.new $@ && \
385+
$(DOCBOOK2X_TEXI) --to-stdout $*.xml >$@.new && \
386+
mv $@.new $@
387387

388388
howto-index.txt: howto-index.sh $(wildcard howto/*.txt)
389-
$(QUIET_GEN)$(RM) $@+ $@ && \
390-
'$(SHELL_PATH_SQ)' ./howto-index.sh $(sort $(wildcard howto/*.txt)) >$@+ && \
391-
mv $@+ $@
389+
$(QUIET_GEN)$(RM) $@.new $@ && \
390+
'$(SHELL_PATH_SQ)' ./howto-index.sh $(sort $(wildcard howto/*.txt)) >$@.new && \
391+
mv $@.new $@
392392

393393
$(patsubst %,%.html,$(ARTICLES)) : %.html : %.txt
394394
$(QUIET_ASCIIDOC)$(TXT_TO_HTML) $*.txt
@@ -397,10 +397,10 @@ WEBDOC_DEST = /pub/software/scm/git/docs
397397

398398
howto/%.html: ASCIIDOC_EXTRA += -a git-relative-html-prefix=../
399399
$(patsubst %.txt,%.html,$(wildcard howto/*.txt)): %.html : %.txt
400-
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
400+
$(QUIET_ASCIIDOC)$(RM) $@.new $@ && \
401401
sed -e '1,/^$$/d' $< | \
402-
$(TXT_TO_HTML) - >$@+ && \
403-
mv $@+ $@
402+
$(TXT_TO_HTML) - >$@.new && \
403+
mv $@.new $@
404404

405405
install-webdoc : html
406406
'$(SHELL_PATH_SQ)' ./install-webdoc.sh $(WEBDOC_DEST)

Documentation/RelNotes/2.3.2.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Fixes since v2.3.1
2424
"curl-config --vernum", which confused our build system.
2525

2626
* An earlier workaround to squelch unhelpful deprecation warnings
27-
from the complier on Mac OSX unnecessarily set minimum required
27+
from the compiler on Mac OSX unnecessarily set minimum required
2828
version of the OS, which the user might want to raise (or lower)
2929
for other reasons.
3030

Documentation/RelNotes/2.3.5.txt

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
Git v2.3.5 Release Notes
2+
========================
3+
4+
Fixes since v2.3.4
5+
------------------
6+
7+
* The prompt script (in contrib/) did not show the untracked sign
8+
when working in a subdirectory without any untracked files.
9+
10+
* Even though "git grep --quiet" is run merely to ask for the exit
11+
status, we spawned the pager regardless. Stop doing that.
12+
13+
* Recommend format-patch and send-email for those who want to submit
14+
patches to this project.
15+
16+
* An failure early in the "git clone" that started creating the
17+
working tree and repository could have resulted in some directories
18+
and files left without getting cleaned up.
19+
20+
* "git fetch" that fetches a commit using the allow-tip-sha1-in-want
21+
extension could have failed to fetch all the requested refs.
22+
23+
* The split-index mode introduced at v2.3.0-rc0~41 was broken in the
24+
codepath to protect us against a broken reimplementation of Git
25+
that writes an invalid index with duplicated index entries, etc.
26+
27+
* "git prune" used to largely ignore broken refs when deciding which
28+
objects are still being used, which could spread an existing small
29+
damage and make it a larger one.
30+
31+
* "git tag -h" used to show the "--column" and "--sort" options
32+
that are about listing in a wrong section.
33+
34+
* The transfer.hiderefs support did not quite work for smart-http
35+
transport.
36+
37+
* The code that reads from the ctags file in the completion script
38+
(in contrib/) did not spell ${param/pattern/string} substitution
39+
correctly, which happened to work with bash but not with zsh.
40+
41+
* The explanation on "rebase --preserve-merges", "pull --rebase=preserve",
42+
and "push --force-with-lease" in the documentation was unclear.
43+
44+
Also contains typofixes, documentation updates and trivial code clean-ups.

Documentation/SubmittingPatches

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,11 @@ that is fine, but please mark it as such.
136136

137137
(4) Sending your patches.
138138

139+
Learn to use format-patch and send-email if possible. These commands
140+
are optimized for the workflow of sending patches, avoiding many ways
141+
your existing e-mail client that is optimized for "multipart/*" mime
142+
type e-mails to corrupt and render your patches unusable.
143+
139144
People on the Git mailing list need to be able to read and
140145
comment on the changes you are submitting. It is important for
141146
a developer to be able to "quote" your changes, using standard

Documentation/config.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,7 @@ See linkgit:git-update-index[1].
270270
+
271271
The default is true (when core.filemode is not specified in the config file).
272272

273-
core.hideDotFiles::
273+
core.hidedotfiles::
274274
(Windows-only) If true (which is the default), mark newly-created
275275
directories and files whose name starts with a dot as hidden.
276276
If 'dotGitOnly', only the .git/ directory is hidden, but no other

Documentation/git-pull.txt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -111,9 +111,8 @@ include::merge-options.txt[]
111111
was rebased since last fetched, the rebase uses that information
112112
to avoid rebasing non-local changes.
113113
+
114-
When preserve, also rebase the current branch on top of the upstream
115-
branch, but pass `--preserve-merges` along to `git rebase` so that
116-
locally created merge commits will not be flattened.
114+
When set to preserve, rebase with the `--preserve-merges` option passed
115+
to `git rebase` so that locally created merge commits will not be flattened.
117116
+
118117
When false, merge the current branch into the upstream branch.
119118
+

Documentation/git-push.txt

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -149,9 +149,8 @@ already exists on the remote side.
149149
Usually, "git push" refuses to update a remote ref that is
150150
not an ancestor of the local ref used to overwrite it.
151151
+
152-
This option bypasses the check, but instead requires that the
153-
current value of the ref to be the expected value. "git push"
154-
fails otherwise.
152+
This option overrides this restriction if the current value of the
153+
remote ref is the expected value. "git push" fails otherwise.
155154
+
156155
Imagine that you have to rebase what you have already published.
157156
You will have to bypass the "must fast-forward" rule in order to
@@ -163,15 +162,14 @@ commit, and blindly pushing with `--force` will lose her work.
163162
This option allows you to say that you expect the history you are
164163
updating is what you rebased and want to replace. If the remote ref
165164
still points at the commit you specified, you can be sure that no
166-
other people did anything to the ref (it is like taking a "lease" on
167-
the ref without explicitly locking it, and you update the ref while
168-
making sure that your earlier "lease" is still valid).
165+
other people did anything to the ref. It is like taking a "lease" on
166+
the ref without explicitly locking it, and the remote ref is updated
167+
only if the "lease" is still valid.
169168
+
170169
`--force-with-lease` alone, without specifying the details, will protect
171170
all remote refs that are going to be updated by requiring their
172171
current value to be the same as the remote-tracking branch we have
173-
for them, unless specified with a `--force-with-lease=<refname>:<expect>`
174-
option that explicitly states what the expected value is.
172+
for them.
175173
+
176174
`--force-with-lease=<refname>`, without specifying the expected value, will
177175
protect the named ref (alone), if it is going to be updated, by

Documentation/git-rebase.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -362,7 +362,9 @@ default is `--no-fork-point`, otherwise the default is `--fork-point`.
362362

363363
-p::
364364
--preserve-merges::
365-
Instead of ignoring merges, try to recreate them.
365+
Recreate merge commits instead of flattening the history by replaying
366+
commits a merge commit introduces. Merge conflict resolutions or manual
367+
amendments to merge commits are not preserved.
366368
+
367369
This uses the `--interactive` machinery internally, but combining it
368370
with the `--interactive` option explicitly is generally not a good

Documentation/git.txt

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,10 @@ unreleased) version of Git, that is available from the 'master'
4343
branch of the `git.git` repository.
4444
Documentation for older releases are available here:
4545

46-
* link:v2.3.4/git.html[documentation for release 2.3.4]
46+
* link:v2.3.5/git.html[documentation for release 2.3.5]
4747

4848
* release notes for
49+
link:RelNotes/2.3.5.txt[2.3.5],
4950
link:RelNotes/2.3.4.txt[2.3.4],
5051
link:RelNotes/2.3.3.txt[2.3.3],
5152
link:RelNotes/2.3.2.txt[2.3.2],
@@ -769,7 +770,8 @@ Git so take care if using Cogito etc.
769770
'GIT_INDEX_VERSION'::
770771
This environment variable allows the specification of an index
771772
version for new repositories. It won't affect existing index
772-
files. By default index file version [23] is used.
773+
files. By default index file version 2 or 3 is used. See
774+
linkgit:git-update-index[1] for more information.
773775

774776
'GIT_OBJECT_DIRECTORY'::
775777
If the object storage directory is specified via this
@@ -1027,6 +1029,17 @@ GIT_ICASE_PATHSPECS::
10271029
variable when it is invoked as the top level command by the
10281030
end user, to be recorded in the body of the reflog.
10291031

1032+
`GIT_REF_PARANOIA`::
1033+
If set to `1`, include broken or badly named refs when iterating
1034+
over lists of refs. In a normal, non-corrupted repository, this
1035+
does nothing. However, enabling it may help git to detect and
1036+
abort some operations in the presence of broken refs. Git sets
1037+
this variable automatically when performing destructive
1038+
operations like linkgit:git-prune[1]. You should not need to set
1039+
it yourself unless you want to be paranoid about making sure
1040+
an operation has touched every ref (e.g., because you are
1041+
cloning a repository to make a backup).
1042+
10301043

10311044
Discussion[[Discussion]]
10321045
------------------------

GIT-VERSION-GEN

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/sh
22

33
GVF=GIT-VERSION-FILE
4-
DEF_VER=v2.3.4
4+
DEF_VER=v2.3.5
55

66
LF='
77
'

RelNotes

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
Documentation/RelNotes/2.3.4.txt
1+
Documentation/RelNotes/2.3.5.txt

builtin/clone.c

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -842,20 +842,21 @@ int cmd_clone(int argc, const char **argv, const char *prefix)
842842
git_dir = mkpathdup("%s/.git", dir);
843843
}
844844

845+
atexit(remove_junk);
846+
sigchain_push_common(remove_junk_on_signal);
847+
845848
if (!option_bare) {
846-
junk_work_tree = work_tree;
847849
if (safe_create_leading_directories_const(work_tree) < 0)
848850
die_errno(_("could not create leading directories of '%s'"),
849851
work_tree);
850852
if (!dest_exists && mkdir(work_tree, 0777))
851-
die_errno(_("could not create work tree dir '%s'."),
853+
die_errno(_("could not create work tree dir '%s'"),
852854
work_tree);
855+
junk_work_tree = work_tree;
853856
set_git_work_tree(work_tree);
854857
}
855-
junk_git_dir = git_dir;
856-
atexit(remove_junk);
857-
sigchain_push_common(remove_junk_on_signal);
858858

859+
junk_git_dir = git_dir;
859860
if (safe_create_leading_directories_const(git_dir) < 0)
860861
die(_("could not create leading directories of '%s'"), git_dir);
861862

builtin/grep.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -885,7 +885,7 @@ int cmd_grep(int argc, const char **argv, const char *prefix)
885885
}
886886
}
887887

888-
if (!show_in_pager)
888+
if (!show_in_pager && !opt.status_only)
889889
setup_pager();
890890

891891
if (!use_index && (untracked || cached))

0 commit comments

Comments
 (0)