首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >作为代码部署系统的Gitolite

作为代码部署系统的Gitolite
EN

Stack Overflow用户
提问于 2014-02-13 14:09:46
回答 1查看 144关注 0票数 1

目标:使用多个独立开发人员的Git+SSH将代码部署到生产web服务器,而不需要在服务器上进行任何后续的开发人员干预。我不想运行FTP,不想让SSH访问shell帐户,不想管理用户帐户(除了give )。

免责声明:我是git新手。

Git和gitolite安装在web服务器上,并在SSH上运行良好。Nginx文档根目录在/srv中。

我最初的设想是,git将创建包含实际文件的repos,我可以简单地创建从git repos到/srv的符号链接。

但事实并非如此,它似乎将“裸”代码库存储在/home/git/repositories中,而这些代码库并不包含可读代码(工作目录)。

我已经测试过可以使用像"git pull git@localhost: /srv“(如果用户运行命令有合适的键)和"git pull /home/git/repositories/somerepo”(避免联网+ SSH )这样的命令从/home/git本地克隆和拉取repos到somerepo。

因此,似乎在将代码更新推送到服务器之后,钩子(或黑客)可以将更新的repos从/home/git拉入/合并到/srv,并重新启动服务器。

这种方法是否合理,我是否遗漏了git/git的一些基本特性或功能,或者是否有更好的基于git的解决方案?如果git被证明是不可行的,rsync是我可能探索的另一种可能性。

EN

回答 1

Stack Overflow用户

发布于 2014-02-13 14:36:22

沸石是一种。没有更多,没有更少。

通过VREFS (Virtuals refs),你可以添加尽可能多的更新后钩子到那些由Gitolite管理的裸repos中,以便签出(和部署)所说的裸repo。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21746533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档