代码之家  ›  专栏  ›  技术社区  ›  David Boike

有效的工作流,允许设计师访问SVN存储库的一部分

  •  2
  • David Boike  · 技术社区  · 15 年前

    我们有一个开发团队和一个设计团队。让我说清楚。开发人员不是艺术家,设计师也不是那么精通代码。

    开发人员在机器上本地的SVN存储库中处理web应用程序。我们有Windows 2003工作站,允许每个开发人员在IIS中托管每个网站以进行调试。我们使用OrtoiseSVN和VisualStudio以及VisualSVN。

    开发人员的功能是让一个新功能正常工作,然后设计师需要进入并对页面、皮肤、css等进行更改,以使其美观,但他们所做的更改需要提交回存储库,以便开发人员可以查看而不被覆盖。

    这似乎基本上是可行的——最大的问题是,设计师必须小心,不要相互推诿,只提交他们的更改。

    有没有其他人能为这种类型的工作流提供更好的解决方案?

    (我在这一个标签上挣扎,任何帮助重新标记都将不胜感激。)

    5 回复  |  直到 15 年前
        1
  •  2
  •   Vladimir    15 年前

    一种可能是为所有设计师提供一个IIS,但每个人(例如johndoe)都在开发自己的应用程序(比如说 http://johndoe.ueberserver.local/application )签出到网络驱动器(例如i:/johndoe/application)上的。这样,John可以处理一些文件,并在浏览器中查看结果。

    当John需要签入更改时,您可以让他签入,也可以指定一个“签入好友”为他签入。

        2
  •  1
  •   Sliff    15 年前

    除非我在你的描述中遗漏了什么,否则你应该能够使用分支实现这一点。

    您还没有详细介绍当前如何进行功能开发/发布分支,因此为了我的示例,我假设开发人员在完成功能后将其合并回主干。

    一旦发生这种情况,主干应该被分支,设计者应该将他们的更改提交给这个分支。

    完成后,开发人员可以查看所有更改,并将发布所需的内容合并回主干。

    如果希望确保设计器不会意外提交回任何内容,还可以将其写访问权限限制为仅访问存储库中的分支路径。

        3
  •  1
  •   Brian Gideon    15 年前

    设计师是否使用Visual Studio?如果是这样,那么您可以使用VS附带的嵌入式web服务器,这样您就根本不需要IIS。这就是我所有发展的方式。

    如果您使用Subversion的分支功能,那么每个设计人员都可以创建自己的分支,并在其中工作,直到他们感到舒适地合并到主干或其他开发人员正在处理的任何版本分支。

    让每个人尽可能地孤立,往往会让事情进展得更顺利。这意味着没有共享的web服务器。这就是Subversion构建的方法论。

    我喜欢的一个策略是使用一个中继警察。指定一名开发人员负责管理主干。也许您可以只授予此人对主干的写访问权,而她的工作是确保所有到主干的合并都正确完成。很明显,您需要一个熟练掌握源代码管理(特别是Subversion)的开发和概念的人。

        4
  •  1
  •   Critical Skill    15 年前

    “最大的问题是,设计师必须小心,不要相互推诿,只提交他们的更改”

    1. 您能否在同一IIS服务器区域上为它们提供单独的工作区(可能在以工作区命名的文件夹下签出工作区?)这样,他们只能从自己的工作区提交工作。当然,这假定他们正在处理非重叠代码,因此在提交时不会覆盖彼此的工作。此外,他们还需要在开始工作之前接受svn udpate培训,以便了解所在领域其他人的最新变化,以避免任何冲突。 (当多人使用同一工作区时,我总是很紧张)

    2. 您可以让他们进行更改,但不一定让他们运行提交。单个指定人员可以每天运行一次svn commit或更频繁地运行svn commit,以避免任何不幸的错误。我不太喜欢这个选项——因为我认为人们很容易使用多个工作区,并遵循简单整洁的习惯,如提交相关消息等(以帮助跟踪/回滚)——一个简短的握手会议可以轻松弥补知识和思维方面的差距。

        5
  •  0
  •   Xavier Nodet    15 年前

    如果你不放松“最多一台IIS服务器”的限制,我看不出你怎么能得到比你提到的更好的方案。难道不可能使用虚拟机让每个设计师都可以拥有自己的服务器吗?所有这些机器都可以共享相同的配置文件。这样设计师就不必担心彼此的变化。。。