summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hudec <bulb@ucw.cz>2007-11-17 20:51:44 +0100
committerJunio C Hamano <gitster@pobox.com>2007-11-28 15:50:59 -0800
commit1e72a40de99be24809eba5abdab4c0b00846b9b5 (patch)
treed0ea3c7df119b431caf2569ffc8d6aa345adfcaf
parentdc3e3ea3c838c1ddf7423401b4cf7a7dba528cff (diff)
downloadgit-1e72a40de99be24809eba5abdab4c0b00846b9b5.tar.gz
Improve description of git-branch -d and -D in man page.
Some users expect that deleting a remote-tracking branch would prevent fetch from creating it again, so be explcit about that it's not the case. Also be a little more explicit about what fully merged means. Signed-off-by: Jan Hudec <bulb@ucw.cz> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--Documentation/git-branch.txt21
1 files changed, 14 insertions, 7 deletions
diff --git a/Documentation/git-branch.txt b/Documentation/git-branch.txt
index 37cb8b83b2..d64ad25028 100644
--- a/Documentation/git-branch.txt
+++ b/Documentation/git-branch.txt
@@ -45,17 +45,22 @@ to happen.
With a `-d` or `-D` option, `<branchname>` will be deleted. You may
specify more than one branch for deletion. If the branch currently
-has a reflog then the reflog will also be deleted. Use -r together with -d
-to delete remote-tracking branches.
+has a reflog then the reflog will also be deleted.
+
+Use -r together with -d to delete remote-tracking branches. Note, that it
+only makes sense to delete remote-tracking branches if they no longer exist
+in remote repository or if gitlink:git-fetch[1] was configured not to fetch
+them again. See also 'prune' subcommand of gitlink:git-remote[1] for way to
+clean up all obsolete remote-tracking branches.
OPTIONS
-------
-d::
- Delete a branch. The branch must be fully merged.
+ Delete a branch. The branch must be fully merged in HEAD.
-D::
- Delete a branch irrespective of its index status.
+ Delete a branch irrespective of its merged status.
-l::
Create the branch's reflog. This activates recording of
@@ -153,9 +158,11 @@ $ git branch -d -r origin/todo origin/html origin/man <1>
$ git branch -D test <2>
------------
+
-<1> Delete remote-tracking branches "todo", "html", "man"
-<2> Delete "test" branch even if the "master" branch does not have all
-commits from test branch.
+<1> Delete remote-tracking branches "todo", "html", "man". Next 'fetch' or
+'pull' will create them again unless you configure them not to. See
+gitlink:git-fetch[1].
+<2> Delete "test" branch even if the "master" branch (or whichever branch is
+currently checked out) does not have all commits from test branch.
Notes