Merge commit 'v1.7.6' into jc/checkout-reflog-fix
* commit 'v1.7.6': (3211 commits) Git 1.7.6 completion: replace core.abbrevguard to core.abbrev Git 1.7.6-rc3 Documentation: git diff --check respects core.whitespace gitweb: 'pickaxe' and 'grep' features requires 'search' to be enabled t7810: avoid unportable use of "echo" plug a few coverity-spotted leaks builtin/gc.c: add missing newline in message tests: link shell libraries into valgrind directory t/Makefile: pass test opts to valgrind target properly sh-i18n--envsubst.c: do not #include getopt.h Fix typo: existant->existent Git 1.7.6-rc2 gitweb: do not misparse nonnumeric content tag files that contain a digit Git 1.7.6-rc1 fetch: do not leak a refspec t3703: skip more tests using colons in file names on Windows gitweb: Fix usability of $prevent_xss gitweb: Move "Requirements" up in gitweb/INSTALL gitweb: Describe CSSMIN and JSMIN in gitweb/INSTALL ...
This commit is contained in:
commit
25d33546d4
27
.gitignore
vendored
27
.gitignore
vendored
@ -43,7 +43,6 @@
|
||||
/git-fast-export
|
||||
/git-fast-import
|
||||
/git-fetch
|
||||
/git-fetch--tool
|
||||
/git-fetch-pack
|
||||
/git-filter-branch
|
||||
/git-fmt-merge-msg
|
||||
@ -102,16 +101,20 @@
|
||||
/git-quiltimport
|
||||
/git-read-tree
|
||||
/git-rebase
|
||||
/git-rebase--am
|
||||
/git-rebase--interactive
|
||||
/git-rebase--merge
|
||||
/git-receive-pack
|
||||
/git-reflog
|
||||
/git-relink
|
||||
/git-remote
|
||||
/git-remote-curl
|
||||
/git-remote-http
|
||||
/git-remote-https
|
||||
/git-remote-ftp
|
||||
/git-remote-ftps
|
||||
/git-remote-fd
|
||||
/git-remote-ext
|
||||
/git-remote-testgit
|
||||
/git-repack
|
||||
/git-replace
|
||||
/git-repo-config
|
||||
@ -124,7 +127,10 @@
|
||||
/git-rm
|
||||
/git-send-email
|
||||
/git-send-pack
|
||||
/git-sh-i18n
|
||||
/git-sh-i18n--envsubst
|
||||
/git-sh-setup
|
||||
/git-sh-i18n
|
||||
/git-shell
|
||||
/git-shortlog
|
||||
/git-show
|
||||
@ -155,7 +161,10 @@
|
||||
/git-write-tree
|
||||
/git-core-*/?*
|
||||
/gitk-git/gitk-wish
|
||||
/gitweb/GITWEB-BUILD-OPTIONS
|
||||
/gitweb/gitweb.cgi
|
||||
/gitweb/static/gitweb.js
|
||||
/gitweb/static/gitweb.min.*
|
||||
/test-chmtime
|
||||
/test-ctype
|
||||
/test-date
|
||||
@ -163,12 +172,19 @@
|
||||
/test-dump-cache-tree
|
||||
/test-genrandom
|
||||
/test-index-version
|
||||
/test-line-buffer
|
||||
/test-match-trees
|
||||
/test-mktemp
|
||||
/test-obj-pool
|
||||
/test-parse-options
|
||||
/test-path-utils
|
||||
/test-run-command
|
||||
/test-sha1
|
||||
/test-sigchain
|
||||
/test-string-pool
|
||||
/test-subprocess
|
||||
/test-svn-fe
|
||||
/test-treap
|
||||
/common-cmds.h
|
||||
*.tar.gz
|
||||
*.dsc
|
||||
@ -177,6 +193,13 @@
|
||||
*.exe
|
||||
*.[aos]
|
||||
*.py[co]
|
||||
.depend/
|
||||
*.gcda
|
||||
*.gcno
|
||||
*.gcov
|
||||
/coverage-untested-functions
|
||||
/cover_db/
|
||||
/cover_db_html/
|
||||
*+
|
||||
/config.mak
|
||||
/autom4te.cache
|
||||
|
6
.mailmap
6
.mailmap
@ -5,6 +5,7 @@
|
||||
# same person appearing not to be so.
|
||||
#
|
||||
|
||||
Alex Bennée <kernel-hacker@bennee.com>
|
||||
Alexander Gavrilov <angavrilov@gmail.com>
|
||||
Aneesh Kumar K.V <aneesh.kumar@gmail.com>
|
||||
Brian M. Carlson <sandals@crustytoothpaste.ath.cx>
|
||||
@ -15,6 +16,7 @@ Daniel Barkalow <barkalow@iabervon.org>
|
||||
David D. Kilzer <ddkilzer@kilzer.net>
|
||||
David Kågedal <davidk@lysator.liu.se>
|
||||
David S. Miller <davem@davemloft.net>
|
||||
Deskin Miller <deskinm@umich.edu>
|
||||
Dirk Süsserott <newsletter@dirk.my1.cc>
|
||||
Fredrik Kuivinen <freku045@student.liu.se>
|
||||
H. Peter Anvin <hpa@bonde.sc.orionmulti.com>
|
||||
@ -34,8 +36,9 @@ Lars Doelle <lars.doelle@on-line ! de>
|
||||
Lars Doelle <lars.doelle@on-line.de>
|
||||
Li Hong <leehong@pku.edu.cn>
|
||||
Lukas Sandström <lukass@etek.chalmers.se>
|
||||
Martin Langhoff <martin@catalyst.net.nz>
|
||||
Martin Langhoff <martin@laptop.org>
|
||||
Michael Coleman <tutufan@gmail.com>
|
||||
Michael J Gruber <git@drmicha.warpmail.net> <michaeljgruber+gmane@fastmail.fm>
|
||||
Michael W. Olson <mwolson@gnu.org>
|
||||
Michele Ballabio <barra_cuda@katamail.com>
|
||||
Nanako Shiraishi <nanako3@bluebottle.com>
|
||||
@ -59,6 +62,7 @@ Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
|
||||
Uwe Kleine-König <uzeisberger@io.fsforth.de>
|
||||
Uwe Kleine-König <zeisberg@informatik.uni-freiburg.de>
|
||||
Ville Skyttä <scop@xemacs.org>
|
||||
Vitaly "_Vi" Shukela <public_vi@tut.by>
|
||||
William Pursell <bill.pursell@gmail.com>
|
||||
YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
|
||||
anonymous <linux@horizon.com>
|
||||
|
@ -31,25 +31,36 @@ But if you must have a list of rules, here they are.
|
||||
|
||||
For shell scripts specifically (not exhaustive):
|
||||
|
||||
- We use tabs for indentation.
|
||||
|
||||
- Case arms are indented at the same depth as case and esac lines.
|
||||
|
||||
- We prefer $( ... ) for command substitution; unlike ``, it
|
||||
properly nests. It should have been the way Bourne spelled
|
||||
it from day one, but unfortunately isn't.
|
||||
|
||||
- We use ${parameter-word} and its [-=?+] siblings, and their
|
||||
colon'ed "unset or null" form.
|
||||
- We use POSIX compliant parameter substitutions and avoid bashisms;
|
||||
namely:
|
||||
|
||||
- We use ${parameter#word} and its [#%] siblings, and their
|
||||
doubled "longest matching" form.
|
||||
- We use ${parameter-word} and its [-=?+] siblings, and their
|
||||
colon'ed "unset or null" form.
|
||||
|
||||
- We use ${parameter#word} and its [#%] siblings, and their
|
||||
doubled "longest matching" form.
|
||||
|
||||
- No "Substring Expansion" ${parameter:offset:length}.
|
||||
|
||||
- No shell arrays.
|
||||
|
||||
- No strlen ${#parameter}.
|
||||
|
||||
- No pattern replacement ${parameter/pattern/string}.
|
||||
|
||||
- We use Arithmetic Expansion $(( ... )).
|
||||
|
||||
- No "Substring Expansion" ${parameter:offset:length}.
|
||||
|
||||
- No shell arrays.
|
||||
|
||||
- No strlen ${#parameter}.
|
||||
|
||||
- No regexp ${parameter/pattern/string}.
|
||||
- Inside Arithmetic Expansion, spell shell variables with $ in front
|
||||
of them, as some shells do not grok $((x)) while accepting $(($x))
|
||||
just fine (e.g. dash older than 0.5.4).
|
||||
|
||||
- We do not use Process Substitution <(list) or >(list).
|
||||
|
||||
@ -132,3 +143,55 @@ For C programs:
|
||||
|
||||
- When we pass <string, length> pair to functions, we should try to
|
||||
pass them in that order.
|
||||
|
||||
Writing Documentation:
|
||||
|
||||
Every user-visible change should be reflected in the documentation.
|
||||
The same general rule as for code applies -- imitate the existing
|
||||
conventions. A few commented examples follow to provide reference
|
||||
when writing or modifying command usage strings and synopsis sections
|
||||
in the manual pages:
|
||||
|
||||
Placeholders are spelled in lowercase and enclosed in angle brackets:
|
||||
<file>
|
||||
--sort=<key>
|
||||
--abbrev[=<n>]
|
||||
|
||||
Possibility of multiple occurrences is indicated by three dots:
|
||||
<file>...
|
||||
(One or more of <file>.)
|
||||
|
||||
Optional parts are enclosed in square brackets:
|
||||
[<extra>]
|
||||
(Zero or one <extra>.)
|
||||
|
||||
--exec-path[=<path>]
|
||||
(Option with an optional argument. Note that the "=" is inside the
|
||||
brackets.)
|
||||
|
||||
[<patch>...]
|
||||
(Zero or more of <patch>. Note that the dots are inside, not
|
||||
outside the brackets.)
|
||||
|
||||
Multiple alternatives are indicated with vertical bar:
|
||||
[-q | --quiet]
|
||||
[--utf8 | --no-utf8]
|
||||
|
||||
Parentheses are used for grouping:
|
||||
[(<rev>|<range>)...]
|
||||
(Any number of either <rev> or <range>. Parens are needed to make
|
||||
it clear that "..." pertains to both <rev> and <range>.)
|
||||
|
||||
[(-p <parent>)...]
|
||||
(Any number of option -p, each with one <parent> argument.)
|
||||
|
||||
git remote set-head <name> (-a | -d | <branch>)
|
||||
(One and only one of "-a", "-d" or "<branch>" _must_ (no square
|
||||
brackets) be provided.)
|
||||
|
||||
And a somewhat more contrived example:
|
||||
--diff-filter=[(A|C|D|M|R|T|U|X|B)...[*]]
|
||||
Here "=" is outside the brackets, because "--diff-filter=" is a
|
||||
valid usage. "*" has its own pair of brackets, because it can
|
||||
(optionally) be specified only when one or more of the letters is
|
||||
also provided.
|
||||
|
@ -6,7 +6,7 @@ MAN5_TXT=gitattributes.txt gitignore.txt gitmodules.txt githooks.txt \
|
||||
gitrepository-layout.txt
|
||||
MAN7_TXT=gitcli.txt gittutorial.txt gittutorial-2.txt \
|
||||
gitcvs-migration.txt gitcore-tutorial.txt gitglossary.txt \
|
||||
gitdiffcore.txt gitworkflows.txt
|
||||
gitdiffcore.txt gitrevisions.txt gitworkflows.txt
|
||||
|
||||
MAN_TXT = $(MAN1_TXT) $(MAN5_TXT) $(MAN7_TXT)
|
||||
MAN_XML=$(patsubst %.txt,%.xml,$(MAN_TXT))
|
||||
@ -63,35 +63,28 @@ endif
|
||||
|
||||
#
|
||||
# For asciidoc ...
|
||||
# -7.1.2, no extra settings are needed.
|
||||
# 8.0-, set ASCIIDOC8.
|
||||
# -7.1.2, set ASCIIDOC7
|
||||
# 8.0-, no extra settings are needed
|
||||
#
|
||||
|
||||
#
|
||||
# For docbook-xsl ...
|
||||
# -1.68.1, set ASCIIDOC_NO_ROFF? (based on changelog from 1.73.0)
|
||||
# 1.69.0, no extra settings are needed?
|
||||
# -1.68.1, no extra settings are needed?
|
||||
# 1.69.0, set ASCIIDOC_ROFF?
|
||||
# 1.69.1-1.71.0, set DOCBOOK_SUPPRESS_SP?
|
||||
# 1.71.1, no extra settings are needed?
|
||||
# 1.71.1, set ASCIIDOC_ROFF?
|
||||
# 1.72.0, set DOCBOOK_XSL_172.
|
||||
# 1.73.0-, set ASCIIDOC_NO_ROFF
|
||||
# 1.73.0-, no extra settings are needed
|
||||
#
|
||||
|
||||
#
|
||||
# If you had been using DOCBOOK_XSL_172 in an attempt to get rid
|
||||
# of 'the ".ft C" problem' in your generated manpages, and you
|
||||
# instead ended up with weird characters around callouts, try
|
||||
# using ASCIIDOC_NO_ROFF instead (it works fine with ASCIIDOC8).
|
||||
#
|
||||
|
||||
ifdef ASCIIDOC8
|
||||
ifndef ASCIIDOC7
|
||||
ASCIIDOC_EXTRA += -a asciidoc7compatible -a no-inline-literal
|
||||
endif
|
||||
ifdef DOCBOOK_XSL_172
|
||||
ASCIIDOC_EXTRA += -a git-asciidoc-no-roff
|
||||
MANPAGE_XSL = manpage-1.72.xsl
|
||||
else
|
||||
ifdef ASCIIDOC_NO_ROFF
|
||||
ifndef ASCIIDOC_ROFF
|
||||
# docbook-xsl after 1.72 needs the regular XSL, but will not
|
||||
# pass-thru raw roff codes from asciidoc.conf, so turn them off.
|
||||
ASCIIDOC_EXTRA += -a git-asciidoc-no-roff
|
||||
@ -264,7 +257,9 @@ manpage-base-url.xsl: manpage-base-url.xsl.in
|
||||
mv $@+ $@
|
||||
|
||||
user-manual.xml: user-manual.txt user-manual.conf
|
||||
$(QUIET_ASCIIDOC)$(ASCIIDOC) $(ASCIIDOC_EXTRA) -b docbook -d book $<
|
||||
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
|
||||
$(ASCIIDOC) $(ASCIIDOC_EXTRA) -b docbook -d book -o $@+ $< && \
|
||||
mv $@+ $@
|
||||
|
||||
technical/api-index.txt: technical/api-index-skel.txt \
|
||||
technical/api-index.sh $(patsubst %,%.txt,$(API_DOCS))
|
||||
@ -277,8 +272,10 @@ $(patsubst %,%.html,$(API_DOCS) technical/api-index): %.html : %.txt
|
||||
XSLT = docbook.xsl
|
||||
XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
|
||||
|
||||
user-manual.html: user-manual.xml
|
||||
$(QUIET_XSLTPROC)xsltproc $(XSLTOPTS) -o $@ $(XSLT) $<
|
||||
user-manual.html: user-manual.xml $(XSLT)
|
||||
$(QUIET_XSLTPROC)$(RM) $@+ $@ && \
|
||||
xsltproc $(XSLTOPTS) -o $@+ $(XSLT) $< && \
|
||||
mv $@+ $@
|
||||
|
||||
git.info: user-manual.texi
|
||||
$(QUIET_MAKEINFO)$(MAKEINFO) --no-split -o $@ user-manual.texi
|
||||
|
@ -4,7 +4,7 @@ GIT v1.5.6.3 Release Notes
|
||||
Fixes since v1.5.6.2
|
||||
--------------------
|
||||
|
||||
* Setting core.sharerepository to traditional "true" value was supposed to make
|
||||
* Setting core.sharedrepository to traditional "true" value was supposed to make
|
||||
the repository group writable but should not affect permission for others.
|
||||
However, since 1.5.6, it was broken to drop permission for others when umask is
|
||||
022, making the repository unreadable by others.
|
@ -17,7 +17,7 @@ Fixes since v1.6.0.1
|
||||
* Many commands did not use the correct working tree location when used
|
||||
with GIT_WORK_TREE environment settings.
|
||||
|
||||
* Some systems needs to use compatibility fnmach and regex libraries
|
||||
* Some systems need to use compatibility fnmatch and regex libraries
|
||||
independent from each other; the compat/ area has been reorganized to
|
||||
allow this.
|
||||
|
@ -11,7 +11,7 @@ Fixes since v1.6.4.2
|
||||
been deprecated.
|
||||
|
||||
* "git fetch" and "git clone" had an extra sanity check to verify the
|
||||
presense of the corresponding *.pack file before downloading *.idx
|
||||
presence of the corresponding *.pack file before downloading *.idx
|
||||
file by issuing a HEAD request. Github server however sometimes
|
||||
gave 500 (Internal server error) response to HEAD even if a GET
|
||||
request for *.pack file to the same URL would have succeeded, and broke
|
20
Documentation/RelNotes/1.6.4.5.txt
Normal file
20
Documentation/RelNotes/1.6.4.5.txt
Normal file
@ -0,0 +1,20 @@
|
||||
Git v1.6.4.5 Release Notes
|
||||
==========================
|
||||
|
||||
Fixes since v1.6.4.4
|
||||
--------------------
|
||||
|
||||
* Simplified base85 implementation.
|
||||
|
||||
* An overlong line after ".gitdir: " in a git file caused out of bounds
|
||||
access to an array on the stack.
|
||||
|
||||
* "git count-objects" did not handle packs larger than 4G.
|
||||
|
||||
* "git rev-parse --parseopt --stop-at-non-option" did not stop at non option
|
||||
when --keep-dashdash was in effect.
|
||||
|
||||
* "gitweb" can sometimes be tricked into parrotting a filename argument
|
||||
given in a request without properly quoting.
|
||||
|
||||
Other minor fixes and documentation updates are included.
|
@ -26,7 +26,7 @@ Fixes since v1.6.5.3
|
||||
future versions, but not in this release,
|
||||
|
||||
* "git merge -m <message> <branch>..." added the standard merge message
|
||||
on its own after user-supplied message, which should have overrided the
|
||||
on its own after user-supplied message, which should have overridden the
|
||||
standard one.
|
||||
|
||||
Other minor documentation updates are included.
|
@ -10,7 +10,7 @@ Fixes since v1.6.5.6
|
||||
an older version of git should just ignore them. Instead we diagnosed
|
||||
it as an error.
|
||||
|
||||
* With help.autocorrect set to non-zero value, the logic to guess typoes
|
||||
* With help.autocorrect set to non-zero value, the logic to guess typos
|
||||
in the subcommand name misfired and ran a random nonsense command.
|
||||
|
||||
* If a command is run with an absolute path as a pathspec inside a bare
|
18
Documentation/RelNotes/1.6.5.9.txt
Normal file
18
Documentation/RelNotes/1.6.5.9.txt
Normal file
@ -0,0 +1,18 @@
|
||||
Git v1.6.5.9 Release Notes
|
||||
==========================
|
||||
|
||||
Fixes since v1.6.5.8
|
||||
--------------------
|
||||
|
||||
* An overlong line after ".gitdir: " in a git file caused out of bounds
|
||||
access to an array on the stack.
|
||||
|
||||
* "git blame -L $start,$end" segfaulted when too large $start was given.
|
||||
|
||||
* "git rev-parse --parseopt --stop-at-non-option" did not stop at non option
|
||||
when --keep-dashdash was in effect.
|
||||
|
||||
* "gitweb" can sometimes be tricked into parrotting a filename argument
|
||||
given in a request without properly quoting.
|
||||
|
||||
Other minor fixes and documentation updates are included.
|
23
Documentation/RelNotes/1.6.6.3.txt
Normal file
23
Documentation/RelNotes/1.6.6.3.txt
Normal file
@ -0,0 +1,23 @@
|
||||
Git v1.6.6.3 Release Notes
|
||||
==========================
|
||||
|
||||
Fixes since v1.6.6.2
|
||||
--------------------
|
||||
|
||||
* An overlong line after ".gitdir: " in a git file caused out of bounds
|
||||
access to an array on the stack.
|
||||
|
||||
* "git bisect $path" did not correctly diagnose an error when given a
|
||||
non-existent path.
|
||||
|
||||
* "git blame -L $start,$end" segfaulted when too large $start was given.
|
||||
|
||||
* "git imap-send" did not write draft box with CRLF line endings per RFC.
|
||||
|
||||
* "git rev-parse --parseopt --stop-at-non-option" did not stop at non option
|
||||
when --keep-dashdash was in effect.
|
||||
|
||||
* "gitweb" can sometimes be tricked into parrotting a filename argument
|
||||
given in a request without properly quoting.
|
||||
|
||||
Other minor fixes and documentation updates are included.
|
@ -29,7 +29,7 @@ or adjust to the new behaviour, on the day their sysadmin decides to install
|
||||
the new version of git. When we switched from "git-foo" to "git foo" in
|
||||
1.6.0, even though the change had been advertised and the transition
|
||||
guide had been provided for a very long time, the users procrastinated
|
||||
during the entire transtion period, and ended up panicking on the day
|
||||
during the entire transition period, and ended up panicking on the day
|
||||
their sysadmins updated their git installation. We are trying to avoid
|
||||
repeating that unpleasantness in the 1.7.0 release.
|
||||
|
||||
@ -94,7 +94,7 @@ users will fare this time.
|
||||
* "git diff" traditionally treated various "ignore whitespace" options
|
||||
only as a way to filter the patch output. "git diff --exit-code -b"
|
||||
exited with non-zero status even if all changes were about changing the
|
||||
ammount of whitespace and nothing else. and "git diff -b" showed the
|
||||
amount of whitespace and nothing else. and "git diff -b" showed the
|
||||
"diff --git" header line for such a change without patch text.
|
||||
|
||||
In 1.7.0, the "ignore whitespaces" will affect the semantics of the
|
35
Documentation/RelNotes/1.7.0.1.txt
Normal file
35
Documentation/RelNotes/1.7.0.1.txt
Normal file
@ -0,0 +1,35 @@
|
||||
Git v1.7.0.1 Release Notes
|
||||
==========================
|
||||
|
||||
Fixes since v1.7.0
|
||||
------------------
|
||||
|
||||
* In a freshly created repository "rev-parse HEAD^0" complained that
|
||||
it is dangling symref, even though "rev-parse HEAD" didn't.
|
||||
|
||||
* "git show :no-such-name" tried to access the index without bounds
|
||||
check, leading to a potential segfault.
|
||||
|
||||
* Message from "git cherry-pick" was harder to read and use than necessary
|
||||
when it stopped due to conflicting changes.
|
||||
|
||||
* We referred to ".git/refs/" throughout the documentation when we
|
||||
meant to talk about abstract notion of "ref namespace". Because
|
||||
people's repositories often have packed refs these days, this was
|
||||
confusing.
|
||||
|
||||
* "git diff --output=/path/that/cannot/be/written" did not correctly
|
||||
error out.
|
||||
|
||||
* "git grep -e -pattern-that-begin-with-dash paths..." could not be
|
||||
spelled as "git grep -- -pattern-that-begin-with-dash paths..." which
|
||||
would be a GNU way to use "--" as "end of options".
|
||||
|
||||
* "git grep" compiled with threading support tried to access an
|
||||
uninitialized mutex on boxes with a single CPU.
|
||||
|
||||
* "git stash pop -q --index" failed because the unnecessary --index
|
||||
option was propagated to "git stash drop" that is internally run at the
|
||||
end.
|
||||
|
||||
And other minor fixes and documentation updates.
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user