No description
This repository has been archived on 2024-07-19. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
Marc Cataford 02a7b2d5d8
Initial upload (#1)
* feat: minimal working version

* chore: clean swap files

* chore: amend gitignore to include swaps

* chore: typecheck

* wip: ignore git, support dir

* wip: ignores, directory handling

* wip: add prompting, better path management

* refactor: centralize printing

* wip: handle jsondecodeerror

* docs: README

* chore: add inquirer to dependencies

* wip: error handling when not in git
2020-01-05 14:46:10 -05:00
script Initial upload (#1) 2020-01-05 14:46:10 -05:00
src Initial upload (#1) 2020-01-05 14:46:10 -05:00
.gitignore Initial upload (#1) 2020-01-05 14:46:10 -05:00
LICENSE Initial commit 2020-01-05 00:01:03 -05:00
README.md Initial upload (#1) 2020-01-05 14:46:10 -05:00
requirements.txt Initial upload (#1) 2020-01-05 14:46:10 -05:00
setup.py Initial upload (#1) 2020-01-05 14:46:10 -05:00
tasks.py Initial upload (#1) 2020-01-05 14:46:10 -05:00

carboncopy

Keep your repositories up-to-date with their templates in a few keystrokes.

Why carboncopy?

Github Template Repositories made it really easy to skip project boilerplate setup steps and to produce "new project kits" that ensure that all your (or your organization's) new projects have all the must-haves. Problem is, templates aren't set in stone and it's likely that templates get updated after some projects have been spawned from it.

Because template repositories are different than forks, you can't simply rebase your project to gulp in the latest templated goodies -- leaving you with the gnarly task of manually moving files over. No more.

With carboncopy, you are one command away from pulling in the latest changes from your template repositories as if it were a regular base branch. You can configure it via its RC file to ignore certain files from the template, and more!

📦 Installation

As it is not yet published on PyPi, you can simply clone this repository and use pip install <path> to install it in your local environment.

🔨 Usage

From your repository, simply type carboncopy in your terminal to bring up a prompt asking you what to pull from your template repository. Any change made is left as an unstaged change so you can commit and merge it however you want.

🔧 Configuration

You can configure the way carboncopy handles your template's contents by creating a .carboncopyrc file at the root of your repository. Documentation TBD. See src/carboncopy/config_defaults.py for general layout.