move-and-update
v1.1.0
Published
Move file and update references
Downloads
8
Maintainers
Readme
Move and Update
This utility helps git mv
files around inside a codebase with git
and update all references to those files.
It's built on top of refactoring-codemods and FB's jscodeshift codemod toolkit.
Requirements
- node: >=7.9.0
Getting started
Install
yarn install -D move-and-update
Command Line
This module provides a simple CLI:
./node_modules/.bin/move-and-update --help
If combined with Yarn, it can be run as:
yarn move-and-update --help
It can also be used as part of an npm script:
{
"scripts": {
"move": "move-and-update"
},
"devDependencies": {
"move-and-update": "latest"
}
}
yarn move -- lib/state/ lib/redux
Note this takes advantage of the run-script capability of passing arguments to the script by using --
.
Module
The module exports a default move
function that takes a file path, a destination path, and a dry option. The function returns a promise.
const move = require('move-and-update');
const path = require('path');
const file = path.resolve(process.cwd(), 'src', 'styles', 'styles.css');
const dest = path.resolve(process.cwd(), 'src', 'styles.css');
const dry = true;
move(file, dest, dry).then(
() => console.log('Success'),
err => console.err(err)
);
Options
There is one option: dry, which is defaultly false
The dry
option is passed as an argument:
const move = require('move-and-update');
move(file, dest, true);
CLI
| Option | Description | Default |
| -----------| --------------- | ----------- |
| -d
| Whether to run all processes in dry
mode | false |
| -h
| Print help menu | |
You can also see the available options in the terminal by running:
yarn move-and-update --help