From ef10a30be6c13c72ef3b33730d5f968bdc794473 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 11 Mar 2012 17:35:27 +0000 Subject: [PATCH] formalise foreign merges --- article.tex | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/article.tex b/article.tex index 3d8bd81..ad3a1ba 100644 --- a/article.tex +++ b/article.tex @@ -684,17 +684,24 @@ We will occasionally use $X,Y$ s.t. $\{X,Y\} = \{L,R\}$. \bigforall_{E \in \pendsof{X}{\py}} E \le Y \right] }\] +\[ \eqn{ Foreign Merges }{ + \patchof{L} = \bot \equiv \patchof{R} = \bot +}\] \subsection{Non-Topbloke merges} -We require both $\patchof{L} = \bot$ and $\patchof{R} = \bot$. +We require both $\patchof{L} = \bot$ and $\patchof{R} = \bot$ +(Foreign Merges, above). I.e. not only is it forbidden to merge into a Topbloke-controlled branch without Topbloke's assistance, it is also forbidden to merge any Topbloke-controlled branch into any plain git branch. Given those conditions, Tip Merge and Merge Acyclic do not apply. And $Y \not\in \py$ so $\neg [ Y \haspatch \p ]$ so neither -Merge Ends condition applies. Good. +Merge Ends condition applies. + +So a plain git merge of non-Topbloke branches meets the conditions and +is therefore consistent with our scheme. \subsection{No Replay} -- 2.30.2