Я сталкивался с подобными «проблемами» с SVN, так что это то, что является общим для большинства систем контроля версий:
Когда вы обновляете или возвращаете или каким-либо образом изменяете файлы под управлением версиями, они, как правило, отнимают время - так же, как при использовании касания. Итак, как отметил Коммодор, ваш двоичный файл теперь новее, чем что-либо еще, поэтому он «должен» обновляться.
У меня был похожий опыт при возврате исходного файла (особенно файла заголовка), и я не ожидал, что восстановление будет происходить, потому что я ожидал, что возврат будет похож на DOS COPY, а потому что рассматриваемый файл берет на себя В настоящее время VS считает, что двоичные файлы устарели, и перестраивает все, что зависит от исходного файла.
Это сделано так, что вы никогда не получите такие вещи, как библиотеки, созданные с разными версиями заголовков.
Вы можете попробовать «дотронуться» до критически важного файла (например, файла общего заголовка), чтобы вызвать перестройку, или просто попросить Visual Studio выполнить полную перестройку.
Да, и не помещайте файлы, являющиеся результатом сборки, под контроль версий - вам нужны только исходные файлы. Вам нужно хранить свои файлы в другом месте, возможно, в устаревших папках.