2009-04-23 13 views
16

Subversion 1.5 wprowadziła listę zmian i chciałem użyć tej funkcji, aby zgrupować zmianę na później i kontynuować pracę nad innymi plikami. Problem polega na tym, że polecenia subversion, takie jak svn diff i svn commit, działają na wszystkich zmodyfikowanych plikach. Mogę ograniczyć pliki, na których działają, jeśli podaję listę zmian za pomocą opcji --changelist. Ale w jaki sposób mogę ograniczyć operacje do plików, które nie znajdują się w ogóle w liście zmian?Lista zmian svn: jak ograniczyć operacje do "domyślnej" listy zmian?

Na przykład: file1 i file2 są modyfikowane. file1 znajduje się w liście zmian A i file2 w żadnej liście zmian.

Jeśli wykonam svn diff --changelist A, zobaczę różnicę dla file1.

Ale jeśli robię svn diff widzę różnicę dla file1 i file2.

Jak mogę zobaczyć różnicę tylko file2, tj. Wszystkich plików, które nie są częścią listy zmian?

Używam Subversion 1.6 (w przypadku, gdy robi różnicę).

Odpowiedz

12

Niestety, subversion nie ma jeszcze żadnej składni, aby to wyrazić.

Istnieje kilka pomysłów, które pozwolą na "- changelistę", ale to jeszcze nie zostało zaimplementowane.

+0

Wygląda jak --changelist „” Składnia zostanie włączona do Subversion 1.8. http://subversion.apache.org/docs/release-notes/1.8.html#cmdline – rlovtang

+0

Nie, nie w 1.8.8 – Lambart

0

Jeśli jesteś zainteresowany zrobieniem tego w środowisku graficznym, SmartSVN (wieloplatformowość) może to zrobić za Ciebie. Ich darmowa wersja jest również w pełni funkcjonalna.

+2

Ale tak samo jak tortoiseSVN –

+0

W rzeczywistości, zestawy zmian nie są dostępne w wersji bezpłatnej: http: //www.syntevo.com/smartsvn/comparison.html –

1

Jak wspomniano przez rlovtang jakiś czas temu, Subversion now does support more changelist options

W specjalnym następujące polecenia mogą być wydawane do popełnienia tylko pliki skojarzone z listy zmian:

svn changelist issue1729 foo.c bar.c baz.c 
svn commit --changelist issue1729 -m "Fixing Issue 1729." 
Powiązane problemy