Значок с минусом означает что файл удалён. А раз программа это показывает, значит файл ранее был добавлен в репозиторий, иначе откуда бы ей знать об этом? Всё у тебя работает на самом деле, просто файл таки надо удалить из репозитория в любом случае. Добавление в игнор это не удаление.
Василий Банников, наверное лучше удалять через git rm --cached
Чтобы они удалились только из репозитория, но остались в рабочем каталоге.
И коммитить нужно не только изменения gitignore, но и факт удаления тех файлов.
Это плохая идея, светить токен в URL. По факту это пароль, а значение remote/origin хранится в открытом виде в текстовом конфиге. Предпочтительно доверить хранение секретов системному менеджеру паролей.
Василий Банников, можно попутный вопрос?
Нужно ли защищать секретный ключ паролем? Ведь его могут украсть.
Если же мы поставили пароль на секретный ключ, то он будет запрашиваться каждый раз при обмене данными с GitHub?
Хранить ключи в личной папке пользователя предпочтительней, так как туда имеет доступ только пользователь, в отличии от непонятно какого диска D.
И вообще, безопасность папки прописана в её свойствах, не имеет значения, системный это диск или нет.
Вторая часть вопроса тоже не совсем понятна. Что именно не очевидно в пути ~\.ssh?
Судя по постановке вопроса, вы вообще не читали инструкцию к Git?
pull = fetch + merge
Т. е. информация сначала загружается с внешнего репозитория, а затем Git пытается объединить вашу локальную ветку, распакованную в данный момент в рабочем каталоге, с внешней веткой, которая пришла. Не перезаписать, а именно объединить (слить, смёржить).
-m это сокращение от полного названия опции --message. Это сообщение, которое добавляется к каждому коммиту. Если не указать ключ m, то запустится текстовый редактор, в котором ты всё равно напишешь сообщение.