From 6d76d61fb621d158ee26238e735e282e33fb1a81 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 9 May 2008 05:46:08 +0000 Subject: [PATCH] Autogenerated HTML docs for v1.5.5.1-178-g1f81 --- config.txt | 74 +++++++++++--------- git-add.html | 44 ++++++------ git-add.txt | 28 +++++--- git-bisect.html | 57 +++++++++++++++- git-bisect.txt | 49 +++++++++++++ git-cherry-pick.html | 12 +++- git-cherry-pick.txt | 5 +- git-config.html | 100 ++++++++++++++++++++++++++- git-fmt-merge-msg.html | 30 ++++++-- git-fmt-merge-msg.txt | 18 +++-- git-format-patch.html | 93 +++++++++++++------------ git-format-patch.txt | 67 +++++++++++------- git-help.html | 53 +++++++++++--- git-help.txt | 57 ++++++++++++++-- git-merge.html | 93 ++++++++++++++++++++++--- git-merge.txt | 15 +--- git-pull.html | 152 +++++++++++++++++++++++++---------------- git-pull.txt | 86 ++++++++++++++--------- git-revert.html | 12 +++- git-revert.txt | 5 +- git-web--browse.html | 23 ++++++- git-web--browse.txt | 24 ++++++- merge-config.txt | 35 ++++++++++ merge-options.txt | 19 +++++- 24 files changed, 861 insertions(+), 290 deletions(-) create mode 100644 merge-config.txt diff --git a/config.txt b/config.txt index 00f089fee..a6fc5a2cf 100644 --- a/config.txt +++ b/config.txt @@ -426,7 +426,8 @@ branch..mergeoptions:: branch..rebase:: When true, rebase the branch on top of the fetched branch, - instead of merging the default branch from the default remote. + instead of merging the default branch from the default remote when + "git pull" is run. *NOTE*: this is a possibly dangerous operation; do *not* use it unless you understand the implications (see linkgit:git-rebase[1] for details). @@ -684,6 +685,36 @@ specified as 'gitcvs..' (where 'access_method' is one of "ext" and "pserver") to make them apply only for the given access method. +gui.commitmsgwidth:: + Defines how wide the commit message window is in the + linkgit:git-gui[1]. "75" is the default. + +gui.diffcontext:: + Specifies how many context lines should be used in calls to diff + made by the linkgit:git-gui[1]. The default is "5". + +gui.matchtrackingbranch:: + Determines if new branches created with linkgit:git-gui[1] should + default to tracking remote branches with matching names or + not. Default: "false". + +gui.newbranchtemplate:: + Is used as suggested name when creating new branches using the + linkgit:git-gui[1]. + +gui.pruneduringfetch:: + "true" if linkgit:git-gui[1] should prune tracking branches when + performing a fetch. The default value is "false". + +gui.trustmtime:: + Determines if linkgit:git-gui[1] should trust the file modification + timestamp or not. By default the timestamps are not trusted. + +gui.spellingdictionary:: + Specifies the dictionary used for spell checking commit messages in + the linkgit:git-gui[1]. When set to "none" spell checking is turned + off. + help.browser:: Specify the browser that will be used to display help in the 'web' format. See linkgit:git-help[1]. @@ -779,37 +810,16 @@ man.viewer:: Specify the programs that may be used to display help in the 'man' format. See linkgit:git-help[1]. -merge.summary:: - Whether to include summaries of merged commits in newly created - merge commit messages. False by default. - -merge.tool:: - Controls which merge resolution program is used by - linkgit:git-mergetool[1]. Valid built-in values are: "kdiff3", - "tkdiff", "meld", "xxdiff", "emerge", "vimdiff", "gvimdiff", and - "opendiff". Any other value is treated is custom merge tool - and there must be a corresponing mergetool..cmd option. - -merge.verbosity:: - Controls the amount of output shown by the recursive merge - strategy. Level 0 outputs nothing except a final error - message if conflicts were detected. Level 1 outputs only - conflicts, 2 outputs conflicts and file changes. Level 5 and - above outputs debugging information. The default is level 2. - Can be overridden by 'GIT_MERGE_VERBOSITY' environment variable. - -merge..name:: - Defines a human readable name for a custom low-level - merge driver. See linkgit:gitattributes[5] for details. - -merge..driver:: - Defines the command that implements a custom low-level - merge driver. See linkgit:gitattributes[5] for details. - -merge..recursive:: - Names a low-level merge driver to be used when - performing an internal merge between common ancestors. - See linkgit:gitattributes[5] for details. +include::merge-config.txt[] + +man..cmd:: + Specify the command to invoke the specified man viewer. The + specified command is evaluated in shell with the man page + passed as argument. (See linkgit:git-help[1].) + +man..path:: + Override the path for the given tool that may be used to + display help in the 'man' format. See linkgit:git-help[1]. mergetool..path:: Override the path for the given tool. This is useful in case diff --git a/git-add.html b/git-add.html index bd9ccd1fa..a1fc8d07d 100644 --- a/git-add.html +++ b/git-add.html @@ -365,7 +365,9 @@ commit.

- Update only files that git already knows about. This is similar + Update only files that git already knows about, staging modified + content for commit and marking deleted files for removal. This + is similar to what "git commit -a" does in preparation for making a commit, except that the update is limited to paths specified on the command line. If no paths are specified, all tracked files in the @@ -402,31 +404,33 @@ those in info/exclude. See repository layout

EXAMPLES

-
-
-git-add Documentation/\*.txt -
-
+
    +
  • - Adds content from all *.txt files under Documentation - directory and its subdirectories. +Adds content from all *.txt files under Documentation directory +and its subdirectories:

    +
    +
    +
    $ git add Documentation/\\*.txt
    +

    Note that the asterisk * is quoted from the shell in this example; this lets the command to include the files from subdirectories of Documentation/ directory.

    -
