从本地机器克隆 git 到我的服务器?

clone git from local machine to my server?

我的项目在我的本地机器上,有 git 版本控制。

我购买了服务器,我安装了 git,现在我想将我的本地项目克隆到我的服务器(与我们通常所做的完全相反)。

我这里没有 gitlab 或 github。

我该怎么做? 如何将本地 git 项目下载到服务器?

编辑:解决方案

2 步:

1- 应用该主题的正确答案(创建仅包含 git 个文件的 "git server")

2- 并连接到服务器并申请:

cd /my/true/directory/for/my/app
git clone file:///opt/git/project.git

事实上,我们必须创建一个 "server" git 推入的位置(服务器本地)和拉取的位置(服务器上的真实目录来自服务器)

编辑:这可能是最简单的方法:http://thelucid.com/2008/12/02/git-setting-up-a-remote-repository-and-doing-an-initial-push/

通过 SSH 连接到服务器并像通常从服务器克隆一样从您的计算机克隆。

基本步骤是

  1. 通过 SSH 连接到服务器 ssh user@server
  2. 克隆回购到(现在是什么)本地存储git clone --bare ssh://user@desktop-pc/path/to/project.git(我会使用git clone --bare,否则推送到它并不方便——不过你不必这样做)
  3. 退出服务器
  4. (可选)在本地(桌面)repo 中将新服务器添加为远程 git remote add <remote-name> ssh://user@server/path/to/repo

这依赖于您的桌面 运行 一个 ssh 服务器,尽管大多数 linux 安装都会有一个(通常是 openssh)作为标准安装。您可能需要检查它是 运行.

您可以将 git 软件仓库从您的机器镜像到您的服务器:

在您的服务器上:

git clone --mirror git@YourComputerIp:YourRepository

一些阅读:http://git-scm.com/docs/git-clone

如果您的本地计算机与您的服务器不在同一个网络上,您应该将路由器配置为将 git 端口路由到您的本地计算机,并使用您的 public IP

所需的步骤是:

  1. 在服务器上:设置一个裸仓库

    cd /opt/git
    mkdir project.git
    cd project.git
    git init --bare
    
  2. 在您的本地计算机上:将存储库添加为远程

    cd yourproject
    git remote add origin git@gitserver:/opt/git/project.git
    
  3. 在您的本地计算机上:推送到服务器

    git push origin master
    

所有详细信息都记录在 Chapter 4.4 of the 'Pro Git' book 中。