Skip to content

samth/git-slice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

For slicing git repositories

Warning!

This performs permanent modification to your git repository! Be careful.

Installation

raco pkg install git-slice

Sample use:

$ cd my-repo
$ racket -l git-slice subdir

This destructively updates my-repo to only include subdir.

It performs multiple steps, which can be split out as follows:

$ mkdir /path/to/tmp-data
$ cd my-repo
$ racket -l git-slice/compute subdir /path/to/tmp-data
$ racket -l git-slice/filter /path/to/tmp-data
$ racket -l git-slice/chop /path/to/tmp-data

The git-slice/filter and git-slice/chop steps can take a long time. They can be sped up by using a ramdisk: see here for Linux instructions to set one up, and then add -d /tmp/ramdisk/scratch as an additional argument. This is also supported for the git-slice command itself. The provided path must not yet exist.

git-slice can be provided a second argument for a temporary directory to use to store metadata files. If not provided, a temporary directory is created. This directory is not removed after slicing.

The --dry-run command can be provided to any command to see what it would do without doing any permanent damage.

About

Slicing git repositories.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages