首页 > 解决方案 > 如何通过 http(s) 创建远程 git 存储库

问题描述

至今:

我有 apache 和 git-http-backend 在我自己的(家庭)服务器上运行。我可以 ssh 到服务器并创建一个存储库。我能够在本地克隆服务器存储库,进行更改并推送回服务器。

我将创建许多小项目。在 svn 上,我以前很少有存储库,项目只是子目录。svn 支持仅获取子文件夹并假设它们是项目。在 git 中,我无法从子文件夹克隆,在我看来,一个项目应该在它自己的存储库中。我的问题是:如何在没有 ssh 进入服务器的情况下创建存储库(实际上是一个项目)。(顺便说一句,我只在我的家庭网络中启用了 ssh。)

我试过 gitweb,但这似乎是一个只读工具。我曾尝试“git init --bare https://...”,但这会将路径解释为本地相对路径。

标签: gitgit-http-backend

解决方案


如果您只是使用标准git-http-backend命令和 Apache,则无法通过 HTTPS 自动创建远程存储库。您必须登录服务器并手动创建它们,因为 Git 只提供本地磁盘上已经存在的存储库。

如果您使用的是像 Gitolite 这样的工具,您可以设置通配符规则以允许通过克隆它们来自动创建存储库。


推荐阅读