Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

gitolite-dtg

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

gitolite-dtg

  • 0.2.0
  • Rubygems
  • Socket score

Version published
Maintainers
2
Created
Source

gitolite-dtg

Digital Technology Group, University of Cambridge

Forked from wingrunr21/gitolite

This gem provides a Ruby read-only interface to the gitolite git backend system (by parsing the configuration file found in the bare gitolite-admin repository). It aims to enable an application to query gitolite repository permissions based on data written in the gitolite-admin repository.

This fork is designed to work as part of a Ruby authorization mechanism to gitolite repositories (see the related gollum-dtg project for an example of how we use it).

Please see the upstream project for a Ruby API aiming to provide all management functionality (read and write) that is available via the gitolite-admin repository (like SSH keys, adding/removing repositories, etc).

Requirements

  • Ruby 1.8.x or 1.9.x
  • a working gitolite installation
  • appropiate read permisions for the gitolite-admin bare repository

Installation

gem install gitolite-dtg

Usage

Load a gitolite-admin repo

require 'gitolite-dtg'
ga_repo = Gitolite::Dtg::GitoliteAdmin.new("/path/to/gitolite/repos/gitolite-admin.git")

This method can only be called on an existing gitolite-admin repo.

Caveats

Windows compatibility

The grit gem (which is used for under-the-hood git operations) does not currently support Windows. Until it does, gitolite will be unable to support Windows.

Group Ordering

When the gitolite backend parses the config file, it does so in one pass. Because of this, groups that are modified after being used do not see those changes reflected in previous uses.

For example:

@groupa = bob joe sue
@groupb = jim @groupa
@groupa = sam

Group b will contain the users jim, bob, joe, and sue

The gitolite gem, on the other hand, will always output groups so that all modifications are represented before it is ever used. For the above example, group b will be output with the following users: jim, bob, joe, sue, and sam. The groups in the config file will look like this:

@groupa = bob joe sue sam
@groupb = jim @groupa

Contributors

FAQs

Package last updated on 29 Oct 2012

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc