GSoC & egit

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I am Roxana Constantin, I am a student and I want to participate to
GSoC 2007 and work for git with the project of enhancing egit, the
plugin for Eclipse.

I am posting my proposal and if you like you can review it and send me feedback.

proposal:
------------

egit enhancements

Project goal
The goal of my project is to enhance egit by improving the UI
integration with Eclipse of common functionality for users.

The users should be able to import with a wizard (clone in git) an
outside project, to commit and browse the history of the commits. Also
a perspective for egit (to include egit specifics), and extend the
preference page (just a hello message now) with informations like
user, email, or other properties.
I believe that this minimum requirements should be met in order to be
usable, so I would measure the success of my project by the amount of
these features implemented.
Also a documentation inside Eclipse help system would be useful.
(through an extension point)

Milestones
- from now and until May 28: get used with the source code, learn more
about git/jgit
(May 28 - June 10) - week 1- 2 : work on commit, get used with the jgit API
(June 11 - June 24) - week 3 -4: finish any work left with commit,
work for history browser
(June 25 - July 8) - week 5-6: finish any work left on the history
browser, add perspective, preference page
(July 9 - July 22)- week 7-8: work on fine tuning the already
implemented features, fix bugs, documentation, tests
(July 23 - August 5) - week 9-10: analyses supporting branches and
start to work towards supporting them: create, switch, delete
(August 6- August 20) - finish any work left, write the final
documentation, tests

Details
A few extension points I want to extend are:
org.eclipse.ui.preferencePages,  -- preference pages
org.eclipse.core.runtime.preferences  -- initial values for preference pages
org.eclipse.ui.importWizards,     -- clone a git repository
org.eclipse.ui.perspectives,       --   git perspective
org.eclipse.help.toc         -- documentation

Interfaces
I sow that in org.spearce.egit.core is the plugin core (non UI)
in org.spearce.egit.ui is the UI part of the plugin
and org.spearce.jgit is the library with the pure Java implementation of git.
I will use jgit in egit-core and egit-ui, probably mostly org.spearce.jgit.lib.*
I do not know yet if I will need to change something in the library.

Preparations
Because I never worked with git before:
I compiled and installed git and read the tutorial, some man pages,
and other docs from Git Documentation. I played with git to get
accustomed how it works.
I looked at egit sources, how the extension points from Eclipse are
extended, what functionality is already there, and I tested the
plugin.
I built a demo plugin in Eclipse SWT to show you that I know how to
work in the Eclipse environment.
It draws fractals. It adds a new wizard to Eclipse and you can create
a fractal in an existing project.
You can install it the usual way by copying it to Eclipse/plugins/
directory. The source code is in it.

I'm free the hole summer, so this will be my main task.

About me
I'm a Romanian student at Master's Degree in philosophy. My favorite
philosopher is Nietzsche.
I like a lot programming and I know Java and C. I studied C at
University (there are some classes in the Computer Science
department).
I have 2 years experience in Java and I know C at medium level. In
high school I learnt Pascal.
I use GNU/Linux – Ubuntu distro.
I found out that GsoC doesn't matter what courses one takes at
University, only open source programming matters, so I applied.

I previously worked on small projects (a Java visualizer for fractals,
not SWT, small dumb plugins for Eclipse, some UML editor but not
finished and aborted, basic programs in C). This will be an
extraordinary experience, working in such a dynamic group.

------------
end of proposal

Roxana Constantin

Attachment: fractals_1.0.0.jar
Description: application/java-archive


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]