It is known that in SVN, when you create a branch (or even a tag ), a copy of the trunk files is made to the folder inside the < strong branches .
Gradually I've been using git and realized that when creating a branch it does not create a copy of any file, but even then I can edit the same file on two different branches, that is, I can keep two or more versions of the same file.
My question is: How does git address this issue? What is the "magic" that git does to keep "multiple versions" of the same file?