-
-git-add git-*.sh -
-
+ +
  • - Considers adding content from all git-*.sh scripts. - Because this example lets shell expand the asterisk - (i.e. you are listing the files explicitly), it does not - consider subdir/git-foo.sh. +Considers adding content from all git-*.sh scripts:

    -
  • -
    +
    +
    +
    $ git add git-*.sh
    +
    +

    Because this example lets shell expand the asterisk (i.e. you are +listing the files explicitly), it does not consider +subdir/git-foo.sh.

    + +

    Interactive mode

    @@ -590,7 +594,7 @@ double-quote and control characters will still have problems.

    diff --git a/git-add.txt b/git-add.txt index 35e67a06e..e0e730b6c 100644 --- a/git-add.txt +++ b/git-add.txt @@ -71,7 +71,9 @@ OPTIONS the specified filepatterns before exiting. -u:: - Update only files that git already knows about. This is similar + Update only files that git already knows about, staging modified + content for commit and marking deleted files for removal. This + is similar to what "git commit -a" does in preparation for making a commit, except that the update is limited to paths specified on the command line. If no paths are specified, all tracked files in the @@ -98,21 +100,27 @@ those in info/exclude. See link:repository-layout.html[repository layout]. EXAMPLES -------- -git-add Documentation/\\*.txt:: - Adds content from all `\*.txt` files under `Documentation` - directory and its subdirectories. +* Adds content from all `\*.txt` files under `Documentation` directory +and its subdirectories: ++ +------------ +$ git add Documentation/\\*.txt +------------ + Note that the asterisk `\*` is quoted from the shell in this example; this lets the command to include the files from subdirectories of `Documentation/` directory. -git-add git-*.sh:: - - Considers adding content from all git-*.sh scripts. - Because this example lets shell expand the asterisk - (i.e. you are listing the files explicitly), it does not - consider `subdir/git-foo.sh`. +* Considers adding content from all git-*.sh scripts: ++ +------------ +$ git add git-*.sh +------------ ++ +Because this example lets shell expand the asterisk (i.e. you are +listing the files explicitly), it does not consider +`subdir/git-foo.sh`. Interactive mode ---------------- diff --git a/git-bisect.html b/git-bisect.html index 438979162..c30b190f4 100644 --- a/git-bisect.html +++ b/git-bisect.html @@ -443,6 +443,61 @@ tree to the pristine state. Finally the "run" script can exit with the status of the real test to let "git bisect run" command loop to know the outcome.

    +

    EXAMPLES

    +
    +
      +
    • +

      +Automatically bisect a broken build between v1.2 and HEAD: +

      +
      +
      +
      $ git bisect start HEAD v1.2 --      # HEAD is bad, v1.2 is good
      +$ git bisect run make                # "make" builds the app
      +
      +
    • +
    • +

      +Automatically bisect a broken test suite: +

      +
      +
      +
      $ cat ~/test.sh
      +#!/bin/sh
      +make || exit 125                   # this "skip"s broken builds
      +make test                          # "make test" runs the test suite
      +$ git bisect start v1.3 v1.1 --    # v1.3 is bad, v1.1 is good
      +$ git bisect run ~/test.sh
      +
      +

      Here we use a "test.sh" custom script. In this script, if "make" +fails, we "skip" the current commit.

      +

      It's safer to use a custom script outside the repo to prevent +interactions between the bisect, make and test processes and the +script.

      +

      And "make test" should "exit 0", if the test suite passes, and +"exit 1" (for example) otherwise.

      +
    • +
    • +

      +Automatically bisect a broken test case: +

      +
      +
      +
      $ cat ~/test.sh
      +#!/bin/sh
      +make || exit 125                     # this "skip"s broken builds
      +~/check_test_case.sh                 # does the test case passes ?
      +$ git bisect start HEAD HEAD~10 --   # culprit is among the last 10
      +$ git bisect run ~/test.sh
      +
      +

      Here "check_test_case.sh" should "exit 0", if the test case passes, +and "exit 1" (for example) otherwise.

      +

      It's safer if both "test.sh" and "check_test_case.sh" scripts are +outside the repo to prevent interactions between the bisect, make and +test processes and the scripts.

      +
    • +
    +

    Author

    Written by Linus Torvalds <torvalds@osdl.org>

    @@ -457,7 +512,7 @@ know the outcome.

    diff --git a/git-bisect.txt b/git-bisect.txt index 698ffde7c..539f37df2 100644 --- a/git-bisect.txt +++ b/git-bisect.txt @@ -224,6 +224,55 @@ tree to the pristine state. Finally the "run" script can exit with the status of the real test to let "git bisect run" command loop to know the outcome. +EXAMPLES +-------- + +* Automatically bisect a broken build between v1.2 and HEAD: ++ +------------ +$ git bisect start HEAD v1.2 -- # HEAD is bad, v1.2 is good +$ git bisect run make # "make" builds the app +------------ + +* Automatically bisect a broken test suite: ++ +------------ +$ cat ~/test.sh +#!/bin/sh +make || exit 125 # this "skip"s broken builds +make test # "make test" runs the test suite +$ git bisect start v1.3 v1.1 -- # v1.3 is bad, v1.1 is good +$ git bisect run ~/test.sh +------------ ++ +Here we use a "test.sh" custom script. In this script, if "make" +fails, we "skip" the current commit. ++ +It's safer to use a custom script outside the repo to prevent +interactions between the bisect, make and test processes and the +script. ++ +And "make test" should "exit 0", if the test suite passes, and +"exit 1" (for example) otherwise. + +* Automatically bisect a broken test case: ++ +------------ +$ cat ~/test.sh +#!/bin/sh +make || exit 125 # this "skip"s broken builds +~/check_test_case.sh # does the test case passes ? +$ git bisect start HEAD HEAD~10 -- # culprit is among the last 10 +$ git bisect run ~/test.sh +------------ ++ +Here "check_test_case.sh" should "exit 0", if the test case passes, +and "exit 1" (for example) otherwise. ++ +It's safer if both "test.sh" and "check_test_case.sh" scripts are +outside the repo to prevent interactions between the bisect, make and +test processes and the scripts. + Author ------ Written by Linus Torvalds diff --git a/git-cherry-pick.html b/git-cherry-pick.html index fe88297cb..f9fbde56d 100644 --- a/git-cherry-pick.html +++ b/git-cherry-pick.html @@ -272,7 +272,7 @@ git-cherry-pick(1) Manual Page

    SYNOPSIS

    -

    git-cherry-pick [--edit] [-n] [-m parent-number] [-x] <commit>

    +

    git-cherry-pick [--edit] [-n] [-m parent-number] [-s] [-x] <commit>

    DESCRIPTION

    @@ -359,6 +359,14 @@ modifications from the HEAD commit).

    This is useful when cherry-picking more than one commits' effect to your working tree in a row.

    +
    +-s|--signoff +
    +
    +

    + Add Signed-off-by line at the end of the commit message. +

    +

    Author

    @@ -375,7 +383,7 @@ effect to your working tree in a row.

    diff --git a/git-cherry-pick.txt b/git-cherry-pick.txt index f0beb412e..ca048f46f 100644 --- a/git-cherry-pick.txt +++ b/git-cherry-pick.txt @@ -7,7 +7,7 @@ git-cherry-pick - Apply the change introduced by an existing commit SYNOPSIS -------- -'git-cherry-pick' [--edit] [-n] [-m parent-number] [-x] +'git-cherry-pick' [--edit] [-n] [-m parent-number] [-s] [-x] DESCRIPTION ----------- @@ -64,6 +64,9 @@ OPTIONS This is useful when cherry-picking more than one commits' effect to your working tree in a row. +-s|--signoff:: + Add Signed-off-by line at the end of the commit message. + Author ------ diff --git a/git-config.html b/git-config.html index dda9357f5..98b07b0d7 100644 --- a/git-config.html +++ b/git-config.html @@ -1273,7 +1273,8 @@ branch.<name>.rebase

    When true, rebase the branch <name> on top of the fetched branch, - instead of merging the default branch from the default remote. + instead of merging the default branch from the default remote when + "git pull" is run. NOTE: this is a possibly dangerous operation; do not use it unless you understand the implications (see git-rebase(1) for details). @@ -1733,6 +1734,71 @@ is one of "ext" and "pserver") to make them apply only for the given access method.

    +gui.commitmsgwidth +
    +
    +

    + Defines how wide the commit message window is in the + git-gui(1). "75" is the default. +

    +
    +
    +gui.diffcontext +
    +
    +

    + Specifies how many context lines should be used in calls to diff + made by the git-gui(1). The default is "5". +

    +
    +
    +gui.matchtrackingbranch +
    +
    +

    + Determines if new branches created with git-gui(1) should + default to tracking remote branches with matching names or + not. Default: "false". +

    +
    +
    +gui.newbranchtemplate +
    +
    +

    + Is used as suggested name when creating new branches using the + git-gui(1). +

    +
    +
    +gui.pruneduringfetch +
    +
    +

    + "true" if git-gui(1) should prune tracking branches when + performing a fetch. The default value is "false". +

    +
    +
    +gui.trustmtime +
    +
    +

    + Determines if git-gui(1) should trust the file modification + timestamp or not. By default the timestamps are not trusted. +

    +
    +
    +gui.spellingdictionary +
    +
    +

    + Specifies the dictionary used for spell checking commit messages in + the git-gui(1). When set to "none" spell checking is turned + off. +

    +
    +
    help.browser
    @@ -1928,7 +1994,16 @@ man.viewer

    -merge.summary +merge.stat +
    +
    +

    + Whether to print the diffstat berween ORIG_HEAD and merge result + at the end of the merge. True by default. +

    +
    +
    +merge.log

    @@ -1990,6 +2065,25 @@ merge.<driver>.recursive

    +man.<tool>.cmd +
    +
    +

    + Specify the command to invoke the specified man viewer. The + specified command is evaluated in shell with the man page + passed as argument. (See git-help(1).) +

    +
    +
    +man.<tool>.path +
    +
    +

    + Override the path for the given tool that may be used to + display help in the man format. See git-help(1). +

    +
    +
    mergetool.<tool>.path
    @@ -2437,7 +2531,7 @@ web.browser diff --git a/git-fmt-merge-msg.html b/git-fmt-merge-msg.html index 464b532a4..0e5f25ab6 100644 --- a/git-fmt-merge-msg.html +++ b/git-fmt-merge-msg.html @@ -273,8 +273,8 @@ git-fmt-merge-msg(1) Manual Page

    SYNOPSIS

    -
    git-fmt-merge-msg [--summary | --no-summary] <$GIT_DIR/FETCH_HEAD -git-fmt-merge-msg [--summary | --no-summary] -F <file>
    +
    git-fmt-merge-msg [--log | --no-log] <$GIT_DIR/FETCH_HEAD +git-fmt-merge-msg [--log | --no-log] -F <file>

    DESCRIPTION

    @@ -288,7 +288,7 @@ automatically invoking git-merge.

    ---summary +--log

    @@ -298,7 +298,7 @@ automatically invoking git-merge.

    ---no-summary +--no-log

    @@ -307,6 +307,15 @@ automatically invoking git-merge.

    +--summary,--no-summary +
    +
    +

    + Synonyms to --log and --no-log; these are deprecated and will be + removed in the future. +

    +
    +
    --file <file>, -F <file>
    @@ -321,7 +330,7 @@ automatically invoking git-merge.

    -merge.summary +merge.log

    @@ -329,6 +338,15 @@ merge.summary merge commit messages. False by default.

    +
    +merge.summary +
    +
    +

    + Synonym to merge.log; this is deprecated and will be removed in + the future. +

    +

    SEE ALSO

    @@ -349,7 +367,7 @@ merge.summary
    diff --git a/git-fmt-merge-msg.txt b/git-fmt-merge-msg.txt index 8615ae353..457cf4256 100644 --- a/git-fmt-merge-msg.txt +++ b/git-fmt-merge-msg.txt @@ -9,8 +9,8 @@ git-fmt-merge-msg - Produce a merge commit message SYNOPSIS -------- [verse] -git-fmt-merge-msg [--summary | --no-summary] <$GIT_DIR/FETCH_HEAD -git-fmt-merge-msg [--summary | --no-summary] -F +git-fmt-merge-msg [--log | --no-log] <$GIT_DIR/FETCH_HEAD +git-fmt-merge-msg [--log | --no-log] -F DESCRIPTION ----------- @@ -24,15 +24,19 @@ automatically invoking `git-merge`. OPTIONS ------- ---summary:: +--log:: In addition to branch names, populate the log message with one-line descriptions from the actual commits that are being merged. ---no-summary:: +--no-log:: Do not list one-line descriptions from the actual commits being merged. +--summary,--no-summary:: + Synonyms to --log and --no-log; these are deprecated and will be + removed in the future. + --file , -F :: Take the list of merged objects from instead of stdin. @@ -40,10 +44,14 @@ OPTIONS CONFIGURATION ------------- -merge.summary:: +merge.log:: Whether to include summaries of merged commits in newly merge commit messages. False by default. +merge.summary:: + Synonym to `merge.log`; this is deprecated and will be removed in + the future. + SEE ALSO -------- linkgit:git-merge[1] diff --git a/git-format-patch.html b/git-format-patch.html index cc89cb75b..bf7c6bcee 100644 --- a/git-format-patch.html +++ b/git-format-patch.html @@ -992,60 +992,63 @@ and file suffix, and number patches when outputting more than one.

    EXAMPLES

    -
    -
    -git-format-patch -k --stdout R1..R2 | git-am -3 -k -
    -
    +
      +
    • - Extract commits between revisions R1 and R2, and apply - them on top of the current branch using git-am to - cherry-pick them. +Extract commits between revisions R1 and R2, and apply them on top of +the current branch using git-am to cherry-pick them:

      -
    -
    -git-format-patch origin -
    -
    +
    +
    +
    $ git format-patch -k --stdout R1..R2 | git-am -3 -k
    +
    + +
  • - Extract all commits which are in the current branch but - not in the origin branch. For each commit a separate file - is created in the current directory. +Extract all commits which are in the current branch but not in the +origin branch:

    -
  • -
    -git-format-patch --root origin -
    -
    +
    +
    +
    $ git format-patch origin
    +
    +

    For each commit a separate file is created in the current directory.

    + +
  • - Extract all commits that lead to origin since the - inception of the project. +Extract all commits that lead to origin since the inception of the +project:

    -
  • -
    -git-format-patch -M -B origin -
    -
    +
    +
    +
    $ git format-patch \--root origin
    +
    + +
  • - The same as the previous one. Additionally, it detects - and handles renames and complete rewrites intelligently to - produce a renaming patch. A renaming patch reduces the - amount of text output, and generally makes it easier to - review it. Note that the "patch" program does not - understand renaming patches, so use it only when you know - the recipient uses git to apply your patch. +The same as the previous one:

    -
  • -
    -git-format-patch -3 -
    -
    +
    +
    +
    $ git format-patch -M -B origin
    +
    +

    Additionally, it detects and handles renames and complete rewrites +intelligently to produce a renaming patch. A renaming patch reduces +the amount of text output, and generally makes it easier to review it. +Note that the "patch" program does not understand renaming patches, so +use it only when you know the recipient uses git to apply your patch.

    + +
  • - Extract three topmost commits from the current branch - and format them as e-mailable patches. +Extract three topmost commits from the current branch and format them +as e-mailable patches:

    -
  • -
    +
    +
    +
    $ git format-patch -3
    +
    + +

    See Also

    @@ -1065,7 +1068,7 @@ git-format-patch -3
    diff --git a/git-format-patch.txt b/git-format-patch.txt index b5207b760..87e491b59 100644 --- a/git-format-patch.txt +++ b/git-format-patch.txt @@ -174,32 +174,47 @@ and file suffix, and number patches when outputting more than one. EXAMPLES -------- -git-format-patch -k --stdout R1..R2 | git-am -3 -k:: - Extract commits between revisions R1 and R2, and apply - them on top of the current branch using `git-am` to - cherry-pick them. - -git-format-patch origin:: - Extract all commits which are in the current branch but - not in the origin branch. For each commit a separate file - is created in the current directory. - -git-format-patch \--root origin:: - Extract all commits that lead to 'origin' since the - inception of the project. - -git-format-patch -M -B origin:: - The same as the previous one. Additionally, it detects - and handles renames and complete rewrites intelligently to - produce a renaming patch. A renaming patch reduces the - amount of text output, and generally makes it easier to - review it. Note that the "patch" program does not - understand renaming patches, so use it only when you know - the recipient uses git to apply your patch. - -git-format-patch -3:: - Extract three topmost commits from the current branch - and format them as e-mailable patches. +* Extract commits between revisions R1 and R2, and apply them on top of +the current branch using `git-am` to cherry-pick them: ++ +------------ +$ git format-patch -k --stdout R1..R2 | git-am -3 -k +------------ + +* Extract all commits which are in the current branch but not in the +origin branch: ++ +------------ +$ git format-patch origin +------------ ++ +For each commit a separate file is created in the current directory. + +* Extract all commits that lead to 'origin' since the inception of the +project: ++ +------------ +$ git format-patch \--root origin +------------ + +* The same as the previous one: ++ +------------ +$ git format-patch -M -B origin +------------ ++ +Additionally, it detects and handles renames and complete rewrites +intelligently to produce a renaming patch. A renaming patch reduces +the amount of text output, and generally makes it easier to review it. +Note that the "patch" program does not understand renaming patches, so +use it only when you know the recipient uses git to apply your patch. + +* Extract three topmost commits from the current branch and format them +as e-mailable patches: ++ +------------ +$ git format-patch -3 +------------ See Also -------- diff --git a/git-help.html b/git-help.html index f3d698fd2..ed848d4fd 100644 --- a/git-help.html +++ b/git-help.html @@ -368,7 +368,7 @@ option or configuration variable). See -w|--web in the OPTIONS section above and git-web--browse(1).

    man.viewer

    The man.viewer config variable will be checked if the man format -is chosen. Only the following values are currently supported:

    +is chosen. The following values are currently supported:

    • @@ -383,23 +383,56 @@ is chosen. Only the following values are currently supported:

    • -"konqueror": use a man KIO slave in konqueror. +"konqueror": use kfmclient to open the man page in a new konqueror +tab (see Note about konqueror below).

    -

    Multiple values may be given to this configuration variable. Their -corresponding programs will be tried in the order listed in the -configuration file.

    +

    Values for other tools can be used if there is a corresponding +man.<tool>.cmd configuration entry (see below).

    +

    Multiple values may be given to the man.viewer configuration +variable. Their corresponding programs will be tried in the order +listed in the configuration file.

    For example, this configuration:

    -
    +
    -
    [man]
    -        viewer = konqueror
    -        viewer = woman
    +
            [man]
    +                viewer = konqueror
    +                viewer = woman

    will try to use konqueror first. But this may fail (for example if DISPLAY is not set) and in that case emacs' woman mode will be tried.

    If everything fails the man program will be tried anyway.

    +

    man.<tool>.path

    +

    You can explicitly provide a full path to your preferred man viewer by +setting the configuration variable man.<tool>.path. For example, you +can configure the absolute path to konqueror by setting +man.konqueror.path. Otherwise, git help assumes the tool is +available in PATH.

    +

    man.<tool>.cmd

    +

    When the man viewer, specified by the man.viewer configuration +variables, is not among the supported ones, then the corresponding +man.<tool>.cmd configuration variable will be looked up. If this +variable exists then the specified tool will be treated as a custom +command and a shell eval will be used to run the command with the man +page passed as arguments.

    +

    Note about konqueror

    +

    When konqueror is specified in the man.viewer configuration +variable, we launch kfmclient to try to open the man page on an +already opened konqueror in a new tab if possible.

    +

    For consistency, we also try such a trick if man.konqueror.path is +set to something like A_PATH_TO/konqueror. That means we will try to +launch A_PATH_TO/kfmclient instead.

    +

    If you really want to use konqueror, then you can use something like +the following:

    +
    +
    +
            [man]
    +                viewer = konq
    +
    +        [man "konq"]
    +                cmd = A_PATH_TO/konqueror
    +

    Note about git config --global

    Note that all these configuration variables should probably be set using the --global flag, for example like this:

    @@ -428,7 +461,7 @@ little. Maintenance is done by the git-list <git@vger.kernel.org>.

    diff --git a/git-help.txt b/git-help.txt index be2ae53b9..bfbba9e23 100644 --- a/git-help.txt +++ b/git-help.txt @@ -82,28 +82,75 @@ man.viewer ~~~~~~~~~~ The 'man.viewer' config variable will be checked if the 'man' format -is chosen. Only the following values are currently supported: +is chosen. The following values are currently supported: * "man": use the 'man' program as usual, * "woman": use 'emacsclient' to launch the "woman" mode in emacs (this only works starting with emacsclient versions 22), -* "konqueror": use a man KIO slave in konqueror. +* "konqueror": use 'kfmclient' to open the man page in a new konqueror +tab (see 'Note about konqueror' below). -Multiple values may be given to this configuration variable. Their -corresponding programs will be tried in the order listed in the -configuration file. +Values for other tools can be used if there is a corresponding +'man..cmd' configuration entry (see below). + +Multiple values may be given to the 'man.viewer' configuration +variable. Their corresponding programs will be tried in the order +listed in the configuration file. For example, this configuration: +------------------------------------------------ [man] viewer = konqueror viewer = woman +------------------------------------------------ will try to use konqueror first. But this may fail (for example if DISPLAY is not set) and in that case emacs' woman mode will be tried. If everything fails the 'man' program will be tried anyway. +man..path +~~~~~~~~~~~~~~~ + +You can explicitly provide a full path to your preferred man viewer by +setting the configuration variable 'man..path'. For example, you +can configure the absolute path to konqueror by setting +'man.konqueror.path'. Otherwise, 'git help' assumes the tool is +available in PATH. + +man..cmd +~~~~~~~~~~~~~~ + +When the man viewer, specified by the 'man.viewer' configuration +variables, is not among the supported ones, then the corresponding +'man..cmd' configuration variable will be looked up. If this +variable exists then the specified tool will be treated as a custom +command and a shell eval will be used to run the command with the man +page passed as arguments. + +Note about konqueror +~~~~~~~~~~~~~~~~~~~~ + +When 'konqueror' is specified in the 'man.viewer' configuration +variable, we launch 'kfmclient' to try to open the man page on an +already opened konqueror in a new tab if possible. + +For consistency, we also try such a trick if 'man.konqueror.path' is +set to something like 'A_PATH_TO/konqueror'. That means we will try to +launch 'A_PATH_TO/kfmclient' instead. + +If you really want to use 'konqueror', then you can use something like +the following: + +------------------------------------------------ + [man] + viewer = konq + + [man "konq"] + cmd = A_PATH_TO/konqueror +------------------------------------------------ + Note about git config --global ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/git-merge.html b/git-merge.html index 90a021233..e166586d5 100644 --- a/git-merge.html +++ b/git-merge.html @@ -273,7 +273,7 @@ git-merge(1) Manual Page

    SYNOPSIS

    -
    git-merge [-n] [--summary] [--no-commit] [--squash] [-s <strategy>]… +
    git-merge [-n] [--stat] [--no-commit] [--squash] [-s <strategy>]… [-m <msg>] <remote> <remote>… git-merge <msg> HEAD <remote>…
    @@ -289,16 +289,16 @@ new scripts. It is the same as git merge -m <msg> <remote>
    ---summary +--stat

    Show a diffstat at the end of the merge. The diffstat is also - controlled by the configuration option merge.diffstat. + controlled by the configuration option merge.stat.

    --n, --no-summary +-n, --no-stat

    @@ -306,6 +306,34 @@ new scripts. It is the same as git merge -m <msg> <remote>

    +--summary, --no-summary +
    +
    +

    + Synonyms to --stat and --no-stat; these are deprecated and will be + removed in the future. +

    +
    +
    +--log +
    +
    +

    + In addition to branch names, populate the log message with + one-line descriptions from the actual commits that are being + merged. +

    +
    +
    +--no-log +
    +
    +

    + Do not list one-line descriptions from the actual commits being + merged. +

    +
    +
    --no-commit
    @@ -477,12 +505,33 @@ would want to start over, you can recover with
    -merge.summary +merge.stat +
    +
    +

    + Whether to print the diffstat berween ORIG_HEAD and merge result + at the end of the merge. True by default. +

    +
    +
    +merge.log

    - Whether to include summaries of merged commits in newly - created merge commit. False by default. + Whether to include summaries of merged commits in newly created + merge commit messages. False by default. +

    +
    +
    +merge.tool +
    +
    +

    + Controls which merge resolution program is used by + git-mergetool(1). Valid built-in values are: "kdiff3", + "tkdiff", "meld", "xxdiff", "emerge", "vimdiff", "gvimdiff", and + "opendiff". Any other value is treated is custom merge tool + and there must be a corresponing mergetool.<tool>.cmd option.

    @@ -499,6 +548,34 @@ merge.verbosity

    +merge.<driver>.name +
    +
    +

    + Defines a human readable name for a custom low-level + merge driver. See gitattributes(5) for details. +

    +
    +
    +merge.<driver>.driver +
    +
    +

    + Defines the command that implements a custom low-level + merge driver. See gitattributes(5) for details. +

    +
    +
    +merge.<driver>.recursive +
    +
    +

    + Names a low-level merge driver to be used when + performing an internal merge between common ancestors. + See gitattributes(5) for details. +

    +
    +
    branch.<name>.mergeoptions
    @@ -662,7 +739,7 @@ Resolve the conflicts. git-diff would report only the
    diff --git a/git-merge.txt b/git-merge.txt index c136b1069..ef1f055c8 100644 --- a/git-merge.txt +++ b/git-merge.txt @@ -9,7 +9,7 @@ git-merge - Join two or more development histories together SYNOPSIS -------- [verse] -'git-merge' [-n] [--summary] [--no-commit] [--squash] [-s ]... +'git-merge' [-n] [--stat] [--no-commit] [--squash] [-s ]... [-m ] ... 'git-merge' HEAD ... @@ -46,18 +46,7 @@ linkgit:git-reset[1]. CONFIGURATION ------------- - -merge.summary:: - Whether to include summaries of merged commits in newly - created merge commit. False by default. - -merge.verbosity:: - Controls the amount of output shown by the recursive merge - strategy. Level 0 outputs nothing except a final error - message if conflicts were detected. Level 1 outputs only - conflicts, 2 outputs conflicts and file changes. Level 5 and - above outputs debugging information. The default is level 2. - Can be overridden by 'GIT_MERGE_VERBOSITY' environment variable. +include::merge-config.txt[] branch..mergeoptions:: Sets default options for merging into branch . The syntax and diff --git a/git-pull.html b/git-pull.html index a915d80d4..1b46fa875 100644 --- a/git-pull.html +++ b/git-pull.html @@ -289,16 +289,16 @@ when merging local branches into the current branch.

    ---summary +--stat

    Show a diffstat at the end of the merge. The diffstat is also - controlled by the configuration option merge.diffstat. + controlled by the configuration option merge.stat.

    --n, --no-summary +-n, --no-stat

    @@ -306,6 +306,34 @@ when merging local branches into the current branch.

    +--summary, --no-summary +
    +
    +

    + Synonyms to --stat and --no-stat; these are deprecated and will be + removed in the future. +

    +
    +
    +--log +
    +
    +

    + In addition to branch names, populate the log message with + one-line descriptions from the actual commits that are being + merged. +

    +
    +
    +--no-log +
    +
    +

    + Do not list one-line descriptions from the actual commits being + merged. +

    +
    +
    --no-commit
    @@ -904,82 +932,86 @@ Otherwise the remote branch of the first refspec is merged.

    EXAMPLES

    -
    -
    -git pull, git pull origin -
    -
    +
      +
    • - Update the remote-tracking branches for the repository - you cloned from, then merge one of them into your - current branch. Normally the branch merged in is - the HEAD of the remote repository, but the choice is - determined by the branch.<name>.remote and - branch.<name>.merge options; see git-config(1) - for details. +Update the remote-tracking branches for the repository + you cloned from, then merge one of them into your + current branch:

      -
    -
    -git pull origin next -
    -
    +
    +
    +
    $ git pull, git pull origin
    +
    +

    Normally the branch merged in is the HEAD of the remote repository, +but the choice is determined by the branch.<name>.remote and +branch.<name>.merge options; see git-config(1) for details.

    + +
  • - Merge into the current branch the remote branch next; - leaves a copy of next temporarily in FETCH_HEAD, but - does not update any remote-tracking branches. +Merge into the current branch the remote branch next:

    -
  • -
    -git pull . fixes enhancements -
    -
    +
    +
    +
    $ git pull origin next
    +
    +

    This leaves a copy of next temporarily in FETCH_HEAD, but +does not update any remote-tracking branches.

    + +
  • - Bundle local branch fixes and enhancements on top of - the current branch, making an Octopus merge. This git pull . - syntax is equivalent to git merge. +Bundle local branch fixes and enhancements on top of + the current branch, making an Octopus merge:

    -
  • -
    -git pull -s ours . obsolete -
    -
    +
    +
    +
    $ git pull . fixes enhancements
    +
    +

    This git pull . syntax is equivalent to git merge.

    + +
  • - Merge local branch obsolete into the current branch, - using ours merge strategy. +Merge local branch obsolete into the current branch, using ours + merge strategy:

    -
  • -
    -git pull --no-commit . maint -
    -
    +
    +
    +
    $ git pull -s ours . obsolete
    +
    + +
  • - Merge local branch maint into the current branch, but - do not make a commit automatically. This can be used - when you want to include further changes to the merge, - or want to write your own merge commit message. +Merge local branch maint into the current branch, but do not make + a commit automatically:

    +
    +
    +
    $ git pull --no-commit . maint
    +
    +

    This can be used when you want to include further changes to the +merge, or want to write your own merge commit message.

    You should refrain from abusing this option to sneak substantial changes into a merge commit. Small fixups like bumping release/version name would be acceptable.

    -
  • -
    -Command line pull of multiple branches from one repository -
    -
    + +
  • +

    +Command line pull of multiple branches from one repository: +

    $ git checkout master
     $ git fetch origin +pu:pu maint:tmp
     $ git pull . tmp
    -

    This updates (or creates, as necessary) branches pu and tmp -in the local repository by fetching from the branches -(respectively) pu and maint from the remote repository.

    -

    The pu branch will be updated even if it is does not -fast-forward; the others will not be.

    +

    This updates (or creates, as necessary) branches pu and tmp in +the local repository by fetching from the branches (respectively) +pu and maint from the remote repository.

    +

    The pu branch will be updated even if it is does not fast-forward; +the others will not be.

    The final command then merges the newly fetched tmp into master.

    -
  • -
    + +

    If you tried a pull which resulted in a complex conflicts and would want to start over, you can recover with git-reset(1).

    @@ -1005,7 +1037,7 @@ Junio C Hamano and the git-list <git@vger.kernel.org>.

    diff --git a/git-pull.txt b/git-pull.txt index 3405ca09e..66304f025 100644 --- a/git-pull.txt +++ b/git-pull.txt @@ -111,40 +111,58 @@ rules apply: EXAMPLES -------- -git pull, git pull origin:: - Update the remote-tracking branches for the repository - you cloned from, then merge one of them into your - current branch. Normally the branch merged in is - the HEAD of the remote repository, but the choice is - determined by the branch..remote and - branch..merge options; see linkgit:git-config[1] - for details. - -git pull origin next:: - Merge into the current branch the remote branch `next`; - leaves a copy of `next` temporarily in FETCH_HEAD, but - does not update any remote-tracking branches. - -git pull . fixes enhancements:: - Bundle local branch `fixes` and `enhancements` on top of - the current branch, making an Octopus merge. This `git pull .` - syntax is equivalent to `git merge`. - -git pull -s ours . obsolete:: - Merge local branch `obsolete` into the current branch, - using `ours` merge strategy. - -git pull --no-commit . maint:: - Merge local branch `maint` into the current branch, but - do not make a commit automatically. This can be used - when you want to include further changes to the merge, - or want to write your own merge commit message. +* Update the remote-tracking branches for the repository + you cloned from, then merge one of them into your + current branch: ++ +------------------------------------------------ +$ git pull, git pull origin +------------------------------------------------ ++ +Normally the branch merged in is the HEAD of the remote repository, +but the choice is determined by the branch..remote and +branch..merge options; see linkgit:git-config[1] for details. + +* Merge into the current branch the remote branch `next`: ++ +------------------------------------------------ +$ git pull origin next +------------------------------------------------ ++ +This leaves a copy of `next` temporarily in FETCH_HEAD, but +does not update any remote-tracking branches. + +* Bundle local branch `fixes` and `enhancements` on top of + the current branch, making an Octopus merge: ++ +------------------------------------------------ +$ git pull . fixes enhancements +------------------------------------------------ ++ +This `git pull .` syntax is equivalent to `git merge`. + +* Merge local branch `obsolete` into the current branch, using `ours` + merge strategy: ++ +------------------------------------------------ +$ git pull -s ours . obsolete +------------------------------------------------ + +* Merge local branch `maint` into the current branch, but do not make + a commit automatically: ++ +------------------------------------------------ +$ git pull --no-commit . maint +------------------------------------------------ ++ +This can be used when you want to include further changes to the +merge, or want to write your own merge commit message. + You should refrain from abusing this option to sneak substantial changes into a merge commit. Small fixups like bumping release/version name would be acceptable. -Command line pull of multiple branches from one repository:: +* Command line pull of multiple branches from one repository: + ------------------------------------------------ $ git checkout master @@ -152,12 +170,12 @@ $ git fetch origin +pu:pu maint:tmp $ git pull . tmp ------------------------------------------------ + -This updates (or creates, as necessary) branches `pu` and `tmp` -in the local repository by fetching from the branches -(respectively) `pu` and `maint` from the remote repository. +This updates (or creates, as necessary) branches `pu` and `tmp` in +the local repository by fetching from the branches (respectively) +`pu` and `maint` from the remote repository. + -The `pu` branch will be updated even if it is does not -fast-forward; the others will not be. +The `pu` branch will be updated even if it is does not fast-forward; +the others will not be. + The final command then merges the newly fetched `tmp` into master. diff --git a/git-revert.html b/git-revert.html index 507db39f5..545269bd1 100644 --- a/git-revert.html +++ b/git-revert.html @@ -272,7 +272,7 @@ git-revert(1) Manual Page

    SYNOPSIS

    -

    git-revert [--edit | --no-edit] [-n] [-m parent-number] <commit>

    +

    git-revert [--edit | --no-edit] [-n] [-m parent-number] [-s] <commit>

    DESCRIPTION

    @@ -341,6 +341,14 @@ modifications from the HEAD commit).

    This is useful when reverting more than one commits' effect to your working tree in a row.

    +
    +-s|--signoff +
    +
    +

    + Add Signed-off-by line at the end of the commit message. +

    +

    Author

    @@ -357,7 +365,7 @@ effect to your working tree in a row.

    diff --git a/git-revert.txt b/git-revert.txt index 93e20f775..13ceabbcc 100644 --- a/git-revert.txt +++ b/git-revert.txt @@ -7,7 +7,7 @@ git-revert - Revert an existing commit SYNOPSIS -------- -'git-revert' [--edit | --no-edit] [-n] [-m parent-number] +'git-revert' [--edit | --no-edit] [-n] [-m parent-number] [-s] DESCRIPTION ----------- @@ -51,6 +51,9 @@ OPTIONS This is useful when reverting more than one commits' effect to your working tree in a row. +-s|--signoff:: + Add Signed-off-by line at the end of the commit message. + Author ------ diff --git a/git-web--browse.html b/git-web--browse.html index 888590942..ebc92fb09 100644 --- a/git-web--browse.html +++ b/git-web--browse.html @@ -293,7 +293,7 @@ iceweasel
  • -konqueror (this is the default under KDE) +konqueror (this is the default under KDE, see Note about konqueror below)

  • @@ -374,6 +374,25 @@ not among the supported ones, then the corresponding variable exists then "git web--browse" will treat the specified tool as a custom command and will use a shell eval to run the command with the URLs passed as arguments.

    + +

    Note about konqueror

    +
    +

    When konqueror is specified by the a command line option or a +configuration variable, we launch kfmclient to try to open the HTML +man page on an already opened konqueror in a new tab if possible.

    +

    For consistency, we also try such a trick if brower.konqueror.path is +set to something like A_PATH_TO/konqueror. That means we will try to +launch A_PATH_TO/kfmclient instead.

    +

    If you really want to use konqueror, then you can use something like +the following:

    +
    +
    +
            [web]
    +                browser = konq
    +
    +        [browser "konq"]
    +                cmd = A_PATH_TO/konqueror
    +

    Note about git config --global

    Note that these configuration variables should probably be set using the --global flag, for example like this:

    @@ -400,7 +419,7 @@ git-list <git@vger.kernel.org>.

    diff --git a/git-web--browse.txt b/git-web--browse.txt index ddbae5b19..92ef57456 100644 --- a/git-web--browse.txt +++ b/git-web--browse.txt @@ -20,7 +20,7 @@ The following browsers (or commands) are currently supported: * firefox (this is the default under X Window when not using KDE) * iceweasel -* konqueror (this is the default under KDE) +* konqueror (this is the default under KDE, see 'Note about konqueror' below) * w3m (this is the default outside graphical environments) * links * lynx @@ -71,6 +71,28 @@ variable exists then "git web--browse" will treat the specified tool as a custom command and will use a shell eval to run the command with the URLs passed as arguments. +Note about konqueror +-------------------- + +When 'konqueror' is specified by the a command line option or a +configuration variable, we launch 'kfmclient' to try to open the HTML +man page on an already opened konqueror in a new tab if possible. + +For consistency, we also try such a trick if 'brower.konqueror.path' is +set to something like 'A_PATH_TO/konqueror'. That means we will try to +launch 'A_PATH_TO/kfmclient' instead. + +If you really want to use 'konqueror', then you can use something like +the following: + +------------------------------------------------ + [web] + browser = konq + + [browser "konq"] + cmd = A_PATH_TO/konqueror +------------------------------------------------ + Note about git config --global ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/merge-config.txt b/merge-config.txt new file mode 100644 index 000000000..9719311b4 --- /dev/null +++ b/merge-config.txt @@ -0,0 +1,35 @@ +merge.stat:: + Whether to print the diffstat berween ORIG_HEAD and merge result + at the end of the merge. True by default. + +merge.log:: + Whether to include summaries of merged commits in newly created + merge commit messages. False by default. + +merge.tool:: + Controls which merge resolution program is used by + linkgit:git-mergetool[1]. Valid built-in values are: "kdiff3", + "tkdiff", "meld", "xxdiff", "emerge", "vimdiff", "gvimdiff", and + "opendiff". Any other value is treated is custom merge tool + and there must be a corresponing mergetool..cmd option. + +merge.verbosity:: + Controls the amount of output shown by the recursive merge + strategy. Level 0 outputs nothing except a final error + message if conflicts were detected. Level 1 outputs only + conflicts, 2 outputs conflicts and file changes. Level 5 and + above outputs debugging information. The default is level 2. + Can be overridden by 'GIT_MERGE_VERBOSITY' environment variable. + +merge..name:: + Defines a human readable name for a custom low-level + merge driver. See linkgit:gitattributes[5] for details. + +merge..driver:: + Defines the command that implements a custom low-level + merge driver. See linkgit:gitattributes[5] for details. + +merge..recursive:: + Names a low-level merge driver to be used when + performing an internal merge between common ancestors. + See linkgit:gitattributes[5] for details. diff --git a/merge-options.txt b/merge-options.txt index 9f1fc8255..f37a77648 100644 --- a/merge-options.txt +++ b/merge-options.txt @@ -1,10 +1,23 @@ ---summary:: +--stat:: Show a diffstat at the end of the merge. The diffstat is also - controlled by the configuration option merge.diffstat. + controlled by the configuration option merge.stat. --n, \--no-summary:: +-n, \--no-stat:: Do not show diffstat at the end of the merge. +--summary, \--no-summary:: + Synonyms to --stat and --no-stat; these are deprecated and will be + removed in the future. + +--log:: + In addition to branch names, populate the log message with + one-line descriptions from the actual commits that are being + merged. + +--no-log:: + Do not list one-line descriptions from the actual commits being + merged. + --no-commit:: Perform the merge but pretend the merge failed and do not autocommit, to give the user a chance to inspect and -- 2.26.2