aboutsummaryrefslogtreecommitdiff
path: root/TODO
diff options
context:
space:
mode:
Diffstat (limited to 'TODO')
-rw-r--r--TODO20
1 files changed, 20 insertions, 0 deletions
diff --git a/TODO b/TODO
index d44842f6..69fbc307 100644
--- a/TODO
+++ b/TODO
@@ -31,6 +31,12 @@ Object
it should be renamed to 'sha'. There was a time when references where allowed as
well, but now objects will be 'baked' to the actual sha to assure comparisons work.
+Commit
+------
+* message is stipped during parsing, which is wrong unless we parse from
+ rev-list output. In fact we don't know that, and can't really tell either.
+ Currently we strip away white space that might actually belong to the message
+
Config
------
* Expand .get* methods of GitConfigParser to support default value. If it is not None,
@@ -62,6 +68,20 @@ Index
* Proper merge handling with index and working copy
* Checkout individual blobs using the index and git-checkout. Blobs can already
be written using their stream_data method.
+* index.add: could be implemented in python together with hash-object, allowing
+ to keep the internal entry cache and write once everything is done. Problem
+ would be that all other git commands are unaware of the changes unless the index
+ gets written. Its worth an evaluation at least.
+* index.remove: On windows, there can be a command line length overflow
+ as we pass the paths directly as argv. This is as we use git-rm to be able
+ to remove whole directories easily. This could be implemented using
+ git-update-index if this becomes an issue, but then we had to do all the globbing
+ and directory removal ourselves
+* commit: advance head = False - tree object should get the base commit wrapping
+ that index uses after writing itself as tree. Perhaps it would even be better
+ to have a Commit.create method from a tree or from an index. Allowing the
+ latter would be quite flexible and would fit into the system as refs have
+ create methods as well
Refs
-----