Чи застосовується контроль версій (тобто Subversion) при відстеженні документів? [зачинено]


75

Я відповідаю за понад 100 документів (текстовий документ, а не вихідний код), які потребують перегляду різними людьми в моєму відділі. Наразі всі документи знаходяться у спільній папці, де вони будуть отримувати, переглядати та зберігати назад у папці.

Я зараз роблю пошук "дати зміни" у спільній папці, відкриття нещодавно змінених документів та використання функції "Відстеження змін" у MS Word для застосування змін. Я вважаю це трохи нудним.

Тож чи буде краще та простіше, якщо я зафіксую це в базі даних контролю версій?

В основному я хочу зберегти іншу версію файлу.


Чого я навчився з відповідей:

  • Використовуйте Time Machine, щоб зберегти іншу версію (або тіньову копію в Vista)

  • Коли ви використовуєте програму контролю версій, існує різниця між текстовими та двійковими документами. (Я цього не знав)

  • Diff не працює на бінарних файлах

  • Система сповіщень (тобто електронна пошта) для перегляду є чудовою

  • Функція перегляду Документів Google.

Оновлення :

Я погрався з функцією перегляду Документів Google і відчуваю, що вона мені майже підходить. Просто трохи дратується надто частою версією (автоматичне збереження).

Але те, що мені здається правильним, не означає, що це добре для мого відділу. Чи вдасться їм зберегти всі ці документи в Google?


Дуже гарне запитання ... у нас є сотні документів, що лежать у спільних мережевих ресурсах .. Я хочу змусити мою організацію перейти на сховище документів Subversion.
фунт

MagnetSVN - клієнт Subversion для Microsoft Office 2007-2013 magnetsvn.com
Євгенік

Відповіді:


19

Думаю, одне, про що, здається, ніхто не запитував, - чи є у вас юридична вимога зберігати історію змін у документах?

Незалежно від того, чи зробите ви це чи ні, це вплине на рішення, які ви можете розглянути.

Також механізм сповіщення про застарілі копії - це також розвага. Якщо інженер A має копію документа, а інженер B редагує його та виконує зміни, про які ви хочете, щоб інженер A був повідомлений про те, що його копія застаріла.

Контроль за документами може стати справжнім балончиком для хробаків досить легко.

Можливо, збережіть документи під CVS або SVN і налаштуйте їх так, щоб генерувалися електронні листи тому, хто перевіряв копію при оновленні того самого документа. реєструються у сховищі?

Редагувати: я забув додати, не забудьте використовувати двійковий перемикач, наприклад -kb для CVS, під час додавання нового документа. В іншому випадку ви отримаєте будь-які послідовності даних, які збігаються з ascii для рядків ключових слів, до яких додаються відповідні дані управління конфігурацією, що пошкоджує ваш документ. даних.


2
SVN не виконує розширення ключових слів за замовчуванням - вам потрібно встановити властивість, щоб увімкнути його. Як результат, ви можете безпечно зберігати будь-який документ, не встановлюючи нічого особливого.
gbjbaanb

60

Я працював з документами Word у SVN. За допомогою TortoiseSVN ви можете легко розрізняти документи Word (між робочою копією та сховищем або між двома версіями сховища). Це дійсно гладко і, безумовно, рекомендується.

Інше, що потрібно зробити, якщо ви використовуєте документи Word у SVN, - це додати svn: needs-lock властивість до документів Word. Це не дозволить двом людям одночасно редагувати один і той же документ, оскільки, на жаль, немає хорошого способу об’єднати документи Word.

З урахуванням зазначених двох речей, обробка контрольованих редакцією документів Word є принаймні терпимою. Це, безумовно, перевершує альтернативу використанню спільної папки та змін треків.


5
Чи можете ви дійсно відрізняти вміст документів Word за допомогою TortoiseSVN? Не просто "бінарні файли" відрізняються. (Сам SVN, звичайно, не забезпечує більше цього.)
Джонік,

16
Так, у Tortoise є кілька допоміжних сценаріїв VBScript, які завантажують як старі, так і нові документи в Word і використовують функції розрізнення документів Word, щоб показати відмінності. Насправді це працює досить добре.
Greg Hewgill

1
Це звучить зручно; дякую за роз'яснення. (Це виникло на запитання суперкористувача : superuser.com/questions/14894/diff-software-for-word-files )
Jonik

