我如何可以承载Git仓库和管理我的内容托管自己?(How can I host Git reposi

2019-06-25 10:52发布

世事如Github上,到位桶,DropBox的 - 管理内容托管诸如票和回购-hosting(DB不要门票,但可以用来存储回购)。 我想,我操控着自己的事情的托管内容,如Git的-repositories和门票的解决方案。

试用0:试图调Git的,太费时

我按照说明在这里 ,但一些困难,然后我跟很多其他的教程有更多的困难。 我得到了与克隆"git clone --bare xxx xxx.git; cd xxx; git update-server-info"工作,但无法推动事情"--shared" ,厌倦了这类手工黑客。 有太多的物质,过多不相干的材料太多过时的材料。

我重复一遍,我想做我自己的托管内容。 所以,我怎么可以承载我的git回购协议?

也许相关

  1. Git仓库服务器,我可以在本地主机

  2. 建议个人项目的代码托管

Answer 1:

如果您运行的是Linux服务器的选择是使用的Git + SSH。

在服务器

  1. 创建一个用户帐户名为git其中有超过你的主Git项目目录的权限。 这是一个让所有合作者推动共享项目非常有用。

  2. 每个客户机的RSA公钥添加到authorized_keys服务器上的文件。 (您可以使用生成公私密钥对ssh-keygen -t rsa -b 4096在大多数Linux发行版。)

  3. 为您的项目为新的纯仓库git用户。 git init myproject --bare

在客户端

  1. 通过启用打开私钥认证IdentifyFilessh_config

  2. 克隆纯仓库。 git clone git@<server>:/var/git/myproject

  3. 进行更改。

  4. 提交更改并把它们放回远程回购。 git push origin master

如果您需要更加详细的说明(如确切的命令来创建用户帐户)检出官方临Git的书。



Answer 2:

我会去与Gitolite(管理权限) 在这里和管理平台(管理流程在许多回购) 在这里 。 如果你没有必要的权限-management,请去与迈克尔的解决方案。 如果没有需要管理很多回购,忘记了管理平台(与许多库有用)。 这里的东西含有相同的东西,在迈克尔的答案,但在第三方网站,当你的项目展开你可能需要一些补充。

0的Git + SSH -keypair(请参见迈克尔的答案,下面的一些大纲。)

如果你是无法做到这一点,请不要继续前进 - 这种方法显示了使用裸-repos内容主机的回购的基本途径。 这需要约2分钟的时间去做,简单地说:

在服务器

 $ git init --bare test.git 

在客户端

 $ eval `ssh-agent` $ ssh-add ~/your_auhorized_key_in_server $ git clone something@IP:test.git 

1. Gitolite(管理与不同的技能一队烫发)

  1. 优秀的一步一步的教程在这里 (注意"~/.ssh/authorized_keys" -file必须只有gitolite -user)

  2. 检查出库-addition /去除这里 ,是的,它就是这么简单-你只配置配置-file然后"$ git add .; git commit -m "new repos, old dead""$ git push"

  3. "$ ssh gitolite@xxx.yy.112.239 info"显示你的配置

      hello hhh, this is gitolite@ip-10-xxx-xx-203 running gitolite3 v3.03-29-g3c0f177 on git 1.7.4.5 RW helloworld R gitolite-admin RW testing 
  4. 克隆下gitolite信息库

    $ git clone gitolite@176.34.112.239:helloworld

2.管理平台/ Trac系统/等(管理工作流过回购在中央GUI的地方)

说明这里的管理平台,并确保不会克隆不稳定的一个发展分支在Github上。 您需要下载一些稳定archieve。 不过,我可能会用Trac的去,比较这里 。 管理平台是一些Rails的-hack和不稳定的主侧枝不好听。

3. Ticgit /等(管理票没有第三方依赖性)

布雷姆纳概括这个问题在这里 ,但注意到这个票在这里处在非常糟糕的是,事情。 通用线程在这里 。



文章来源: How can I host Git repositories and manage my content-hosting myself?