В связи с тем, что вопросы применения SCM к проектам на МК возникают регулярно и в разных темах, создаю эту тему и готов отвечать на вопросы по конфигурационному управлению (SCM - Software Configuration Management)
Здесь обсуждаются вопросы по:
1. Cистемам сборки: make, cmake, autoconf и т.п.
2. Системам контроля версий: SubVersion, Git и т.п.
3. Системам трекинга: Redmine, Bugzilla и т.п.
Вопросы по make и Git/SVN уже возникали в разных темах. Вопросы по трекерам пока нет, но мало ли... Все же это неотъемлемый компонент SCM
Добавлено after 20 minutes 57 seconds:Для затравки, расскажу, как проще работать с Git или SubVersion
Дело в том, что совсем не обязательно, как настоящий гуру, пользоваться ими из командной строки )
Для Windows существует два совершенно бесплатных и удобных приложения
TortoiseGit для Git
https://tortoisegit.org/TortoiseSVN для SubVersion
https://tortoisesvn.net/Интерфейс и идеология у обеих очень похожи.
Приложение встраивается в Проводник Windows и позволяет все операции с системой контроля версий выполнять через контекстное меню Проводника.
TortoiseGit без проблем позволяет работать с GitHub напрямую, даже не открывая его в интернет браузере
Если же Вам (как мне) удобней иметь репозиторий своих исходников на локальном диске - то проще использовать SubVersion (SVN)
Добавлено after 28 minutes 13 seconds:Во избежание споров о том, что лучше, Git или SubVersion(SVN) хочу сразу обратить внимание, что это идеологически
разные системы контроля версий рассчитанные на
разные области применения.
Git - децентрализованная система. Все репозитории одного проекта в Git равноправны. Это дает безусловные преимущества при децентрализованной разработке десятками и сотнями независимых разработчиков одного проекта. Но ценой дополнительных телодвижений, как при подключении к репозиторию (обязательно использование ключей доступа), так и при работе с ним (не достаточно положить изменения в репозиторий (Commit), необходимо еще синхронизировать локальный репозиторий с удаленными (Sync)).
SVN - централизованная система. Для любого проекта в ней имеется только один центральный репозиторий. У кого он расположен - тот его и контролирует. По сравнению с Git, это упрощает работу при использовании SVN незначительным количеством независимых разработчиков.
Остальные отличия Git и SVN, на мой взгляд, субъективны и не принципиальны.