Commit | Line | Data |
---|---|---|
fcee87cf CM |
1 | |
2 | __copyright__ = """ | |
3 | Copyright (C) 2005, Catalin Marinas <catalin.marinas@gmail.com> | |
4 | ||
5 | This program is free software; you can redistribute it and/or modify | |
6 | it under the terms of the GNU General Public License version 2 as | |
7 | published by the Free Software Foundation. | |
8 | ||
9 | This program is distributed in the hope that it will be useful, | |
10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 | GNU General Public License for more details. | |
13 | ||
14 | You should have received a copy of the GNU General Public License | |
15 | along with this program; if not, write to the Free Software | |
16 | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
17 | """ | |
18 | ||
575bbdae | 19 | from stgit.argparse import opt |
b7eeeade CM |
20 | from stgit.commands import common |
21 | from stgit.out import out | |
6c8a90e1 | 22 | from stgit import argparse |
fcee87cf | 23 | |
575bbdae | 24 | help = 'Print the name of the top patch' |
33ff9cdd | 25 | kind = 'stack' |
575bbdae KH |
26 | usage = [''] |
27 | description = """ | |
26aab5b0 | 28 | Print the name of the current (topmost) patch.""" |
fcee87cf | 29 | |
6c8a90e1 | 30 | args = [] |
575bbdae | 31 | options = [ |
6c8a90e1 | 32 | opt('-b', '--branch', args = [argparse.stg_branches], |
575bbdae KH |
33 | short = 'Use BRANCH instead of the default branch')] |
34 | ||
b7eeeade | 35 | directory = common.DirectoryHasRepositoryLib() |
fcee87cf | 36 | |
fcee87cf CM |
37 | def func(parser, options, args): |
38 | """Show the name of the topmost patch | |
39 | """ | |
40 | if len(args) != 0: | |
41 | parser.error('incorrect number of arguments') | |
42 | ||
b7eeeade CM |
43 | stack = directory.repository.get_stack(options.branch) |
44 | applied = stack.patchorder.applied | |
45 | ||
46 | if applied: | |
47 | out.stdout(applied[-1]) | |
fcee87cf | 48 | else: |
b7eeeade | 49 | raise common.CmdException, 'No patches applied' |