Skip to content

Instantly share code, notes, and snippets.

@giladno
Created March 24, 2017 22:26
Show Gist options
  • Save giladno/757cf89a32b2f245bac50d7460ccf8ad to your computer and use it in GitHub Desktop.
Save giladno/757cf89a32b2f245bac50d7460ccf8ad to your computer and use it in GitHub Desktop.
Update react-native project
#!/bin/bash
INPUT=`pwd`
OUTPUT=`pwd`'_upgrade'
NAME=`node -e "console.log(require('./package.json').name);"`
DEPENDENCIES=`node -e "console.log(Object.keys(require('./package.json').dependencies).join(' '));"`
DEV_DEPENDENCIES=`node -e "console.log(Object.keys(require('./package.json').devDependencies).join(' '));"`
rm -rf $OUTPUT
(cd /tmp && react-native init $NAME)
mv /tmp/$NAME $OUTPUT
cd $OUTPUT
cp -R $INPUT/.git $OUTPUT
cp $INPUT/*.js $OUTPUT
cp $INPUT/*.sh $OUTPUT
cp $INPUT/.babelrc $OUTPUT
cp $INPUT/.eslintrc $OUTPUT
cp $INPUT/ios/Podfile $OUTPUT/ios
cp $INPUT/ios/$NAME/Info.plist $OUTPUT/ios/$NAME/
cp $INPUT/ios/$NAME/AppDelegate.m $OUTPUT/ios/$NAME/
cp $INPUT/android/app/src/main/AndroidManifest.xml $OUTPUT/android/app/src/main/
cp $INPUT/android/app/build.gradle $OUTPUT/android/app/
cp $INPUT/android/app/release.keystore $OUTPUT/android/app/
cp -R $INPUT/android/app/src/main/res $OUTPUT/android/app/src/main/
cp -R $INPUT/ios/$NAME/Images.xcassets/AppIcon.appiconset $OUTPUT/ios/$NAME/Images.xcassets/
npm install --save $DEPENDENCIES
npm install --save-dev $DEV_DEPENDENCIES
node ./node_modules/react-native/local-cli/cli.js link
(cd ios && pod install)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment