diff options
author | Lars Wirzenius <lars.wirzenius@codethink.co.uk> | 2012-03-23 14:17:27 +0000 |
---|---|---|
committer | Lars Wirzenius <lars.wirzenius@codethink.co.uk> | 2012-03-23 14:17:27 +0000 |
commit | eb655d7f9fcd3a744959893e4ee19a1a5cc35a18 (patch) | |
tree | b64fc8bf3eeeab7641e42ee1833ca8cfc2f66076 /morph | |
parent | 5aa1716e971a424dc1dbe6e4c69a36eb7c95e714 (diff) | |
download | morph-eb655d7f9fcd3a744959893e4ee19a1a5cc35a18.tar.gz |
Add "morph checkout" command
Diffstat (limited to 'morph')
-rwxr-xr-x | morph | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -433,6 +433,23 @@ class Morph(cliapp.Application): self.runcmd(['git', 'checkout', '-b', new_branch, commit], cwd=new_repo) + def cmd_checkout(self, args): + '''Check out an existing system branch.''' + + if len(args) != 1: + raise cliapp.AppException('morph checkout needs name of ' + 'branch as parameter') + + system_branch = args[0] + repo = 'morphs' + + # Create the system branch directory. + os.makedirs(system_branch) + + # Clone into system branch directory. + new_repo = os.path.join(system_branch, os.path.basename(repo)) + self._clone_to_directory(new_repo, repo, system_branch) + def _deduce_system_branch(self): out = self.runcmd(['git', 'branch']) for line in out.splitlines(): |