generic-poky/meta/recipes-devtools/guilt/files/optional_head_check.patch

61 lines
1.9 KiB
Diff

guilt: allow guilt-push to opt out of head checking
Depending on the method used to construct a tree, it is entirely
possible that branches are not only made up of guilt created commits.
This mixed mode is valid, and in particular is valid when applying
patches to a tree.
In the default mode of operation, you will see a warning such as
this when working on a branch:
Expected HEAD commit dbd5861f81a92b8b329561f94b8575c7ee6768b6
got 3e8e6f6bd9f1772b91fc1fe9949f541d0560b487
This looks severe, but is harmless during tree construction,
since even if the HEAD commit was expected, you can still run into
issues pushing a patch. This is particularly seen when templates are
adding patches to a kernel.
To make this look less ominous, we make the head check for patch
pushing opt-in. Which means that by default, you'll no longer see
this warning if you work with a mixed mode branch during tree
construction.
Other modes such as pop or refresh can run into problems when
the HEAD commit isn't tracked or expected, so they should remained
checked.
Upstream-Status: Inappropriate [oe-specific]
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
---
guilt | 3 +++
guilt-push | 3 +++
2 files changed, 6 insertions(+)
--- a/guilt
+++ b/guilt
@@ -417,6 +417,9 @@ head_check()
return 0 ;;
esac
+ # If do_head_check isn't set, bail, we are "opt-in"
+ [ -z "$do_head_check" ] && return 0
+
if [ "`git rev-parse refs/heads/$branch`" != "`git rev-parse $1`" ]; then
disp "Expected HEAD commit $1" >&2
disp " got `git rev-parse refs/heads/$branch`" >&2
--- a/guilt-push
+++ b/guilt-push
@@ -23,6 +23,9 @@ while [ $# -gt 0 ]; do
tag=$2
shift
;;
+ --head_check)
+ do_head_check=t
+ ;;
*)
break
;;