105 votes

.gitignore pour PhoneGap/Cordova 3.0 projets - ce que je devrais commettre ?

J'ai juste essayé de créer un nouveau phonegap 3.0 projet... Note: je suis nouveau sur phonegap. De toute façon, je vois le dossier de projet contient:

  • .cordova
  • merges
  • platforms
  • plugins
  • www

Et après avoir essayé, phonegap local run android je vois beaucoup de binaire/les fichiers générés dans platforms/android. Cela laisse me demandais, quelles sont les parties de cette structure de dossiers dois-je ajouter à mon dépôt git. Normalement, je pense qu'il serait extrêmement pauvres pratique pour valider les fichiers binaires. Donc, je devrais normalement ajouter des motifs comme bin/, obj/, *.o, *.pyc etc. d' .gitignore pour éviter de polluer mon dépôt git avec des choses qui ne sert qu'à créer des conflits de fusion.

Sûrement, www doit être ajoutée à git, mais ce que sur les autres parties du projet. Dans quelle mesure sont-ils produits du code source, et dans quelle mesure sont-ils de configuration du projet?

Que faites-vous? Accordé je suis nouveau donc je peine à comprendre ce qui fait sens ici...

49voto

DixonJ Points 1340

L'expansion sur @Jake Moshenko réponse:

J'aime l'idée de l'omission de l' platforms répertoire. En fait, je suis en mesure d'exclure de la plugins et platforms annuaires. Un bon point de départ pour l' .gitignore:

platforms/
plugins/

Le problème, c'est que la copie au propre de l'opération doit être initialisé avant que vous pouvez réellement travailler avec elle. Il peut faire sens pour créer un script d'initialisation tels que:

#!/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

Un inconvénient de cette approche est qu'il rend un peu plus difficile de personnaliser la plate-forme spécifique de code de l'application/config en dehors de ce qui est pris en charge par phonegap/cordova (c'est à dire l'orientation de l'écran à l'appui).

Mise À Jour: Bash Gist

Ce résumé contient plus de script complet pour le traitement d'un projet qui n'engage pas le plugins et platforms annuaires. Il fournit un mécanisme pour copier les icônes et le splashscreen des images à partir de www à la plate-forme de répertoires (pour iOS et Android), l'installation de plugins, et la manipulation de la plate-forme des fichiers qui devraient être ajoutées à la version de contrôle.

Mise À Jour: Grunt Gist

Voici un autre gist qui est un Grognement port de la mentionnés ci-dessus script bash. (Merci à @obie pour suggérer grunt).

43voto

Atropo Points 5169

La réponse dépend de qui les plates-formes vous êtes le développement de la phongap application, et si vous êtes à la suite de la norme de la structure de répertoire.

Si votre structure de répertoire du projet est standard, alors vous pouvez commencer à partir de ce gitignore et la modifier selon vos besoins.

Sur la règle générale, vous avez pour exclure tous les fichiers générés comme l' bin/ et gen/annuaires. Si vous êtes à l'élaboration d'une version d'Android de votre application, vous devez exclure les fichiers de compilation, comme *.apk.

Tous les fichiers générés dans l' android sous-répertoire doit être exclu de trop:

Android/bin/
Android/gen/
Android/assets/

7voto

Jake Moshenko Points 217

Donc j’ai juste figuré ceci dehors par essais et erreurs. Le répertoire peut être omis si vous utilisez phonegap build local ou distant, tel qu’il est généré à la volée. Tous les autres dossiers, y compris le dossier caché sont nécessaires.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X