Любое программное обеспечение для контроля версий (также известное как программное обеспечение контроля версий) может обрабатывать исходный код на разных языках для разных платформ. (Но вопрос не очень ясен, поэтому я не совсем уверен, о чем идет речь.)
Если у вас есть один проект с некоторыми битами, закодированными на C, а другие на Java, то это не проблема - и это не имеет ничего общего с используемым программным обеспечением для контроля версий. Просто организуйте свои каталоги так, чтобы вы строили свой код на C с помощью команды make (или cmake или чего-либо еще), а ваше Java-приложение с maven (или ant или чем-то еще), и (опционально) создайте третий проект, который упаковывает / упаковывает ваши jar-файлы. с вашими родными библиотеками для распространения. Затем используйте git (или svn, hg или любой другой) для отслеживания изменений в проекте. Здесь нет ничего особенного; многие проекты делают именно это.