Skip to content

Commit 4df8320

Browse files
committed
Merge 'msys2' into HEAD
Signed-off-by: Johannes Schindelin <[email protected]>
2 parents 2a8e28b + 4af7a30 commit 4df8320

31 files changed

+1349
-177
lines changed

Documentation/Makefile

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

269269
doc.dep : $(docdep_prereqs) $(wildcard *.txt) build-docdep.perl
270-
$(QUIET_GEN)$(RM) $@+ $@ && \
271-
$(PERL_PATH) ./build-docdep.perl >$@+ $(QUIET_STDERR) && \
272-
mv $@+ $@
270+
$(QUIET_GEN)$(RM) $@.new $@ && \
271+
$(PERL_PATH) ./build-docdep.perl >$@.new $(QUIET_STDERR) && \
272+
mv $@.new $@
273273

274274
-include doc.dep
275275

@@ -305,23 +305,23 @@ mergetools-list.made: ../git-mergetool--lib.sh $(wildcard ../mergetools/*)
305305
date >$@
306306

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

316316
$(MAN_HTML): %.html : %.txt asciidoc.conf
317-
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
318-
$(TXT_TO_HTML) -d manpage -o $@+ $< && \
319-
mv $@+ $@
317+
$(QUIET_ASCIIDOC)$(RM) $@.new $@ && \
318+
$(TXT_TO_HTML) -d manpage -o $@.new $< && \
319+
mv $@.new $@
320320

321321
$(OBSOLETE_HTML): %.html : %.txto asciidoc.conf
322-
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
323-
$(TXT_TO_HTML) -o $@+ $< && \
324-
mv $@+ $@
322+
$(QUIET_ASCIIDOC)$(RM) $@.new $@ && \
323+
$(TXT_TO_HTML) -o $@.new $< && \
324+
mv $@.new $@
325325

326326
manpage-base-url.xsl: manpage-base-url.xsl.in
327327
sed "s|@@MAN_BASE_URL@@|$(MAN_BASE_URL)|" $< > $@
@@ -331,14 +331,14 @@ manpage-base-url.xsl: manpage-base-url.xsl.in
331331
$(XMLTO) -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $<
332332

333333
%.xml : %.txt asciidoc.conf
334-
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
335-
$(TXT_TO_XML) -d manpage -o $@+ $< && \
336-
mv $@+ $@
334+
$(QUIET_ASCIIDOC)$(RM) $@.new $@ && \
335+
$(TXT_TO_XML) -d manpage -o $@.new $< && \
336+
mv $@.new $@
337337

338338
user-manual.xml: user-manual.txt user-manual.conf
339-
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
340-
$(TXT_TO_XML) -d article -o $@+ $< && \
341-
mv $@+ $@
339+
$(QUIET_ASCIIDOC)$(RM) $@.new $@ && \
340+
$(TXT_TO_XML) -d book -o $@.new $< && \
341+
mv $@.new $@
342342

343343
technical/api-index.txt: technical/api-index-skel.txt \
344344
technical/api-index.sh $(patsubst %,%.txt,$(API_DOCS))
@@ -352,45 +352,45 @@ XSLT = docbook.xsl
352352
XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
353353

354354
user-manual.html: user-manual.xml $(XSLT)
355-
$(QUIET_XSLTPROC)$(RM) $@+ $@ && \
356-
xsltproc $(XSLTOPTS) -o $@+ $(XSLT) $< && \
357-
mv $@+ $@
355+
$(QUIET_XSLTPROC)$(RM) $@.new $@ && \
356+
xsltproc $(XSLTOPTS) -o $@.new $(XSLT) $< && \
357+
mv $@.new $@
358358

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

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

369369
user-manual.pdf: user-manual.xml
370-
$(QUIET_DBLATEX)$(RM) $@+ $@ && \
371-
$(DBLATEX) -o $@+ -p $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.xsl -s $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.sty $< && \
372-
mv $@+ $@
370+
$(QUIET_DBLATEX)$(RM) $@.new $@ && \
371+
$(DBLATEX) -o $@.new -p $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.xsl -s $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.sty $< && \
372+
mv $@.new $@
373373

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

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

385385
$(patsubst %.txt,%.texi,$(MAN_TXT)): %.texi : %.xml
386-
$(QUIET_DB2TEXI)$(RM) $@+ $@ && \
387-
$(DOCBOOK2X_TEXI) --to-stdout $*.xml >$@+ && \
388-
mv $@+ $@
386+
$(QUIET_DB2TEXI)$(RM) $@.new $@ && \
387+
$(DOCBOOK2X_TEXI) --to-stdout $*.xml >$@.new && \
388+
mv $@.new $@
389389

390390
howto-index.txt: howto-index.sh $(wildcard howto/*.txt)
391-
$(QUIET_GEN)$(RM) $@+ $@ && \
392-
'$(SHELL_PATH_SQ)' ./howto-index.sh $(sort $(wildcard howto/*.txt)) >$@+ && \
393-
mv $@+ $@
391+
$(QUIET_GEN)$(RM) $@.new $@ && \
392+
'$(SHELL_PATH_SQ)' ./howto-index.sh $(sort $(wildcard howto/*.txt)) >$@.new && \
393+
mv $@.new $@
394394

395395
$(patsubst %,%.html,$(ARTICLES)) : %.html : %.txt
396396
$(QUIET_ASCIIDOC)$(TXT_TO_HTML) $*.txt
@@ -399,10 +399,10 @@ WEBDOC_DEST = /pub/software/scm/git/docs
399399

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

407407
install-webdoc : html
408408
'$(SHELL_PATH_SQ)' ./install-webdoc.sh $(WEBDOC_DEST)

Documentation/config.txt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -748,6 +748,19 @@ relatively high IO latencies. When enabled, Git will do the
748748
index comparison to the filesystem data in parallel, allowing
749749
overlapping IO's. Defaults to true.
750750

751+
core.fscache::
752+
Enable additional caching of file system data for some operations.
753+
+
754+
Git for Windows uses this to bulk-read and cache lstat data of entire
755+
directories (instead of doing lstat file by file).
756+
757+
core.longpaths::
758+
Enable long path (> 260) support for builtin commands in Git for
759+
Windows. This is disabled by default, as long paths are not supported
760+
by Windows Explorer, cmd.exe and the Git for Windows tool chain
761+
(msys, bash, tcl, perl...). Only enable this if you know what you're
762+
doing and are prepared to live with a few quirks.
763+
751764
core.createObject::
752765
You can set this to 'link', in which case a hardlink followed by
753766
a delete of the source are used to make sure that object creation

Documentation/giteveryday.txt

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -308,18 +308,15 @@ master or exposed as a part of a stable branch.
308308
<10> create a signed tag.
309309
<11> make sure master was not accidentally rewound beyond that
310310
already pushed out. `ko` shorthand points at the Git maintainer's
311-
repository at kernel.org, and looks like this:
312-
+
313-
------------
314-
(in .git/config)
315-
[remote "ko"]
316-
url = kernel.org:/pub/scm/git/git.git
317-
fetch = refs/heads/*:refs/remotes/ko/*
318-
push = refs/heads/master
319-
push = refs/heads/next
320-
push = +refs/heads/pu
321-
push = refs/heads/maint
322-
------------
311+
repository at kernel.org, and looks like this: +
312+
++(in .git/config) +
313+
{startsb}remote "ko"{endsb} +
314+
{nbsp}{nbsp}{nbsp}{nbsp}url = kernel.org:/pub/scm/git/git.git +
315+
{nbsp}{nbsp}{nbsp}{nbsp}fetch = refs/heads/\*:refs/remotes/ko/* +
316+
{nbsp}{nbsp}{nbsp}{nbsp}push = refs/heads/master +
317+
{nbsp}{nbsp}{nbsp}{nbsp}push = refs/heads/next +
318+
{nbsp}{nbsp}{nbsp}{nbsp}push = +refs/heads/pu +
319+
{nbsp}{nbsp}{nbsp}{nbsp}push = refs/heads/maint++
323320
+
324321
<12> In the output from `git show-branch`, `master` should have
325322
everything `ko/master` has, and `next` should have

Documentation/user-manual.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4395,6 +4395,10 @@ itself!
43954395
Git Glossary
43964396
============
43974397

4398+
[[git-explained]]
4399+
Git explained
4400+
-------------
4401+
43984402
include::glossary-content.txt[]
43994403

44004404
[[git-quick-start]]
@@ -4636,6 +4640,10 @@ $ git gc
46364640
Appendix B: Notes and todo list for this manual
46374641
===============================================
46384642

4643+
[[todo-list]]
4644+
Todo list
4645+
---------
4646+
46394647
This is a work in progress.
46404648

46414649
The basic requirements:

Makefile

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1778,9 +1778,14 @@ $(SCRIPT_LIB) : % : %.sh GIT-SCRIPT-DEFINES
17781778
$(QUIET_GEN)$(cmd_munge_script) && \
17791779
mv $@+ $@
17801780

1781-
git.res: git.rc GIT-VERSION-FILE
1782-
$(QUIET_RC)$(RC) \
1783-
$(join -DMAJOR= -DMINOR=, $(wordlist 1,2,$(subst -, ,$(subst ., ,$(GIT_VERSION))))) \
1781+
ifeq (,$(findstring .windows.,$(GIT_VERSION)))
1782+
RC_VERSION_DEFS := $(join -DMAJOR= -DMINOR= -DMICRO=, $(wordlist 1,3,$(subst -, ,$(subst ., ,$(subst .windows., ,$(GIT_VERSION)))))) -DPATCHLEVEL=0
1783+
else
1784+
RC_VERSION_DEFS := $(join -DMAJOR= -DMINOR= -DMICRO= -DPATCHLEVEL=, $(wordlist 1,4,$(subst -, ,$(subst ., ,$(subst .windows., ,$(GIT_VERSION))))))
1785+
endif
1786+
1787+
git.res: git.rc GIT-VERSION-FILE GIT-PREFIX
1788+
$(QUIET_RC)$(RC) $(RC_VERSION_DEFS) \
17841789
-DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" $< -o $@
17851790

17861791
# This makes sure we depend on the NO_PERL setting itself.

attr.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@ static struct attr_stack *read_attr_from_file(const char *path, int macro_ok)
373373
int lineno = 0;
374374

375375
if (!fp) {
376-
if (errno != ENOENT && errno != ENOTDIR)
376+
if (errno != ENOENT && errno != ENOTDIR && errno != EINVAL)
377377
warn_on_inaccessible(path);
378378
return NULL;
379379
}

builtin/clean.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -570,6 +570,7 @@ static int *list_and_choose(struct menu_opts *opts, struct menu_stuff *stuff)
570570
clean_get_color(CLEAN_COLOR_RESET));
571571
}
572572

573+
fflush(stdout);
573574
if (strbuf_getline_lf(&choice, stdin) != EOF) {
574575
strbuf_trim(&choice);
575576
} else {
@@ -652,6 +653,7 @@ static int filter_by_patterns_cmd(void)
652653
clean_print_color(CLEAN_COLOR_PROMPT);
653654
printf(_("Input ignore patterns>> "));
654655
clean_print_color(CLEAN_COLOR_RESET);
656+
fflush(stdout);
655657
if (strbuf_getline_lf(&confirm, stdin) != EOF)
656658
strbuf_trim(&confirm);
657659
else
@@ -750,6 +752,7 @@ static int ask_each_cmd(void)
750752
qname = quote_path_relative(item->string, NULL, &buf);
751753
/* TRANSLATORS: Make sure to keep [y/N] as is */
752754
printf(_("Remove %s [y/N]? "), qname);
755+
fflush(stdout);
753756
if (strbuf_getline_lf(&confirm, stdin) != EOF) {
754757
strbuf_trim(&confirm);
755758
} else {

builtin/commit.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1374,6 +1374,7 @@ int cmd_status(int argc, const char **argv, const char *prefix)
13741374
PATHSPEC_PREFER_FULL,
13751375
prefix, argv);
13761376

1377+
enable_fscache(1);
13771378
read_cache_preload(&s.pathspec);
13781379
refresh_index(&the_index, REFRESH_QUIET|REFRESH_UNMERGED, &s.pathspec, NULL, NULL);
13791380

cache.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -709,6 +709,10 @@ enum hide_dotfiles_type {
709709
};
710710
extern enum hide_dotfiles_type hide_dotfiles;
711711

712+
extern int core_fscache;
713+
714+
extern int core_long_paths;
715+
712716
enum branch_track {
713717
BRANCH_TRACK_UNSPECIFIED = -1,
714718
BRANCH_TRACK_NEVER = 0,

0 commit comments

Comments
 (0)