summaryrefslogtreecommitdiff
path: root/Documentation
Commit message (Collapse)AuthorAgeFilesLines
* setup_reflog_action: document the rules for using GIT_REFLOG_ACTIONjc/reflog-docJunio C Hamano2013-06-192-3/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The set_reflog_action helper (in git-sh-setup) is designed to be used once at the very top of a program, like this in "git am", for example: set_reflog_action am The helper function sets the given string to GIT_REFLOG_ACTION only when GIT_REFLOG_ACTION is not yet set. Thanks to this, "git am", when run as the top-level program, will use "am" in GIT_REFLOG_ACTION and the reflog entries made by whatever it does will record the updates of refs done by "am". Because of the conditional assignment, when "git am" is run as a subprogram (i.e. an implementation detail) of "git rebase" that already sets GIT_REFLOG_ACTION to its own name, the call in "git am" to the helper function at the beginning will *not* have any effect. So "git rebase" can do this: set_reflog_action rebase ... do its own preparation, like checking out "onto" commit ... decide to do "format-patch" to "am" pipeline git format-patch --stdout >mbox git am mbox and the reflog entries made inside "git am" invocation will say "rebase", not "am". Calls to "git" commands that update refs would use GIT_REFLOG_ACTION to record who did that update. Most such calls in scripted Porcelains do not define custom reflog message and rely on GIT_REFLOG_ACTION to contain its (or its caller's, when it is called as a subprogram) name. If a scripted Porcelain wants to record a custom reflog message for a single invocation of "git" command (e.g. when "git rebase" uses "git checkout" to detach HEAD at the commit a series is to be replayed on), it needs to set GIT_REFLOG_ACTION to the custom message and export it while calling the "git" command, but such an assignment must be restricted to that single "git" invocation and should not be left behind to affect later codepath. Document the rules to avoid future confusion. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* trivial: Add missing period in documentationPhil Hord2013-05-281-1/+1
| | | | | Signed-off-by: Phil Hord <hordp@cisco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Git 1.8.2.3v1.8.2.3Junio C Hamano2013-05-092-1/+21
| | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Merge branch 'tr/remote-tighten-commandline-parsing' into maintJunio C Hamano2013-05-031-2/+2
|\ | | | | | | | | | | | | * tr/remote-tighten-commandline-parsing: remote: 'show' and 'prune' can take more than one remote remote: check for superfluous arguments in 'git remote add' remote: add a test for extra arguments, according to docs
| * remote: 'show' and 'prune' can take more than one remoteThomas Rast2013-04-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | The 'git remote show' and 'prune' subcommands are documented as taking only a single remote name argument, but that is not the case; they will simply iterate the action over all remotes given. Update the documentation and tests to match. With the last user of the -f flag gone, we also remove the code supporting it. Signed-off-by: Thomas Rast <trast@inf.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'jn/glossary-revision' into maintJunio C Hamano2013-05-031-3/+1
|\ \ | | | | | | | | | | | | * jn/glossary-revision: glossary: a revision is just a commit
| * | glossary: a revision is just a commitJonathan Nieder2013-04-211-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current definition of 'revision' sounds like it is saying that a revision is a tree object. In reality it is just a commit. This should be especially useful for people used to other revision control systems trying to see how familiar concepts translate into git terms. Reported-by: Ramkumar Ramachandra <artagnon@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Documentation/git-commit: Typo under --editAnders Granskogen Bjørnstad2013-05-021-2/+2
| | | | | | | | | | | | | | | | | | | | | -C takes a commit object, not a file. Signed-off-by: Anders Granskogen Bjørnstad <andersgb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | documentation: trivial whitespace cleanupsFelipe Contreras2013-04-281-6/+6
| | | | | | | | | | | | | | | Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Git 1.8.2.2v1.8.2.2Junio C Hamano2013-04-262-1/+20
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'jn/gitweb-install-doc' into maintJunio C Hamano2013-04-261-0/+7
|\ \ \ | | | | | | | | | | | | | | | | | | | | * jn/gitweb-install-doc: gitweb/INSTALL: GITWEB_CONFIG_SYSTEM is for backward compatibility gitweb/INSTALL: Simplify description of GITWEB_CONFIG_SYSTEM
| * | | gitweb/INSTALL: GITWEB_CONFIG_SYSTEM is for backward compatibilityJonathan Nieder2013-04-171-0/+7
| |/ / | | | | | | | | | | | | | | | | | | Highlight that CONFIG_SYSTEM and /etc/gitweb.conf are meant to be the fallback configuration file in BUGS section of gitweb.conf documentation. This will hopefully help people who expect them to be a common default, which unfortunately came later in the history.
* | | Update draft release notes to 1.8.2.2Junio C Hamano2013-04-241-0/+18
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'jk/diff-algo-finishing-touches' into maintJunio C Hamano2013-04-241-0/+6
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | "git diff --diff-algorithm=algo" was understood by the command line parser, but "git diff --diff-algorithm algo" was not. * jk/diff-algo-finishing-touches: diff: allow unstuck arguments with --diff-algorithm git-merge(1): document diff-algorithm option to merge-recursive
| * | git-merge(1): document diff-algorithm option to merge-recursiveJohn Keeping2013-04-051-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 07924d4 (diff: Introduce --diff-algorithm command line option 2013-01-16) added diff-algorithm as a parameter to the recursive merge strategy but did not document it. Do so. Signed-off-by: John Keeping <john@keeping.me.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Start preparing for 1.8.2.2Junio C Hamano2013-04-221-0/+25
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'ta/glossary' into maintJunio C Hamano2013-04-2232-111/+89
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ta/glossary: glossary: improve definitions of refspec and pathspec The name of the hash function is "SHA-1", not "SHA1" glossary: improve description of SHA-1 related topics glossary: remove outdated/misleading/irrelevant entries
| * | | glossary: improve definitions of refspec and pathspecThomas Ackermann2013-04-151-23/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The exact definition of "refspec" can be found in git-fetch and git-push manpages. So don't duplicate this here in the glossary. Actually the definition of "pathspec" should be moved to a separate file akin to the way it's done with "refspec". But this will only be wortwhile when there's more to say about it. So for the time being just improve the first sentence a little bit; fix the indentation of the first paragraph after the bullet list and remove the one-item list of magic signatures with its - for the user - unnecessary introduction of "magic word 'top'". Signed-off-by: Thomas Ackermann <th.acker@arcor.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | The name of the hash function is "SHA-1", not "SHA1"Thomas Ackermann2013-04-1531-68/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use "SHA-1" instead of "SHA1" whenever we talk about the hash function. When used as a programming symbol, we keep "SHA1". Signed-off-by: Thomas Ackermann <th.acker@arcor.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | glossary: improve description of SHA-1 related topicsThomas Ackermann2013-04-151-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The name of the hash function is "SHA-1", not "SHA1". Also to people who look up "object name" in the glossary, the details of which hash function is applied on what to compute "object name" is not important but the fact that the name is meant to be an unique identifier for the contents stored in the object is. Signed-off-by: Thomas Ackermann <th.acker@arcor.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | glossary: remove outdated/misleading/irrelevant entriesThomas Ackermann2013-04-151-10/+1
| | |/ | |/| | | | | | | | | | Signed-off-by: Thomas Ackermann <th.acker@arcor.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'jk/doc-http-backend' into maintJunio C Hamano2013-04-221-1/+81
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve documentation to illustrate "push authenticated, fetch anonymous" configuration for smart HTTP servers. * jk/doc-http-backend: doc/http-backend: match query-string in apache half-auth example doc/http-backend: give some lighttpd config examples doc/http-backend: clarify "half-auth" repo configuration
| * | | doc/http-backend: match query-string in apache half-auth exampleJeff King2013-04-131-8/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When setting up a "half-auth" repository in which reads can be done anonymously but writes require authentication, it is best if the server can require authentication for both the ref advertisement and the actual receive-pack POSTs. This alleviates the need for the admin to set http.receivepack in the repositories, and means that the client is challenged for credentials immediately, instead of partway through the push process (and git clients older than v1.7.11.7 had trouble handling these challenges). Since detecting a push during the ref advertisement requires matching the query string, and this is non-trivial to do in Apache, we have traditionally punted and instructed users to just protect "/git-receive-pack$". This patch provides the mod_rewrite recipe to actually match the ref advertisement, which is preferred. While we're at it, let's add the recipe to our test scripts so that we can be sure that it works, and doesn't get broken (either by our changes or by changes in Apache). Signed-off-by: Jeff King <peff@peff.net> Acked-by: Jakub Narębski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | doc/http-backend: give some lighttpd config examplesJeff King2013-04-111-0/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The examples in the documentation are all for Apache. Let's at least cover the basics: an anonymous server, an authenticated server, and a "half auth" server with anonymous read and authenticated write. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | doc/http-backend: clarify "half-auth" repo configurationJeff King2013-04-111-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the http-backend is set up to allow anonymous read but authenticated write, the http-backend manual suggests catching only the "/git-receive-pack" POST of the packfile, not the initial "info/refs?service=git-receive-pack" GET in which we advertise refs. This does work and is secure, as we do not allow any write during the info/refs request, and the information in the ref advertisement is the same that you would get from a fetch. However, the configuration required by the server is slightly more complex. The default `http.receivepack` setting is to allow pushes if the webserver tells us that the user authenticated, and otherwise to return a 403 ("Forbidden"). That works fine if authentication is turned on completely; the initial request requires authentication, and http-backend realizes it is OK to do a push. But for this "half-auth" state, no authentication has occurred during the initial ref advertisement. The http-backend CGI therefore does not think that pushing should be enabled, and responds with a 403. The client cannot continue, even though the server would have allowed it to run if it had provided credentials. It would be much better if the server responded with a 401, asking for credentials during the initial contact. But git-http-backend does not know about the server's auth configuration (so a 401 would be confusing in the case of a true anonymous server). Unfortunately, configuring Apache to recognize the query string and apply the auth appropriately to receive-pack (but not upload-pack) initial requests is non-trivial. The site admin can work around this by just turning on http.receivepack explicitly in its repositories. Let's document this workaround. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'jk/daemon-user-doc' into maintJunio C Hamano2013-04-221-0/+7
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | * jk/daemon-user-doc: doc: clarify that "git daemon --user=<user>" option does not export HOME=~user
| * | | | doc: clarify that "git daemon --user=<user>" option does not export HOME=~userJunio C Hamano2013-04-121-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fact that we don't set $HOME may confuse admins who expect ~<user>/.gitconfig to be used, because that is not what we try to read. And worse, since 96b9e0e3, a git-daemon started by root is likely to fail to run at all, as the user we switch to generally cannot read ~root. Signed-off-by: Jeff King <peff@peff.net> Helped-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | Merge branch 'jc/detached-head-doc' into maintJunio C Hamano2013-04-221-3/+16
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * jc/detached-head-doc: glossary: extend "detached HEAD" description Conflicts: Documentation/glossary-content.txt
| * | | | glossary: extend "detached HEAD" descriptionJunio C Hamano2013-04-051-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we introduced the concept of "detached HEAD", we made sure that commands that operate on the history of the current branch "just work" in that state. They update the HEAD to point at the new history without affecting any branch when the HEAD is detached, just like they update the tip of the "current branch" to point at the new history when HEAD points at a specific branch. As this is done as the natural extension for these commands, we did not, we still do not, and we do not want to repeat "A detached HEAD is updated without affecting any branch" when describing what each and every one of these commands that operates "on the current branch" does. Add a blanket description to the glossary to cover them instead. The general principle is that operations to update the branch work on and affect the HEAD, while operations to update the information about a branch do not. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | Merge branch 'mg/texinfo-5' into maintJunio C Hamano2013-04-121-0/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * mg/texinfo-5: Documentation: Strip texinfo anchors to avoid duplicates
| * | | | | Documentation: Strip texinfo anchors to avoid duplicatesMartin von Gagern2013-04-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This keeps texinfo 5.x happy. See https://bugs.gentoo.org/464210. Signed-off-by: Martin von Gagern <Martin.vGagern@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | Merge branch 'cn/commit-amend-doc' into maintJunio C Hamano2013-04-121-8/+9
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | * cn/commit-amend-doc: Documentation/git-commit: reword the --amend explanation
| * | | | | Documentation/git-commit: reword the --amend explanationCarlos Martín Nieto2013-04-051-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The explanation for 'git commit --amend' talks about preparing a tree object, which shouldn't be how user-facing documentation talks about commit. Reword it to say it works as usual, but replaces the current commit. Signed-off-by: Carlos Martín Nieto <cmn@elego.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | doc: various spelling fixesStefano Lattarini2013-04-128-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most of these were found using Lucas De Marchi's codespell tool. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | Merge branch 'maint-1.8.1' into maintJunio C Hamano2013-04-121-1/+3
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * maint-1.8.1: fast-export: fix argument name in error messages Documentation: distinguish between ref and offset deltas in pack-format
| * | | | | | Documentation: distinguish between ref and offset deltas in pack-formatStefan Saasen2013-04-121-1/+3
| | |_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | eb32d236 introduced the OBJ_OFS_DELTA object that uses a relative offset to identify the base object instead of the 20-byte SHA1 reference. The pack file documentation only mentions the SHA1 based reference in its description of the deltified object entry. Update the pack format documentation to clarify that the deltified object representation refers to its base using either a relative negative offset or the absolute SHA1 identifier. Signed-off-by: Stefan Saasen <ssaasen@atlassian.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | archive: clarify explanation of --worktree-attributesRené Scharfe2013-04-111-1/+3
| |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make it a bit clearer that --worktree-attributes is about files in the working tree (checked out files, possibly changed) and not the current working directory ($PWD). Link to the ATTRIBUTES section, which has more details. Reported-by: Amit Bakshi <ambakshi@gmail.com> Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | Git 1.8.2.1v1.8.2.1Junio C Hamano2013-04-072-1/+7
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | Sync with 1.8.1.6Junio C Hamano2013-04-072-1/+7
|\ \ \ \ \ | |/ / / /
| * | | | Git 1.8.1.6v1.8.1.6Junio C Hamano2013-04-072-1/+7
| | |/ / | |/| | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Update draft release notes to 1.8.2.1Junio C Hamano2013-04-031-0/+35
| | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'mg/gpg-interface-using-status' into maintJunio C Hamano2013-04-031-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Verification of signed tags were not done correctly when not in C or en/US locale. * mg/gpg-interface-using-status: pretty: make %GK output the signing key for signed commits pretty: parse the gpg status lines rather than the output gpg_interface: allow to request status return log-tree: rely upon the check in the gpg_interface gpg-interface: check good signature in a reliable way
| * | | | pretty: make %GK output the signing key for signed commitsMichael J Gruber2013-02-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to employ signed keys in an automated way it is absolutely necessary to check which keys the signatures come from. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | Merge branch 'bc/commit-complete-lines-given-via-m-option' into maintJunio C Hamano2013-04-031-10/+19
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'git commit -m "$msg"' used to add an extra newline even when $msg already ended with one. * bc/commit-complete-lines-given-via-m-option: Documentation/git-commit.txt: rework the --cleanup section git-commit: only append a newline to -m mesg if necessary t7502: demonstrate breakage with a commit message with trailing newlines t/t7502: compare entire commit message with what was expected
| * | | | | Documentation/git-commit.txt: rework the --cleanup sectionBrandon Casey2013-02-191-10/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Brandon Casey <drafnel@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | Sync with 1.8.1 maintenance trackJunio C Hamano2013-04-032-0/+40
|\ \ \ \ \ \ | | |_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * maint-1.8.1: Start preparing for 1.8.1.6 git-tag(1): we tag HEAD by default Fix revision walk for commits with the same dates t2003: work around path mangling issue on Windows pack-refs: add fully-peeled trait pack-refs: write peeled entry for non-tags use parse_object_or_die instead of die("bad object") avoid segfaults on parse_object failure entry: fix filter lookup t2003: modernize style name-hash.c: fix endless loop with core.ignorecase=true
| * | | | | Start preparing for 1.8.1.6Junio C Hamano2013-04-031-0/+34
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | | Merge branch 'yd/doc-merge-annotated-tag' into maint-1.8.1Junio C Hamano2013-04-032-1/+26
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * yd/doc-merge-annotated-tag: Documentation: merging a tag is a special case
| * | | | | | git-tag(1): we tag HEAD by defaultThomas Rast2013-04-031-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The <commit>|<object> argument is actually not explained anywhere (except implicitly in the description of an unannotated tag). Write a little explanation, in particular to cover the default. Signed-off-by: Thomas Rast <trast@inf.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | | Update draft release notes to 1.8.2.1Junio C Hamano2013-04-011-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>