Skip to content
/ get Public

Clone and update git repositories and ensure they are available on the path.

Notifications You must be signed in to change notification settings

jbmorley/get

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Get

Description

Get is a simple script for fetching and updating a collection of git repositories and adding them to your path. It is intended for use in build scripts to ensure you always have the latest version of your toolchain when running builds.

Get should work equally well on Linux and OS X systems but has only been tested on OS X.

Usage

Using get is simply a matter of adding something like the following line to the beginning of your build script.

$( curl https://raw.github.com/jbmorley/get/master/get-min | python - <profile> )

Profiles specify the repositories to add to your path. They can be provided inline, or as a local or remote path (see below).

If you plan to use get as part of a Hudson or Jenkins build system, don't forget to explicitly source your .bash_profile (or equivalent) to ensure all your other tools are on the path.

source ~/.bash_profile
$( curl https://raw.github.com/jbmorley/get/master/get-min | python - <profile> )

Profiles

Profiles are specified as a JSON mapping of repository name to path:

{
  "neko": "[email protected]:jbmorley/neko.git",
  "mnfy": "[email protected]:brettcannon/mnfy.git"
}

Get supports inline, local and remote paths for profiles.

Inline

$( curl https://raw.github.com/jbmorley/get/master/get-min | python - '{ "neko": "[email protected]:jbmorley/neko.git" }' )

Local

$( curl https://raw.github.com/jbmorley/get/master/get-min | python - profile.json )

Remote

$( curl https://raw.github.com/jbmorley/get/master/get-min | python - https://raw.github.com/jbmorley/get/master/example.json )

Default

If no profile is specified then the default local path of ~/.get/default.json will be used.

Future

  • Add some automated tests to ensure future development doesn't break the supported range of profile types.
  • Check support for cloning local repositories. This should work but requires testing.

About

Clone and update git repositories and ensure they are available on the path.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published