Я работал над открытым фреймворком Mixin для C # pMixins . Он использует частичные классы и генераторы кода, чтобы связать класс Mixin с целью:
//Mixin - Class that contains members that should be injected into other classes.
public class Mixin
{
// This method should be in several class
public void Method(){ }
}
//Target (Note: That it is partial) - Add members from Mixin
[pMixn(Target = typeof(Mixin)]
public partial class Target{}
//Example of using Target
public class Consumer
{
public void Example()
{
var target = new Target();
// can call mixed in method
target.Method();
// can implicitly convert Target to Mixin
Mixin m = new Target();
m.Method();
}
}
Что возвращает
$ git config --get-regexp '^(remote|branch)\.'
(выполняется в вашем репозитории git)?
Origin - это просто соглашение об именах по умолчанию для ссылки на удаленный репозиторий Git.
Если это не относится в GitHub (а скорее путь к репозиторию вашего товарища по команде, путь, который больше не может быть действительным или доступным), просто добавьте другое происхождение, как в этой записи Bloggitation
$ git remote add origin2 git@github.com:myLogin/myProject.git
$ git push origin2 master
(я бы на самом деле использовал имя 'github', а чем 'origin' или 'origin2')
В доступе отказано (открытый ключ).
фатальный: удаленный конец неожиданно повесил трубку
Проверьте, правильно ли объявлен ваш идентификатор gitHub в вашем локальном репозитории Git, как указано в справочном руководстве GitHub . (и user.name, и github.name - и github.token)
Затем блог Stonean предлагает (как и Marcio Garcia ):
$ cd ~/.ssh
$ ssh-add id_rsa
Aral Balkan добавляет: создать файл конфигурации
Решением было создать файл конфигурации в папке ~ / .ssh /, как указано в внизу раздела OS X этой страницы .
Вот файл, который я добавил в соответствии с инструкциями на странице, и мои нажатия снова начали работать:
Host github.com
User git
Port 22
Hostname github.com
IdentityFile ~/.ssh/id_rsa
TCPKeepAlive yes
IdentitiesOnly yes
Вы также можете опубликовать результат
ssh -v git@github.com
, чтобы получить дополнительную информацию о том, почему соединение GitHub ssh отклоняет вас.
Также проверьте, правильно ли вы ввели свой открытый ключ (он должен заканчиваться на ' Не вставляйте свой закрытый ключ, а свой открытый. Открытый ключ будет выглядеть примерно так:
ssh-rsa AAAAB3<big string here>== tek...@gmail.com
(Примечание: вы использовали парольную фразу для своих ключей ssh? Было бы проще без парольной фразы)
Проверьте также URL-адрес, используемый при нажатии ( git @ github. com /...
, а не git: //github.com / ...
)
Убедитесь, что у вас действительно есть агент SSH, который будет использовать и кэшировать ваш ключ.
Попробуйте это:
$ ssh -i path/to/public/key git@github.com
Если это работает, значит, ваш ключ не отправляется на GitHub вашим клиентом ssh.
Это проблема с вашим пультом дистанционного управления. Когда вы выполняете git push origin master
, origin
является удаленным, а master
- это ветвь, которую вы нажимаете.
Когда вы делаете это:
git remote
] Держу пари, что в списке нет origin
. Чтобы повторно добавить исходный пульт:
git remote add origin git@github.com:your_github_username/your_github_app.git
Или, если он существует, но отформатирован неправильно:
git remote rm origin
git remote add origin git@github.com:your_github_username/your_github_app.git
Я думаю, что это еще один случай, когда сообщения об ошибках git вводят в заблуждение. Обычно, когда я вижу эту ошибку, это связано с проблемами ssh. Вы добавили свой публичный ключ ssh в свою учетную запись github?
Edit: Кроме того, сообщение на форуме xinet.d относится к запуску git-daemon как службы, чтобы люди могли извлекать из вашей системы. Для отправки на github запускать git-daemon не обязательно.
У меня та же проблема, и я просто добавил содержимое ~ / .ssh / id_rsa.pub в свою учетную запись на GitHub. После этого просто попробуйте еще раз git push origin master
, все должно работать.
Ответ VonC лучший, но та часть, которая сработала для меня, была очень простой и как бы похоронена среди множества других возможных ответов. Если вы похожи на меня, вы столкнулись с этой проблемой во время выполнения учебника «Начало работы с рельсами», и вы НЕ настраивали свои общедоступные / частные ключи SSH.
Если это так, попробуйте следующее:
$> cd ~ / .ssh
$> ls
Если вывод ls - known_hosts
и ничего больше, посетите: http://help.github.com/mac-key-setup/ и начните выполнять инструкции из раздела «Создание ключа» и ниже.
После выполнения этих инструкций моя команда "git push origin master" заработала.