Deuxième rencontre DevelopR6
Besançon, 25 mars 2010
NetBeans/PHP
Bernard Debray
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 2/43
Plan
1. cadre de l'expérience rapportée choix des
outils en fonction des besoins des projets
2.introduction à l'IDE Netbeans de Sun
3.utilisation de Netbeans appliqué à une
application web PHP
4.configuration du client subversion
5.connexion à un serveur subversion avec une
connexion sécurisée
6.utilisation de Netbeans avec subversion
1. cadre de l'expérience rapportée choix des
outils en fonction des besoins des projets
2.
introduction à l'IDE Netbeans de Sun
3.
utilisation de Netbeans appliqué à une
application web PHP
4.
configuration du client subversion
5.
connexion à un serveur subversion avec une
connexion sécurisée
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 4/43
Choix des outils en fonction des besoins
●Cadres des développements :
●Interfaces web à différentes applications scientifiques et
administratives de l'Observatoire de Besançon :
–
bases de données
–
outil de modélisation
–
...
●Développements sur plusieurs machines : PC, portable,
… (potentiellement plusieurs développeurs)
●Interfaces développées en langage PHP (HTML+CSS)
Choix des outils en fonction des besoins
●Cadre informatique :
●Java SE installé et régulièrement mis à jour pour
d'autres projets
●Serveur de fichiers sécurisé (disques RAID +
sauvegardes périodiques)
●Pas de besoin de communication entre machines
de puis l'extérieur du réseau du laboratoire
●Machines sous Linux
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 6/43
Choix des outils en fonction des besoins
●Besoins :
●environnement de développement PHP
(également développements en fortran pour
certaines applications)
●système de gestion de version centralisé
●éviter les multiplications d'installation de logiciels
Choix des outils en fonction des besoins
●Choix :
●Environnement de développement :
Netbeans
téléchargeable depuis le site de Sun en même temps
que JavaSE (1 seule installation)
supporte PHP depuis la version 6.5 (novembre 2008)
●Système de gestion de version :
SVN
référentiel sur serveur de fichiers
●Accès à référentiel SVN :
ssh
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 8/43
1.
cadre de l'expérience rapportée choix des
outils en fonction des besoins des projets
2.introduction à l'IDE Netbeans de Sun
3.
utilisation de Netbeans appliqué à une
application web PHP
4.
configuration du client subversion
5.
connexion à un serveur subversion avec une
connexion sécurisée
6.
utilisation de Netbeans avec subversion
Netbeans
●Originellement : environnement de développement intégré pour
Java
●acquis par Sun et mis à disposition en Open Source en 2000
●disponible sous Linux, Windows, Mac OS X, Solaris
●disponible en 23 langues (une partie de l'interface demeure
néanmoins en anglais et documentation en français pour
versin 5.5...)
●Supporte les langages : PHP, Python, Ruby, Groovy,
Javascript, C/C++ (Fortran), ...
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 10/43
Netbeans et SGV
●Systèmes de gestion de version centralisés :
●
CVS
● ●Systèmes décentralisés :
1.
cadre de l'expérience rapportée choix des
outils en fonction des besoins des projets
2.
introduction à l'IDE Netbeans de Sun
3.utilisation de Netbeans appliqué à une
application web PHP
4.
connexion à un serveur subversion avec une
connexion sécurisée
5.
utilisation de Netbeans avec subversion
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 22/43
1.
cadre de l'expérience rapportée choix des
outils en fonction des besoins des projets
2.
introduction à l'IDE Netbeans de Sun
3.
utilisation de Netbeans appliqué à une
application web PHP
4.configuration du client subversion
5.
connexion à un serveur subversion avec une
connexion sécurisée
6.
utilisation de Netbeans avec subversion
Configuration du client Subversion
●
Fichier de configuration de subversion
(
/homeuser/.svn/config
) :
définition de la propriété
svn:mimetype
pour
savoir sur quels fichiers des opérations de
fusion de modification doivent être effectuées
(fichiers texte) ;
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 24/43
Configuration du client Subversion
●/homeuser/.svn/config
:
### Section for configuring automatic properties.
[autoprops]
*.txt = svn:mimetype=text/plain
*.php = svn:mimetype=text/php
*.html = svn:mimetype=text/html
*.css = svn:mimetype=text/css
*.js = svn:mimetype=text/javascript
HISTORY = svn:mimetype=text/plain
README = svn:mimetype=text/plain
*.png = svn:mimetype=image/png
*.jpg = svn:mimetype=image/jpeg
*.gif = svn:mimetype=image/gif
●Configuration du client Subversion
●/homeuser/.svn/config
:
●...
*.pdf = svn:mimetype=application/pdf
*.odt = svn:mime
type=application/application/vnd.oasis.opendocument.text
*.ods = svn:mime
type=application/application/vnd.oasis.opendocument.spread
sheet
*.odp = svn:mime
type=application/application/vnd.oasis.opendocument.presen
tation
*.doc = svn:mimetype=application/msword
*.xls = svn:mimetype=application/vnd.msexcel
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 26/43
1.
cadre de l'expérience rapportée choix des
outils en fonction des besoins des projets
2.
introduction à l'IDE Netbeans de Sun
3.
utilisation de Netbeans appliqué à une
application web PHP
4.
configuration du client subversion
5.connexion à un serveur subversion avec une
connexion sécurisée
6.
utilisation de Netbeans avec subversion
Connexion au serveur SVN avec une
connexion sécurisée
●
Références. :
●
exposé de F. Pascale à la 1
èrejournée DevelopR6
(Nancy, 28 mai 2009)
●Doc svn :http://svnbook.redbean.com/
chap. 6 : «Server Configuration »
svnserve, a Custom Server
→
SSH configuration tricks
→
Initial setup
→
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 28/43
Connexion au serveur SVN avec une
connexion sécurisée
●Création d'un référentiel (repository) SVN
sur la machine serveur
(svnadm@svnserv) :
svnadmin create /disk/rootrep/projdir
Connexion au serveur SVN avec une
connexion sécurisée
●
Établissement des clés ssh (1) :
●
sur serveur
svnserv
(compte
svnadm
) :
génération d'une paire de clés ssh
sshkeygen t rsa b 1024 f fichcle.key
●dans
/homesvnadm/.ssh/authorized_keys
:
command="/usr/bin/svnserve t r /disk/rootrep
tunneluser=user",noportforwarding,no
pty,noagentforwarding,noX11forwarding ssh
rsa
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 30/43
Connexion au serveur SVN avec une
connexion sécurisée
●
Établissement des clés ssh (2) :
recopie de la clé privée
fichcle.key
sous
Recommencer l'importation du
projet dans subversion
●
Si un projet est déjà dans
subversion
et que l'on
veut repartir à zéro (par exemple si la
configuration de l'accès au référentiel n'est pas
bonne):
il faut supprimer les sousrépertoires
.svn
sous
le répertoire du projet :
projet/.svn
projet/nbproject/.svn
B.Debray NetBeans/PHP 2ème Journée DevelopR6 25/03/2010 36/43