Здається, це чудово працює для файлів .doc та .docx, але взагалі не працює для файлів .dot або .dotx (файли шаблонів Word). Для цих файлів TortoiseSVN просто каже, що вони не є дійсними текстовими файлами, тому він не може їх відрізняти. Я спробував вручну зберегти старі та нові версії та порівняти їх за допомогою Word (Огляд-> Порівняти-> Порівняти документи), і Word робить автоматичне порівняння файлів .dot, тому це має бути лише недогляд у TortoiseSVN (принаймні у версії 1.8.8). Знаєте будь-який спосіб додати .dot та .dotx до списку розширень TortoiseSVN буде робити свою магію VBScript для того, щоб розрізняти їх у Word?
телефонний мітка

Я спробував відредагувати верхній рядок C: \ Program Files \ TortoiseSVN \ Diff-Scripts \ diff-doc.js, щоб включити розширення .dot та .dotx, і це не вирішило проблему. Думаючи, що мені, можливо, доведеться перезавантажитися, щоб він набрав чинності, я спробував це, і все одно це не спрацювало; те саме питання: TortoiseSVN намагається зробити власну різницю та скаржиться, що вони не є дійсними текстовими файлами.
телефонна мітка

37

Про що, боже, всі ви говорите «Слово-це-двійкове-так-не-різне»? Наприклад, TortoiseSVN безпосередньо інтегрується в Word і дозволяє використовувати вбудовану функцію різниці та злиття Word. Це чудово працює.

Я працював над проектами, що зберігають документи в контролі версій. Це вийшло досить добре, хоча якщо люди не знайомі з контролем версій, у них, ймовірно, виникнуть концептуальні труднощі з такими речами, як "робоча копія", "злиття" та "конфлікт". Не переоцінюйте можливості користувачів, коли плануєте свою систему управління документами.

Я вважаю, що для цього також існують великі та потужні комерційні рішення. Я впевнений, що якщо у вас вистачить кілодолларів, ви зможете отримати щось, що ідеально відповідає вашим потребам. Системи управління документами - це великий бізнес для великих підприємств.


3
+1 Я не знав, що це можливо, але ви точно маєте рацію. TortoiseSVN може різнити та об’єднувати документи слів, використовуючи функціональність слів.
Mathieu Pagé

10

Думаючи нестандартно, про перехід на Wiki не могло бути й мови?

Оскільки ви вважаєте можливим примусити своїх користувачів до Subversion (або щось подібне), більші зміни здаються прийнятними.

Ще однією ціллю міграції може бути використання якогось структурованого формату документа XML ( DocBook приходить мені на думку). Це дозволить вам дійсно використовувати різниці та контроль над джерелами, отримуючи при цьому всілякі формати документів безкоштовно.


6

Sharepoint також добре (нормально пристойно) спрацьовує версії документів, характерних для MS.


2
Це досить стара відповідь (і питання). Sharepoint 2010 насправді дуже хороший для версій документів Word.
Мартін

Як додаткове зауваження, SharePoint Foundation 2010 та 2013 є безкоштовними, але потребують Windows Server. є "хитрощі", щоб змусити його працювати в Windows 7 або 8, але я б не довіряв хакам своїх документів. Стандартна ліцензія Windows Server коштуватиме вам близько 500 доларів США плюс вартість ПК.
VoteCoffee

6

Як щодо спроби git, схоже, git може підтримувати файли Word .docі відкривати .odfфайли документів, якщо ви налаштуєте його у .gitattributesфайлі.

Ось посилання. Прокрутіть вниз до введення diffдвійкових файлів.


4

Для того, що це варто, є також Google Docs . Думаю, це не ідеально підходить, але це дуже зручне управління версіями .


2

Clearcase інтегрується з Word для відстеження версій. Я вважаю, що це робить і Telelogic DOORs.


2

Я використовую Mercurial із накладанням TortoiseHg. Я можу клацнути правою кнопкою миші набір змін, вибрати "Visual Diff", а потім вибрати інструмент "docdiff" (постачається в комплекті), який запускає документ у програмі Word зі змінами Track.


1

Ви можете, але ви завжди будете порівнювати версії документів із самим Word.

Я не чув бази даних версій, яка може відстежувати зміни в документах Word.

Однак є деякі інструменти, які можуть порівнювати документи Word, тому, якщо ви налаштуєте клієнт контролю версій для використання цих інструментів для порівняння, ви можете трохи розважитися.


1

Не обов'язково. Це залежить від того, як часто нові файли фіксуються в репо. Якщо файли редагуються кілька разів перед фіксацією, то ви знаходитесь саме там, де ви зараз перебуваєте. Найбільша вигода - якщо файл пошкоджений.

