I have a local windows git project that I'm synching regularly with github. I am working with visual studio code.
I renamed the github repository from FT-db-webapp-service to FT-DB-Tools, without doing anything locally.
the repo url has changed accordingly from
from :https://github.com/jammusi/FT-db-webapp-service
to:https://github.com/jammusi/FT-DB-Tools
Now, I made some local changes and synced them with the cloud repo in github. this worked well. The changes where synched with the renamed repository.
I try to understand how this worked. Not that it is so surprising, but I did try to check how the local git repo holds the reference to the right github repo. I checked the file
.git/config
and I see link to the github repository.
This is the file content before as well as after the synching.
The file has not been changed, and still holds the old link.
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = https://github.com/jammusi/FT-db-webapp-service.git
fetch = refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
CodePudding user response:
Your local git is not doing anything special, Github is.
Github maintains your old links to the repository forever. Therefore, every time you rename your repository you are adding a new link to it. This feature is called "redirects" and was first announced in 2013 (see: https://github.blog/2013-05-16-repository-redirects-are-here/)