我尝试过跟踪如何设置您自己的私有git服务器linux和私有远程git存储库-ubuntu-linode,但是我仍然有问题。
我的本地环境是windows和远程linux。我有几个问题:
ssh myuser@server.com mkdir .ssh和scp ~/.ssh/id_rsa.pub myuser@server.com:.ssh/authorized_keys!我试着跳过使git用户和公钥,在远程机器上创建存储库,但是当我尝试git remote add origin ssh://[username]@[domain/ip/hostname]/srv/git/[project-name]作为根用户时,它是:fatal: Not a git repository (or any of the parent directories): .git。
发布于 2011-06-16 20:06:11
ssh-keygen -C "git@example.com" -t rsa通过msysgit命令行生成密钥。使用nano /home/git/.ssh/authorized_keys将公钥复制到服务器上,然后将其复制到服务器上!Git-1.7.4-preview20110204.exe通过http://code.google.com/p/msysgit/downloads/list?can=3只有13MB。发布于 2011-06-06 09:26:55
我不确定这是否应该在这里,或者它是否最好迁移到另一个站点,但由于我可能能够帮助,我将继续和回答。
我只是浏览了一下你链接的文章。看起来它们都处理通过ssh访问git服务器的问题,您刚才提到过,所以这就是我要关注的问题。
首先,在您的服务器上:
您需要在服务器上设置一个帐户,以便可以登录。这可以是一个通用的git帐户,也可以是您自己的个人帐户。就目前而言,我们将假设您正在设置它来处理个人帐户。您想要做的是创建您的帐户,然后在该帐户可访问的地方(例如,在您的主目录中)创建git存储库。
mkdir myrepo.git
cd myrepo.git
git --bare init --shared=all所以现在服务器上有一个git存储库。根据您正在使用的git客户机,您现在可能不需要处理密钥。如果您的服务器上配置了SSH以允许密码登录,那么当您需要与服务器交互时,您可能只需连接并输入密码。如果要设置密钥,则需要生成ssh公钥。我不知道如何在windows中这样做,但在linux中,您可以这样做:
ssh-keygen -t rsa -b 1024该命令将生成两个文件,"id_rsa“和"id_rsa.pub";无论使用什么工具,都应该生成两个文件,一个公钥和一个私钥。它们可能有不同的名称,但现在假设"id_rsa.pub“是您的公钥文件的名称。
要将公钥复制到服务器,可以使用scp、ftp或使用拇指驱动器将其移动。无论哪种方式,一旦您将它放到服务器上,并且您的用户可以访问它,请以您的用户身份在服务器上登录。您希望将公钥添加到"authorized_hosts“文件中,因此在登录到服务器上的帐户后,请执行以下操作:
cd
mkdir .ssh
cat id_rsa.pub >> .ssh/authorized_hosts
rm id_rsa.pub现在,在您的工作站上,您需要配置ssh客户端以使用您生成的私钥。同样,我不知道如何在Windows上这样做,而且它可能会根据您正在使用的ssh客户机而有所不同,所以您需要在其他地方获得这些信息。
接下来,您需要创建本地存储库,添加一些文件,并进行提交。请注意,您还不能克隆您创建的远程存储库,因为其中没有任何内容。一旦在本地进行了一些提交,就需要在存储库中设置远程服务器。
如果使用的是git命令行工具,则可以运行:
git remote add origin user@yourserver:myrepo.git如果将存储库放置在主目录之外的某个位置,请使用完整路径:
git remote add origin user@yourserver:/path/to/repo.git请注意,您需要其中的".git“,因为您的目录名有".git”作为名称的一部分。
如果使用GUI工具,则只需编辑存储库的配置文件即可。这将位于存储库的顶层“..git/config”下。你会想要添加这样的东西
[remote "origin"]
url = user@yourserver:/path/to/repo.git
fetch = +refs/heads/*:refs/remotes/origin/*现在您的遥控器已经配置好了,并且在本地有了一些提交,您可以将您的主分支推到服务器上。如果使用的是命令行,请使用:
git push origin master或者,如果你在另一个分支工作:
git push origin mybranch如果您正在使用get的GUI前端,那么您需要查找关于如何推送该工具的文档。
发布于 2012-08-10 07:52:38
我建议使用海泡石,它允许在中央服务器上安装git主机,并具有访问控制和创建/管理存储库等强大功能。
对于windows,名为git-scm的工具可以用于设置git客户端,也可以为git存储库提供GUI面板。安装这个git工具之后,您将得到一个git 工具和一个 GUI。
使git托管服务器和客户端的设置非常简单。
我希望这可以帮助新的人,谁正在寻找一个有效的解决方案,建立git托管服务器和客户端在一些容易理解的简单步骤。
https://stackoverflow.com/questions/6249088
复制相似问题