使用git(hub)1编码器+;1名网页设计师
我是一名程序员,在不久的将来,我将与一名web/模板设计师合作完成几个项目。您认为我的开发工作流程设置如何?你有什么优化建议吗 一个特定项目的设置使用git(hub)1编码器+;1名网页设计师,git,github,synchronization,workflow,Git,Github,Synchronization,Workflow,我是一名程序员,在不久的将来,我将与一名web/模板设计师合作完成几个项目。您认为我的开发工作流程设置如何?你有什么优化建议吗 一个特定项目的设置 整个项目都托管在github上 该项目是一个在linux操作系统上运行的复杂Web应用程序(无论是在windows还是mac上,都不可能在本地开发服务器上运行) 有两个分支:dev和master。dev是测试服务器,master是生产服务器 除了主github存储库之外,在设计器的计算机上还有一个本地存储库,一个在我的计算机上,一个在testser
- 整个项目都托管在github上
- 该项目是一个在linux操作系统上运行的复杂Web应用程序(无论是在windows还是mac上,都不可能在本地开发服务器上运行)
- 有两个分支:dev和master。dev是测试服务器,master是生产服务器
- 除了主github存储库之外,在设计器的计算机上还有一个本地存储库,一个在我的计算机上,一个在testserver上,一个在生产服务器上
- 我在本地开发(在Windows上)。在开发过程中,有一个自动同步脚本可以自动将我通过FTP编辑的所有文件上传到测试服务器,这样我就可以立即检查我的更改是否有效
- 设计师也在本地(Mac上)开发,他还将拥有一个自动同步脚本,可以通过FTP自动将他的所有更改上传到testserver,但他只能访问一个特殊的“布局”——所有模板和静态文件(图像、css、js等)所在的目录。他还需要每隔几分钟检查他的更改或新功能是否有效
- 每当设计师或我在testserver上成功完成并测试了一项新功能时,我们就会将更改从本地开发分支推送到github上的远程开发分支。到目前为止,git还没有接触到测试服务器
- 每天早上都有一个cronjob,它删除整个testserver目录,然后对托管在github上的远程存储库的dev分支进行“git克隆”。这样testserver就有了所有新的提交
- 在进一步开发之前,设计师和我必须每天早上使用远程github存储库“git拉”彼此的最新更新
- 一旦某个特性在testserver上运行良好,我就会将“dev”分支合并到“master”并将master提交到github
- 然后我们有一个将主分支从github拉到生产服务器的部署
提前感谢您的帮助,很抱歉我的英语不是我的母语。Git是一个分布式版本控制系统,因此,当每个参与项目的人都有自己的开发环境时,它工作得最好。我个人不建议将Git用于在单个服务器上实际测试应用程序的项目。我建议您使用集中式版本控制系统,如。不幸的是,通过使用subversion,您将无法在Github上托管存储库(您必须使用像Git SVN这样的系统,这将变得有点复杂)我将通过以下方式执行此操作:
如果您想围绕创建功能、合并到分支和执行标记的发布等来简化流程,那么这是一个不错的选择。Hi,您发布的问题并不真正适合堆栈溢出,因为您正在寻找意见。关于堆栈溢出的答案需要事实的支持,所以像这样的问题不适合这种性质的问答网站。另外,关于你的问题,我发现工作流最适合我。这一切都是基于为添加的每个新功能创建一个分支,并为生产和发布保留主分支。我不同意。在我看来,这是一个合法的技术问题。我正在寻找最佳实践示例或解释。我修改了我的问题,使之更清楚。在我的例子中,主要的问题不是git的分支工作流,而是在开发服务器上的测试,因为我们没有本地开发服务器。编辑使其更加客观感谢您的建议。你可能是对的,但是我已经和git合作过了,并且做了很多承诺,所以我不能也不想改变主要的风投。这是可以理解的。Git将完成这项工作,但由于您的开发环境,它的性能并没有达到预期的水平