@@ -5,7 +5,7 @@ const path = require("path");
55const fs = require ( "fs" ) ;
66const readline = require ( "readline" ) ;
77const compareVersions = require ( "compare-versions" ) ;
8- // const shell = require("shelljs");
8+ const shell = require ( "shelljs" ) ;
99// const chalk = require("chalk");
1010
1111const npmConfig = require ( "./helpers/get_npm_config.js" ) ;
@@ -23,16 +23,32 @@ function deleteFileInCurrentDir(file) {
2323 } ) ;
2424}
2525
26- function removeGitRepository ( ) {
26+ function hasGitRepository ( ) {
2727 return new Promise ( ( resolve , reject ) => {
28- exec ( "rm -rf .git/" , ( error ) => {
29- if ( error ) reject ( new Error ( error ) ) ;
28+ exec ( "git status" , ( err , stdout ) => {
29+ if ( err ) {
30+ reject ( new Error ( err ) ) ;
31+ }
3032
31- resolve ( ) ;
33+ const regex = new RegExp ( / f a t a l : \s + N o t \s + a \s + g i t \s + r e p o s i t o r y / , "i" ) ;
34+
35+ /* eslint-disable-next-line no-unused-expressions */
36+ regex . test ( stdout ) ? resolve ( false ) : resolve ( true ) ;
3237 } ) ;
3338 } ) ;
3439}
3540
41+ function removeGitRepository ( ) {
42+ return new Promise ( ( resolve , reject ) => {
43+ try {
44+ shell . rm ( "-rf" , ".git/" ) ;
45+ resolve ( ) ;
46+ } catch ( err ) {
47+ reject ( err ) ;
48+ }
49+ } ) ;
50+ }
51+
3652function askUserIfWeShouldRemoveRepo ( ) {
3753 return new Promise ( ( resolve ) => {
3854 process . stdout . write (
@@ -177,7 +193,8 @@ function reportError(error) {
177193
178194 if ( error ) {
179195 process . stdout . write ( "\n\n" ) ;
180- addXMark ( ( ) => process . stderr . write ( chalk . red ( ` ${ error } \n` ) ) ) ;
196+ process . stderr . write ( ` ${ error } \n` ) ;
197+ // addXMark(() => process.stderr.write(chalk.red(` ${error}\n`)));
181198 process . exit ( 1 ) ;
182199 }
183200}
0 commit comments