After deleting a file locally, it can be restored immediately through the version management tool.
I think to implement this function, you need to make at least one copy of the source file and record the incremental modifications.
But I actually found that the .git and .svn directories are not particularly large. Why?
Record modifications and save the latest version
It’s just a place to record changes, not a backup file
Git and svn are just a kind of version controller. .git or .svn only records your operation records. If you delete the file locally, it will not be deleted online, so it can still be restored.
Git is not an incremental backup, but actually archives every file. You think it's not particularly big because the code files are not big in the first place. Even if all the files are copied completely, it is just
x2
. However, in actual projects, it is impossible for every file to be modified.