Generate new projects from git repositories
Project description
new
Generate new projects from git repositories
new is a command to create new projects based on existing git repos. It simply shallow clones a repository to a directory with your specified new project name, and cleans up the git files like they were never there. It also supports string replacement.
Usage
You can create new project from any github repository with just the username and project name
The following command will create a new project for you based on this one:
new myNewProject divanvisagie/new
You can also specify a URL to any git repository that you have access to:
new myNewProject git@gitlab.com:divan/new.git
These examples are just simple clones though, new also lets authors configure a repository so that it will prompt you to replace strings that you may want to rename for your project.
You can give it a try with:
new myNewProject divanvisagie/kotlin-tested-seed
You will see that it prompts you to replace the package name, just pressing enter will skip this and keep the name:
> new myNewProject divanvisagie/kotlin-tested-seed
Creating testbed from https://github.com/divanvisagie/kotlin-tested-seed.git
Enumerating objects: 14, done.
Counting objects: 100% (14/14), done.
Compressing objects: 100% (9/9), done.
Total 14 (delta 0), reused 10 (delta 0), pack-reused 0
Enter replacement text for com.divanvisagie.example
text : com.divanvisagie.example
description: The package name
> com.divanvisagie.mynewproject
The reason we see this is because the kotlin-tested-seed
repository contains a .new.yml
file at its root:
replace:
strings:
- match: com.divanvisagie.example
description: The package name
You can configure as many match strings as you want in your own seed projects.
Installation Options
Windows
First install scoop
scoop bucket add divanvisagie https://github.com/divanvisagie/scoop-bucket
scoop install new
macOS
First install homebrew
brew tap divanvisagie/homebrew-tap
brew install divanvisagie/homebrew-tap/new
Linux
Download the appropriate package from here.
Use either the debian package or the tarball
Manual Installation
Download the latest tar.gz and run install.sh
Development
Tests are run with tox
goreleaser --skip-validate --skip-publish --rm-dist
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file new-project-0.0.1.tar.gz
.
File metadata
- Download URL: new-project-0.0.1.tar.gz
- Upload date:
- Size: 4.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9cf74e8e914f0db5b2857750f075eaf33a23f9417c07b736a6f5425e44e2d979 |
|
MD5 | 49be11c81c8823d5f81bbaf410b7103f |
|
BLAKE2b-256 | 92e6e66b99f71dcd78965e98adbacd37a319fcbc6dbcd017ee545e45cfeb354a |
File details
Details for the file new_project-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: new_project-0.0.1-py3-none-any.whl
- Upload date:
- Size: 17.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | eae829401a4bea699510d74276b0a824f913f6099d93642dcc867b5ac84a2121 |
|
MD5 | 78721c91e1bc55b930f67c441c1e57f6 |
|
BLAKE2b-256 | 571844d53befa458c7d627368c0e4e182790757f72d0d2a963f5fcdb0d32c3c2 |