Skip to content

A (fairly naive) implementation of a JGit Git repository using Amazon DynamoDB and S3 for storage

License

Notifications You must be signed in to change notification settings

johnny0917/jgit-aws

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jgit-aws Build Status

This is a (fairly naive) implementation of a JGit Git repository using Amazon DynamoDB and S3 as a store. It is built on the JGit DfsRepository - and it is not particularly optimized. It is at a very early stage and has not been properly tested. Nonetheless, I am hoping this is useful for others - and a bit selfishly, I am hoping people will report back issues, contributions.

Usage

Usage is fairly straighforward - create a new instance of the AmazonRepository using the AmazonRepository.Builder, and passing in a JGitAwsConfiguration setup the way you like.

Storage

The repository uses a Dynamo table called jga.Refs to store Git refs, a Dynamo table called jga.Configurations to store a repository's config, a single S3 bucket called jga.Packs to store pack file contents, and a Dynamo table called jga.PackDescriptions to store meta-data about the pack files. All these names are configurable.

Configuration

You can configure the Dynamo table names, as well as the S3 bucket name by setting the appropriate properties on JGitAwsConfiguration. Note that you can also configure the initial provisioned throughput used on the Dynamo tables using JGitAwsConfiguration - by default they are all set up for 1 read unit and 1 write unit. Scaling this up is up to you to do manually or using a tool such as Dynamic DyanmoDB.

About

A (fairly naive) implementation of a JGit Git repository using Amazon DynamoDB and S3 for storage

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages