我对git很陌生。尝试在Linux服务器中设置自己的裸git远程存储库,并从本地存储库推送文件。我仔细阅读了一些手册,并设置了远程和本地存储库。
当我从本地存储库中推送时,连接被拒绝。我已经在服务器中创建了SSH密钥,并且可以使用其他端口(34891)从本地终端通过Putty连接。
需要一些帮助,如何将本地存储库推送到远程存储库。
以下是来自我的服务器。远程存储库看起来还可以
[myname@octopus gitrepo.git]$ pwd
/media2/myname/gitrepo.git
[myname@octopus gitrepo.git]$ ls -l
total 28
-rw-rw-r-- 1 myname myname 23 Oct 17 23:45 HEAD
-rw-rw-r-- 1 myname myname 84 Oct 17 23:45 config
-rw-rw-r-- 1 myname myname 73 Oct 17 23:45 description
drwxrwxr-x 2 myname myname 4096 Oct 17 23:45 hooks
drwxrwxr-x 2 myname myname 4096 Oct 17 23:45 info
drwxrwxr-x 4 myname myname 4096 Oct 17 23:45 objects
drwxrwxr-x 4 myname myname 4096 Oct 17 23:45 refs
[myname@octopus gitrepo.git]$
下面是我的本地存储库中使用的命令
Malai@MALAI MINGW64 /e/gitrepo/test (master)
$ ls
new.txt
Malai@MALAI MINGW64 /e/gitrepo/test (master)
$ git remote add origin myname@xxx.y.z.aaa:/media2/myname/gitrepo.git
Malai@MALAI MINGW64 /e/gitrepo/test (master)
$ git remote -v
origin myname@xxx.y.z.aaa:/media2/myname/gitrepo.git (fetch)
origin myname@xxx.y.z.aaa:/media2/myname/gitrepo.git (push)
Malai@MALAI MINGW64 /e/gitrepo/test (master)
$ git push -u origin master
ssh: connect to host xxx.y.z.aaa port 22: Connection refused
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我还尝试如下添加端口号,并且仍然是相同的错误
git remote add origin myname@xxx.y.z.aaa:34891/media2/myname/gitrepo.git
在ssh_config中,我添加了如下的IP地址和端口号
Host xxx.y.z.aaa
Port 34891
当我尝试连接时,它要求输入密码。但是据说许可被拒绝了。
Malai@MALAI MINGW64 /e/gitrepo/test (master)
$ ssh -T -p 34891 myname@xxx.y.z.aaa
myname@xxx.y.z.aaa's password:
Permission denied, please try again.
我想念什么吗?我应该将私钥放在哪里吗?还是我应该在ssh配置中做任何配置?
答案 0 :(得分:0)
做出以下更改后问题得以解决。
在C:\ Program Files \ Git \ etc \ ssh下编辑ssh_config文件,并添加以下几行
Host xxx.y.z.aaa
Port 34891
IdentityFile E:\sshkeys\ssh_myname
IdentifyFile是从我的服务器下载的id_rsa文件的路径。
一旦进行了这些更改,它便开始工作
Malai@MALAI MINGW64 /e/gitrepo/test (master)
$ git push -u origin master
Enter passphrase for key 'E:\sshkeys\ssh_myname':
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 211 bytes | 70.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To xxx.y.z.aaa:/media2/myname/gitrepo.git
* [new branch] master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.
答案 1 :(得分:0)
我在Linux群集上也遇到了同样的问题,可以通过添加以下内容来解决:
[user]
email = name@address.com
到
.../repository/.git/config