summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2013-04-01 16:19:37 (GMT)
committerJunio C Hamano <gitster@pobox.com>2013-04-01 16:19:37 (GMT)
commitab24e7521c1027f7d86722345422ec92a5dde659 (patch)
tree437837a113b09eac048e2d0d680e4cfd5a75ad03 /Documentation
parentfec274b01f39262f945edb64c14c3bfe130b5bef (diff)
parent77c72780edfa5e3858423366fc91699724793b39 (diff)
downloadgit-ab24e7521c1027f7d86722345422ec92a5dde659.zip
git-ab24e7521c1027f7d86722345422ec92a5dde659.tar.gz
git-ab24e7521c1027f7d86722345422ec92a5dde659.tar.bz2
Merge branch 'yd/doc-merge-annotated-tag' into maint
* yd/doc-merge-annotated-tag: Documentation: merging a tag is a special case
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/git-merge.txt24
-rw-r--r--Documentation/merge-options.txt3
2 files changed, 26 insertions, 1 deletions
diff --git a/Documentation/git-merge.txt b/Documentation/git-merge.txt
index c852a26..42391f2 100644
--- a/Documentation/git-merge.txt
+++ b/Documentation/git-merge.txt
@@ -170,6 +170,30 @@ happens:
If you tried a merge which resulted in complex conflicts and
want to start over, you can recover with `git merge --abort`.
+MERGING TAG
+-----------
+
+When merging an annotated (and possibly signed) tag, Git always
+creates a merge commit even if a fast-forward merge is possible, and
+the commit message template is prepared with the tag message.
+Additionally, if the tag is signed, the signature check is reported
+as a comment in the message template. See also linkgit:git-tag[1].
+
+When you want to just integrate with the work leading to the commit
+that happens to be tagged, e.g. synchronizing with an upstream
+release point, you may not want to make an unnecessary merge commit.
+
+In such a case, you can "unwrap" the tag yourself before feeding it
+to `git merge`, or pass `--ff-only` when you do not have any work on
+your own. e.g.
+
+---
+git fetch origin
+git merge v1.2.3^0
+git merge --ff-only v1.2.3
+---
+
+
HOW CONFLICTS ARE PRESENTED
---------------------------
diff --git a/Documentation/merge-options.txt b/Documentation/merge-options.txt
index 0bcbe0a..34a8445 100644
--- a/Documentation/merge-options.txt
+++ b/Documentation/merge-options.txt
@@ -30,7 +30,8 @@ set to `no` at the beginning of them.
--no-ff::
Create a merge commit even when the merge resolves as a
- fast-forward.
+ fast-forward. This is the default behaviour when merging an
+ annotated (and possibly signed) tag.
--ff-only::
Refuse to merge and exit with a non-zero status unless the