Большинство систем контроля версий (VCS) предназначены для текста. Они обычно имеют очень мощные и удобные функции для сравнения ( diff
) и объединения исходного кода, и некоторые инструменты могут даже автоматически объединять изменения (и делать приличную работу, пытаясь угадать, как изменения должны быть объединены и в какой момент разработчик должен предложить выполнить ручное слияние).
Было бы здорово иметь лучшую поддержку diff
и объединение двоичных файлов из соответствующих приложений, которые используют эти файлы. Например, Microsoft Word позволяет сравнивать два документа, и хотя это далеко не удобный инструмент для слияния, он все же лучше, чем ничего, и много раз экономил мне часы. К сожалению, функция слияния обычно либо отслеживается в программных продуктах, либо ее сложно реализовать (как вы визуализируете diff
трехмерную сцену?)
Когда дело доходит до двоичных файлов, вы получаете небольшую помощь от VCS. Они не только не могут эффективно хранить последовательные изменения, но и не могут помочь вам объединить изменения.
Два года назад я задал очень похожий вопрос, касающийся использования контроля версий в программном обеспечении для редактирования видео . Я считаю, что ответы, которые были даны на мой вопрос, частично применимы и здесь, единственное (но важное) отличие состоит в том, что мой вопрос касался больших файлов, в то время как в вашем случае двоичные файлы, вероятно, относительно малы.
Подход, который вы нашли, то есть «работа по очереди на одних и тех же объектах», является хорошим. Если вы не можете объединиться, не работайте параллельно над одним и тем же материалом. Если вы работаете в одном офисе, это может быть легко сделать. Если нет, большинство систем управления версиями ( включая используемую вами ; это также обсуждается здесь в контексте BitBucket) поддерживают блокировку , которая заключается в том, чтобы пользователь VCS через систему сообщал, что он работает с данным правом файла. сейчас же; другие пользователи могут загрузить последнюю версию файла, но они не должны ее менять.