From: Catalin Marinas Date: Wed, 30 Sep 2009 20:52:35 +0000 (+0100) Subject: Fast-forward the published head when possible X-Git-Tag: v0.15-rc4~5 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/stgit/commitdiff_plain/6c052b023837579aab6dcb030ffdcea4a88e37ed Fast-forward the published head when possible This is to avoid a merge commit when fast-forwarding is possible. Signed-off-by: Catalin Marinas --- diff --git a/stgit/commands/publish.py b/stgit/commands/publish.py index d829916..71b8118 100644 --- a/stgit/commands/publish.py +++ b/stgit/commands/publish.py @@ -109,6 +109,11 @@ def func(parser, options, args): # check for rebased stack. In this case we emulate a merge with the stack # base by setting two parents. merge_bases = repository.get_merge_bases(public_head, stack.base) + if public_head in merge_bases: + # fast-forward the public ref + repository.refs.set(public_ref, stack.head, 'publish') + out.info('Fast-forwarded "%s"' % public_ref) + return if not stack.base in merge_bases: message = 'Merge %s into %s' % (repository.describe(stack.base).strip(), utils.strip_prefix('refs/heads/',