summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-03-05commit.c: add in_merge_bases_many()Libravatar Junio C Hamano2-6/+19
Similar to in_merge_bases(commit, other) that returns true when commit is an ancestor (i.e. in the merge bases between the two) of the other commit, in_merge_bases_many(commit, n_other, other[]) checks if commit is an ancestor of any of the other[] commits. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-03-05commit.c: add clear_commit_marks_many()Libravatar Junio C Hamano2-6/+14
clear_commit_marks(struct commit *, unsigned) only can clear flag bits starting from a single commit; introduce an API to allow feeding an array of commits, so that flag bits can be cleared from commits reachable from any of them with a single traversal. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-03-01Git 1.8.1.5Libravatar Junio C Hamano3-2/+9
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-03-01Make !pattern in .gitattributes non-fatalLibravatar Thomas Rast2-4/+7
Before 82dce99 (attr: more matching optimizations from .gitignore, 2012-10-15), .gitattributes did not have any special treatment of a leading '!'. The docs, however, always said The rules how the pattern matches paths are the same as in `.gitignore` files; see linkgit:gitignore[5]. By those rules, leading '!' means pattern negation. So 82dce99 correctly determined that this kind of line makes no sense and should be disallowed. However, users who actually had a rule for files starting with a '!' are in a bad position: before 82dce99 '!' matched that literal character, so it is conceivable that users have .gitattributes with such lines in them. After 82dce99 the unescaped version was disallowed in such a way that git outright refuses to run(!) most commands in the presence of such a .gitattributes. It therefore becomes very hard to fix, let alone work with, such repositories. Let's at least allow the users to fix their repos: change the fatal error into a warning. Reported-by: mathstuf@gmail.com Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-03-01Merge branch 'wk/user-manual' into maintLibravatar Junio C Hamano1-56/+77
* wk/user-manual: user-manual: Flesh out uncommitted changes and submodule updates user-manual: Use request-pull to generate "please pull" text user-manual: Reorganize the reroll sections, adding 'git rebase -i'
2013-03-01Documentation/githooks: Fix linkgitLibravatar Andrew Wong1-1/+1
Signed-off-by: Andrew Wong <andrew.kw.w@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-27Update draft release notes to 1.8.1.5Libravatar Junio C Hamano1-1/+5
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-27Merge branch 'ef/non-ascii-parse-options-error-diag' into maintLibravatar Junio C Hamano1-1/+4
* ef/non-ascii-parse-options-error-diag: parse-options: report uncorrupted multi-byte options
2013-02-27Merge branch 'wk/man-deny-current-branch-is-default-these-days' into maintLibravatar Junio C Hamano1-3/+4
* wk/man-deny-current-branch-is-default-these-days: user-manual: typofix (ofthe->of the) user-manual: Update for receive.denyCurrentBranch=refuse
2013-02-27Merge branch 'jn/less-reconfigure' into maintLibravatar Junio C Hamano1-6/+8
* jn/less-reconfigure: Makefile: avoid infinite loop on configure.ac change
2013-02-27Documentation/submodule: Add --force to update synopsisLibravatar Brad King1-1/+1
In commit 9db31bdf (submodule: Add --force option for git submodule update, 2011-04-01) we added the option to the implementation's usage synopsis but forgot to add it to the synopsis in the command documentation. Add the option to the synopsis in the same location it is reported in usage and re-wrap the options to avoid long lines. Signed-off-by: Brad King <brad.king@kitware.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-25Prepare for 1.8.1.5Libravatar Junio C Hamano2-1/+38
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-25Merge branch 'jc/mention-tracking-for-pull-default' into maintLibravatar Junio C Hamano1-1/+2
* jc/mention-tracking-for-pull-default: doc: mention tracking for pull.default
2013-02-25Merge branch 'mm/config-intro-in-git-doc' into maintLibravatar Junio C Hamano1-6/+5
* mm/config-intro-in-git-doc: git.txt: update description of the configuration mechanism
2013-02-25Merge branch 'da/p4merge-mktemp-fix' into maintLibravatar Junio C Hamano1-1/+1
* da/p4merge-mktemp-fix: p4merge: fix printf usage
2013-02-25Merge branch 'bw/get-tz-offset-perl' into maintLibravatar Junio C Hamano4-13/+35
* bw/get-tz-offset-perl: cvsimport: format commit timestamp ourselves without using strftime perl/Git.pm: fix get_tz_offset to properly handle DST boundary cases Move Git::SVN::get_tz to Git::get_tz_offset
2013-02-25Merge branch 'al/mergetool-printf-fix' into maintLibravatar Junio C Hamano2-2/+2
* al/mergetool-printf-fix: difftool--helper: fix printf usage git-mergetool: print filename when it contains %
2013-02-25Merge branch 'jx/utf8-printf-width' into maintLibravatar Junio C Hamano3-2/+25
* jx/utf8-printf-width: Add utf8_fprintf helper that returns correct number of columns
2013-02-25Merge branch 'mg/bisect-doc' into maintLibravatar Junio C Hamano1-1/+6
* mg/bisect-doc: git-bisect.txt: clarify that reset quits bisect
2013-02-25Merge branch 'sp/smart-http-content-type-check' into maintLibravatar Junio C Hamano8-17/+59
* sp/smart-http-content-type-check: http_request: reset "type" strbuf before adding t5551: fix expected error output Verify Content-Type from smart HTTP servers
2013-02-25Merge branch 'jc/combine-diff-many-parents' into maintLibravatar Junio C Hamano2-14/+31
* jc/combine-diff-many-parents: t4038: add tests for "diff --cc --raw <trees>" combine-diff: lift 32-way limit of combined diff
2013-02-25Merge branch 'jk/apply-similaritly-parsing' into maintLibravatar Junio C Hamano1-4/+6
* jk/apply-similaritly-parsing: builtin/apply: tighten (dis)similarity index parsing
2013-02-25Merge branch 'jk/remote-helpers-doc' into maintLibravatar Junio C Hamano5-7/+23
* jk/remote-helpers-doc: Rename {git- => git}remote-helpers.txt
2013-02-25Merge branch 'ab/gitweb-use-same-scheme' into maintLibravatar Junio C Hamano1-2/+2
* ab/gitweb-use-same-scheme: gitweb: refer to picon/gravatar images over the same scheme
2013-02-25Merge branch 'zk/clean-report-failure' into maintLibravatar Junio C Hamano1-29/+125
* zk/clean-report-failure: git-clean: Display more accurate delete messages
2013-02-25Merge branch 'nd/clone-no-separate-git-dir-with-bare' into maintLibravatar Junio C Hamano1-0/+2
* nd/clone-no-separate-git-dir-with-bare: clone: forbid --bare --separate-git-dir <dir>
2013-02-25Merge branch 'da/p4merge-mktemp' into maintLibravatar Junio C Hamano1-14/+13
* da/p4merge-mktemp: mergetools/p4merge: Honor $TMPDIR for the /dev/null placeholder
2013-02-25Documentation: "advice" is uncountableLibravatar Greg Price2-2/+2
"Advice" is a mass noun, not a count noun; it's not ordinarily pluralized. Signed-off-by: Greg Price <price@mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-20Makefile: avoid infinite loop on configure.ac changeLibravatar Jeff King1-6/+8
If you are using autoconf and change the configure.ac, the Makefile will notice that config.status is older than configure.ac, and will attempt to rebuild and re-run the configure script to pick up your changes. The first step in doing so is to run "make configure". Unfortunately, this tries to include config.mak.autogen, which depends on config.status, which depends on configure.ac; so we must rebuild config.status. Which leads to us running "make configure", and so on. It's easy to demonstrate with: make configure ./configure touch configure.ac make We can break this cycle by not re-invoking make to build "configure", and instead just putting its rules inline into our config.status rebuild procedure. We can avoid a copy by factoring the rules into a make variable. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-19Git 1.8.1.4Libravatar Junio C Hamano4-3/+15
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-19Merge branch 'ob/imap-send-ssl-verify' into maintLibravatar Junio C Hamano1-2/+65
* ob/imap-send-ssl-verify: imap-send: support subjectAltName as well imap-send: the subject of SSL certificate must match the host imap-send: move #ifdef around
2013-02-19imap-send: support subjectAltName as wellLibravatar Oswald Buddenhagen1-0/+19
Check not only the common name of the certificate subject, but also check the subject alternative DNS names as well, when verifying that the certificate matches that of the host we are trying to talk to. Signed-off-by: Oswald Buddenhagen <ossi@kde.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-19imap-send: the subject of SSL certificate must match the hostLibravatar Oswald Buddenhagen1-0/+39
We did not check a valid certificate's subject at all, and would have happily talked with a wrong host after connecting to an incorrect address and getting a valid certificate that does not belong to the host we intended to talk to. Signed-off-by: Oswald Buddenhagen <ossi@kde.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-19user-manual: Flesh out uncommitted changes and submodule updatesLibravatar W. Trevor King1-1/+3
If you try and update a submodule with a dirty working directory, you get an error message like: $ git submodule update error: Your local changes to the following files would be overwritten by checkout: ... Please, commit your changes or stash them before you can switch branches. Aborting ... Mention this in the submodule notes. The previous phrase was short enough that I originally thought it might have been referring to the reflog note (obviously, uncommitted changes will not show up in the reflog either ;). Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-19user-manual: Use request-pull to generate "please pull" textLibravatar W. Trevor King1-9/+5
Less work and more error checking (e.g. does a merge base exist?). Add an explicit push before request-pull to satisfy request-pull, which checks to make sure the references are publically available. Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-19user-manual: Reorganize the reroll sections, adding 'git rebase -i'Libravatar W. Trevor King1-46/+69
I think this interface is often more convenient than extended cherry picking or using 'git format-patch'. In fact, I removed the cherry-pick section entirely. The entry-level suggestions for rerolling are now: 1. git commit --amend 2. git format-patch origin git reset --hard origin ...edit and reorder patches... git am *.patch 3. git rebase -i origin Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-18imap-send: move #ifdef aroundLibravatar Junio C Hamano1-2/+7
Instead of adding an early return to the inside of the ssl_socket_connect() function for NO_OPENSSL compilation, split it into a separate stub function. No functional change, but the next change to extend ssl_socket_connect() will become easier to read this way. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-18user-manual: typofix (ofthe->of the)Libravatar Junio C Hamano1-1/+1
Noticed by Drew Northup Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-18user-manual: use -o latest.tar.gz to create a gzipped tarballLibravatar W. Trevor King1-3/+12
This functionality was introduced by 0e804e09 (archive: provide builtin .tar.gz filter, 2011-07-21) for v1.7.7. Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-18user-manual: use 'git config --global user.*' for setupLibravatar W. Trevor King1-5/+13
A simple command line call is easier than spawning an editor, especially for folks new to ideas like the "command line" and "text editors". This is also the approach suggested by 'git commit' if you try and commit without having configured user.name or user.email. Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-18user-manual: mention 'git remote add' for remote branch configLibravatar W. Trevor King1-27/+13
I hardly ever setup remote.<name>.url using 'git config'. While it may be instructive to do so, we should also point out 'git remote add'. Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-18user-manual: give 'git push -f' as an alternative to +masterLibravatar W. Trevor King1-0/+7
This mirrors existing language in the description of 'git fetch'. Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-18user-manual: use 'remote add' to setup push URLsLibravatar W. Trevor King1-5/+10
There is no need to use here documents to setup this configuration. It is easier, less confusing, and more robust to use `git remote add` directly. Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-15git.txt: update description of the configuration mechanismLibravatar Matthieu Moy1-6/+5
The old Git version where it appeared is now useful only to historians, not to normal users. Also, the text was mentioning only the per-repo config file, but this is a good place to teach that customization can also be made per-user. While at it, remove a now-defunct e-mail from an example. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-14user-manual: Update for receive.denyCurrentBranch=refuseLibravatar W. Trevor King1-3/+4
acd2a45 (Refuse updating the current branch in a non-bare repository via push, 2009-02-11) changed the default to refuse such a push, but it forgot to update the docs. 7d182f5 (Documentation: receive.denyCurrentBranch defaults to 'refuse', 2010-03-17) updated Documentation/config.txt, but forgot to update the user manual. Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-12Replace filepattern with pathspec for consistencyLibravatar Matthieu Moy3-8/+8
pathspec is the most widely used term, and is the one defined in gitglossary.txt. <filepattern> was used only in the synopsys for git-add and git-commit, and in git-add.txt. Get rid of it. This patch is obtained with by running: perl -pi -e 's/filepattern/pathspec/' `git grep -l filepattern` Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-11parse-options: report uncorrupted multi-byte optionsLibravatar Erik Faye-Lund1-1/+4
Because our command-line parser considers only one byte at the time for short-options, we incorrectly report only the first byte when multi-byte input was provided. This makes user-errors slightly awkward to diagnose for instance under UTF-8 locale and non-English keyboard layouts. Report the whole argument-string when a non-ASCII short-option is detected. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Improved-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-11Add utf8_fprintf helper that returns correct number of columnsLibravatar Jiang Xin3-2/+25
Since command usages can be translated, they may include utf-8 encoded strings, and the output in console may not align well any more. This is because strlen() is different from strwidth() on utf-8 strings. A wrapper utf8_fprintf() can help to return the correct number of columns required. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Reviewed-by: Torsten Bögershausen <tboegi@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-11git-bisect.txt: clarify that reset quits bisectLibravatar Michael J Gruber1-1/+6
"reset" can be easily misunderstood as resetting a bisect session to its start without finishing it. Clarify that it actually quits the bisect session. Reported-by: Andreas Mohr <andi@lisas.de> Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-02-10user-manual: Rewrite git-gc section for automatic packingLibravatar W. Trevor King1-12/+6
This should have happened back in 2007, when `git gc` learned about auto (e9831e8, git-gc --auto: add documentation, 2007-09-17). Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>