2014年9月25日 星期四
git merge "--no-ff" option
我最近發現了一個問題,就是我們如果直接用 merge 指令把分出去的 branch merge 回來。
它似乎會把 log 合併。所以就會造成 git log 裡面列出來的項目包含了 branch 的項目,這樣對於要找以前的紀錄真的是相當的困擾。
正巧在網路上看到一篇文章,裡面有提到相關的內容。
Git 版本控制 branch model 分支模組基本介紹
裡面主要的內容是在討論如何規畫一個專案的 branch。這個可能因為大家的需求不同,可以參考。而作者也提到他的內容主要是參考自:A successful Git branching model,而圖片也是從這篇文章而來。
相關的細節就請有需要的人到原作都的網頁去看了,我來說明一下我的重點 "--no-ff" option。
2014年9月3日 星期三
Let U-Boot support web server
出來混遲早要還的,夜路走多了總會碰到…。firmware 玩多了總有搞掛的時候,所以廠商要求我們要在 bootcode 裡面提供 firmware upgrade 的功能,而且還是要 web UI。
我們實際上的作法是因為前人有作過,所以就依樣畫葫蘆的搬過來用。不過這我就不寫的太仔細了。
那 open source 的世界裡有沒有什麼人提出解決方案呢?我有找到一個:
https://github.com/pepe2k/u-boot_mod
它有 support web server
https://github.com/pepe2k/u-boot_mod#web-server
我們實際上的作法是因為前人有作過,所以就依樣畫葫蘆的搬過來用。不過這我就不寫的太仔細了。
那 open source 的世界裡有沒有什麼人提出解決方案呢?我有找到一個:
https://github.com/pepe2k/u-boot_mod
它有 support web server
https://github.com/pepe2k/u-boot_mod#web-server
2014年8月29日 星期五
How to add auto increased build number
有些軟體的版本號後面會有個 build number。這個是自動產生的,讓大家可以明確的知道自己產生的程式是哪版的。因為有時為了版本控制,不會每一次都在正式的版號上加一,但是又需要區分程式的差異,所以想出了這個方法。
這個方法,雖然早就知道,但從來沒自己實做過。現在真的要自己做了,一開始還真沒有頭緒。經過自己想想,加上參考手上的程式碼裡本來的版本資訊的內容(本來是用 build date)。想得到的大概就是產生一個檔來存放 build number ,然後在 make 時,去把檔案內容讀出來 + 1,然後也把這個 + 1 的值存回去。
這個方法,雖然早就知道,但從來沒自己實做過。現在真的要自己做了,一開始還真沒有頭緒。經過自己想想,加上參考手上的程式碼裡本來的版本資訊的內容(本來是用 build date)。想得到的大概就是產生一個檔來存放 build number ,然後在 make 時,去把檔案內容讀出來 + 1,然後也把這個 + 1 的值存回去。
2014年8月28日 星期四
2014年8月26日 星期二
警告訊息: function declaration isn't a prototype 與 C 語言小歷史
今天發現了程式中有一個警告訊息"function declaration isn't a prototype",想解決它,但是又不太懂它的意思,所以就上網查了一下。結果順便還學了一下歷史。
原文:func(void):C 與 C++ 函式宣告的小差異
原文:func(void):C 與 C++ 函式宣告的小差異
2014年8月20日 星期三
shell script 的追蹤與 debug
最近因為有新同事來,請他練習 shell script,所以我也上網找了一些資料。
結果找到了母校的老師寫的教學網頁。
其中有一個課程項目是: shell script 的追蹤與 debug
老實說,因為我們大部份用到的 shell script 都沒有太複雜,還真沒想過有什麼 debug 的方法,都完全使用人腦 compiler 在 debug。
結果找到了母校的老師寫的教學網頁。
其中有一個課程項目是: shell script 的追蹤與 debug
老實說,因為我們大部份用到的 shell script 都沒有太複雜,還真沒想過有什麼 debug 的方法,都完全使用人腦 compiler 在 debug。
2014年8月8日 星期五
抓取 Git branch 資訊
之前有一篇「Linux 提示字元」裡有提到,可以寫 function 來取得一些 git 的資訊,然後加進提示字元裡面。
我是由這個網站得到的:http://ihower.tw/blog/archives/5436
我是由這個網站得到的:http://ihower.tw/blog/archives/5436
2014年7月15日 星期二
Git 指令筆記 - 命令列下的樹狀圖
雖然現在有很多具有 GUI 的 git 工具可以用,多人可以畫出清楚漂亮的樹狀圖,
可是很不巧的,因為我的系統還是 windows XP,綜合費用、系統支援,及實際安裝使用之後,
我的電腦上幾乎都有或大或小的問題,所以大部份的狀況我還是透過 command line 來使用 git。
不過在 GUI 上可以畫出來的樹狀圖,在終端機上卻一直不知道該怎麼讓它呈現出來?
不過在 GUI 上可以畫出來的樹狀圖,在終端機上卻一直不知道該怎麼讓它呈現出來?
2014年3月18日 星期二
VIM 刪除包含某字串的整行
有時用 grep 搜到的內容太多,可是有些內容很明顯就不是我們要的。以前我都傻傻的人工刪掉,又麻煩又怕會弄錯。
今天我實在受不了了,所以上網找了一下,發現它的確是強大的。
今天我實在受不了了,所以上網找了一下,發現它的確是強大的。
:[range]g/pattern/[cmd]
[range]表示範圍,或用直接用 g 表示 globe。
[cmd] 使用 "d" 就可以刪除整行。
2014年1月28日 星期二
變數的長度及 printf 參數。
今天要把 MAC address 由字串轉成 16 進制數字時,才發現很麻煩。因為它是 6 個 bytes,太長了。尋找解決的過程經歷了一些故事,所以來記錄一下。
其實之前有碰到 memory address 的部份,由使用者輸進來的是字串,但運算時常常需要把它轉成 16 進制數字。在我手上的程式一般是使用 simple_strtoul 這個函式,但是它的傳回值是 unsigned long ,只有 4 個 bytes,所以長度不夠。
其實之前有碰到 memory address 的部份,由使用者輸進來的是字串,但運算時常常需要把它轉成 16 進制數字。在我手上的程式一般是使用 simple_strtoul 這個函式,但是它的傳回值是 unsigned long ,只有 4 個 bytes,所以長度不夠。
2014年1月23日 星期四
用軟體產生 flash image。
一般來說,要得到 flash 的 image 檔,應該是把你要的資料先用軟體的方式寫進去。全部寫完之後,再把 flash 拿到燒錄機去,用燒錄機讀出來。
但是這過程中,如果板子上沒有 socket 那就要解焊,解焊當然也是有風險。而且像我自己不會弄就要求助於人。然後我們公司燒錄機都在硬體部門,就要去借用,還可能要排隊。
因此,如果能用軟體就產生這樣的 image 會比較方便。
但是這過程中,如果板子上沒有 socket 那就要解焊,解焊當然也是有風險。而且像我自己不會弄就要求助於人。然後我們公司燒錄機都在硬體部門,就要去借用,還可能要排隊。
因此,如果能用軟體就產生這樣的 image 會比較方便。
如何產生都是 0xFF 的檔案。
在 Linux 底下,一般都會用 /dev/zero 或 /dev/null 來產生空的檔案(內容為 0x00)。
例如: dd if=/dev/zer0 of=temp_file bs=1k count=1024
但是有時我們會希望產生內容全部是 0xFF 的檔案,因為 flash 裡面空的狀態就是 0xFF,
所以為了填補 flash image 空的部份,就需要這樣的檔案。
例如: dd if=/dev/zer0 of=temp_file bs=1k count=1024
但是有時我們會希望產生內容全部是 0xFF 的檔案,因為 flash 裡面空的狀態就是 0xFF,
所以為了填補 flash image 空的部份,就需要這樣的檔案。
2014年1月9日 星期四
"!!" in C - C 語言中的兩個驚嘆號
有時候,會看到這樣的用法:
!!value
大家應該都知道 "!" 表示 "NOT",所以加了 "!" 0 會變 1 ,1會變 0。
以前學校是這麼教的,不過,其中倒是有一些小地方,不是這麼單純的。
首先,因為 C 語言的型態是很自由的(以前老師喜歡說是「很亂來的」)
如果變數的值單純的是 0 或 1,當然狀況就是像上面說的 0 變 1,1 變 0。
!!value
大家應該都知道 "!" 表示 "NOT",所以加了 "!" 0 會變 1 ,1會變 0。
以前學校是這麼教的,不過,其中倒是有一些小地方,不是這麼單純的。
首先,因為 C 語言的型態是很自由的(以前老師喜歡說是「很亂來的」)
如果變數的值單純的是 0 或 1,當然狀況就是像上面說的 0 變 1,1 變 0。
2014年1月8日 星期三
Linux Device Driver
Linux Device Driver 這個科目,是我一直想好好學,但又一直沒有時間的項目。
有一本很有名的書,也就叫 Linux Device Driver。
除此之外,小弟剛剛發現一個網頁似乎也不錯。
Jollen 的 Linux Device Driver 專欄、教學文件與教育訓練
(網站是2006年建的了,幾乎所有的圖都失效了@@,2014.01.08 18:39 更新)
備份一下,提醒自己有空要去看看。
有一本很有名的書,也就叫 Linux Device Driver。
除此之外,小弟剛剛發現一個網頁似乎也不錯。
Jollen 的 Linux Device Driver 專欄、教學文件與教育訓練
(網站是2006年建的了,幾乎所有的圖都失效了@@,2014.01.08 18:39 更新)
備份一下,提醒自己有空要去看看。
訂閱:
文章 (Atom)