Привет. Работал с Perforce, TFS, Git. Perforce наверное самый удобный, потому что самый гибкий -- можно хранить двоичные данные и не бояться, что их получение из репозитория в будущем займёт миллион лет.
TFS'ом пользовался давно, наверное опыт с 2017-й версией не очень интересен сейчас, потому что Микрософт любит всё переделывать и переставлять с ног на голову с каждой новой версией чего-либо. Из удобства, так же как и в Perforce, можно хранить не только текстовые данные, например DOCX, для получение тысячной версии не надо будет скачивать 999 предыдущих версий файла. Помимо этого, в TFS было достаточно удобно связывать хранение с задачами. То есть в одном интерфейсе можно управлять как файлами, так и задачами и сборками, в которых эти хранимые файлы используются.
Но все эти системы дороги, даже очень большие конторы из сейчас не жалуют. Можно сказать, что в индустрии закрепился Git. Он вроде бы значительно быстрее работает с небольшими текстовыми данными, то есть очень хорош для разработки. А вот для технического писательства с Git'ом придётся уйти от хранения двоичных данных, Git выделяет разницу между данными в репозитории и данными на локальном компьютере по цепочке, и для получения копии 3 текстового файла нужно будет загрузить лишь дельту. С двоичными же данными придётся скачать все предыдущие копии целиком. Поправьте меня, знатоки, если я тут набрехал.
Поэтому все схемы управления технической документацией с хранением и управлением версиями в Git используют подход DocOps.
Но вот с удобством тут вопрос. Сравнение изменений, если это текст описания, а не код, не всегда удобно и просто. Как, например, просто переименовать описание в старом комите без перебазирования?