После долгих поисков я нашел то, что искал (но, возможно, не совсем то, что я изначально просил).Я решил использовать ssh.У Github есть несколько хороших справочных документов, чтобы следовать здесь (при проверке подлинности), но в основном вам нужно 1. Создать ключ ssh для каждой учетной записи и добавить его в агент ssh * 2. Добавьте ключ ssh к вашим учетным записям github 3. На компьютере Mac Обновите файл конфигурации в ~ / .ssh / config (прокрутите вниз до "выбора между несколькими учетными записями в GitHub или Heroku")
- Примечание. Добавление ключей ssh к агенту ssh является временным.Они действуют только до тех пор, пока агент работает.Если вы убьете его или перезагрузите компьютер, они будут потеряны, пока вы не добавите их снова.
Чтобы исправить это, я создал функцию bash, добавил ее в файлы bash rc для всех оболочек, так чтоЯ могу просто назвать это как терминальную команду.Код здесь:
#!/bin/bash
function addSshKeysToAgent() {
echo "starting ssh agent:"
echo ""
eval 'ssh-agent -s'
echo ""
echo "adding identities: "
ssh-add -K ~/.ssh/personal_rsa
ssh-add -K ~/.ssh/work_rsa
echo ""
echo "Private keys loaded into SSH: "
ssh-add -l -E md5
echo ""
echo "ssh keys added to ssh agent."
}
function clone() {
addSshKeysToAgent
git clone gh-work:Company/$1
}
Замените personal_rsa и work_rsa именем вашего файла ключей ssh, а Company - названием вашей организации (если это то, что вы хотите сделать), что происходит из файла конфигурации, который вы обновили,Вот как выглядит мой конфигурационный файл:
Host *
Port 22
ServerAliveInterval 60
ForwardAgent yes
UseKeychain yes
AddKeysToAgent yes
IdentityFile ~/.ssh/personal_rsa
IdentityFile ~/.ssh/work_rsa
Host gh-personal
Hostname github.com
User git
IdentityFile ~/.ssh/personal_rsa
AddKeysToAgent yes
UseKeychain yes
Host gh-work
Hostname github.com
User git
IdentityFile ~/.ssh/work_rsa
AddKeysToAgent yes
UseKeychain yes
со всем этим вы сможете клонировать репо из терминала с помощью следующей команды:
clone reponame.git
Я искренне надеюсь, что этопомогает кому-то.Мне потребовался почти целый день поиска и взлома вещей, чтобы получить эту работу, и когда я писал этот ответ, я наткнулся на действительно большой смысл сделать именно то, что я хотел здесь