Ответ 1
Если вы действительно должны иметь этот файл под управлением версии, используйте git драйвер фильтра атрибутов (см. также GitPro book).
Драйвер фильтра состоит из команды
clean
и командыsmudge
, любая из которых может быть оставлена неуказанной.
Наcheckout
, когда указана командаsmudge
, команда передает объект blob со своего стандартного ввода, а его стандартный вывод используется для обновления файла рабочей папки.
Аналогично, командаclean
используется для преобразования содержимого файла worktree при регистрации.
Таким образом, script (приватная версия, только в вашем репо, не управляемая Git), на которую ссылается smudge, может заменить кодированный URL, а чистый script восстановит его содержимое до кодированного URL.
Публичная версия того же script, управляемая git и нажатая везде, будет... ничего и сохранить запутанный URL.