From: "David Kågedal" <davidk@lysator.liu.se>
To: git@vger.kernel.org, catalin.marinas@gmail.com
Subject: [StGit PATCH 10/13] Refactor Series.new_patch
Date: Sat, 15 Sep 2007 00:32:00 +0200 [thread overview]
Message-ID: <20070914223159.7001.30016.stgit@morpheus.local> (raw)
In-Reply-To: <20070914222819.7001.55921.stgit@morpheus.local>
This shuffles some code so that the top and bottom never need to be
set to anything other than a valid commit and its parent.
Signed-off-by: David Kågedal <davidk@lysator.liu.se>
---
stgit/stack.py | 17 +++++++++--------
1 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/stgit/stack.py b/stgit/stack.py
index 733a241..fdff5a4 100644
--- a/stgit/stack.py
+++ b/stgit/stack.py
@@ -864,13 +864,6 @@ class Series(PatchSet):
patch = self.get_patch(name)
patch.create()
- if not bottom:
- bottom = head
- if not top:
- top = head
-
- patch.set_bottom(bottom)
- patch.set_top(top)
patch.set_description(descr)
patch.set_authname(author_name)
patch.set_authemail(author_email)
@@ -889,10 +882,15 @@ class Series(PatchSet):
set_head = True
if commit:
+ if top:
+ top_commit = git.get_commit(top)
+ else:
+ bottom = head
+ top_commit = git.get_commit(head)
+
# create a commit for the patch (may be empty if top == bottom);
# only commit on top of the current branch
assert(unapplied or bottom == head)
- top_commit = git.get_commit(top)
commit_id = git.commit(message = descr, parents = [bottom],
cache_update = False,
tree_id = top_commit.get_tree(),
@@ -903,9 +901,12 @@ class Series(PatchSet):
committer_name = committer_name,
committer_email = committer_email)
# set the patch top to the new commit
+ patch.set_bottom(bottom)
patch.set_top(commit_id)
else:
assert top != bottom
+ patch.set_bottom(bottom)
+ patch.set_top(top)
self.log_patch(patch, 'new')
next prev parent reply other threads:[~2007-09-14 22:32 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-14 22:31 [StGit PATCH 00/13] Eliminate 'top' and 'bottom' files David Kågedal
2007-09-14 22:31 ` [StGit PATCH 01/13] Add some more tests of "stg status" output David Kågedal
2007-09-14 22:31 ` [StGit PATCH 02/13] Clear up semantics of tree_status David Kågedal
2007-09-14 22:31 ` [StGit PATCH 03/13] Moved that status function to the status command file David Kågedal
2007-09-14 22:36 ` David Kågedal
2007-09-14 22:31 ` [StGit PATCH 04/13] Split Series.push_patch in two David Kågedal
2007-09-14 22:31 ` [StGit PATCH 05/13] Remove dead code from push_empty_patch David Kågedal
2007-09-14 22:31 ` [StGit PATCH 06/13] Refactor Series.push_patch David Kågedal
2007-09-14 22:31 ` [StGit PATCH 07/13] Clean up Series.refresh_patch David Kågedal
2007-09-14 22:31 ` [StGit PATCH 08/13] Add a 'bottom' parameter to Series.refresh_patch and use it David Kågedal
2007-09-14 22:31 ` [StGit PATCH 09/13] Clear up the semantics of Series.new_patch David Kågedal
2007-10-08 13:16 ` Catalin Marinas
2007-10-08 13:25 ` Karl Hasselström
2007-10-09 21:01 ` Catalin Marinas
2007-10-10 7:43 ` David Kågedal
2007-10-11 20:42 ` Catalin Marinas
2007-10-10 7:45 ` Karl Hasselström
2007-10-10 8:15 ` Karl Hasselström
2007-09-14 22:32 ` David Kågedal [this message]
2007-09-14 22:32 ` [StGit PATCH 11/13] Check bottom and invariants David Kågedal
2007-09-14 22:32 ` [StGit PATCH 12/13] Remove the 'bottom' field David Kågedal
2007-09-14 22:32 ` [StGit PATCH 13/13] Remove the 'top' field David Kågedal
2007-09-15 23:36 ` Karl Hasselström
2007-09-16 10:22 ` David Kågedal
2007-09-17 7:30 ` Karl Hasselström
2007-09-15 23:42 ` [StGit PATCH 00/13] Eliminate 'top' and 'bottom' files Karl Hasselström
2007-09-16 7:28 ` Catalin Marinas
2007-09-16 10:28 ` David Kågedal
2007-09-17 8:17 ` Karl Hasselström
2007-09-16 10:25 ` David Kågedal
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070914223159.7001.30016.stgit@morpheus.local \
--to=davidk@lysator.liu.se \
--cc=catalin.marinas@gmail.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).