Разница заключается в том, как вы указываете сайт на серверы GitHub в DNS.
Самое простое использование DNS - указать доменное имя любого уровня на IP-адресе, используя запись A. Один и тот же адрес будет использоваться всеми пользователями и может быть изменен только владельцем «зоны», в которую была добавлена запись А. В данном случае вы настраиваете зону своего пользовательского домена.
Более разумный способ - псевдоним для конкретного доменного имени в другой зоне - в данном случае под управлением GitHub - с использованием записи CNAME. Владельцы этой зоны могут затем при необходимости изменить IP-адрес и даже могут дать разные ответы разным пользователям в зависимости от их местоположения (отсюда и ссылка на CDN).
Однако ключевое ограничение заключается в том, что вы не можете использовать CNANE в качестве корня зоны . См. этот вопрос о сбое сервера для технических деталей.
Если у вас есть «example.com», вы можете указать запись A для корня этого домена на один IP-адрес GitHub (или несколько, выбранных посетителями по случайному выбору), но предоставит GitHub больше свободы для маршрутизации. трафик, если вы указываете CNAME для субдомена, например "www.example.com".