@juigorg/est-tempore v2.0.3
GHEX
Github Extractor CLI
List github repositories or download individual files or whole repos conveniently. Faster than clone depth=1 for an entire repo and much faster if you just need a single file
See an Asciinema video of usage (including with fzf) below.
Quickstart CLI
Install node then:
npx @juigorg/est-tempore -h
Or:
npm install -g @juigorg/est-tempore
Usage
@juigorg/est-tempore [options] <paths...>
Arguments
paths
One or more paths to download. Can be a whole repo, or a folder or a file within it. Supports globs but the path should be quoted. To exclude use a negative glob ("!" at the beginning). Can mix paths from different repos (conflicts resolved left to right). A trailing slash means a whole folder. Conflicting files are skipped by default.
Options
-l, --list
List files. Useful as a dry run and with fzf. Does not download. Will show show conflicts for the current working directory or -d / --dest.
-p, --prefix
Append the owner/repo prefix to the path in list output. This is useful for feeding back into @juigorg/est-tempore.
-c, --conflicts-only
Only show conflicts when listing.
-d, --dest (folder)
Destination folder. Defaults to the current directory.
-i, --case-insensitive
Ignores case when checking for conflicts. Default is case-sensitive--i.e. casing matters.
-f, --force
Overwrite all existing conflicting files. Default false.
-e, --echo-paths
After writing, outputs the path of each file plus a new line. Useful for piping to other commands. Also sets -quiet & --no-color.
-s, --strip (number)
Strip the first n directories from paths. If a path doesn't have enough directories to strip, it's skipped.
-q, --quiet
No success or error messages.
--no-prefix
Remove the owner/repo prefix from the path in list output
--no-colors
Strip ansi escape characters used to color output. @juigorg/est-tempore respects the NO_COLOR env var if set also.
Downloading Examples:
Entire repo:
npx @juigorg/est-tempore facebook/react
Specific folder:
npx @juigorg/est-tempore "facebook/react/packages/*"
Specify destination:
npx @juigorg/est-tempore -d local/dest facebook/react
Specific files
npx @juigorg/est-tempore facebook/react/.circleci/config.yml facebook/react/.github/stale.yml
Different repos mixed together"
npx @juigorg/est-tempore facebook/react micromatch/picomatch
Listing Examples:
Only conflicts
npx @juigorg/est-tempore -lc -d local/dest facebook/react
Specific folder
npx @juigorg/est-tempore -l "facebook/react/.circleci/*"