世事如Github上,到位桶,DropBox的 - 管理内容托管诸如票和回购-hosting(DB不要门票,但可以用来存储回购)。 我想,我操控着自己的事情的托管内容,如Git的-repositories和门票的解决方案。
试用0:试图调Git的,太费时
我按照说明在这里 ,但一些困难,然后我跟很多其他的教程有更多的困难。 我得到了与克隆"git clone --bare xxx xxx.git; cd xxx; git update-server-info"
工作,但无法推动事情"--shared"
,厌倦了这类手工黑客。 有太多的物质,过多不相干的材料太多过时的材料。
我重复一遍,我想做我自己的托管内容。 所以,我怎么可以承载我的git回购协议?
也许相关
Git仓库服务器,我可以在本地主机
建议个人项目的代码托管
如果您运行的是Linux服务器的选择是使用的Git + SSH。
在服务器
创建一个用户帐户名为git
其中有超过你的主Git项目目录的权限。 这是一个让所有合作者推动共享项目非常有用。
每个客户机的RSA公钥添加到authorized_keys
服务器上的文件。 (您可以使用生成公私密钥对ssh-keygen -t rsa -b 4096
在大多数Linux发行版。)
为您的项目为新的纯仓库git
用户。 git init myproject --bare
在客户端
通过启用打开私钥认证IdentifyFile
在ssh_config
。
克隆纯仓库。 git clone git@<server>:/var/git/myproject
进行更改。
提交更改并把它们放回远程回购。 git push origin master
如果您需要更加详细的说明(如确切的命令来创建用户帐户)检出官方临Git的书。
我会去与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(管理与不同的技能一队烫发)
优秀的一步一步的教程在这里 (注意"~/.ssh/authorized_keys"
-file必须只有gitolite -user)
检查出库-addition /去除这里 ,是的,它就是这么简单-你只配置配置-file然后"$ git add .; git commit -m "new repos, old dead"
和"$ git push"
"$ 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
克隆下gitolite信息库
$ git clone gitolite@176.34.112.239:helloworld
2.管理平台/ Trac系统/等(管理工作流过回购在中央GUI的地方)
说明这里的管理平台,并确保不会克隆不稳定的一个发展分支在Github上。 您需要下载一些稳定archieve。 不过,我可能会用Trac的去,比较这里 。 管理平台是一些Rails的-hack和不稳定的主侧枝不好听。
3. Ticgit /等(管理票没有第三方依赖性)
布雷姆纳概括这个问题在这里 ,但注意到这个票在这里处在非常糟糕的是,事情。 通用线程在这里 。