Hello, Lorsque vous avez des fichiers dans SVN que vous avez effacé en local avec rm, et que vous avec un ! devant lorsque vous faites un svn status, l'envie vous viendra peut-être (le besoin aussi) d'effacer ces fichiers du repository. Donc, la petite commande pour ce faire: svn status |grep ! |cut -d" " -f7 >| /tmp/svnDelete && svn delete -- targets /tmp/svnDelete && rm /tmp/svnDelete le cut -d" " -f7 n'est pas très robuste, mais je vous laise le soin de vérifier que cela cut bien le filename. -- Kuon CEO - Goyman.com SA http://www.goyman.com/ "Computers should not stop working when the users' brain do."
Le Fri, Oct 27, 2006 at 02:51:42PM +0200, =?UTF-8?Q? Kuon_-_Nicolas_Goy_=28Goyman.com_SA=29_-_=E6=99=82?= =?UTF-8?Q?=E6=9C=9F=E7=B2=BE=E9=9C=8A ?= a écrit:
svn status |grep ! |cut -d" " -f7 >| /tmp/svnDelete && svn delete -- targets /tmp/svnDelete && rm /tmp/svnDelete
Pourquoi ne pas faire directement svn delete plutôt qu'un rm lorsqu'on bosse sur un repository svn ? Là, on dirait plutôt un workaround parce que l'utilisateur s'y est mal pris... Arnaud. -- Perso: http://launay.org/blog/ Hébergement: http://www.nocworld.com/
On 27 Oct 2006, at 17:13, Arnaud Launay wrote:
Le Fri, Oct 27, 2006 at 02:51:42PM +0200, =?UTF-8?Q? Kuon_- _Nicolas_Goy_=28Goyman.com_SA=29_-_=E6=99=82?= =?UTF-8?Q? =E6=9C=9F=E7=B2=BE=E9=9C=8A ?= a écrit:
svn status |grep ! |cut -d" " -f7 >| /tmp/svnDelete && svn delete -- targets /tmp/svnDelete && rm /tmp/svnDelete
Pourquoi ne pas faire directement svn delete plutôt qu'un rm lorsqu'on bosse sur un repository svn ? Là, on dirait plutôt un workaround parce que l'utilisateur s'y est mal pris...
Oui je sais, mais parfois on ne maîtrise pas tous les utilisateurs d'un svn. J'ai pas posté ça pour avoir des commentaires du style, je sais très bien comment on delete dans svn. Kuon pas content paske un client à noyé 24 serveurs et que son week end est foutu -- Kuon CEO - Goyman.com SA http://www.goyman.com/ "Computers should not stop working when the users' brain do."
Le Fri, Oct 27, 2006 at 05:29:14PM +0200, =?UTF-8?Q? Kuon_-_Nicolas_Goy_=28Goyman.com_SA=29_-_=E6=99=82?= =?UTF-8?Q?=E6=9C=9F=E7=B2=BE=E9=9C=8A ?= a écrit:
J'ai pas posté ça pour avoir des commentaires du style, je sais très bien comment on delete dans svn.
Ce n'est pas ce que je voulais dire. J'entendais par là qu'il vaudrait peut-être mieux faire l'éducation des utilisateurs, plutôt que de leur filer un bout de code qui risque potentiellement de faire plus de dégâts que de bien... Arnaud. -- Perso: http://launay.org/blog/ Hébergement: http://www.nocworld.com/
On 2006-10-27 14:51:42 +0200, =?UTF-8?Q? Kuon_-_Nicolas_Goy_=28Goyman.com_SA=29_-_=E6=99=82?= =?UTF-8?Q?=E6=9C=9F=E7=B2=BE=E9=9C=8A ?= wrote:
Donc, la petite commande pour ce faire:
svn status |grep ! |cut -d" " -f7 >| /tmp/svnDelete && svn delete -- targets /tmp/svnDelete && rm /tmp/svnDelete
le cut -d" " -f7 n'est pas très robuste, mais je vous laise le soin de vérifier que cela cut bien le filename.
Le pire, c'est le "grep !", qui va aussi matcher les fichiers qui ont un ! dans leur nom (j'en ai un certain nombre chez moi: ce sont des fichiers qui viennent de RISC OS, où ce caractère est utilisé en début de certains noms de fichiers). Il faut le remplacer par un grep '^!' je suppose. D'autre part, si un autre utilisateur a créé un lien symbolique /tmp/svnDelete pointant vers un de tes fichiers, tu l'écrases. Donc éviter d'utiliser des répertoires communs comme /tmp sans prendre de précaution. Je crois que le plus sûr si on doit créer un fichier dans un tel répertoire, c'est commencer par créer un répertoire, ensuite vérifier qu'on est bien l'auteur du fichier, ensuite vérifier les permissions et que ce n'est pas un lien symbolique (c'est plus que ce que demande la théorie, mais en pratique, il faut toujours vérifier plus de choses, car certains systèmes sont particulièrement buggés). -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)
participants (3)
-
Arnaud Launay
-
Kuon - Nicolas Goy (Goyman.com SA) - 時期精霊
-
Vincent Lefevre