Jak dobrze repozytorium Apache Subversion nadaje się do ułatwienia współpracy przy edycji wielu plików .docx, .doc, .xls (s) itp.?
4
W przypadku projektu trwającego pół semestru grupa pięciu lub mniej osób będzie współpracować nad projektem, który został im przekazany (i musi zostać włączony do oceny) jako folder .doc (x), .xls (x) itd. pliki. W szczególności jeden plik będzie widział większość edycji --- plik .xlsx.
Członkowie będą używać TortoiseSVN do zatwierdzania zmian / kasowania. Jak dobrze SVN ułatwi w tym przypadku edycję grupową?
Jak dobrze SVN ułatwi w tym przypadku edycję grupową?
To naprawdę pytanie dwustronne.
w jaki sposób svn obsługuje łączenie tego samego pliku edytowanego na różne sposoby
Bardzo dobrze. To naprawdę jedna z podstawowych funkcji każdego SCM opartego na scalaniu - łącz rozbieżną historię zmian
Jak dobrze SVN ułatwi współpracę w tym przypadku?
Źle, ponieważ, jak już wspomniano, stare pliki MS-Office były „tylko binarne” dla subversion, automatyczne scalanie binariów może dawać nieprzewidywalne wyniki, ponieważ ręczne ręczne łączenie to więcej pytań dla administratorów Subversion, które mogą (muszą) dostarczyć i skonfiguruj specjalne narzędzia diff | merge dla * .doc w repozytorium, aby umożliwić użytkownikom końcowym łączenie w zwykły sposób WYSIWYG
W przypadku nowej sytuacji biurowej opartej na XML sytuacja jeszcze się pogorszyła. AFAICR, docx | Pliki .xlsx są naprawdę wieloplikowymi archiwami zip i łączą się, teoretycznie, mogą wpływać i zmieniać więcej niż jeden plik. Nie wiem, jak sobie z tym poradzić
Niezbędne jest zatem użycie repozytorium SVN do tego celu, aby pliki były przechowywane tylko w jednym miejscu, a przynajmniej dwie osoby próbują wprowadzić różne wersje plików.
jhstuckey
1
@jhstuckey: Tak. Jednak Dropbox jest znacznie łatwiejszy w konfiguracji i obsłudze
Thilo
Czy „to, co można wykorzystać do wspólnej pracy nad plikami microsoft”, będzie osobnym pytaniem, czy też po prostu nie może?
jhstuckey
@jhstuckey - to może być osobnym pytaniem (w celu zapewnienia ostatecznego rozwiązania) i plików pakietu Office może być użyty w scalaniu-obiegu: niektóre sztuczki musiały zostać zaimplementowane.
Lazy Badger
Biorąc pod uwagę niewielką grupę użytkowników i jeden lub dwa pliki, które będziemy edytować - rozwiązaniem może być po prostu podzielenie pliku programu Excel na skoroszyt (ponieważ każdy ma pewne skoroszyty w tym pliku, które będą edytuj, a nie inne skoroszyty), a następnie odbierz je na końcu. Mamy wtedy kontrolę wersji (daje nam svn provider) komentowanie i inne funkcje web-ui.
jhstuckey
5
SVN nie nadaje się do wersjonowania plików binarnych (takich jak .doc i .xls), ponieważ pliki nie zawierają tekstu, praktycznie niemożliwe jest różnicowanie plików lub scalanie zmian. Nowszy format (.docx i .xlsx) to w rzeczywistości dokumenty XML, które mogą nieco pomóc w operacjach różnicowania i scalania, ale nadal będą dość trudne.
Moim zaleceniem byłoby użycie czegoś takiego Dokumenty Google co pozwoli na wersjonowanie i jednoczesną edycję do 50 użytkowników (również arkusze kalkulacyjne). Jeśli twój martwy zdecydował się na używanie SVN, zalecałbym trzymanie się zwykłych dokumentów tekstowych Lateks i SVN dla niektórych zadań, co pozwoliło im na formatowanie.
Dzięki za twoją odpowiedź. Nie możemy używać zwykłego tekstu, ponieważ nasza praca musi zostać zwrócona w formacie, w jakim została nam przekazana - lub czy miałeś na myśli zwykły tekst, a następnie ręcznie skopiować go do plików binarnych?
jhstuckey
1
@ Jhstuckey To zawsze opcja. Nigdy nie byłem tak zadowolony z opcji formatowania dostępnych w Dokumentach Google. Zwykle więc pracuję z dokumentem w Dokumentach Google ze wszystkimi, a następnie po zakończeniu całej zawartości. Pobieram go jako dokument programu Word i wykonuję ostateczne formatowanie w programie Word.
Dracs
specia diffs-mergers (external) może rozwiązać problem plików wizualizacji
Lazy Badger
1
@LazyBadger, RTF nie jest tekstem w żadnym streszczeniu wyobraźni, więc nie jest obsługiwany w rozsądny sposób przez żaden znany mi VCS. BTW, XML lub taki, ma również zbyt dużą strukturę (nie tylko „niezależne (głównie) wiersze tekstu”), które należy poprawnie obsłużyć.
vonbrand
1
Myślę, że tej odpowiedzi brakuje ważnego niuansu: Subversion nie obsługuje formatów binarnych wydajnie , ale klienci Subversion mogą być używane w połączeniu z narzędziami do porównywania i scalania specyficznymi dla formatu dokumentu - na przykład, gdy zostaniesz poproszony o porównanie dwóch wersji dokumentu Word, TortoiseSVN po prostu uruchomi Word w trybie porównywania i scalania dokumentów w dwóch wersjach. Subversion nie ogranicza cię tutaj.
reinierpost
4
Nie bardzo. W rzeczywistości żaden system kontroli wersji nie jest bardzo dobry w takim zadaniu, są one dostosowane do obsługi zwykłych plików tekstowych (typy, które wymieniłeś, są binarne). Możesz sobie z nimi poradzić, ale zadania takie jak „pokaż zmiany” lub „kto ...” nie będą miały odpowiedzi. I to jest większość kontroli wersji.
Być może lepszym rozwiązaniem jest udostępnianie dokumentów za pomocą dokumentów Google lub podobnych?
SVN nie nadaje się do wersjonowania plików binarnych (takich jak .doc i .xls), ponieważ pliki nie zawierają tekstu, praktycznie niemożliwe jest różnicowanie plików lub scalanie zmian. Nowszy format (.docx i .xlsx) to w rzeczywistości dokumenty XML, które mogą nieco pomóc w operacjach różnicowania i scalania, ale nadal będą dość trudne.
Moim zaleceniem byłoby użycie czegoś takiego Dokumenty Google co pozwoli na wersjonowanie i jednoczesną edycję do 50 użytkowników (również arkusze kalkulacyjne). Jeśli twój martwy zdecydował się na używanie SVN, zalecałbym trzymanie się zwykłych dokumentów tekstowych Lateks i SVN dla niektórych zadań, co pozwoliło im na formatowanie.
źródło
Nie bardzo. W rzeczywistości żaden system kontroli wersji nie jest bardzo dobry w takim zadaniu, są one dostosowane do obsługi zwykłych plików tekstowych (typy, które wymieniłeś, są binarne). Możesz sobie z nimi poradzić, ale zadania takie jak „pokaż zmiany” lub „kto ...” nie będą miały odpowiedzi. I to jest większość kontroli wersji.
Być może lepszym rozwiązaniem jest udostępnianie dokumentów za pomocą dokumentów Google lub podobnych?
źródło