ssh-如何将远程Git存储库添加到Ubuntu服务器?

我已经在台式机(Windows 7)上使用以下命令创建了一个Git存储库:

git init
git add <all my files>
git commit -m "added my files"

现在,我在局域网上的计算机上安装了新的Ubuntu Server 10.10,并安装了OpenSSH。 我的主目录是git push,我创建了一个目录~/code/以包含我的项目。 我可以使用Putty从Windows 7登录到Ubuntu服务器。

我在git push的服务器上安装了Git

添加远程存储库

现在,我要将我的桌面上的Git存储库添加到服务器。 我尝试遵循使用Git进行实用版本控制的说明。

在我的桌面上,运行以下命令:

git remote add origin jonas@192.168.1.10/home/jonas/code/myproject.git
git push origin master

但是我得到了这个错误信息:

fatal: 'jonas@192.168.1.180/home/jonas/code/myproject.git' does not appear to be
 a git repository
fatal: The remote end hung up unexpectedly

问题是什么? 如何创建远程存储库?


正如PerfectlyNormal建议的那样,我在地址中添加了git push。 现在它可以更好地工作了,我必须在服务器上输入密码,但是随后出现类似的错误消息:

fatal: '/home/jonas/code/myproject.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

git push可以在服务器上初始化Git存储库吗?

Jonas asked 2020-08-03T14:59:54Z
7个解决方案
42 votes
git remote add origin jonas@192.168.1.10/home/jonas/code/myproject.git

使用SSH时,可以两种方式表示远程存储库地址。 一种使用绝对路径,另一种使用用户主目录中的相对路径。 你把它们弄混了。

更正后的命令将是以下命令之一。

git remote add origin jonas@192.168.1.10:code/myproject.git
git remote add origin ssh://jonas@192.168.1.10/home/jonas/code/myproject.git
Arrowmaster answered 2020-08-03T15:00:40Z
31 votes

您是否在远程服务器上设置了存储库? 你需要跑步

mkdir -p /home/jonas/code/myproject.git
cd /home/jonas/code/myproject.git
git init --bare

在服务器上进行设置。 我建议您看一看如何在免费的ProGit书中设置git服务器。

Andrew Marshall answered 2020-08-03T15:00:14Z
8 votes

我注意到的第一件事是您缺少“:”。 应该是git remote add origin jonas@192.168.1.10:/home/jonas/code/myproject.git

PerfectlyNormal answered 2020-08-03T15:01:01Z
3 votes

我通常在本地创建一个裸存储库,然后在设置远程存储库时将该存储库scp到服务器。

例如,

cd c:\gits
git clone --bare c:\path\to\local\repository\some_project

这将创建some_project.git。

然后,

scp -r some_project.git login@some.server:/path/to/remote/gits/.

输入您的密码,或者您可能已经可以使用公钥/私钥了。

Keith John Hutchison answered 2020-08-03T15:01:38Z
2 votes

您需要一个冒号:

git remote add origin jonas@192.168.1.10/home/jonas/code/myproject.git

应该:

git remote add origin jonas@192.168.1.10:/home/jonas/code/myproject.git
Dan D. answered 2020-08-03T15:02:02Z
0 votes

看看Eike Kettner编写的方便的脚本git-create.bash。 给它提供您首选的远程地址(git-create.bash),它将自动SSH输入以创建目录并为您初始化一个空的--bare存储库。 您需要做的就是添加git remotegit push

git-create.bash:通过ssh创建新的空远程git存储库

用法:

git-create.bash 'jonas@192.168.1.10:code/myproject.git'
git remote add origin 'jonas@192.168.1.10:code/myproject.git'
git push -u origin master
Joel Purra answered 2020-08-03T15:02:31Z
0 votes

连接本地仓库。 到Git远程服务器Ubuntu

在远程服务器中创建用户,并使用 Done 分配ssh访问权限 在本地服务器中并将其.pub文件粘贴到远程ssh 服务器。

在远程服务器上要做的事情

服务器: Done

内部腻子命令行

  1. 转到根目录中的位置: Done srv

  2. 创建一个文件夹:mkdir your_file_name,然后在git文件夹中的文件内添加cd

  3. 在那里初始化git:git init --bare

        Done
    

在本地机器上要做的事情

  1. 创建您的存储库..

  2. 初始化Git: Done

  3. 创建远程连接: Done

  4. git push。

        Done
    

如果您遇到任何困难,请参考:[https://git-scm.com/book/en/v2/Git-on-the-Server-Setting-Up-the-Server。]

KRIPA SHANKAR JHA answered 2020-08-03T15:03:48Z
translate from https://stackoverflow.com:/questions/5136381/how-do-i-add-a-remote-git-repository-to-an-ubuntu-server