Jak ręcznie określić metadane kontroli wersji dla Findera?

0

Mam folder Skrypty, w którym przechowuję akcje Automatora, Skrypty Applescript i skrypty powłoki. Skrypty Automatora mają automatycznie przypisaną wersję 1.1.1. Kiedy wprowadzam poprawki do któregokolwiek z tych dokumentów, w jaki sposób mogę ręcznie ustawić wersje, aby informacje były wyświetlane w celowniku, albo za pomocą funkcji Pobierz informacje, albo na liście folderów z włączonym widokiem wersji?

Zwłaszcza w przypadku skryptów powłoki (zsh), czy istnieje format komentarza, w którym mogę wprowadzić wersję skryptu, a Finder go zobaczy? Czy istnieje sposób na powiązanie edytowalnego zasobu systemowego ze skryptami, które sprawią, że wersja skryptu będzie widoczna?

Elliott
źródło
W przypadku skryptu powłoki odpowiedź brzmi „nie do końca”. Skrypty Automatora są pakietami aplikacji, a wersja jest ustawiona na Contents > Info.plist, z <key>CFBundleShortVersionString</key> <string>1.1.1</string> ; można to zmienić ręcznie, jeśli z jakiegoś powodu chcesz użyć numeru wersji innego niż przypisany przez Automatora. Jednak ustawienie informacji o wersji Findera dla skryptu powłoki byłoby niezwykle niewygodne lub niepraktyczne, prawdopodobnie z powodu stworzenia fałszywego pakietu aplikacji dla Findera. Miałem nadzieję, że będzie to tak łatwe, jak używanie xattr jakoś.
Elliott

Odpowiedzi:

1

Finder nie śledzi wersji, ponieważ reprezentuje tylko system plików, który w HFS + nie przechowuje wersji.

Nie widzę, jak robić dokładnie to, co chcesz, ale myślę, że sposobem, który zadziałał, byłoby użycie kontroli wersji używanej przez programistów - używam tego do kontroli mojej powłoki i innych skryptów. Przykładami tego są git, mercurial, svn (subversion) z różnymi dostępnymi GUI, np. SourceTree (dla wszystkich trzech).

Praca git i mercurial polega na zapisaniu zestawu zmian we wszystkich plikach w projekcie, który potrzebny jest do znalezienia więcej niż jednego pliku. Ta migawka plików może być oznaczona nazwą, np. 1.0.0 itd. Każda zmiana jest indywidualnie oznaczona przypisaną nazwą kontroli wersji. Dane wersji są przechowywane w metadanych w systemie kontroli wersji, a nie w plikach, ponieważ umieszczenie numeru wersji w plikach okazało się nieużyteczne. Interfejs GUI może przeglądać system plików i wyświetlać historię zmian.

Mark
źródło
Gdzie zapisywane są dane tej wersji w pliku? Wygląda na to, że powinienem być w stanie zlokalizować ten ciąg i zmienić emacsa lub cokolwiek innego? Jestem tylko zupełnym początkującym skryptem i programistą, więc jeszcze nie zajrzałem do prawdziwej kontroli wersji, wydaje mi się onieśmielający i może przesadzić z poziomem, na którym się znajduje, ale może powinienem to sprawdzić, ponieważ jest to nieuniknione. Dziękuję Ci
Elliott
Tak, rozpocznij kontrolę wersji, zobacz ten programator ” pytanie i to ale najlepiej poszukaj samouczka
Mark