diff --git a/packages/react-scripts/scripts/init.js b/packages/react-scripts/scripts/init.js index 8837c28ea64922063fcf4ab89506f1bf487af55c..3347a37f4f3ff8952f62f0fa978e6806c53e7737 100644 --- a/packages/react-scripts/scripts/init.js +++ b/packages/react-scripts/scripts/init.js @@ -40,7 +40,7 @@ function insideMercurialRepository() { } } -function gitInit() { +function tryGitInit() { try { execSync('git --version', { stdio: 'ignore' }); @@ -114,23 +114,22 @@ module.exports = function( // Rename gitignore after the fact to prevent npm from renaming it to .npmignore // See: https://github.com/npm/npm/issues/1862 - fs.move( - path.join(appPath, 'gitignore'), - path.join(appPath, '.gitignore'), - [], - err => { - if (err) { - // Append if there's already a `.gitignore` file there - if (err.code === 'EEXIST') { - const data = fs.readFileSync(path.join(appPath, 'gitignore')); - fs.appendFileSync(path.join(appPath, '.gitignore'), data); - fs.unlinkSync(path.join(appPath, 'gitignore')); - } else { - throw err; - } - } + try { + fs.moveSync( + path.join(appPath, 'gitignore'), + path.join(appPath, '.gitignore'), + [] + ); + } catch (err) { + // Append if there's already a `.gitignore` file there + if (err.code === 'EEXIST') { + const data = fs.readFileSync(path.join(appPath, 'gitignore')); + fs.appendFileSync(path.join(appPath, '.gitignore'), data); + fs.unlinkSync(path.join(appPath, 'gitignore')); + } else { + throw err; } - ); + } let command; let args; @@ -173,8 +172,9 @@ module.exports = function( } } - if (gitInit()) { - console.log('Initialized git repository'); + if (tryGitInit()) { + console.log(); + console.log('Initialized a git repository.'); } // Display the most elegant way to cd.