高見龍

Git/Ruby/Rails/iOS app Developer & Instructor, 喜愛非主流的新玩具 :)

Git 小說連載系列之「在 Merge 之前想試試看有沒有衝突?」

Git 小說連載系列」系列主要是針對在大家學習或使用 Git 的過程遇到的的一些有趣或微妙的情境而寫的短文,希望可以藉由這一系列的短文幫大家更容易的了解到底 Git 是怎麼回事。

當你開了一個新的 branch,然後做了幾個 commit,進度做得差不多之後,下一步就是準備使用 git merge 指令來進行合併。但你手邊的專案可能有好一陣子沒跟線上的同步,這個 merge 執行下去可能噴一堆的衝突要解決。

不久前在社群分享就有朋友問到,有沒有辦法可以在進行 merge 之前先看看會不會發生衝突發生?

Git 小說連載系列之「關於檔名的大小寫」

Git 小說連載系列」系列主要是針對在大家學習或使用 Git 的過程遇到的的一些有趣或微妙的情境而寫的短文,希望可以藉由這一系列的短文幫大家更容易的了解到底 Git 是怎麼回事。

昨天參加了 Gandi 辦的 Git 小聚,剛好有與會者問到在 Git 裡如果只有檔名大小寫改變而沒有改變內容的話,git status 指令不會感受到有任何的變化:

親愛的,我把 GitHub 拿來收作業了!

homework
photo by Patrick

時間過得很快,一轉眼今年秋天在台北商業大學開設的 Ruby on Rails 學程已經是第四年了。

不管是什麼技能,想要學會不太可能就只靠每週三小時的三學分課程就學得會,一定需要平日的練習或是實作專案才能有所成效。由於是學校的正式課程,需要有打分數的標準,於是除了期中、期末考外,所以每週會規定同學們要繳交作業。

在以往大多會使用 Email 或是開學校的 FTP 請同學自己上傳檔案,但 Email 有些不確定性(被歸進垃圾郵件或是寄往莫明的黑洞完全消失),而 FTP 雖然簡單,但我希望同學們還可以在學校再學到一些其它畢業之後還能用到的技能,於是我便選擇使用 Git/GitHub 來收同學們的作業。

Git 不是新技術,使用 GitHub 收作業也不是什麼新潮的做法,國外早就有學校是這樣做的,本文不是要介紹如何使用 Git 指令或教大家如何使用 GitHub,僅分享我自己這幾年來在學校授課時實際使用 GitHub 收作業的一些心得。

Git 小說連載系列之「可以刪掉全部的分支嗎?」

Git 小說連載系列」系列主要是針對在大家學習或使用 Git 的過程遇到的的一些有趣或微妙的情境而寫的短文,希望可以藉由這一系列的短文幫大家更容易的了解到底 Git 是怎麼回事。

曾經使用過 Git 的朋友,應該大多聽說過在 Git 裡面使用分支(Branch)很方便。不知道大家對於分支的觀念是否正確,下面有三個關於刪除分支的(蠢)問題,大家可以先想想看:

  1. 預設的 master 分支可以刪嗎?
  2. 所有的分支都可以刪嗎?
  3. 那可以把全部的分支都刪光光嗎?

Git 小說連載系列

image photo by Chad Horwedel

我常會比喻 Git 就像一台電腦檔案的時光機,它保存了這些電腦檔案過去發生的種種狀態。只要你知道怎麼駕馭這台時光機,你可以回到過去任何一個時間點,找回當時的檔案。

Git 是個易學難精的工具,雖然像是 addcommitpushpullclone 這些常用的指令已足以應付平日工作需求,但對於要精準的找到過去某個時間點的檔案、整理太過雜亂的 Commit,或是想復原剛剛不小心幹的蠢事,在不清楚 Git 運作原理的情況下,很容易會越弄越糟,最後放棄而使用傳統的複製、貼上大法。

雖然在「為你自己學 Git」一書中有提到一些常見的狀況題以及該怎麼解決,但還是常有朋友會遇到一些更有趣的情境。所以這個專欄的目的就是除了寫一些我自己亂試、亂玩 Git 的主題外,也希望可以幫朋友們解決他們遇到的問題或是釐清觀念。