Having a single centralized source will always give those issues. It can go down either temporarily or permanently. It is all part of the conveniance/single-point-of-failure scale.
In the short run it going down will cause some issues, which can be mitigated by having local mirrors of critical repos. However, moving to another place should in theory be as easy as replacing github.com with gitlab, codeberg, your-local-git-server url, etc (and auth info of course)
Actually testing what will happen if github and/or other services are down and see how your product or build pipeline handles it, is a very good thing to do, but very rarely is it done. It can be easily accomplished by for example adding a drop rule in iptables. Testing for bad things never seems to happen though, and then when it really is a problem nothing works and everyone panics.
Having a single centralized source will always give those issues. It can go down either temporarily or permanently. It is all part of the conveniance/single-point-of-failure scale.
In the short run it going down will cause some issues, which can be mitigated by having local mirrors of critical repos. However, moving to another place should in theory be as easy as replacing github.com with gitlab, codeberg, your-local-git-server url, etc (and auth info of course)
Actually testing what will happen if github and/or other services are down and see how your product or build pipeline handles it, is a very good thing to do, but very rarely is it done. It can be easily accomplished by for example adding a drop rule in iptables. Testing for bad things never seems to happen though, and then when it really is a problem nothing works and everyone panics.