解決 git out of memory 的問題

之前 Heresy 有整理過一篇《使用 TortoiseGit 將 SVN 轉移到 Git 的紀錄》,試著去把 SVN 的程式轉移到 GIT 的環境;不過當時因為還有其他事,所以只是先測試、並沒有完全完成。而最近,算是有真的需求、需要做轉移的工作了,所以又把他撿回來、試著做了一下。

結果,感覺似乎是因為 SVN 的東西又變多很多了,結果現在用 Git 取得 SVN 的資料的時候,跑到一半就會出現錯誤訊息了…下面就是錯誤訊息:

Auto packing the repository for optimum performance. You may also run "git gc"
manually. See "git help gc" for more information.

warning: suboptimal pack - out of memory

fatal: Out of memory, malloc failed (tried to allocate 98849273 bytes)

error: failed to run repack

gc --auto: command returned error: 255

git did not exit cleanly (exit code 1) (13256532 ms @ 2015/--/-- --:--:--)

這個錯誤,基本上應該就是在執行「git gc」的時候,記憶體不夠他去配置,導致觸發了記憶體不足的錯誤。

閱讀更多»

搞笑的 GitHub 更新紀錄

本文內容是在《趣文:如何在Github“正确”做贡献》這邊看到的,作者為伯乐在线的黄利民

基本上,在 GitHub 這個原始碼管理的網路服務(官網)上註冊帳號,並將專案傳上去後,GitHub 就會去紀錄、統計你對於你的專案的修改紀錄;而在每個人的頁面中的「Your Contributions」這個區域,則把每天個程式更新次數換算成由淺到深的綠色,最後以 7 天 x 53 周、這樣一格一格的形式來呈現一年以來的更新紀錄。

由於這個基本上可以視為一張點陣圖,所以接下來…似乎就開始有人針對這東西,開始惡搞了!下面就是一些創作~

  • Louis Teboul

    中間是很明顯的「Hello」,左邊看來有點像是個蘑菇,右邊不知道是什麼?

閱讀更多»

分割 Git Repository

在 Heresy 來看,Git 和 SVN 相比,雖然因為他的分散式設計,有相當多的好處,不過,還是有一些地方,是比較不方便的。其中一個,就是在複製 repository 的時候,必須要把整個一起複製下來、而不能只複製其中一部分。

也因為這個問題,所以如果再 SVN 是把多個專案放在同一個 repository 裡使用的話,再轉換到 Git 後,會產生「明明只是要其中一個專案,卻需要把所有專案都複製下來」的問題。

而要解決的方法,基本上就是要把 repository 底下的不同專案、各自切割出來了~Heresy 這邊主要是參考《git 倉庫分家》這篇文章的做法。

閱讀更多»

使用 TortoiseGit 將 SVN 轉移到 Git 的紀錄

Git(官網)在 Heresy 來看,他最大的好處,就是它是一個分散式版本控款系統;有別於 SVN 這類的中央控管式的版本控管系統,Git 最大的好處是,你可以簡單地把一個 Server 上的「Repository」複製下來,在自己的電腦上、獨立進行版本控管,並且在必要的時候,還可以透過 push / pull 的機制、簡單地和 Server 端的東西最整合!所以就算是沒有網路,也可以自己在自己的電腦上、進行版本控管的動作~

而這篇文章,是 Heresyn 自己在試著透過 TortoiseGit 把版本控管系統,由 Subversion(SVN、官網),轉移成 GIT的紀錄。在環境的部分,Heresy 這邊是在 Windows 環境下進行,本來就已經安裝、設定好了這兩者在 Windows 上所使用的工具;這邊 Heresy 所使用的是 TortoiseSVN(官網)和 TortoiseGit(官網)這兩套軟體。

不過這邊也先強調一下,這邊的方法應該不是最完美的方法,雖然應該是可以用、但是還是有一點小問題的

閱讀更多»

如何不被 TortoiseSVN 拖慢系統效率

本文來源是:http://www.jeffhung.net/blog/articles/jeffhung/758/
Heresy 覺得有用 TortoiseSVN 的人應該要看看~因為當 project 大的時候,使用 TortoiseSVN 的確常常會發生檔案總管反應遲緩等問題;而此文就是解決一些由 TortoiseSVN 所引起的效能問題的建議。

簡單來說,這篇文章是以《Optimize performance》為基礎寫的,提出了四點可以避免 TortoiseSVN 拖慢系統效率的方法;Heresy 大概又再截錄了一下(其實也差不多全部了):

閱讀更多»