Ви можете встановити версію будь-якого файлу; так працює, наприклад, Машина часу в Mac OS X Leopard, і є цікава стаття того, хто перевів усе своє обчислювальне середовище в CVS, а потім просто зберігав робочі копії на своїх домашніх та робочих машинах.

Але "краще" та "легше" специфічні для вашої ситуації, і я не впевнений, що повністю розумію вашу проблему на сьогодні.


1

Subversion, CVS та всі інші системи керування джерелами погано підходять для документів Word та інших офісних файлів (наприклад, у таблицях Excel), оскільки самі файли зберігаються у двійковому форматі. Це означає, що ви ніколи не можете повернутися назад і коментувати (або звинувачувати, або як ви хочете це назвати), або робити різницю між документами.

Існують системи контролю редагування документів Word, на жаль, я не знаю жодної хорошої. У своїй роботі ми використовуємо такі системи управління для Excel, і, на жаль, усі вони коштують грошей.

Хороша річ полягає в тому, що вони значно полегшують життя, особливо якщо вам коли-небудь доведеться провести аудит або належну ретельність.


у невеликому масштабі я зберігаю документи Office у форматі XML і версію їх за допомогою SVN. різниця роботи в цьому випадку.
mcgyver5,

1

Якщо ви використовуєте WinMerge, він додав підтримку злиття двійкових файлів Word і Excel.


але winmerge використовує блокнот як редактор, тому він працює лише для об’єднання вмісту, а не форматування. чи можу я об’єднати два версії docx без використання msoffice і все одно об’єднати форматування?
Hemant Metalia

1

Погляньте на Sharepoint. Якщо вартість питання, сервіси порталу Sharepoint також можуть працювати для вас. Прочитайте це для отримання додаткової інформації


1

Ви можете використати щось на зразок Revisionator, який нагадує google docs, але з вбудованим контролем редагування, що включає diffs, forks та 3 way злиття. http://revisionator.com

ОНОВЛЕННЯ: Він також усуває проблему занадто частого автоматичного збереження, про яку ви згадуєте в Документах Google. Він все одно автоматично зберігатиметься, щоб запобігти втраті даних, але створить нову версію в історії редагувань та надасть доступ іншим користувачам, коли ви явно "звільните" свої зміни.


1

Просто хотів пояснити відповідь, яку хтось дав, але я ще не маю достатньо балів.

diff буде працювати з двійковими файлами, але він буде говорити лише про щось не дуже корисне, як "бітові файли toto1 і toto2 відрізняються".


0

Ви могли б це зробити, але якщо ці файли є двійковими, перед редагуванням потрібно завжди ставити на них замок. Ви не отримаєте конфлікту (який був би нерозв'язним).


0

Багато проектів управління новою версією краще підходять для цілих каталогів, і не стільки для окремих файлів.

Переконати когось, що їм потрібно отримати цілий проект, коли вони хочуть лише оновити окремий файл, може стати «цікавим» способом провести півдня.


0

Інший варіант, який ви маєте, - це програмне забезпечення та магія хмарних обчислень, яке називається dropbox. Або ви можете залишити текстові документи та замість цього створити локальний медіавікі.

DropBox: getdropbox DOT com

MediaWiki: mediawiki DOT org


0

ТАК, це застосовно! Я повністю згоден сказати, що комбінований SVN + TortoiseSVN добре підходить для відстеження документів MS Office. Ви можете заблокувати документ для видання, захистити від запису всі розблоковані файли, щоб уникнути конфліктів (тобто паралельних змін), різниця дві версії одного і того ж файлу, переглянути історію всіх модифікацій і, звичайно, відкат до попередньої версії.
Я спробував описати всі ці поради у спеціальному дописі в блозі . ( застереження: я власник блогу )

Все це навіть можна отримати з Інтернету за допомогою веб-клієнта SVN! (можливо, знадобиться розробка програмного забезпечення)

Але якщо ви не звикли до систем контролю версій в іншому контексті, це може бути не очевидним вибором. Необхідна робота для доброї інтеграції з документами надає спеціальним інструментам перевагу: системи "електронного управління документами" створені саме для цього. VCS, такий як SVN, може залишатися гарною альтернативою з причин витрат :-)

Ви тестували онлайн-сервіс Simul ? Це виглядає багатообіцяюче, мені особисто подобається орієнтація на GitHub. Зверніть увагу, що я не пов’язаний із Simul!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.