Commit 4408b20f8eddc1e1e4f3c865b8b59895590c0778

Stefan Sperling 2021-08-26T20:29:59

update the TODO list

diff --git a/TODO b/TODO
index bb206b4..a5c4e90 100644
--- a/TODO
+++ b/TODO
@@ -1,9 +1,19 @@
-lib:
-- create pack file deltas
+got:
+- Add support for creating merge commits. This should move the work tree
+  onto a temporary branch like rebase and histedit do, recording commit
+  IDs and such in refs/got/merge/ as needed to keep state.
+  Bonus points for being able to merge an arbitrary tree into an arbitrary
+  subdirectory of the work tree. This would be required for merging vendor
+  branches. Say you have a branch 'llvm-12' which intially contains a 12.0
+  release tree as published by the LLVM project, added to the repository
+  with a command such as 'got import -b llvm-12'. On the main branch we
+  would want to merge files from the llvm-12 branch into /usr/src/gnu/llvm
+  instead of the root directory checked out at /usr/src.
+  The next LLVM release 12.1 would later be committed onto the llvm-12
+  branch and then merged into main at /usr/src/gnu/llvm in the same way.
 
 libexec:
 - add http(s) transport with libtls in got-fetch-pack or a new helper
-- implement got-send-pack in order to push objects to servers
 
 tog:
 - implement horizonal scrolling in all views
@@ -14,3 +24,6 @@ tog:
 
 gotweb:
 - tracey has a gotwebd thingy in progress somewhere
+
+gotd:
+- needs to be designed and implemented