svn diff: plik oznaczony jako typ binarny

82

Robię svn diffna jednym z moich plików, a svn wykrywa go jako typ binarny. Plik jest czytelnym zwykłym tekstem i chciałbym móc uzyskać różnicę dla tego pliku. Jak powiedzieć SVN, że to nie jest plik binarny?

Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Charles Ma
źródło

Odpowiedzi:

81

Możesz użyć właściwości Subversion svn: mime-type, aby ustawić jawny typ MIME w pliku:

svn propset svn: mime-type 'text / plain' ścieżka / do / pliku

Alternatywnie możesz usunąć tę właściwość (ponieważ Subversion zakłada zwykły tekst), używając:

svn propdel svn: ścieżka / do / pliku typu mime
Michael Aaron Safyan
źródło
4
Ale dlaczego został oznaczony jako binarny w pierwszej kolejności? Mam ten sam problem w przypadku wielu moich plików źródłowych i usuwanie właściwości za każdym razem jest uciążliwe.
angularsen,
Wygląda na to, że powinieneś zadać inne pytanie ... i może dodać tutaj link.
Eric Wilson
1
@EricWilson - zapytał: stackoverflow.com/questions/19499334/ ...
drzaus
Czy to (zmiana typu MIME pliku) zmienia sposób wykonywania plików, gdy ktoś pobiera świeżą kopię z svn? W takim przypadku myślę, że użycie opcji --force tylko do przeglądania różnic ma większy sens.
Rishi
@Rishi, nie, nie ma; istnieje osobna właściwość „svn: executable”, która określa, czy plik powinien mieć wykonywalne bity uprawnień.
Michael Aaron Safyan
115

Możesz uzyskać różnicę nawet dla pliku oznaczonego jako binarny używając --force.

svn diff --force path/to/file

Evgeny Remizov
źródło
5
to jest znacznie lepsza odpowiedź na coś takiego jak application / json
Steven R. Loomis
2
@BrettZamir, ale można to zrobić z prawie wszystkim, co ma wyjście.
entonio
1
@entonio: Tak, wiem ... po prostu pomyślałem, że powinienem na to zwrócić uwagę, ponieważ napotkałem ten błąd przy użyciu klienta GUI i ponieważ nie mogłem go rozwiązać, o ile wiem, pomyślałem, że może inni, którzy nie używają często można o tym poinformować wiersz poleceń.
Brett Zamir