Форум программистов, компьютерный форум, киберфорум
Git
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
2 / 2 / 1
Регистрация: 16.04.2022
Сообщений: 1,002

ssh + git clone

27.12.2023, 14:28. Показов 1421. Ответов 13
Метки git, ssh (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Есть такой скрипт
Кликните здесь для просмотра всего текста
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#Удаляем папку ssh
rm -rf ~/.ssh
 
#Подключаем агента
eval `ssh-agent -s`
 
#Удаляем ключи
ssh-add -D
 
#Создание ключа
ssh-keygen -t ed25519 -C "aaa@mail.ru" -f /c/Users/Acer/.ssh/id_ed25519_firstUser -P ""
 
#Создаем файл config
echo -e "Host firstUser\n\tHostName github.com\n\tUser git\n\tIdentityFile ~/.ssh/id_ed25519_firstUser" > /c/Users/Acer/.ssh/config
 
#Добавляем ключ
ssh-add ~/.ssh/id_ed25519_firstUser

Далее в GitHub вручную добавляем публичный ключ.

Потом
Bash
1
2
cd c:/users/Acer/Desktop/Gits/For_clone1
git clone firstUser:aaa/repotest1.git
Появляется сообщение
Cloning into 'repotest1'...
The authenticity of host 'github.com (...)' can't be established.
ED25519 key fingerprint is ...
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])?

Нажимаю yes

Warning: Permanently added 'github.com' (ED25519) to the list of known hosts.
remote: Enumerating objects: 6, done.
remote: Total 6 (delta 0), reused 0 (delta 0), pack-reused 6
Receiving objects: 100% (6/6), done.


В результате клон создан. И в папке .ssh добавлены два файла known_hosts и known_hosts.old.

Далее
Bash
1
2
rm -rf c:/users/Acer/Desktop/Gits/For_clone1/repotest1
git clone firstUser:aaa/repotest1.git
Появляется сообщение
Cloning into 'repotest1'...
remote: Enumerating objects: 6, done.
remote: Total 6 (delta 0), reused 0 (delta 0), pack-reused 6
Receiving objects: 100% (6/6), done.


Если есть файл config, то не должны создаваться два файла known_hosts и known_hosts.old, верно?
Скажите, как правильно написать код, если не должны создаваться два файла known_hosts и known_hosts.old?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.12.2023, 14:28
Ответы с готовыми решениями:

Ошибка ssh ключа при выполнении git clone
Всем привет, На bitbucket я загрузил свой public key в SSH keys на на сервере(Ubuntu 18 Digital under Ocean) настраиваю доступ по ssh ...

GIT clone с локальной машины
Всем доброго времени суток! Начал изучать GIT, и в данный момент разбираюсь с работой с удаленными репозиториями. Создавал...

Почему не выполняется команда git clone?
C:\Users\Kate\Desktop\money raffle>git clone https://github.com/metaplex-foundation/metaplex.git "git" не является внутренней или внешней...

13
2 / 2 / 1
Регистрация: 16.04.2022
Сообщений: 1,002
28.12.2023, 07:53  [ТС]
Цитата Сообщение от MConst Посмотреть сообщение
Далее в GitHub вручную добавляем публичный ключ.
Это действие возможно сделать в bash, например, если одноразово зайти через https?
0
Эксперт .NET
 Аватар для Rius
13018 / 7584 / 1660
Регистрация: 25.05.2015
Сообщений: 23,041
Записей в блоге: 14
28.12.2023, 10:36
Цитата Сообщение от MConst Посмотреть сообщение
Если есть файл config, то не должны создаваться два файла known_hosts и known_hosts.old, верно?
Не верно.
Если хоста нет в списке известных хостов, он добавляется через запрос
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
Создаётся файл known_hosts.
А так как это в то же время модификация файла, то создаётся и backup с расширением old.
В этом файле прописаны хосты и их отпечатки ключей. Для проверки того, не подменили ли вам хакеры хост репозитория.

Цитата Сообщение от MConst Посмотреть сообщение
Скажите, как правильно написать код, если не должны создаваться два файла known_hosts и known_hosts.old?
Зачем?

Цитата Сообщение от MConst Посмотреть сообщение
Это действие возможно сделать в bash, например, если одноразово зайти через https?
Это функциональность не git или ssh, а github. Изучайте github cli, может и найдёте.
0
2 / 2 / 1
Регистрация: 16.04.2022
Сообщений: 1,002
28.12.2023, 11:57  [ТС]
Цитата Сообщение от Rius Посмотреть сообщение
Если хоста нет в списке известных хостов, он добавляется через запрос
Скажите, а как возможно сделать так, чтобы не добавлялся через запрос, а сразу добавился из команды bash?
0
Эксперт .NET
 Аватар для Rius
13018 / 7584 / 1660
Регистрация: 25.05.2015
Сообщений: 23,041
Записей в блоге: 14
28.12.2023, 12:00
Примерно так:
Bash
1
ssh-keyscan <enter_domainname_e.g._github.com> >> ~/.ssh/known_hosts
Учтите, что это ставит под угрозу ваши данные.
0
2 / 2 / 1
Регистрация: 16.04.2022
Сообщений: 1,002
28.12.2023, 13:56  [ТС]
Спасибо!

