added note about signing tags
[TortoiseGit.git] / doc / source / en / TortoiseGit / tsvn_dug / dug_branchtag.xml
blob927356d3cf8404ff7adaf550703d9ac8388ac6ae
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!DOCTYPE sect1 SYSTEM "../../../dtd/dblite.dtd">\r
3 <sect1 id="tsvn-dug-branchtag" xmlns:xi="http://www.w3.org/2001/XInclude">\r
4         <title>Branching / Tagging</title>\r
5         <indexterm>\r
6                 <primary>branch</primary>\r
7         </indexterm>\r
8         <indexterm>\r
9                 <primary>tag</primary>\r
10         </indexterm>\r
11         <indexterm>\r
12                 <primary>mark release</primary>\r
13         </indexterm>\r
14         <?dbhh topicname="HIDD_NEW_BRANCH_TAG"?>\r
15         <para>\r
16                 One of the features of version control systems is the ability\r
17                 to isolate changes onto a separate line of development.\r
18                 This line is known as a <firstterm>branch</firstterm>.\r
19                 Branches are often used to try out new features without\r
20                 disturbing the main line of development with compiler\r
21                 errors and bugs. As soon as the new feature is stable enough\r
22                 then the development branch is <firstterm>merged</firstterm>\r
23                 back into the main branch.\r
24         </para>\r
25         <para>\r
26                 Another feature of version control systems is the ability\r
27                 to mark particular revisions (e.g. a release version),\r
28                 so you can at any time recreate a certain build or\r
29                 environment. This process is known as <firstterm>tagging</firstterm>.\r
30         </para>\r
31         <para>\r
32                 Git is very powerfull at branch and tag. It is very easy to create branch\r
33                 and tag.\r
34         </para>\r
35         <sect2 id="tsvn-dug-branch-1">\r
36                 <title>Creating a Branch or Tag</title>\r
37                 <para>\r
38                         Creating a branch is very simple:\r
39                         <menuchoice>\r
40                                 <guimenu>TortoiseGit</guimenu>\r
41                                 <guimenuitem>Create Branch...</guimenuitem>\r
42                         </menuchoice>\r
43                         <figure id="tsvn-dug-branchtag-dia-1">\r
44                                 <title>The Branch Dialog</title>\r
45                                 <graphic fileref="../images/Branch.png"/>\r
46                         </figure>\r
47                 </para>\r
48                 <para>\r
49                         <guilabel>Branch:</guilabel> input your branch name. \r
50                 </para>\r
51                 <para>\r
52                         Creating a tag is very simple:\r
53                         <menuchoice>\r
54                                 <guimenu>TortoiseGit</guimenu>\r
55                                 <guimenuitem>Create Tag...</guimenuitem>\r
56                         </menuchoice>\r
57                         \r
58                         <figure id="tsvn-dug-branchtag-dia-2">\r
59                                 <title>The Tag Dialog</title>\r
60                                 <graphic fileref="../images/Tag.png"/>\r
61                         </figure>\r
62                         \r
63                 </para>\r
64                 <para>\r
65                         <guilabel>Tag:</guilabel> input your tag name. \r
66                 </para>\r
67                 <para>\r
68                         You can choose one commit that base on. \r
69                         <xi:include href="./dug_chooseversion.xml"/> \r
70                 </para>\r
71                 <para>\r
72                         If you want your working copy to be switched to the newly created\r
73                         branch automatically, use the\r
74                         <guilabel>Switch to new branch/tag</guilabel> checkbox.\r
75                         But if you do that, first make sure that your working copy does not\r
76                         contain modifications. If it does, those changes will be merged into\r
77                         the branch WC when you switch.\r
78                 </para>\r
79                 <para>\r
80                         Check <guilabel>Sign</guilabel> to create a signed tag. This requires GPG\r
81                         and a key <emphasis>without</emphasis> a passphrase.\r
82                 </para>\r
83                 <para>\r
84                         Press <guibutton>OK</guibutton> to create branch or tag at  \r
85                         <emphasis>local repository</emphasis>.\r
86                 </para>\r
87                 <para>\r
88                         Note that unless you opted to switch your working copy to the newly\r
89                         created branch, creating a Branch or Tag does <emphasis>not</emphasis>\r
90                         affect your working copy. Even if you create the branch from your WC,\r
91                         those changes are committed to the original branch, not to the new branch.\r
92                 </para>\r
93                 <para>\r
94                         How to switch working copy to tag\branch,\r
95                         please refer to <xref linkend="tsvn-dug-checkout"/> \r
96                 </para>\r
97         </sect2>\r
98         <para>\r
99                 You can find more information at <xref linkend="git-branch(1)"/> and <xref linkend="git-tag(1)"/>\r
100         </para>\r
101 </sect1>\r