针对开发人员和设计师团队的最佳git工作流

针对开发人员和设计师团队的最佳git工作流,git,model-view-controller,workflow,Git,Model View Controller,Workflow,我们将开发一个带有MVC框架的webapp。我们的团队中有开发人员和设计师。我们想使用git。有没有办法让设计师只能看到项目的一些目录?(视图)。我不想让设计师乱动和意外更改视图以外的其他文件。为代码和设计师制作两种不同的报告。您还可以使用将子项目分组并一起跟踪它们;但是我没有用过,所以我不能给出任何具体的提示 另一方面,如果您采用“git风格”的存储库设置方式(例如,每个用户都有自己的存储库私有公共镜像;其中每个人都有读访问权限,但只有所有者有写访问权限。如果您愿意,如果您希望只有受信任的开发

我们将开发一个带有MVC框架的webapp。我们的团队中有开发人员和设计师。我们想使用git。有没有办法让设计师只能看到项目的一些目录?(视图)。我不想让设计师乱动和意外更改视图以外的其他文件。

为代码和设计师制作两种不同的报告。您还可以使用将子项目分组并一起跟踪它们;但是我没有用过,所以我不能给出任何具体的提示


另一方面,如果您采用“git风格”的存储库设置方式(例如,每个用户都有自己的存储库私有公共镜像;其中每个人都有读访问权限,但只有所有者有写访问权限。如果您愿意,如果您希望只有受信任的开发人员有写访问权限,则可以使用规范(主/主干)repo)意外修改不应该是大问题。您只需从设计器repo中提取,看看它是否有意义,并在将其合并到“规范”主分支之前更正错误。

为代码和设计器创建两个不同的repo。您还可以使用将子项目分组并一起跟踪它们;但是我没有用过,所以我不能给出任何具体的提示


另一方面,如果您采用“git风格”的存储库设置方式(例如,每个用户都有自己的存储库私有公共镜像;其中每个人都有读访问权限,但只有所有者有写访问权限。如果您愿意,如果您希望只有受信任的开发人员有写访问权限,则可以使用规范(主/主干)repo)意外修改不应该是大问题。您可以从designers repo中提取,看看它是否有意义,并在将其合并到“规范”主分支之前更正错误。

可能的选项之一是使用(或子模块,但我个人不喜欢它们,请参阅链接问题以了解原因列表)。将视图放到一个单独的Git repo中,并将其作为开发人员主repo中的子树进行拉取,这是设计者无法访问的

或者将所有内容都保存在一个repo中,但在预提交钩子(和/或服务器上的预接收钩子,如果您是偏执狂)中拒绝设计器用户对M和C部分的任何提交


您也可以使用Git进行稀疏签出,但我个人认为其他两种解决方案更实用。

可能的选择之一是使用(或子模块,但我个人不喜欢它们,请参阅链接问题以了解原因列表)。将视图放到一个单独的Git repo中,并将其作为开发人员主repo中的子树进行拉取,这是设计者无法访问的

或者将所有内容都保存在一个repo中,但在预提交钩子(和/或服务器上的预接收钩子,如果您是偏执狂)中拒绝设计器用户对M和C部分的任何提交


您也可以使用Git进行稀疏签出,但我个人认为其他两种解决方案更实用。

我的意思是,可以在Git中隔离一些目录吗?我不希望所有人都克隆并获得所有代码(M、V和C部分)。设计人员必须只使用V部分并将其推送到开发服务器,在那里可以测试集成代码。我的意思是,可以在git中隔离一些目录吗?我不希望所有人都克隆并获得所有代码(M、V和C部分)。设计人员必须只接受V部分,然后推送到开发服务器,在那里可以测试集成代码。你是说git子模块吗?我对git比较陌生。我一直在寻找一种隔离代码的方法。如果项目的每个部分都可以单独编译/部署(使用RubyonRails或PHP,可能就是这样),那么您甚至不需要使用子模块将它们组合在一起。如果子部分必须一起编译(在使用maven时可能是这样),您可能应该查看子模块)。这取决于……:)你是说git子模块吗?我对git比较陌生。我一直在寻找一种隔离代码的方法。如果项目的每个部分都可以单独编译/部署(使用RubyonRails或PHP,可能就是这样),那么您甚至不需要使用子模块将它们组合在一起。如果子部分必须一起编译(在使用maven时可能是这样),您可能应该查看子模块)。这取决于……:)