mav@freebsd.org 之前將 ahci(4) import 進 freebsd source tree, 昨天在桌機上裝了一下 freebsd 8,
順手把這個打開來用用看, 果然用起來沒問題呀.
安裝光碟, 預設還是 ata, 所以得裝完之後, 自己在 /boot/loader.conf 加上 ahci_loader="YES",
然後修改 /etc/fstab 之後, 重開機就可以使用 ahci 了, 當然, 硬體跟 bios 都要有支援就是, 有的 bios 預設就是 ata, 要自己進去改一下,
不然怎樣搞都還是進不了 ahci mode.
--
ata 硬碟的命名是 adX, ahci 則是 adaX, 所以 fstab 得自己改過.
2009年10月21日 星期三
2009年10月20日 星期二
git 的 hooks
由於公司內部一些東西改用 git 做版本控制, 所以現在用 git 的頻率還頗高的,
大家共用一個 codebase 最大的缺點, 就是有人可能搞爛東西, 然後大家還不知道,
為了預防這種事情發生, 大部分的 scm 都會有所謂的 hook, 可以在一些事情被執行前後, 做點檢查之類的事情.
我是直接拿 git pre-commit 這個 hook, 檢查更新過的 php 的 syntax, 如果有問題直接就不給 commit,
至於 bug, 當然是沒辦法檢查出來的.
下面是 code, 存成 .git/hooks/pre-install, chmod u+x 一下就可以用了,
不過比較好奇的是一般自己架設的 git server, 是可以自己處理 server side hooks, 但是 github 看起來並沒有這種機制.
大家共用一個 codebase 最大的缺點, 就是有人可能搞爛東西, 然後大家還不知道,
為了預防這種事情發生, 大部分的 scm 都會有所謂的 hook, 可以在一些事情被執行前後, 做點檢查之類的事情.
我是直接拿 git pre-commit 這個 hook, 檢查更新過的 php 的 syntax, 如果有問題直接就不給 commit,
至於 bug, 當然是沒辦法檢查出來的.
下面是 code, 存成 .git/hooks/pre-install, chmod u+x 一下就可以用了,
不過比較好奇的是一般自己架設的 git server, 是可以自己處理 server side hooks, 但是 github 看起來並沒有這種機制.
#!/usr/bin/env php
exec( "git diff --numstat", $output );
$fa = array();
foreach( $output as $o ) {
$f = explode( "\t", $o );
$p = pathinfo( $f[2] );
if( $p['extension'] == 'php' )
$fa[] = $f[2];
}
foreach( $fa as $f ) {
system( "php -l $f", $result );
if( $result != 0 ) {
$flag = true;
break;
}
}
if ($flag) exit( 1 );
?>
訂閱:
文章 (Atom)