Pharo工作流程:将文件输出,切片并保存到存储库

mob*_*eng 4 smalltalk repository pharo

也许我会问一些非常微不足道的事情,但是我在Pharo(Pharo 4)做多种选择之间感到有些困惑.

我开始为Pharo/Smalltalk开发一个名为PolyMath的库.我正和这个项目的其他人合作.他们在smalltalkhub上设置了主存储库和收件箱存储库,包括Jankins CI.因此,从我的角度来看,事情非常简单:进行更改,创建切片并将其保存到收件箱存储库中.

当我正在处理这段代码时,我想保存更改(我认为Pharo会在常规基础上为我做这件事)以防我的计算机崩溃,或者我需要重新启动它来安装更新.或者更有野心:在另一台笔记本电脑上工作(也许,通过将更改保存到Dropbox).同时,由于更改不完整,我不希望将更改推送到收件箱存储库.

如果我将更改保存到本地包缓存中,则包不再"脏"; 并且我不知道切片是否会产生正确的更改以将它们推送到收件箱存储库.

我应该在我正在处理的软件包上做文件吗?(但是当我稍后提交它们时,这个动作会让其他一些软件包变脏,也许它们已经连接了?)我也可以保存图像,但我想不时地重新加载图像来获取其他更新的图像.人.

只是回顾一下我想要实现的目标:

  • 在本地保存更改,但保留创建切片的能力,并查看本地包和外部存储库之间的差异.
  • 能够将我的更改推送到收件箱存储库.

小智 5

如果您的Pharo映像崩溃,您在映像中执行的每个更改都应保存在.changes文件中.您可以通过后者恢复丢失的更改WorldMenu -> Tools -> Recover lost changes.

要保存代码,您可以将其提交到您自己的存储库或包缓存中.当您想要在真实存储库中提交时,您有两个选择:

  • 您想保留提交历史记录.在这种情况下,您可以通过Monticello打开包缓存,选择每个提交并使用Copy复制主存储库中的提交.
  • 您只想进行一次包含所有更改的提交.在这种情况下,如果您生成的代码加载到当前图像中,则可以直接进入主存储库.为了确保保留所有更改,您可以使用该Changes选项来检查将要推送的所有修改.

提交时重要的是图像内部的代码,而不是包是否脏的事实.这只是一个帮助.