Більшість паперів зараз написані спільно, а співробітники часто розташовані в різних місцях. Я завжди використовував системи управління версіями для своїх документів і коду, а також вважав, що контроль версій є критичним для спільних програмних програм, але, здається, багато дослідників теоретично уникають їх використання для написання спільних робіт. Щоб переконати моїх співробітників у тому, що контроль над версіями (контроль редакції) є хорошою ідеєю для спільної роботи, мабуть, є деякі передумови. Неможливо змусити всіх турбуватися про певний набір умов для розривів рядків та абзаців, або уникати переходів у вкладках та пробілах.
Хтось пропонує безкоштовне розміщення невеликих сховищ документів із спільним текстовим документом, керування версіями, яке може працювати з різними рівнями ( не на основі рядків)?
Якщо ні, то я б вітав інші пропозиції, які базуються на досвіді (давайте, будь ласка, уникати міркувань, будь ласка).
Я думав про Git, Subversion, Mercurial, darcs або Bazaar, створені для обробки відмінностей на рівні слова за допомогою wdiff, а також простий спосіб налаштування доступу, захищеного відкритими ключами (наприклад, через ssh). Однак жоден із постачальників контролю версій, на який я дивився, здається, не пропонує нічого подібного. Для наукової співпраці особливості «підприємства», на які підкреслюють багато компаній, не дуже важливі (велика кількість галузей, інтеграція з trac, аудит третіми сторонами, ієрархічні проектні команди). Але різниця на рівні слів здається критичною, але не підтримується. На мій досвід, коли текстові файли відрізняються на рівні рядків, кожен повинен уникати переформатування абзаців та редакторів, які змінюють вкладки на пробіли або навпаки створюють проблеми; також здається, що існує багато помилкових конфліктів із редакцією.
Дивіться відповідне запитання в MO про інструменти співпраці та пов'язані запитання на TeX.SE, про контроль версій для документів LaTeX та пакети LaTeX для контролю версій . Дивіться також Таблицю огляду порівняння хостингу SVN для великого списку хостинг-провайдерів лише для однієї з основних систем управління версіями.
Редагувати: Відповідь Юкки Суомели на питання TeX.SE " Найкращі інструменти для розбиття та злиття для підриву LaTeX ", здається, є найкращою пропозицією на даний момент, яка висвітлює, як інтерпретувати дельти на рівні слів. Крім того, Jukka пояснив, як відмінності між послідовними версіями на кінці сховища відокремлюються від відмінностей на рівні користувача, які використовуються для виявлення конфліктів та об'єднання змін. Відповідь Юкки на TeX.SE явно виключає одночасне редагування та об'єднання, покладаючись на традиційний атомарний маркер редагування, щоб уникнути конфліктів редагування. Уточнюючи (і змінюючи) моє оригінальне запитання, чи є спосіб забезпечити вирішення конфліктів редагування на основі різниці слів, а не на основі різниці рядків? Іншими словами, можеwdiff
чи подібні інструменти інтегруються в частину засобів виявлення конфліктів інструментів контролю версій, подібно до того, як можна ігнорувати кінцеві рядкові відмінності та відмінності у пробілі?