aboutsummaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2011-03-23 23:48:24 -0700
committerJunio C Hamano <gitster@pobox.com>2011-03-24 00:37:25 -0700
commit93e535a5b78c9861eca3e9371d1c3e5173c0ab02 (patch)
tree1466d6651b4ae358cc0fc4e141fd7dc368dcf472 /Documentation
parentc395c25b8642893dd1bb4be1fd124dd12f9b848c (diff)
downloadgit-93e535a5b78c9861eca3e9371d1c3e5173c0ab02.tar.gz
git-93e535a5b78c9861eca3e9371d1c3e5173c0ab02.tar.xz
merge: merge with the default upstream branch without argument
"git merge" without specifying any commit is a no-op by default. A new option merge.defaultupstream can be set to true to cause such an invocation of the command to merge the upstream branches configured for the current branch by using their last observed values stored in their remote tracking branches. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/git-merge.txt11
-rw-r--r--Documentation/merge-config.txt10
2 files changed, 18 insertions, 3 deletions
diff --git a/Documentation/git-merge.txt b/Documentation/git-merge.txt
index c1efaaa5c..cc8f424bb 100644
--- a/Documentation/git-merge.txt
+++ b/Documentation/git-merge.txt
@@ -11,7 +11,7 @@ SYNOPSIS
[verse]
'git merge' [-n] [--stat] [--no-commit] [--squash]
[-s <strategy>] [-X <strategy-option>]
- [--[no-]rerere-autoupdate] [-m <msg>] <commit>...
+ [--[no-]rerere-autoupdate] [-m <msg>] [<commit>...]
'git merge' <msg> HEAD <commit>...
'git merge' --abort
@@ -95,8 +95,13 @@ commit or stash your changes before running 'git merge'.
<commit>...::
Commits, usually other branch heads, to merge into our branch.
- You need at least one <commit>. Specifying more than one
- <commit> obviously means you are trying an Octopus.
+ Specifying more than one commit will create a merge with
+ more than two parents (affectionately called an Octopus merge).
++
+If no commit is given from the command line, and if `merge.defaultToUpstream`
+configuration variable is set, merge the remote tracking branches
+that the current branch is configured to use as its upstream.
+See also the configuration section of this manual page.
PRE-MERGE CHECKS
diff --git a/Documentation/merge-config.txt b/Documentation/merge-config.txt
index 1e5c22c5e..83dba6308 100644
--- a/Documentation/merge-config.txt
+++ b/Documentation/merge-config.txt
@@ -6,6 +6,16 @@ merge.conflictstyle::
a `>>>>>>>` marker. An alternate style, "diff3", adds a `|||||||`
marker and the original text before the `=======` marker.
+merge.defaultToUpstream::
+ If merge is called without any commit argument, merge the upstream
+ branches configured for the current branch by using their last
+ observed values stored in their remote tracking branches.
+ The values of the `branch.<current branch>.merge` that name the
+ branches at the remote named by `branch.<current branch>.remote`
+ are consulted, and then they are mapped via `remote.<remote>.fetch`
+ to their corresponding remote tracking branches, and the tips of
+ these tracking branches are merged.
+
merge.log::
In addition to branch names, populate the log message with at
most the specified number of one-line descriptions from the