Skip to content
This repository has been archived by the owner on Oct 24, 2018. It is now read-only.
peterdietz edited this page Mar 10, 2012 · 8 revisions

#Getting Started with DSpace + Git

Clone the repository. (The git repo is ~65MB)

git clone git://github.com/DSpace/DSpace.git
cd DSpace

At this point, you now have a copy of the DSpace Source Code, and you are checked out to the branch "master" (master is akin to svn trunk), which will work, but it is the bleeding edge of development and not recommended for production instances. Developers intending to contribute code to the core of DSpace should develop on master.

Otherwise, if you would like to develop on DSpace for your local needs (University, Library, or Institution), you are encouraged to fork this repository, and commit your changes to your personal/organizational repository. We recommend that you build your repository off of a released "tag" of DSpace such as dspace-1.8.1. The benefit of being based off of a tag/release-branch is that releases have a series of testing phases to ensure high quality, and there is some maintenance of bug and security fixes.

git checkout dspace-1.8.1

From there, the standard DSpace build instructions follows.

mvn package
cd dspace/target/dspace-<version>-build.dir
ant update
/etc/init.d/tomcat6 restart

Note: If the build process complains about a missing directory like: dspace/module/jspui/src/main/webapp then you'll have to create those directories. See the fix missing directories when compiling.

Quick Primer on Using Git

Checking the status of your tree.

git status

Looking at the difference of your work in progress.

git diff

Commit your changes to your local tree.

git commit NameOfFileToCommit.java

Update your tree to get all the changes pushed to this central Git Repository

git pull

If you would like to update your local checkout, for instance before sending a pull request for your local changes, git rebase is the tool you will use, e.g.

git rebase master

At this point, if you have any conflicts between your local changes and the latest changes on GitHub, git will prompt you to resolve these conflicts.

Update: The DSpace Developers have voted to migrate from SVN to GitHub. While we're still working out the ideal workflow for contributions, existing SVN committers will have direct push access to the DSpace repo, while contributors are encouraged to submit a Pull Request for review.

If you have any questions contact the DSpace community either on IRC, or on the dspace-devel mailing list.

Clone this wiki locally