chiark / gitweb /
Upgrade old StGIT branches to new-format metadata
[stgit] / Documentation / stg-new.txt
1 stg-new(1)
2 ==========
3 Yann Dirson <ydirson@altern.org>
4 v0.12.1, February 2007
5
6 NAME
7 ----
8 stg-new - stgdesc:new[]
9
10 SYNOPSIS
11 --------
12 [verse]
13 'stg' new [OPTIONS] [name]
14
15 DESCRIPTION
16 -----------
17
18 Create a new, empty patch with the given <name> on the current stack.
19 The new patch is created on top of the currently applied patches, and
20 is made the new top of the stack.  The local changes in the working
21 tree are not included in the patch. A stglink:refresh[] command is
22 needed for this.
23
24 The given <name> must be unique in the stack, and may only contain
25 alphanumeric characters, dashes and underscores. If no name is given,
26 one is generated from the first line of the commit message.
27
28 An editor will be launched to edit the commit message to be used for
29 the patch, unless the '--message' flag already specified one.  The
30 'patchdescr.tmpl' template file is used if available to pre-fill the
31 editor.  The editor to use is taken from the first of the following
32 sources of information, and defaults to 'vi':
33
34 . the 'stgit.editor' GIT configuration variable
35 . the 'EDITOR' environment variable
36
37 The message and other GIT commit attributes can be modified later
38 using stglink:refresh[].
39
40 AUTHOR AND COMMITTER INFORMATION
41 --------------------------------
42
43 The author name (resp. email) to record in the StGIT patch is taken
44 from the first of the following sources for the information:
45
46 . the '--authname' (resp. '--authemail') or '--author' flag on command-line
47 . the 'GIT_AUTHOR_NAME' (resp. 'GIT_AUTHOR_EMAIL') environment variable
48 . the 'user.name' (resp. 'user.email') GIT configuration variable
49
50 Similarly, the committer name (resp. email) is taken from the first of
51 the following sources:
52
53 . the '--commname' (resp. '--commemail') flag on command-line
54 . the 'GIT_COMMITTER_NAME' (resp. 'GIT_COMMITTER_EMAIL') environment variable
55 . the 'user.name' (resp. 'user.email') GIT configuration variable
56
57 The GIT commit generated by stglink:refresh[] will use these
58 informations when available.  If one of them is not available, GIT
59 will pick the value from your machine's configuration at that time, as
60 described in gitlink:git-commit-tree[1].
61
62 OPTIONS
63 -------
64
65 --message=<message>::
66 -m <message>::
67         Use <message> as the patch description.
68
69 --showpatch::
70 -s::
71         Show the patch content in the editor buffer.  This flag does
72         nothing if '-m' is also specified.
73
74 --author="Name <email@company>"::
75 -a "Name <email@company>"::
76         Use "Name <email@company>" as the author details.  This form
77         sets both 'authname' and 'authemail'.
78
79 --authname=<name>::
80         Use <name> as the author name
81 --authemail=<email>::
82         Use <email> as the author e-mail
83 --authdate=<date>::
84         Use <date> as the author date
85
86 --commname=<name>::
87         Use <name> as the committer name
88 --commemail=<email>::
89         Use <email> as the committer e-mail
90
91 FILES
92 -----
93
94         <templates>/patchdescr.tmpl
95
96 ENVIRONMENT VARIABLES
97 ---------------------
98
99         GIT_AUTHOR_NAME
100         GIT_AUTHOR_EMAIL
101         GIT_AUTHOR_DATE
102         GIT_COMMITTER_NAME
103         GIT_COMMITTER_EMAIL
104         EDITOR
105
106 GIT CONFIGURATION VARIABLES
107 ---------------------------
108
109         user.name
110         user.email
111         stgit.editor
112
113 StGIT
114 -----
115 Part of the StGIT suite - see gitlink:stg[1].