~mdw
/
stgit
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Check git pull remote before defaulting to 'origin'
[stgit]
/
stgit
/
commands
/
pull.py
diff --git
a/stgit/commands/pull.py
b/stgit/commands/pull.py
index
843b579
..
7c5db22
100644
(file)
--- a/
stgit/commands/pull.py
+++ b/
stgit/commands/pull.py
@@
-39,6
+39,9
@@
format."""
options = [make_option('-n', '--nopush',
help = 'do not push the patches back after pulling',
options = [make_option('-n', '--nopush',
help = 'do not push the patches back after pulling',
+ action = 'store_true'),
+ make_option('-m', '--merged',
+ help = 'check for patches merged upstream',
action = 'store_true')]
def func(parser, options, args):
action = 'store_true')]
def func(parser, options, args):
@@
-47,10
+50,16
@@
def func(parser, options, args):
if len(args) > 2:
parser.error('incorrect number of arguments')
if len(args) > 2:
parser.error('incorrect number of arguments')
- repository = 'origin'
- refspec = None
if len(args) >= 1:
repository = args[0]
if len(args) >= 1:
repository = args[0]
+ else:
+ section = 'branch "%s"' % git.get_head_file()
+ if config.has_option(section, 'remote'):
+ repository = config.get(section, 'remote')
+ else:
+ repository = 'origin'
+
+ refspec = None
if len(args) == 2:
refspec = args[1]
if len(args) == 2:
refspec = args[1]
@@
-75,15
+84,12
@@
def func(parser, options, args):
print 'done'
# push the patches back
print 'done'
# push the patches back
- if options.nopush:
- applied = []
- for p in applied:
- print 'Pushing patch "%s"...' % p,
- sys.stdout.flush()
- crt_series.push_patch(p)
- if crt_series.empty_patch(p):
- print 'done (empty patch)'
- else:
- print 'done'
+ if not options.nopush:
+ push_patches(applied, options.merged)
+
+ # maybe tidy up
+ repack = config.get('stgit', 'keepoptimized')
+ if repack == 'yes':
+ git.repack()
print_crt_patch()
print_crt_patch()