~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to doc/developers/scratch.txt

  • Committer: Martin Pool
  • Date: 2007-06-18 02:04:20 UTC
  • mto: This revision was merged to the branch mainline in revision 2551.
  • Revision ID: mbp@sourcefrog.net-20070618020420-3e205xzlugq682j9
(in progress) analysis of commit

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
"use-case apis" - means not just the api called by the Command layer, but
 
2
also the stack going down.
 
3
 
 
4
top level - an atomic api - whole thing should either commit or not
 
5
 
 
6
needs to come back and interact with the user to get the commit message, if
 
7
not previously specified
 
8
 
 
9
hooks that will modify the wt before commit takes place;
 
10
line endings - actually not an issue for commit because we propose to always commit what's in the tree and just transform them when reading back out
 
11
 
 
12
problem with commit builder api - you need to build a whole tree in it.
 
13
 
 
14
takes contents of a workingtree, logically puts it into a branch and the
 
15
branch's repository
 
16
point is that it should only store the new things in the tree which are 
 
17
not already in the tree
 
18
* possibly updates the workingtree after the commit to tell it about the new
 
19
  basis revision
 
20
 
 
21
if you commit only a single file, you should only need to tell it about that 
 
22
single file.
 
23
 
 
24
if implemented with dirstate present, will still make good use of dirstate.
 
25
 
 
26
requirements wrt branches - bound branches do complicate it, so does bzr-svn. 
 
27
 
 
28
commit is an operation between the tree and the branch.
 
29
 
 
30
api should only be told about content changes by the tree.