發表文章

目前顯示的是 2013的文章

設定 Git 的環境變數 - Git config

這裡記錄一下目前會用到的 git config 設定 # 設定使用者資訊 git config --global user.name "Steven" git config --global user.email "steven@helloworld.com" # 設定顏色顯示 git config --global color.ui auto git config --global color.diff auto git config --global color.status auto git config --global color.branch auto git config --global color.log auto # 設定 alias git config --global alias.st status git config --global alias.co checkout # 如要忽略空白的比對,可增加以下這個 git config --global apply.whitespace nowarn 設定完之後,在個人的家目錄底下去 cat .gitconfig ,即會看到此資訊 [ push ] default = matching [ alias ] st = status # 設定 status 縮寫 co = checkout # 設定 checkout 縮寫 [ color ] ui = auto # 設定 ut 的顏色為 auto diff = auto # diff status = auto # status branch = auto # branch log = auto # log, 以上這幾種都會自動標色 [ user ] name = Steven Wu email = steven@helloworld.com 參考資料: http://gogojimmy.net

在舊版 Ubuntu 底下安裝新版 git 套件 (以 Ubuntu 8.04 hardy 為例)

最近由於工作需求,需要在舊版的 Ubuntu 上面安裝 git 套件, 但由於舊版的 Ubuntu 版本已不支援「直接」透過 apt-get update 來更新 source list, 於是用了另一種方法來直接安裝 git,方法如下: 下載目前最新版的 git-1.8.4.1 版本,並且解壓縮並安裝 wget http://www.kernel.org/pub/software/scm/git/git-1.8.4.1.tar.gz tar zxvf git-1.8.4.1.tar.gz cd git-1.8.4.1 ./configure make make install 之後就可以開心的建立 Git repository 了! 參考資料: http://serengetisunset.blogspot.tw/2009/02/installing-git-1613-on-ubuntu-804.html

在 Linux 底下,如何讓 CPU 使用率達到 100% (使用 md5sum 與 gzip)

在工作上,由於 HW 要做溫度的相關測試, 因此要想辦法讓 CPU 使用率拉到 100%,藉此來提高整體溫度。 這邊有個很簡單的方法,分享給大家: 簡單。好用,提供給大家做參考!

建立 git repository 時,要如何找出空目錄,以避免 build code 失敗?

在過去的經驗裡,使用 git 管理 project source code 最討厭遇到空目錄 (empty directory),偏偏我們在 build firmware image 時,常常會需要這樣的目錄,例如 root filesystem 的 /etc, /var, /dev 等等這些目錄。 假如 Makefile 沒有寫好的話,會假設這些目錄是存在的,但是因為 git 並不會儲存空的目錄,這會導致當我們將 project 從 git server clone 下來後,空目錄消失,然後 compile 就 fail 了。 多半這時候的解法就是透過 directory comparison 的工具,例如 Araxis Merge, Beyond Compare,或是 meld 等等,找出空目錄,touch 一個檔案,把檔案加入 git 管理,這樣就可以避免這樣的問題了。 過去我是這樣解決的: 在 project 目錄下,我會執行以下的指令: find 這個指令大家多少都用過,就不多做解釋 -type d 就是找出目錄,man page 說明如下: -empty 就是空檔案或是空目錄的,man page說明如下: -exec find 指令產生的 output,可以有幾種針對 output 做後續處理的方法,其中一種比較直覺的就是透過 exec,將 output 作為新指令的輸入,有點類似 pipeline ( | ) 的概念;exec 的參數必須以 " ; " 結尾,又因為在 shell 下,這個符號有其他用途,所以必須用反斜線標記 (\),然後 " { } " 是代表前面 find 指令的 output string。man page 說明如下: 最後, .gitignore 是 open source community 中,滿常被用來解決這問題的空檔案,而且同時又是 git 本身會 check 的特殊檔案,所以我都是拿這個檔案作為保留空目錄使用。 附註:在搜尋的過程中,也有人建議:如果在空目錄內新增一個 README 之類的檔案,藉以說明這個目錄是用來做什麼的,也是一個不錯的好選擇。

[Kernel] error: ‘PATH_MAX’ undeclared (first use in this function)

如標題所說,今天在嘗試 Build Kernel 時發現了這個問題: scripts/mod/sumversion.c: In function ‘get_src_version’: scripts/mod/sumversion.c:384: error: ‘PATH_MAX’ undeclared ( first use in this function ) scripts/mod/sumversion.c:384: error: ( Each undeclared identifier is reported only once scripts/mod/sumversion.c:384: error: for each function it appears in. ) scripts/mod/sumversion.c:384: warning: unused variable ‘filelist’ make [ 4 ] : *** [ scripts/mod/sumversion.o ] Error 1 make [ 3 ] : *** [ scripts/mod ] Error 2 make [ 2 ] : *** [ scripts ] Error 2 make [ 2 ] : Leaving directory ` /home/steven_wu/dsr1000n/linux/kernel_2.6/linux ' make[1]: *** [linux] Error 2 make[1]: Leaving directory `/home/steven_wu/dsr1000n/linux/kernel_2.6' make: *** [ kernel ] Error 2 這時只需要: vim scripts/mod/sumversion.c 查看最上面的宣告中是否有 include  limits.h ,若沒有,則加入一行: #include <limits.h> -- 做個筆記