PacktLib: Gitolite Essentials

Gitolite Essentials

Credits

About the Author

Acknowledgments

About the Reviewers

www.PacktPub.com

Preface

Getting Started with Gitolite

Common Access Control needs

Access Control example with Gitolite

Sampling of Gitolite's power features

Gitolite and the Git control flow

Trying out Gitolite

Summary

Installing Gitolite

Gitolite users and the hosting user

Preparing the server

Getting the Gitolite source

Installing the code

Setting up Gitolite

Summary

Your Users and Gitolite

Accessing Git repositories

Accessing Gitolite repositories

Getting information from Gitolite

Gitolite commands

Getting help for commands

Troubleshooting SSH issues

Summary

Adding and Removing Users

Adding users

Users with multiple key pairs

Giving some users a shell

Managing keys outside Gitolite

Getting user group information from LDAP

Removing users

Summary

Managing Repositories

Adding repositories

Adding existing repositories

Common problems and troubleshooting

Summary

Getting Started with Access Control

Basic access control examples

Lexical syntax of the conf file

The syntax of access control rules

Branch level access control and refexes

Defining user and repo groups

The include statement

Rule accumulation and delegation

Summary

Advanced Access Control and Configuration

Making changes to the rc file

Giving users their own branches

Types of write operations

Allowing Gitweb and Git-daemon access

Specifying Git config values and Gitolite options

Applying deny rules to read access

Understanding VREFs

Summary

Allowing Users to Create Repos

Putting repositories in Sub-directories

Repository wildcards

Explaining wild repos to your users

Managing with just wild repos

Deleting wild repositories

Summary

Customizing Gitolite

Core and non-core Gitolite

Types of non-core code and examples

Writing your own non-core code

Summary

Understanding VREFs

Migrating update hooks

Passing arguments to the VREF code

Using the permission field

Default is success

Example VREFs and their usage

Writing your own VREF

Summary

Mirroring

Terminology and basic concepts

Setting up mirroring

Local repositories and hostname substitution

Redirecting pushes

Manual synchronization

Switching to a different master

Summary

Index