JavaGit FAQ

General Questions

  1. Why would I want to use JavaGit?
  2. Who are the intended users of JavaGit?
  3. Do I still need git instaled?
  4. Where can I get the source?
  5. Isn't using Subversion to host a git-oriented program a bit hypocritical?
  6. Can I use git to access the source code in the mean time?
  7. Is JavaGit under active development?
  8. When will an alpha/beta/stable release be available?
  9. Why not implement git using java (this way you don't need git installed)?
  10. How is JavaGit different from Jgit/Egit?
  11. How can I contribute?

Trouble Shooting

  1. I've just installed git for the first time on this computer and I am getting this wierd error: "Your name cannot be determined from your system services". How can I fix it?

General Questions

  1. Why would I want to use JavaGit?

    So that your java application can access, create and modify git repositories with as little work as possible. Without JavaGit, you will need to write and manage forking code yourself, flex your JNI muscle or reimplement git in Java yourself.

  2. Who are the intended users of JavaGit?

    Java developers who want to access, create or modify git repositories from their own applications.

  3. Do I still need git installed?

    Yes. JavaGit currently uses the command-line git client to interface with git repositories. There are currently no plans for a pure java git implementation, but we are open to doing such an implementation in the future. If this is super important to you, let us know.

  4. Where can I get the source?

    The code is in a publicly accessible SVN repository at:

        $ svn checkout https://subversive.cims.nyu.edu/osp/

  5. Isn't using Subversion to host a git oriented program a bit hypocritical?

    Yes, it is. We chose subversion for the time being because some of the tools we are using for JavaGit development (Eclipse, Crucible, Fisheye) do not yet interface with git repsitories. Our sister project, Gitclipse, is working to fill the Eclipse-Git void.

    Once these tools work sufficiently well with git, we will move over to using git for our repository.

  6. Can I use git to access the source code in the mean time?

    Yes, you can! Check out the git-svn command; it works very well.

  7. Is JavaGit under active development?

    Extremely. We have commits on a daily basis, just check the SVN log:

        $ svn log https://subversive.cims.nyu.edu/osp/javagit

  8. When will an alpha/beta/stable release be available?

    We are expecting an alpha release in the next few weeks. We hope to have a beta release by the end of the summer and a stable release soon thereafter.

  9. Why not implement git using java (this way you don't need git installed)?

    We'd LOVE to, but unfortunately we don't have the time. We are gladly accepting patches. ;-)

  10. How is JavaGit different from Jgit/Egit?

    JavaGit was conceived of as a complementary project to the GitClipse projct, an Eclipse plugin to provide git support. It was a logical choice for us to split the project into the user oriented project, Gitclipse, and the developer oriented project, JavaGit. Since the projects are separate, the JavaGit project is free to concentrate on providing a top-notch library/API for use in other applications.

    Another difference between JavaGit and Jgit/Egit is that the JavaGit team wanted to quickly implement access to git repositories. This goal lead us to start by forking to git itself to provide git functionality. Knowing that this may be a short-term solution, we built JavaGit so that we can easily replace the command line interface (CLI) functionality with JNI, pure Java, or some other implementation in the future. Jgit/Egit only provides a pure Java implementation.

  11. How can I contribute?

    Join the conversation on the developer mailing list. If there is something you want to work on, let us know. If you want to work on the project but don't know where to start, introduce yourself and the team can help you find something to work on. There are lots of things to do.

Trouble Shooting

  1. I've just installed git for the first time on this computer and I am getting this wierd error: "Your name cannot be determined from your system services". How can I fix it?

    This is happening because your global username and email address have not been set up yet. To set your default username and email adderess, run the following git commands (be sure you use your information in place of the example information):

        git config --global user.email "you@example.com"
        git config --global user.name "Your Name"

    If you prefer to set your identity only in the current repository, omit the '--global' option from the above commands.

Make input easy to prepare and output self-explanatory.
- The Elements of Programming Style (Kernighan & Plaugher)