Fork EGit into its own project
[egit.git] / TODO
blob5f35b2517538be00fcc3430537d7dff3eb8636f1
1 = Eclipse Plugin Wishlist =
3 Now that we have some basic features in the Eclipse plugin, we need
4 to focus on making it usable by average users doing daily tasks.
6 == Create Branch ==
8 Create a new branch from any revision specification.
10 == Delete Branch ==
12 Delete a branch.
14 == Switch Branch ==
16 Switch to an existing branch, updating the working directory to match.
18 Note that updating the working directory may require a 3 way merge
19 if the working directory is dirty (git checkout -m).
21 My usual git working style is to not switch branches with a dirty
22 working directory; I always commit to the current branch before
23 switching to a new one. I mention that because I assume it'll be
24 easier to implement that workflow first; once you have commit
25 capability, you can do that style of branch switching (either
26 preventing the switch or doing an implicit commit when the working
27 directory is dirty) without having to worry about merging. ''--
28 Steven Grimm''
30 == Merge ==
32 Merging changes from one local branch to another.
34 Again, like fetch I'd like to keep egit/jgit 100% pure Java and
35 implement merge-recursive in Java.  We may need to invoke RCS
36 merge if Eclipse doesn't have its own 3 way file merge algorithm
37 available, or do what core Git just did and implement a 3 way in
38 memory merge algorithm.  git-merge-recursive is only 1336 lines of C
39 so it should not be too difficult to port the algorithm to pure Java.
41 == SVN Integration ==
43 It would be swell -- but put it at the bottom of your priority list
44 -- to have git-svn interoperability; sadly most of my git usage at
45 the moment is in cloned svn repositories and it would be great if
46 egit could do the right thing when the current git repo is cloned
47 from svn. What "the right thing" is, exactly, is debatable, but I
48 suppose some kind of integration with the Subclipse plugin is one
49 possibility (and if nothing else, that plugin probably has code
50 that can be reused.) I'd like to be able to update from and commit
51 to the parent svn repository. ''-- Steven Grimm''
53 I'm considering this to be out of scope for the time being, but if
54 someone takes it on and submits reasonable patches we'll include
55 them. ''-- Shawn Pearce''