Version control 程序员如何跨多台计算机工作?

Version control 程序员如何跨多台计算机工作?,version-control,performance,Version Control,Performance,没有笔记本电脑,我总是觉得自己几乎没用。它有我需要的所有东西,firefox,notpad++,photoshop,文档等等。。。然而,偶尔,我喜欢在我的桌面上编写代码,因为它更快更好,但有时这是不可能的,除非我将网站文件传输到我的桌面或保持FTP更新。我知道有一些同步解决方案,比如dropbx,但我对遵循一个好的实践和专业人士的聪明见解感兴趣 有时,我甚至连笔记本电脑都没有,当我在学校编辑东西时,我会拿出USB驱动器。我在U盘上安装了带有FireFTP插件的便携式Firefox和带有Notep

没有笔记本电脑,我总是觉得自己几乎没用。它有我需要的所有东西,firefox,notpad++,photoshop,文档等等。。。然而,偶尔,我喜欢在我的桌面上编写代码,因为它更快更好,但有时这是不可能的,除非我将网站文件传输到我的桌面或保持FTP更新。我知道有一些同步解决方案,比如dropbx,但我对遵循一个好的实践和专业人士的聪明见解感兴趣

有时,我甚至连笔记本电脑都没有,当我在学校编辑东西时,我会拿出USB驱动器。我在U盘上安装了带有FireFTP插件的便携式Firefox和带有Notepad++插件的FireBug。这就是我喜欢称之为的,我的web开发工具包


更新:关于源代码管理和subversion的有趣评论,它让我发现DreamHost有subversion(我将使用它)。对阅读材料(离线或在线)有何建议?向我扔任何信息,我都不知道该问什么问题,或者该问什么问题,因为我对这一切都是新手。提前谢谢各位

源代码管理。颠覆是好的

还有一些很好的在线源代码控制系统,值得一看

我使用SVN(正如@Jimmeh所建议的),我把它放在一个公共服务器上(这会让事情变慢),但我可以从世界上任何地方访问它,并从我停止的最后一个地方继续


我建议强制锁定,并在未锁定时使文件只读。

+1用于联机源代码管理


然而,这并不能解决所有问题(比如特定工具或[在我的案例中]特殊问题,比如加入域的笔记本电脑和公司设置的VPN)。我经常使用远程桌面登录到我的笔记本电脑上,以完成笔记本电脑特定的工作(intranet、office communicator)和我的桌面上的开发工作,因为它的速度要快得多。

许多人正在使用和之类的程序转向分布式源代码控制。这些不需要中央服务器进行源代码管理-所有版本都存储在所有计算机上,并且您可以在将计算机合并到一起时合并更改。

对于未连接的计算机(防火墙、vpn、气隙等后面)的同步,我一直在使用。它是免费的、可配置的,我可以在我使用的所有机器上复制配置文件,并设置一次单击同步。

分布式版本控制是解决您问题的答案

它只需要一个主机(ftp文件夹中的任何一个都可以完成这项工作)

有人说是Mercuial和Git,但我说是RecCom和Darcs

它是用一种漂亮的函数式编程语言编写的,非常容易使用,功能强大。

使用它,你可以用键盘和鼠标控制另一台机器,并使用复制和粘贴

对于共享文件,您可以使用NFS或Windows共享或。。。取决于您的系统

有些IDE支持“远程工作”,其中的细节取决于IDE和您使用的语言。(例如,我使用NetBeans在使用随机数据中心的不同系统的机器上编译和调试代码,同时处理我的本地设备)


然后-当然-版本控制,git,svn,…

好吧,既然你提到你只是因为更快/更好才编码,我们能假设你仍然会带着你的笔记本电脑吗(我也经历了笔记本电脑和桌面电脑的编码阶段)

  • 如果由于使用鼠标和键盘/数字键盘而速度更快,请尝试使用VNC来使用笔记本电脑屏幕

  • 在笔记本电脑上创建一个共享文件夹,并通过网络进行工作


  • 如果您选择Subversion路径来存储源代码,我建议您提供一个免费的try-one存储库(100MB限制)。然后,您可以通过Subversion客户端以Windows shell(资源管理器)扩展名的形式访问您的文件,这也是免费的。

    这是软件开发人员工作的重要组成部分。我想这对学生来说有点困难(假设),但是有一些在线解决方案。是的,源代码管理似乎是答案。我只是想发表一篇评论来强调一个事实,如果你想认真对待代码,那么源代码控制是不能忽视的。(我假设你是一名学生,如果你已经从事这项业务,这并不意味着冒犯)。@jimmeh你的假设是正确的,但我不介意在游戏中抢先一步:)如果你不想自己安装subversion服务器(很简单,但你需要一个面向web的服务器),我可以建议你作为一个免费(但稍微受限制的)在线subversion主机吗也不要只看Subversion:如果您以前没有遇到过源代码管理,那么现在是进行一些背景阅读的时候了。(我个人建议至少快速浏览一下bazaar、subversion、git和mercurial)。不要使用“社交”说服工具(“很多人都在迁移”),而不明确各自的权衡。使用分布式源代码管理,您将需要执行更多的合并,在没有组织的情况下,任何时候都会有多个当前“顶级”版本的源代码。使用服务器时,只有一个版本的“顶级”源(服务器上的版本!)。但另一方面,使用dvcs离线工作非常容易,而且您仍然可以设置中央服务器。特别是像Bazaar这样的DVC明确允许任何一种工作流程,在subversion上使用分布式软件包确实没有任何缺点。@Quibblesome:说到明确的权衡,DVC不要求存在“主”版本,但它允许一个主版本和一个指定的服务器(比如说,github)维护单一版本的“顶级”源代码是一个常见的模型。我还得到这样的印象,OP询问了他正在进行的solo项目,这对缓解持续的分支和合并混乱有很大帮助