SVK

Joe July 6th, 2008

一段时间不用命令又忘了,不过很简单,备忘一下。

Step 1, 建立depot映射
svk depotmap --init /magento/ /path/to/repository
svk pull /magento/local

Step 2, 建立本地svn仓库镜像
svk mirror /magento/trunk http://svn.magentocommerce.com/source/branches/1.1-trunk
svk sync /magento/trunk

Step 3, 建立本地分支
svk cp -pm "Creating local branch" /magento/trunk /magento/local

然后就可以 svk co /mangeto/local 出来用了,需要再进行同步的时候:
svk sync /magento/trunk
svk pull /magento/local

symfony 1.1

Joe July 6th, 2008

很长一段时间不用了,不过小关注一下,一周前发布的:The wait is over: symfony 1.1 released,Highlights如下:

  • The new architecture of symfony is more configureable and decoupled, allowing you to use or replace part of the framework very easily,
  • The new object-oriented form framework makes form creation and reuse a breeze,
  • The brand new task system allows to quicly make extensible batch scripts and command line utilities,
  • Symfony has now a decent YAML parser, with verbose error reporting,
  • The new plugin manager is now compatible with the PEAR standard API, handles plugins dependencies, and provides options for a better control on what you install,
  • The formats handling system can make your app behave and respond differently whether an iPhone, a bot, or a browser is requesting it,
  • The Propel 1.2 ORM is now bundled as a plugin, which means you can very easily switch to Doctrine or even to Propel 1.3 if you prefer,
  • The bundled sfCompat10Plugin will ensure that your 1.0 based projects will still work after having upgraded to 1.1!
  • The routing is now cached, so you can expect a significant performance boost when you got plenty of routes in your app. Also, the routing class is no more a singleton so you can now extend and reference it easily to fit your needs,
  • Even if that’s not really a feature, more than 8,500 unit and functional tests guarantee the overall stability of the framework codebase. We doubled the number of tests between 1.0 and 1.1!

这种把框架部件尽可能decouple的做法很好,看上去很爽。新的项目如果使用symfony的可以考虑用Doctrine了,Propel的使命看起来基本到头了。

另外 Symfony 1.2 roadmap 也有了,基本是继续完善一些边边角角的东西,所谓polishing,没啥大意思。关于js的部分全部做成plugin的想法也不错,只是会不会需要维护的plugin多了点?

从U盘安装Linux

Joe June 28th, 2008

不是太旧的机器都支持从U盘启动,把一个iso文件复制到U盘进行安装显然比刻盘要方便得多。

做了几次安装用的U盘,步骤总是不记得,这把得记录一下了,下面这个链接有比较详细的说明:Install Ubuntu from a USB stick.

Update: 一个更好的办法,使用专门为硬盘安装制作的installer,可以自动搜索U盘上的iso作为安装介质。

另外,RH系列的发行版本使用Anaconda作为Installer,可以使用syslinux创建usb启动盘,将diskboot.img的文件内容复制上去,再将iso文件复制到U盘中,在安装时选择从硬盘安装,安装程序会自动搜索iso文件。

Accessing VirtualBox Guest via SSH

Joe June 27th, 2008

备忘:

$ VBoxManage setextradata <guestname> "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort" 2222
$ VBoxManage setextradata <guestname> "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/GuestPort" 22
$ VBoxManage setextradata <guestname> "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/Protocol" TCP

重启VirtualBox和Guest OS之后 netstat -tlnp 就能看到2222端口处于监听状态, ssh localhost -p 2222 就可以了.

那个…巧啊

Joe June 26th, 2008

胡思乱想,不知道怎的想到MySQL为什么还用bitkeeper不用git或者monotone之类的东东,抛开free不free的问题不说,bk的免费客户端功能实在太烂了。然后想google一把一定能有一些有趣的讨论,于是google之,我愣,刚刚在一周前,MySQL宣布改用Bazzar做VCS了。新的MySQL代码仓库也放到了Launchapad.net上: https://launchpad.net/mysql-server ,不过bugtracker仍然使用mysql原有的系统。啥时候整个launchpad都开源了多好。

恩,这么一来,直接抓mysql源码就方便多了,经验表明,负载较高的服务器用mysql community edition比较糟糕,直接用mysql enterprise的源码编译效果会好很多。

Updating Debian Packages

Joe June 25th, 2008

自己打一个全新的deb包的机会是不多的,往往是需要修复bug重新打包,或者做backport之类的,一些工具的名称老是忘,记录一把。两个东东,一个是dch,修改changelog模板;一个是uupdate,用于new upstream release。这两个脚本都在devscripts包里。

相关文档:Debian New Maintainers’ Guide Chapter 9 - Updating the package

加了个验证码

Joe June 25th, 2008

firefox的profile被我删掉了,密码忘了,重置密码的功能又有bug没改掉,懒得要死,N天都上不了Blog:(

被垃圾信息骚扰得不行了,每天都要收到垃圾评论的邮件提醒,于是装了个MyCaptcha,能用。

wordpress的扩展安装还真是不那么方便,要改代码才能用上,为什么不弄个observer自动加载捏?牺牲点性能可以造福人民底。

Joe May 16th, 2008

一不小心又当了一个多月夜猫子了,事情总得做完,末得办法。

不过想想也没啥事值得玩命的,许多事情临头的时候觉得比什么都重要,隔段时间再回头看,其实挺垃圾的,不值一提。

看看一场天灾下来,前一秒还奔命哪,后一秒搞不好就都清零了,人生就是这么底变换莫测。鬼子时不时就要说 God bless America,这几天人人都在祈求天佑中华,凡事到了要求老天的份上,总不是好事…

升级了

Joe May 14th, 2008

老想升级老是懒得动手,想想实在不能再懒下去了。

给blog挪了个窝,升级到WP-2.5.1,顺道换了个主题,这个主题叫 Fall Season, 样子不错,最主要就是要一张自适应宽度的皮。

Ubuntu Hashes

Next »