Annuler une revision

Dans subversion pour annuler une modification en ligne de commande.

Ce placer dans le répertoire.

A l’aide de la commande svn info récupérez l’URL du dépots.

Chemin :

noplay# svn info
Chemin: .
URL : http://svn.noplay.net/
Racine du depot : svn://svn.noplay.net
UUID du depot : 9e0b0c50-2be5-40e4-8cd1-2e3fc7b79647
Revision : 42
Type de noeud : repertoire
Tache programme : normale
Auteur de la derniere modification : noplay
Revision de la derniere modification : 42
Date de la derniere modification: 2008-07-18 21:09:59 +0200 (ven 18 jui 2008

A l’aide de la commande svn log récupérez la revision que vous souhaitez annuler:

noplay# svn log | head
------------------------------------------------------------------------
r42 | noplay | 2008-07-18 21:09:59 +0200 (ven 18 jui 2008) | 1 line
Je casse tout

Dans notre exemple c’est 42

Puis on repart en arrière:

svn merge -r 42:41 http://svn.noplay.net
svn commit

Pourquoi il ne faut pas utiliser ?>

La plupart des codes PHP ressemblent à cela:

<?php
echo "Hello";
?>

Cela marche très bien. Le problème c’est que si vous laissez des espaces après le tag fermant il seront aussi envoyé aux navigateurs. Quel est le soucis me direz vous?

#Le problème Imaginons que vous vouliez générer un fichier binaire comme par exemple une image, les espaces supplémentaires risque de corrompre le fichier.

Autres problèmes plus courant c’est dans le cadre de l’utilisation de session. Nous avons deux fichier

lib.php:

<?php
function hello() {
}
?>
PLEIN D ESPACES

index.php:

<?php
include("lib.php");
session_start();
?>

Vous allez voir ce type d’erreur: Warning: session_start(): Cannot send session cookie - headers already sent by

En effet le mécanisme de session de PHP nécessite de modifier les headers HTTP et lorsque PHP voit le premier caractère du contenu de la page il envoi les headers.

#La solution La solution est de ne pas mettre le tag fermant votre code marchera parfaitement et vous éliminés le risque de caractères parasites.

The Gimp 2.6

La version 2.6 de The Gimp est disponible.

Le changement qui m’a sauté immédiatement aux yeux c’est qu’il n’y a plus de menu dans la boite à outils et lors du lancement on voit une fenêtre image vide.

<168 center>

La fenêtre d’image devient donc la principale fenêtre de l’applications et les autres fenêtres des fenêtres utilitaire. Cela n’a l’air de rien, mais ces modifications devraient permettre aux Windows manager de mieux gérer les fenêtres de The Gimp.

Détecter si on est dans une iframe

Parfois il peut être utile de détecter si notre Javascript est lancé dans une iframe.

Le code suivant affiche une boite d’alerte si on est dans une iframe.

<script language="JavaScript">
<!--
if (top.frames.length!=0) *
   alert('Dans une iframe');
*
// --> 
</script>

Voir les fichiers qui vont être modifiés par Subversion

Parfois avant d’appliquer une mise à jour il est important de vérifier quels sont les fichiers qui seront modifiés. Cela est important par exemple lorsque vous utilisez Subversion pour déployer du code en production et que la mise à jour est sensé simplement modifier le logo du site.

Pour afficher les fichiers qui vont être modifiés on va utiliser la même commande que pour afficher les fichiers modifiés localement: svn status accompagné de l’option –show-updates.

Les fichiers précédés d’une étoile sont ceux qui seront modifiés:

noplay@noplay# svn status --show-updates
       *        2   b
       *            c
       *        2   .
État par rapport à la révision      3

Comme on est fainéant les développeurs de Subversion on crées un raccourci: svn st -u.