summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/guilt/files/optional_head_check.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/guilt/files/optional_head_check.patch')
-rw-r--r--meta/recipes-devtools/guilt/files/optional_head_check.patch58
1 files changed, 58 insertions, 0 deletions
diff --git a/meta/recipes-devtools/guilt/files/optional_head_check.patch b/meta/recipes-devtools/guilt/files/optional_head_check.patch
new file mode 100644
index 0000000000..368d63b6ab
--- /dev/null
+++ b/meta/recipes-devtools/guilt/files/optional_head_check.patch
@@ -0,0 +1,58 @@
1guilt: allow guilt-push to opt out of head checking
2
3Depending on the method used to construct a tree, it is entirely
4possible that branches are not only made up of guilt created commits.
5This mixed mode is valid, and in particular is valid when applying
6patches to a tree.
7
8In the default mode of operation, you will see a warning such as
9this when working on a branch:
10
11Expected HEAD commit dbd5861f81a92b8b329561f94b8575c7ee6768b6
12 got 3e8e6f6bd9f1772b91fc1fe9949f541d0560b487
13
14This looks severe, but is harmless during tree construction,
15since even if the HEAD commit was expected, you can still run into
16issues pushing a patch. This is particularly seen when templates are
17adding patches to a kernel.
18
19To make this look less ominous, we make the head check for patch
20pushing opt-in. Which means that by default, you'll no longer see
21this warning if you work with a mixed mode branch during tree
22construction.
23
24Other modes such as pop or refresh can run into problems when
25the HEAD commit isn't tracked or expected, so they should remained
26checked.
27
28Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
29
30---
31 guilt | 3 +++
32 guilt-push | 3 +++
33 2 files changed, 6 insertions(+)
34
35--- a/guilt
36+++ b/guilt
37@@ -417,6 +417,9 @@ head_check()
38 return 0 ;;
39 esac
40
41+ # If do_head_check isn't set, bail, we are "opt-in"
42+ [ -z "$do_head_check" ] && return 0
43+
44 if [ "`git rev-parse refs/heads/$branch`" != "`git rev-parse $1`" ]; then
45 disp "Expected HEAD commit $1" >&2
46 disp " got `git rev-parse refs/heads/$branch`" >&2
47--- a/guilt-push
48+++ b/guilt-push
49@@ -23,6 +23,9 @@ while [ $# -gt 0 ]; do
50 tag=$2
51 shift
52 ;;
53+ --head_check)
54+ do_head_check=t
55+ ;;
56 *)
57 break
58 ;;