1

我目前是 RIT 的学生。我在个人笔记本电脑、个人台式机和多个学校工作站中工作。我想要一个工作区,所有项目都在一个地方。到目前为止,我已经尝试将 Eclipse 工作区保存在 USB 中并携带它、dropbox、ubuntu one、存储库、闪存驱动器中的 virtualbox vdi 文件。都有问题。它们都没有像打开计算机并开始工作那样顺畅。

所以我正在尝试的下一个解决方案是设置一个安装了 linux 并使用 vnc 或其他东西的服务器,除非你们知道更好的解决方案。

示例日:

  1. 在家里的桌面上做一个 android 项目的工作。
  2. 去学校,在我的笔记本电脑上做同一个项目
  3. 与我的小组会面,并在学校工作站上从事同一个项目。
  4. 在我的笔记本电脑上,我在我的家庭桌面上开始了一个单独的项目,我没有提交到存储库,因为我没有完成。

非常感谢你。

4

2 回答 2

2

我认为这个问题非常有趣,在工作场所不断变化以及更多移动和云计算的时代,它会获得更大的动力。所以我尝试评论一些问题,并指出哪种解决方案在哪种情况下更好。

外部驱动器

外部驱动器(如 USB 记忆棒或真正的驱动器)允许您存储数据和便携式应用程序(如 eclipse 之一)以存储在介质上并随身携带。每次,您都想处理您的项目,但在不同的计算机上,您可能会使用该外部驱动器。

  • 要解决的问题
    • 驱动器的格式必须由所有机器读写。这可能取决于您必须使用的操作系统。
  • 好处
    • 便于使用
    • 很好地扩展
    • 独立于网络访问
    • 允许运输甚至未准备好的工作
  • 缺点
    • 访问速度:大部分时间会较慢
    • 安全?
    • 数据丢失:您必须想办法确保不会丢失任何东西,或者至少不会丢失太多

网络存储

您将拥有的所有信息存储在“云中”,如 Dropbox、Ubuntu One 等解决方案……请想到这里。

  • 要解决的问题
    • 您是否一直有网络访问权限?如果没有,这是一个展示停止。
  • 优势
    • 易于使用(也许不需要设置)
    • 自动工作
    • 允许运输甚至未准备好的工作
  • 缺点
    • 扩展性不如外部驱动器。网络速度通常比外部驱动器的速度慢得多
    • 如果它是自动工作的,那么您不确定何时传输每个字节。可能存在某些更改未传输的情况,这将导致返工。

虚拟盒子

...或其他虚拟化解决方案。这必须与外部驱动器或网络解决方案结合使用。它为您提供了额外的选择,但随之而来的是额外的复杂性。

  • 好处
    • 相同的上下文,相同的操作系统,一切都是稳定的。
  • 缺点
    • 虚拟文件很大,因此使用网络可能是一种负担。
    • 即使在外部驱动器上,您也会看到性能不如单独的外部驱动器。

存储库

这也与其他解决方案正交。回购可以在本地存在,也可以在网络中。

  • 好处
    • 你不会失去工作。
    • 设置是相当标准的,开始工作(至少使用 Git 或 Mercurial)是轻而易举的事。
  • 缺点
    • 您的开发过程更加困难,因为您必须记住提交您的工作。它变得更糟:
    • 你的一些提交是正常的,因为你已经完成了手头的任务,并想为其他人提供。
    • 但是,如果您使用存储库(在网络中)来传输东西,那么您甚至必须提交和推送您正在进行的工作,这会污染您的存储库,然后供其他人使用。

推荐

我会使用外部驱动器,看看我必须在那里解决哪些问题。eclipse的启动时间可能会慢一些,但之后的差异应该不会那么大。通过使用快速的外部驱动器(如带有 USB 3.0 的 SSD),这应该是易于管理的。您应该使用存储库,但不能传输您的工作,而只能对您的工作进行版本化并与他人共享。

如果您使用该解决方案添加您的问题,我们可以解决这些问题...... PS:对不起,答案很长,但这个话题对我来说也很有趣。

于 2012-04-28T10:17:34.757 回答
0

我个人为此使用谷歌代码。它用作项目的存储库,但不仅如此。它还提供了许多其他功能,例如 wiki 和问题跟踪器,因此它甚至适用于多人项目。

如果您选择此选项,您将能够使用单个svn(或任何您的版本控制工具)命令检查源代码。但是,这适用于源代码,也许适用于一些较小的第三方库。您不能在存储库中检入编程工具本身(如android sdkjavaeclipse)。这意味着您需要确保在所有机器上都安装了相同版本的工具(如果版本对开发至关重要)。

当然,任何其他公共存储库都是合适的,其主要优点Google code是问题跟踪器和 wiki。

于 2012-04-28T07:07:44.360 回答