May 25, 2011

MS Messenger for Mac crash!

老實說,有官方版的東西我還是比較喜歡用官方版來的多一點。

換了Mac之後最麻煩的就是msn了。官方的msn難用又常crash,即使最近隨著新版Office推出的8.0.1還是經常crash如故。

其實網路上大家都推薦用鴨子,但前陣子掉訊息的問題實在太嚴重了。於是messenger新版出來之後我又換回新版了。只不過這下從三不五時掉訊息,變成三不五時當掉,只能說兩害相權取其輕了吧。嘆...

用了這一陣子之後,發現其實遇到的crash是有規律的。

只要我點到"聯絡人清單"上面的"編輯個人訊息"的地方,當畫面變成底下這個狀態。

然後再按下cmd+w,隨後動一動視窗就必當無誤。

到底是哪個白痴寫出這個bug的。(吐血~

發現之後,盡量避免按cmd+w的確似乎就不太有遇到crash的狀況了。不過cmd+w是關閉視窗的功能,常用到不得了呀。再加上要把那個格子按出來又非常容易,導致偶爾還是會誤按一下,然後就會掛掉了...

最後終於想出一個折衷的辦法。從系統偏好設定/鍵盤/鍵盤快速鍵的地方可以指定各個應用程式的快速鍵。

把cmd+w改為指定為"最小化",這樣起碼可以不必crash,又可以保持一個近似的功能。算是個沒有辦法中的辦法了... 只能希望MS趕快解掉這個莫名其妙的bug吧!

為project開一個local repository

最近開始研究iOS的開發,就發現xcode真的是一套非常強大的工具。開發過程所需要的東西應該差不多xcode都包含在內了,完全不需要另外去找工具來用。包括version control也是。

在xcode4的Organizer內有Repository的管理工具,如果從xcode新建一個project預設是會開一個local的repository出來的。這邊預設是用git,跟慣用的svn不太一樣。當然內建也是有支援svn的。

用過的人就會知道,svn有一點麻煩的地方是,它會在每一層的資料夾內建一個屬於svn的隱藏檔。在mac上就是.svn的檔案。
之前就有遇過,如果用eclipse作為開發環境(包括symbian與android),在build的時候eclipse會去砍掉gen跟bin的資料夾,然後再從src把資料夾階層複製過來。這樣一來原本gen裡面的.svn就會變成src裡面的.svn,然後就會造成svn軟體錯亂。所以在create svn的時候就要特別小心,不能把gen跟bin commit到svn裡面,當初就是因為這樣,還發生過幾次source全部消失的悲劇,不可不慎!

回到主題。既然現在xcode的local repository就有support git可以用,那當然就來用看看囉。git的設定檔只有在project的根目錄的.git資料夾,如果要砍應該也是非常簡單的。

當然,開發初期自己做一些小程式是沒什麼問題,xcode全部都takecare好了。
那如果今天拿到一份別人開發了一半的資料夾,那該怎麼辦呢?

xcode也十分人性,只要使用git指令先將repository開好之後,xcode就會自己加入Organizer內了。一切就如新開的project一般正常。
所需指令如下$ cd [project_root]
$ git init
$ git add .
$ git commit -a -m "initial commit"


參考文獻: Managing Versions of Your Project 底下Add Git or Subversion Version Control to an Existing Project 一節

06/14 後記。
如果有一個project需要svn(server)與git(local)並存時,git也可以設定ignore某些檔案。
作法為,在project的根目錄建立".gitignore"檔案,該檔案內容為 ".svn"。
如此一來,在commit時就會自動ignore svn的相關設定檔了。
同理,在svn的tool內也應將.git以及.gitignore ignore,以免互相干擾。