Я не особо понял как ты хочешь. git diff можно отдельно в файл выводить и сохранять для истории. А ещё обычно делают отдельную ветку и туда коммитят, а потом сливают с основной веткой, решая конфликты. Плагинов тоже много для слияния веток
вшиндовс 7 у меня код не видит компилятор для С я скачал его с офф сайта поставил комп перезагрузил до этого просто на убунте юзал gcc в консольке но для уника решил перейти на винду