我在一个大型的Scala项目上工作,我们使用Git进行版本控制。我的工作流程是在我自己的分支中使用新功能,并在需要时进行切换。代码的各种版本都在它们自己的分支中。所有非常标准。Git工作流 - 改变分支并重新编译
如果我必须解决某个版本的代码中的错误,我会切换到正确的分支,修复错误,提交然后切换回我的位置。
问题是,虽然git是即时切换到另一个分支一旦我在那里,我必须重新编译代码。这需要几分钟的时间。然后修复该错误,切换回我自己的分支并进行另一次重新编译,这需要几分钟的时间。这似乎打败了Git如此之快的目的。
有没有其他人遇到过这个?有没有办法解决它。我确定它不是一个Scala特定的问题(尽管Scala在编译时的速度很慢)。
更新3年后
我一直在使用@djs在过去的几年回答(GIT-新WORKDIR)。这对我来说非常有用。我有一个主目录和其他几个目录(如生产,下一个版本等),当我需要在那里工作时,我会切换到这个目录。开销很小,这意味着您可以快速转换说,制作,测试某些内容,然后切换回正在进行的工作。
我已经使用了几天,现在它工作得很好。谢谢。 – Dave 2011-05-23 08:13:34
顺便说一句,还有一个git-new-workdir的Windows端口:https://github.com/joero74/git-new-workdir – sleske 2012-04-23 13:39:14
......显然git-new-workdir也可以在Cygwin下运行。 – sleske 2012-05-04 19:43:33