aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/lib/devtool/__init__.py
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2015-09-22 17:21:33 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-09-22 18:12:58 +0100
commit2dd865086c37c9eff63c6d0bbfa9f2e909f9fffe (patch)
treeea0ba45cb1d34f8d258d6c62dfaf8361e05d3a63 /scripts/lib/devtool/__init__.py
parent087ca0c644aad19e6e7d3921f99f3056471deb65 (diff)
downloadopenembedded-core-contrib-2dd865086c37c9eff63c6d0bbfa9f2e909f9fffe.tar.gz
devtool: add: set up fetched source as a git repository by default
If the fetched source isn't already a git repository, initialise it as one and then branch and tag, just as we do with "devtool modify". This makes it easier to make changes, commit them and then use the "devtool update-recipe" command to turn those commits into patches on the recipe. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib/devtool/__init__.py')
-rw-r--r--scripts/lib/devtool/__init__.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/scripts/lib/devtool/__init__.py b/scripts/lib/devtool/__init__.py
index 07a3636e9b..f815ef27fa 100644
--- a/scripts/lib/devtool/__init__.py
+++ b/scripts/lib/devtool/__init__.py
@@ -170,3 +170,20 @@ def use_external_build(same_dir, no_same_dir, d):
else:
b_is_s = False
return b_is_s
+
+def setup_git_repo(repodir, version, devbranch, basetag='devtool-base'):
+ """
+ Set up the git repository for the source tree
+ """
+ import bb.process
+ if not os.path.exists(os.path.join(repodir, '.git')):
+ bb.process.run('git init', cwd=repodir)
+ bb.process.run('git add .', cwd=repodir)
+ if version:
+ commitmsg = "Initial commit from upstream at version %s" % version
+ else:
+ commitmsg = "Initial commit from upstream"
+ bb.process.run('git commit -q -m "%s"' % commitmsg, cwd=repodir)
+
+ bb.process.run('git checkout -b %s' % devbranch, cwd=repodir)
+ bb.process.run('git tag -f %s' % basetag, cwd=repodir)