代码之家  ›  专栏  ›  技术社区  ›  gerdemb

建立多个开发环境

  •  0
  • gerdemb  · 技术社区  · 17 年前

    我是一名单独开发人员,负责一个典型的web项目(Django+postgresql),使用Eclipse作为我的IDE,并使用Subversion进行源代码控制。到目前为止,我一直在开发一台我自己设置的开发机器。最近,我被要求在客户网站做一些工作,也有一些情况下,在家里访问这个网站是很有用的。我在想最好的办法是什么。不幸的是,由于各种原因,笔记本电脑不是一个可行的解决方案,所以我想到的解决方案是:

    1. 在每台机器上安装所有必要的开发工具(postgresql、Eclipse、Django、Python+库等),并使用SVN保持代码同步。
    2. 在我的开发机器上设置某种VNC访问并远程访问它来执行工作。

    1的优势是快速的本地开发,但是我必须在每台机器上设置所有的工具,处理它们的配置,并保持一切同步。另外,为了在机器之间共享代码,我必须将其签入SVN,即使它还没有“准备就绪”。解决方案2解决了这个问题,但以较慢的用户界面体验为代价。最后,#3似乎是一个不错的解决方案,但我不确定是否真的可以在笔驱动器上安装虚拟图像,我也不确定其性能。

    我想没有一个真正的“正确”答案,但我把这个扔掉是为了从那些比我做这件事的时间更长的人那里得到一些想法和建议。:)

    5 回复  |  直到 17 年前
        1
  •  2
  •   Jaime    17 年前

    我认为1号方案仍然是最好的。我假设你家里只有一台电脑,你可以用那台电脑工作,所以安装应该是一次性的。

    使用存储库是最有效的方法,尤其是在处理相当大的项目时。很遗憾你没有笔记本电脑,在笔记本电脑上设置所有的工具使得在任何地方(只要你有互联网连接)进行编码/工作特别方便。

    不管怎样,选项1是我的首选,我希望它能有所帮助。

        2
  •  0
  •   Jared    17 年前

    如果机器有e-sata端口 this drop box 允许你保持工作目录同步,只要你不介意有第三方可以查看你的代码,尽管他们可能不会麻烦。另一个选择是创建一个“工作”的分支,您总是签入和签出它,并且只有当它足够稳定并且稍微完成时才将代码移动到主干。

        3
  •  0
  •   alex    17 年前

    使用版本控制。如果您担心签入“不完整”代码,请使用分支(开发分支)或标记(标记“已完成”代码)。提交“进行中”的工作有其优点(良好的撤消,有助于编写良好的变更日志等)。另外,记录你的“设置”过程,这样更容易复制也是好的。

        4
  •  0
  •   Gordon Potter    17 年前

    Git 很明显地解决了这个问题。至于离线开发,你应该试试Git。它使管理脱机存储库变得非常简单。由于其分布式体系结构,在环境之间移动时提供了一些便利。它旨在使工作流签入经常提前签入。我想你会发现它提供了SVN没有的东西。

    例如,您可以为不同的环境保留不同的存储库,并轻松地在它们之间合并更改。这样就可以将存储库与VM映像捆绑在一起。它们可以显著地分化,但仍然很容易融合在一起。

    合并使Git成为一个梦想。

    观看这两个精彩的演示。

    http://www.youtube.com/watch?v=4XpnKHJAok8

    Randall Schwartz演示文稿(更实用的概述)

    http://www.youtube.com/watch?v=8dhZ9BXQgc4

        5
  •  -1
  •   Andrew Grant    17 年前

    从笔驱动器运行虚拟机(即使是速度很快的,大多数都不是!)会很糟糕的。

    你可以在本地复制它,或者使用一个USB硬盘驱动器,或者甚至像livemesh这样的解决方案来同步它。