Keep repository in sync with its template.
Generates pull requests to bring a repository back in sync with its template.
So by making changes to the template and applying template-sync the target project will be updated accoring to the template.
Works with github and bitbucket.
This is the engine for cli operation please see template-tools/template-sync-cli
Merges contents from template branch into destination branch handling some special cases for:
- Licenses - rewriting license years
- line set files like .npmignore and .gitignore - by merging both sets together
- package.json - merge (.*)[Dd]ependencies, engines and scripts
- rollup.conf.*js - copy / rewrite + detect dev dependencies
- *.yaml - merge
- .travis.yml - merge with hints
- *.toml - merge
- *.ini - merge
- *.json - merge
- README.md - merge badges
- arlac77/template-cli-app rollup ava travis
- arlac77/template-esm-only ava travis
- arlac77/template-svelte-component svelte rollup testcafe travis
- arlac77/template-svelte-app svelte rollup pkgbuild travis
- arlac77/template-kronos-component template-esm-only with node 14
- arlac77/template-kronos-app node 14 + systemd
- Delete
- INI
- Merger
- normalizeTemplateSources
- jspath
- actions2message
- actions2messages
- MergeLineSet
- sortedKeys
- exportsConditionOrder
- Package
- Readme
- ReplaceIfEmpty
- Replace
- Skip
Extends Merger
Delete entry.
Extends Merger
Merge ini entries
Mergable content
Deliver some key properties.
entry
ContentEntry
Returns Object extracted properties
Generate commits as result of merging two entries.
context
destinationEntry
sourceEntry
options
Remove duplicate sources. Sources staring with '-' will be removed
Returns Array<string> normalized sources
object
path
cb
Returns any actions as one string lines ordered by scope
Extends Merger
order in which json keys are written
Order in which exports are searched
Extends Merger
Merger for package.json
Deliver some key properties.
- name
- version
- description
- main
entry
ContentEntry
Extends Merger
Injects badges into README.md.
Extends Merger
Overwrites none existing entries from template.
Extends Merger
Always overwrite entry from template
Extends Merger
Does not generate destination entry
With npm do:
npm install -g @template-tools/sync-cli
BSD-2-Clause