在軟體開發領域,對原始碼進行版本控管是非常重要的一件事,有別於Subversion或TFS這類集中式版本控管系統,Git是一套分散式版本控管系統,並帶來許多版本控管上的各種優勢與解決傳統集中式版本控管的缺失,例如支援本地操作、備份容易、功能強大且彈性的分支與合併等等。不過,由於Git版本控管無論在版控觀念與工具使用上,都與傳統集中式版控工具差異甚大,因此造成了不小的學習門檻,在未來的30天內,希望能讓大家完整了解Git版本控管的精隨之處,並整理我的學習心得與我們公司從Subversion轉至Git的過程中
筆者使用 Subversion (SVN) 已經將近 10 年,從來都不覺得有任何必要轉換至其他版本控管平台,直到前幾年因應雲端化的改變,慢慢導入 TFS 版本...
要開始使用 Git 版本控管,首先要安裝適當的 Git 工具,這個系列的文章主要還是以 Windows 平台為主,這篇文章將會介紹三套我們最常用的 Git 版控...
要開始使用 Git 最重要的就是要先有一份 Git 儲存庫 (Git Repository) 才行,但是,這份儲存庫從哪裡來呢?本篇文章會介紹多種建立儲存庫的方...
本篇文章將帶大家學會幾個最重要也最基本的版控工作,其中將包含基本的檔案操作如新增、刪除、重新命名檔案,提交變更 (建立新版本)、查詢歷史紀錄等工作。 準備工作目...
在使用 Git 版本控管的過程中,有些很基本的觀念必須被建立,這樣才能更有效率也更有意義的學下去。有清楚且正確的觀念支持,不但有助於你學習 Git 指令操作,更...
在 Git 的資料結構中,「物件」是一種「不可變的」 (immutable) 檔案類型,所有儲存在「物件儲存區」的檔案通常只進不出,也不會被修改內容。原因在於,...
我們知道在 Git 裡兩個重要的資料結構,分別是「物件」與「索引」,這篇文章主要用來解說「索引」的細節。使用 Git 版本控管的過程中,或許你可以很輕易的了解...
在 Git 裡面 分支 (Branch) 是個非常重要的機制,使用上也必須特別小心,因為專案總不能無限制的「分支」下去,最終總是要合併的,但合併是日後的議題,這...
使用任何版本控管軟體的過程中,經常會需要查看歷史紀錄與比對版本之間的差異。而在使用 Git 的時候要如何進行差異比對,將是本文重點。 準備工作目錄 我們透過以下...
在 Git 版本控管的過程,每一個版本就代表一個 commit 物件。又因為版控過程中經常會建立分支,最終產出的 commit graph 可能會蠻複雜的,所以...