1

そこで、Git Bash を使用してレポを作成しましたが、動作します (github.com のローカルおよびリモート レポジトリ)。テスト用にREADMEファイルをプッシュしましたが、うまくいきました。私の設定では、すべて問題ないようです:

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
    hideDotFiles = dotGitOnly
[gui]
    pruneduringfetch = true
    encoding =
[remote "origin"]
    url = git@github.com:SOME_USERNAME/some-project-name.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master

そして$ ssh -V git@github.com与えます:

SOME_USERNAMEさん、こんにちは!認証に成功しましたが、GitHub はシェル アクセスを提供していません。

また、ファイルやすべてをプッシュできますが、Git Bash を介してのみです。ただし、作業を試みたところ、次のエラーが発生しました。

リモート エンドが予期せず電話を切った

「オリジン」URLを手動でこれに変更したとき:

https://SOME_USERNAME@github.com/SOME_USERNAME/some-project.git

出来た。したがって、「git@...」では機能しませんが、「https://..」では機能します。別のプログラム、SmartGit を試しました。それはまた私に与えます

リモート エンドが予期せず電話を切った

しかし、SmartGit でこの「URL トリックの変更」を実行しようとすると、「https://...」に対して次のエラーが表示されます。

プッシュ: 認証に失敗しました

認証失敗 リモート設定

プロトコルでサポートされていないリモート サービス パスの設定。

私はこのすべてのもので完全に迷っています。私は何を間違っていますか?

4

3 に答える 3

2

SmartGit を管理者として実行してみてください。

于 2012-01-01T12:29:04.740 に答える
1

%HOME%/.sshSSH は(" ")内のキーを探しますが、これHOMEは常に定義されているとは限りません (msysgit はデフォルトで定義しますが、おそらく TortoiseGitですが、ssh キーを指定できますが、おそらくSmartGitではありません) 。

%userprofile%そのため、SmartGit を起動する前に、HOME が に設定されていることを確認してください。

于 2012-01-01T11:25:28.540 に答える
0

「git@」URLでは機能せず、「https」では機能するという事実は、これがSSHキーの設定に関係していることを示しています. TortoiseGit の「OpenSSH」オプション (PUTTY ではなく) を選択したことを確認し、TortoiseGit の設定ページで、「リモート」セクションがキーが配置されている場所を指していることを確認します。

于 2012-01-01T11:25:10.520 に答える