Commit Graph

12 Commits

Author SHA1 Message Date
Paul Eggleton ba5537d768 scripts/combo-layer: skip empty commits
If a commit is empty (for example, commits brought over from svn where
only properties were changed) then attempting to apply it with "git am"
will result in the error "Patch format detection failed", so skip it
instead.

(From OE-Core rev: 5754bc7bcc2f57b6b56e67e2900eeaab5bc184d8)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-07 14:05:37 +00:00
Paul Eggleton c04305e695 scripts/combo-layer: improve some messages
Fix some grammar.

(From OE-Core rev: cc34f1bf136409d2e31c443dd5334c3a35d208af)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-07 14:05:36 +00:00
Paul Eggleton f82983034e scripts/combo-layer: auto-commit updated config file
If the config file is tracked within the combo-layer repository and it
is updated at the end of the "update" operation (because last_revision
has been changed), then automatically commit the file. This ensures that
multiple people can perform updates on different machines without the
last revision information going missing.

(If the file is outside the repository or is masked via .gitignore, this
will do nothing.)

(From OE-Core rev: 14f89acb43b0d9bec09b94668fbb056c7b5b1456)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-07 14:05:36 +00:00
Paul Eggleton 948d28e801 scripts/combo-layer: fix dirty repo check
Fix the dirty repository check to detect any changes, including
untracked files and uncommitted changes in the index.

(From OE-Core rev: f03fa8bbafa82ce6b09c08bf86011b6c51eb3531)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-07 14:05:36 +00:00
Paul Eggleton 25fc202e21 scripts/combo-layer: make component repo branch configurable
Add an optional per-component branch setting to allow specifying the
branch instead of always using master.

(From OE-Core rev: 8e2b8b05607103acd539808c5ab0cc80c0d481fc)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-07 14:05:36 +00:00
Paul Eggleton cb21ff1807 scripts/combo-layer: tidy up config example
Move all example configuration to the example config file, tidy up a few
long lines and fix some grammar.

(From OE-Core rev: ec099a32243ebc7eecd86e4bf40ed38da4af3fe5)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-07 14:05:35 +00:00
Paul Eggleton fd471a1337 scripts/combo-layer: make init set up initial component data
The "init" subcommand will now copy the current state of each component
repository into the combo layer repository, set last_revision for each
component, and then use "git add" to set up the initial commit (but will
not actually make the initial commit - that is left up to the user).
Also take the opportunity to bump the version number.

(From OE-Core rev: d4d491aa118b6cbe895167c62a46d883abc7b4ab)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-07 14:05:35 +00:00
Paul Eggleton 2293acaa7f scripts/combo-layer: ignore merge commits
The combo-layer tool had trouble handling merge commits as they were
included in the revision list but not the patches; these are now
excluded from the revision list. Note however that this will not handle
merge commits that resolved a conflict; since "git format-patch" cannot
construct a linear change history over such merges there is nothing we
can currently do with these.

(From OE-Core rev: b6b6b215675631d0e505ffc8b4890f85fb3169f9)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-07 14:05:35 +00:00
Otavio Salvador 1eb4426599 scripts/combo-layer: fix configuration file handling
(From OE-Core rev: e83017fe9e1dc89860a43d41d0480d1371539e44)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 18:23:34 -07:00
Leandro Dorileo 6cfe8c0a14 scripts/combo-layer: a simple way to script the combo-layer conf
This small patch introduces a a very simple and basic way to script
the combo-layer conf file. With that a combo can be shared with no
need to change its config - associated to the use of environment
variables for example.

*Similar* to bitbake it considers every value starting with @ to be
a python script. So local_repo could be easily configured as:

[bitbake]
local_repo = @os.getenv("LOCAL_REPO_DIR") + "/bitbake"

or any more sophisticated python syntax.

This version updates the config file description so users can be
aware of.

(From OE-Core rev: 62269642ce0e0e56d68d495b6c4d27327c9ed649)

Signed-off-by: Leandro Dorileo <ldorileo@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-11 19:22:05 +01:00
Paul Eggleton ee3304b8b0 scripts/combo-layer: keep carriage returns at the end of lines
Use --keep-cr option to "git am" or otherwise we lose carriage returns
which can be important for patches against files that use CRs.

(From OE-Core rev: bab4952075245563787293428e031fa11d6cb2b4)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-27 12:02:40 +01:00
Yu Ke b9ff62a0d0 combo-layer-tool: add tool to manipulate combo layers
This patch adds the script "combo-layer" to manipulate combo layer
repos. A combo layer repo is a repo containing multiple component
repos, e.g. oe-core, bitbake, BSP repos. The combo layer repo needs to
be updated by syncing with the component repo upstream. This script
is written to assist the combo layer handling.

The combo layer tool provides three functionalities:
- init: when the combo layer repo and component repo does not exist,
  init will "git init" the combo layer repo, and also "git clone" the
  component repos

- update: combo layer tool will pull the latest commit from component
  repo upstream, and apply the commits since last update commit to the
  combo repo. If the user specifies interactive mode(--interactive),
  they can edit the patch list to select which commits to apply.

- splitpatch: split the combo repo commit into separate patches per
  component repo, to facilitate upstream submission.

Combo layer tool uses a config file to define the component repo info.
Please check the combo-layer.conf.example for a detailed explanation
of the config file fields.

(From OE-Core rev: 68394476748386e58f40173643967f5a248173b1)

Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-08 17:52:27 +01:00