.gitignore for PhoneGap/Cordova 3.0 projects - what should I commit?

后端 未结 6 1361
死守一世寂寞
死守一世寂寞 2020-12-04 07:03

I just tried to create a new phonegap 3.0 project... Note: I\'m new to phonegap. Anyways, I see the project folder contains:

  • .cordova
6条回答
  •  没有蜡笔的小新
    2020-12-04 07:48

    Expanding on @Jake Moshenko answer:

    I like the idea of omitting the platforms directory. In fact, I am am able to exclude both the plugins and platforms directories. A good starting point for the .gitignore:

    platforms/
    plugins/
    

    The problem with this is that clean copy of the repo must be initialized before you can actually work with it. It may make sense to create an init script such as:

    #!/bin/bash
    textReset=$(tput sgr0)
    textGreen=$(tput setaf 2)
    message_info () {
      echo "${textGreen}[my-app]${textReset} $1"
    }
    
    message_info "Creating necessary directories..."
    mkdir plugins
    mkdir platforms
    
    message_info "Adding platforms..."
    # If using cordova, change to: cordova platform add android
    phonegap build android
    phonegap build ios
    
    message_info "Adding plugins..."
    # If using cordova, change to: cordova plugin add
    phonegap local plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git
    

    A caveat to this approach is that it makes it a little more challenging to customize the platform specific app code/config outside of what's supported by phonegap/cordova (i.e. screen orientation support).

    Update: Bash Gist

    This gist contains a more complete script for handling a project that does not commit the plugins and platforms directories. It provides a mechanism for copying the icons and splashscreen images from www to the platform directories (for iOS and Android), installing plugins, and handling platform specific files that should be added to version control.

    Update: Grunt Gist

    Here is another gist which is a Grunt port of the above mentioned bash script. (Thanks to @obie for suggesting grunt).

提交回复
热议问题