2009-04-23 6 views
16

Subversion 1.5 a introduit des listes de modifications et je voulais utiliser cette fonctionnalité pour regrouper une modification pour plus tard et continuer à travailler sur d'autres fichiers. Le problème est que les commandes subversion comme svn diff et svn commit fonctionnent sur tous les fichiers modifiés. Je peux limiter les fichiers sur lesquels ils opèrent si je spécifie une liste de modifications avec l'option --changelist. Mais comment puis-je limiter les opérations aux fichiers qui ne sont pas du tout dans une liste de modifications? Par exemple: file1 et file2 sont tous deux modifiés. file1 est dans la liste des modifications A et file2 est dans aucune liste de modifications. Si je fais svn diff --changelist A je vois le diff pour file1. Mais si je fais svn diff je vois le diff pour file1 et file2.svn changelists: comment limiter les opérations à la liste des modifications "par défaut"?

Comment puis-je voir un diff de seulement file2, c'est-à-dire de tous les fichiers qui ne font pas partie d'une liste de modifications? J'utilise Subversion 1.6 (au cas où cela ferait une différence).

Répondre

12

Désolé, subversion n'a pas encore de syntaxe pour l'exprimer.

Il y a quelques idées pour permettre une syntaxe --changelist "", mais cela n'est pas encore implémenté.

+0

On dirait que le --changelist « » La syntaxe va être incluse dans Subversion 1.8. http://subversion.apache.org/docs/release-notes/1.8.html#cmdline – rlovtang

+0

Non, pas dans 1.8.8 – Lambart

0

Si cela vous intéresse de le faire dans un environnement graphique, SmartSVN (multiplateforme) peut le faire pour vous. Leur version gratuite est assez complète, aussi.

+2

Mais alors, tortoiseSVN –

+0

En fait, les ensembles de changements ne sont pas disponibles en édition gratuite: http: //www.syntevo.com/smartsvn/comparison.html –

1

Comme mentionné par rlovtang un certain temps, Subversion now does support more changelist options

En particulier, la commande suivante peut être délivré à engager uniquement les fichiers associés à un changelist:

svn changelist issue1729 foo.c bar.c baz.c 
svn commit --changelist issue1729 -m "Fixing Issue 1729." 
Questions connexes