chiark / gitweb /
Results of testing git merging
[topbloke.git] / FORMAT
diff --git a/FORMAT b/FORMAT
index e411d3875fa978e7908561a3f02ff23bce2ccd4b..473946e32f37daec824e4176f2fd924d6a4c029f 100644 (file)
--- a/FORMAT
+++ b/FORMAT
@@ -10,31 +10,44 @@ In-tree, there are metadata files in .topbloke
     Files which are per-patch and do not inherit any contents
     or changes from bases or dependencies:
 
-       msg             brach "commit message"
+       msg             patch "commit message"
                        ("# not applicable" in bases)
 
        deps            direct dependencies, one per line
                        as either:
-                               topbloke patch name
-                               /refs/heads/<something>
-                       ("# not applicable" in bases)
+                               <topbloke patch name>
+                               .f <ref name including refs/heads/>
+                               .tg <ref name not including refs/heads/>
+                       (empty in base branches)
+
+       deleted         exists (but empty) if branch is deleted
+                       exist in tip only branch
+
+       patch-          name of this topbloke patch (plus a newline)
+                       exists in base and tip
+
+       topgit-         name of the topgit branch that this was
+                       imported from and which we should merge from
+                       (plus a newline); exists in tip only
 
-       flags           flags that apply to this patch, one per line
-                       base has its own, perhaps different, set of flags;
-                        Unknown flags starting with [a-z] are ok;
-                        otherwise fatal.  Currently defined flags:
-                               Deleted         patch is deleted
-                                               (valid on tip only)
+       [^+]*-          another property that applies to this patch;
+                       if not known to this version of topbloke then it
+                       is safe to:
+                         - merge this file as text when merging
+                           from base into base or tip into tip
+                         - throw away this file when merging from
+                           base into tip or from dep into base
 
-    Files which not inherit contents and changes from dependencies:
+    Files which inherit contents and changes from dependencies
+    have names starting with "+":
 
-       included        actual included deps, one per line
+       +included       actual included deps, one per line
                                format as for deps
 
-       pflags          flags that apply to this patch and all its
-                       dependencies (ie, flags that propagate)
-                        Unknown flags starting with [a-z] are ok;
-                        otherwise fatal.  No currently defined flags
+       +*-             another property that is inherited; it is also
+                       safe to:
+                        - merge this file as text when merging
+                          from tb deps into bases or bases into tips
 
 
 <full-name> has the format: