Dass ich als Einzelentwickler kein remote Repo bräuchte, ist schon klar, aber so hab ich es halt gesichert.
Ich habe diese rein verzeichnisbasierte Arbeitsweise in
meiner Git-Anleitung auch gezeigt und das funktioniert auch gut, egal ob per SMB oder auf einem externen Datenträger oder ähnlichem.
Bei größeren Repositorys finde ich aber einen echten Git-Server besser, weil der die Übertragung komprimiert vornimmt, so dass man nicht so viele Dateioperationen braucht und es deutlich schneller funktioniert. Technisch funktioniert aber beides gut.
Eine Sicherung mache ich auch auf ein NAS, aber ich sichere die Daten als differentielles Backup hinter dem Git-Server und habe so nicht nur einen Stand (mehr könnte mein NAS nicht von sich aus), sondern einen Monat zurück tägliche Datenstände, so dass ich z.B. bei einer Verschlüsselungs-Malware nicht Gefahr laufe, dass ich nur noch einen kompromittierten Datenstand wiederherstellen kann, wenn ich den Befall nicht sofort bemerke.
Letztlich ist aber die Art der Umsetzung egal solange du damit gut arbeiten kannst. Ich persönlich würde empfehlen:
Nutze ein gutes Vergleichs-Tool wie Beyond Compare oder Code Compare (leider für Delphi ohne semantischen Vergleich, für andere Sprachen aber schon) und eine für dich passende
GUI für Git (TortoiseGit, ...), dann kann man sehr angenehm damit arbeiten. Die Blame-Ansicht ist z.B. interessant, wenn du herausfinden möchtest, wann (und warum) du eine bestimmte Zeile geändert hast.