Цитата Сообщение от MConst Посмотреть сообщение
Bash
1
git clone firstUser:aaa/repotest1.git
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
Цитата Сообщение от Rius Посмотреть сообщение
Если хоста нет в списке известных хостов, он добавляется через запрос

Создаётся файл known_hosts.
Правильно понимаю, что для команды git clone нет параметра, чтобы задавал как yes?
0
Эксперт .NET
 Аватар для Rius
13018 / 7584 / 1660
Регистрация: 25.05.2015
Сообщений: 23,041
Записей в блоге: 14
28.12.2023, 14:03
Кстати, если ранее уже было добавлено, надо удалить старое надо перед этим добавлением:
Bash
1
ssh-keygen -R github.com
Цитата Сообщение от MConst Посмотреть сообщение
Правильно понимаю, что для команды git clone нет параметра, чтобы задавал как yes?
Вероятно, да. Это фича ssh, а не git.
0
2 / 2 / 1
Регистрация: 16.04.2022
Сообщений: 1,002
28.12.2023, 16:26  [ТС]
В config файле задал параметры для двух пользователей. Когда для первого пользователя первый раз клонировал репозиторий - писал про This key is not known by any other names. Are you sure you want to continue connecting (yes/no/[fingerprint])? и вводил yes. Со второго раза клонировал без запроса.

Когда для второго пользователя клонировал репозиторий в другую папку, то запрос такой не выдавал.

Так и должно работать? Изначально предполагал, что для второго пользователя также придется нажимать yes.
0
Эксперт .NET
 Аватар для Rius
13018 / 7584 / 1660
Регистрация: 25.05.2015
Сообщений: 23,041
Записей в блоге: 14
28.12.2023, 16:33
Значит, для ssh это уже один и тот же хост. И файл хостов - один.
Вам зачем в такие дебри лезть? Какой практический смысл?

Для понимания гита лучше по гиту и читать.
Миниатюры
ssh + git clone   ssh + git clone   ssh + git clone  

0
2 / 2 / 1
Регистрация: 16.04.2022
Сообщений: 1,002
29.12.2023, 08:02  [ТС]
Цитата Сообщение от Rius Посмотреть сообщение
Вам зачем в такие дебри лезть? Какой практический смысл?
Для имитации командной работы от разных пользователей с помощью переключения, чтобы удобнее было изучать и экспериментировать с Git.
0
Эксперт .NET
 Аватар для Rius
13018 / 7584 / 1660
Регистрация: 25.05.2015
Сообщений: 23,041
Записей в блоге: 14
29.12.2023, 12:32
Для этого github cli не требуется.
0
2 / 2 / 1
Регистрация: 16.04.2022
Сообщений: 1,002
29.12.2023, 12:51  [ТС]
Цитата Сообщение от Rius Посмотреть сообщение
Для этого github cli не требуется.
Не требуется, если действия на GitHub вручную делать в соответствующем аккаунте.
0
 Аватар для IamRain
4693 / 2701 / 734
Регистрация: 02.08.2011
Сообщений: 7,218
29.12.2023, 13:23
Цитата Сообщение от MConst Посмотреть сообщение
Для имитации командной работы от разных пользователей
Для имитации командной работы достаточно иметь две локальные копии репозитория, на одной машине.
Складывается ощущение, что вы не умеете учиться.

Цитата Сообщение от MConst Посмотреть сообщение
чтобы удобнее было изучать и экспериментировать с Git.
Где тут удобство - изучать три тулы вместо одной (одну которую люди годами изучают)?
Просто берете книгу от S.Chacon-а - Pro Git (вторая картинка из поста выше) и пробуете практиковаться.
+ сайт автора - https://git-scm.com/docs. За глаза хватает.
0
2 / 2 / 1
Регистрация: 16.04.2022
Сообщений: 1,002
29.12.2023, 13:29  [ТС]
Цитата Сообщение от IamRain Посмотреть сообщение
Для имитации командной работы достаточно иметь две локальные копии репозитория, на одной машине.
Как вариант да, можно. Но тут еще имитация действий на GitHub для соответствующего пользователя (аккаунта).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.12.2023, 13:29
Помогаю со студенческими работами здесь

Не отображается список веток после git clone
После клонирования репозитория с сервера, вывод комманды git branch не отображает никаких веток, пока явно не будет сделан git checkout...

Почему git clone - не получаю все файлы?
Добрый день! Хотел скачать проект с GitHub,но когда прописываю git clone https://github.com/..., получаю папку без фалов, кроме readme....

Git clone выдает Permission denied (publickey) после переустанвки Kubuntu
Всем привет, У меня накрылась Kubuntu 18 и перед перед установкой новой версии зайдя Kubuntu Live 1) Я скопировал все содержимое...

git без ssh ключа
Здравствуйте. Можете объяснить для чего нужен ssh ключ, если я создал репо и без него и смог запушить на гитхаб проект? Просто до этого я...

Настройка ssh для git
Всем привет! Почему TortoiseGit при клонировании просит пароль, если при генерации ключей не задаю никакого пароля? Ключи генерирую...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru