不管您的職業是不是工程師,只要你是電腦工作者每天或多或少都需要編輯、修改許多的檔案。
您怎麼樣備份您的檔案?您怎麼樣一眼就可以知道每次備份的差別?如果您跟其它同事一起共同檔案,不論是有心無意,萬一檔案被其它同事覆蓋掉了該怎麼救回來?
如果你在乎這些問題的答案,那使用「版本控制系統」就是一個很不錯的選擇。透過這樣的系統,可以清楚的記錄每個檔案是誰在什麼時候加進來、什麼時候被修改或刪除。Git 就是一種版本控制系統,也是目前業界最流行的版本控制系統,沒有之一。
人生不能重來,但 Git 可以隨時幫你救回來不小心修改或刪除的檔案。
簡單的說,Git 就像玩遊戲的時候可以儲存進度一樣。為了避免遊戲打輸了而損失裝備,又或是打倒頭目卻沒有掉落期望的裝備,你也許在每次要去執行任務之前之前記錄一下,在發生狀況的時候可以載入舊進度,再來挑戰一次。
若您平日的工作已有在使用 Git,本書大部份的內容應該相對的輕鬆;即使已經平日有在使用 Git,也可從本書學到一些「本來以為 Git 是這樣,但其實是那樣」的觀念。
本書內容:
- 常用 Git 指令介紹。
- 各種 Git 的常見問題及使用情境。
- 如何修改 Git 的歷史紀錄。
- 如何使用 GitHub 與其它人一起工作。
- 一般平常工作用不到但對觀念建立有幫助的冷知識。
作者簡介:
五倍紅寶石 高見龍
雖非資訊本科系出身,但喜歡寫程式而且希望可以寫一輩子程式的電腦阿宅。
喜歡辦活動,是不少台灣大型技術研討會(如 PHPConf、WebConf、RubyConf Taiwan 等)及社群活動(Rails Girls Taipei、Taipei.rb)的發起人或主辦人。
喜愛與人分享,曾在許多國內、外技術研討會分享心得。四次創業經驗,雖然其中有兩次是失敗經驗但仍樂此不疲。目前為五倍紅寶石共同創辦人及負責人。
- 20 年程式開發經驗
- 將近 10 年的教學經驗
- 在台灣推廣 Ruby 程式語言多年,在各大專院校廣為開課,學生已累積超過 1,000 人以上
Blog: http://kaochenlong.com
Facebook: https://www.facebook.com/eddiekao
Twitter: https://twitter.com/eddiekao
Github: https://github.com/kaochenlong
Email: eddie@5xruby.tw
封面插畫
陳曉菁,喜歡手作實踐一些小玩意,平常寫寫程式,偶爾弄弄設計煮煮飯,簡單來說就是有點手賤要找點事做,目前是五倍紅寶石的酒鬼,歡迎來礦坑乾杯。
目錄
前言 寫在最前面 - 為你自己學Git !
作者序
第1章:入門篇
1.1 什麼是Git?為什麼要學習它?
1.2 與其它版本控制系統的差異
第2章:環境安裝
2.1 安裝在 Windows 作業系統
2.2 安裝在Mac OSX 作業系統
2.3 安裝在Linux 作業系統
2.4 圖形化介面工具
第3章:終端機/命令提示字元
3.1 終端機及常用指令介紹
3.2 超簡明Vim操作介紹
第4章:設定Git
4.1 使用者設定
4.2 其它方便的設定
第5章:開始使用Git
5.1 新增、初始 Repository
5.2 把檔案交給Git 控管
5.3 工作區、暫存區與儲存庫
5.4 檢視紀錄
5.5 狀況題 如何在Git 裡刪除檔案或變更檔名?
5.6 狀況題 修改Commit 紀錄
5.7 狀況題 追加檔案到最近一次的Commit
5.8 狀況題 新增目錄?
5.9 狀況題 有些檔案我不想放在Git 裡面...
5.10 狀況題 檢視特定檔案的Commit 紀錄
5.11 狀況題 等等,這行程式誰寫的?
5.12 狀況題 啊!不小心把檔案或目錄刪掉了⋯
5.13 狀況題 剛才的Commit 後悔了,想要拆掉重做⋯
5.14 狀況題 不小心使用hard 模式Reset 了某個Commit,救得回來嗎?
5.15 冷知識 HEAD 是什麼東西?
5.16 狀況題 可以只Commit 一個檔案的部份的內容嗎?
5.17 冷知識 那個長得很像亂碼SHA-1 是怎麼算出來的?
5.18 超冷知識 在.git 目錄裡有什麼東西? Part 1
5.19 超冷知識 在.git 目錄裡有什麼東西? Part 2
第6章:使用分支
6.1 為什麼要使用分支?
6.2 開始使用分支
6.3 對分支的誤解
6.4 合併分支
6.5 狀況題 為什麼我的分支都沒有「小耳朵」?
6.6 常見問題合併過的分支要留著嗎?
6.7 狀況題 不小心把還沒合併的分支砍掉了,救得回來嗎?
6.8 另一種合併方式(使用 rebase)
6.9 合併發生衝突了,怎麼辦?
6.10 冷知識 為什麼大家都說在 Git 開分支「很便宜」?
6.11 冷知識 Git 怎麼知道現在是在哪一個分支?
6.12 狀況題 我可以從過去的某個Commit 再長一個新的分支出來嗎?
第7章:修改歷史紀錄
7.1 狀況題 修改歷史訊息
7.2 狀況題 把多個 Commit 合併成一個Commit
7.3 狀況題 把一個 Commit 拆解成多個Commit
7.4 狀況題 想要在某些 Commit 之間再加新的Commit
7.5 狀況題 想要刪除某幾個 Commit 或是調整Commit 的順序
7.6 Reset、Revert 跟 Rebase 指令有什麼差別?
第8章:標籤
8.1 使用標籤
8.2 冷知識 標籤跟分支有什麼不一樣?
第9章:其它常見狀況題與冷知識
9.1 狀況題 手邊的工作做到一半,臨時要切換到別的任務
9.2 狀況題 不小心把帳號密碼放在Git 裡了,想把它刪掉⋯
9.3 冷知識 怎麼樣把檔案真正的從 Git 裡移掉?
9.4 冷知識 你知道Git 有資源回收機制嗎?
9.5 冷知識 斷頭(detached HEAD)是怎麼一回事?
第10章:遠端共同協作 - 使用 GitHub
10.1 GitHub 是什麼?
10.2 Push 上傳到 GitHub
10.3 Pull 下載更新
10.4 狀況題 怎麼有時候推不上去...
10.5 從伺服器上取得 Repository
10.6 常見問題Clone 跟 Pull 指令有什麼不一樣?
10.7 與其它開發者的互動 - 使用 Pull Request(PR)
10.8 狀況題 怎麼跟上當初 fork 專案的進度?
10.9 狀況題 怎麼刪除遠端的分支?
10.10 狀況題 聽說 git push -f 這個指令很可怕,什麼情況可以使用它呢?
10.11 使用GitHub 免費製作個人網站
10.12 冷知識 一定要有GitHub 才能得到別人更新的檔案嗎?
第11章:使用Git flow
11.1 Git Flow 是什麼?為什麼需要這種東西?
前言 寫在最前面 - 為你自己學Git !
作者序
第1章:入門篇
1.1 什麼是Git?為什麼要學習它?
1.2 與其它版本控制系統的差異
第2章:環境安裝
2.1 安裝在 Windows 作業系統
2.2 安裝在Mac OSX 作業系統
2.3 安裝在Linux 作業系統
2.4 圖形化介面工具
第3章:終端機/命令提示字元
3.1 終端機及常用指令介紹
3.2 超簡明Vim操作介紹
第4章:設定Git
4.1 使用者設定
4.2 其它方便的設定
第5章:開始使用Git
5.1 新增、初始 Repository
5.2 把檔案交給Git 控管
5.3 工作區、暫存區與儲存庫
5.4 檢視紀錄
5.5 狀...
購物須知
關於二手書說明:
商品建檔資料為新書及二手書共用,因是二手商品,實際狀況可能已與建檔資料有差異,購買二手書時,請務必檢視商品書況、備註說明及書況影片,收到商品將以書況影片內呈現為準。若有差異時僅可提供退貨處理,無法換貨或再補寄。
商品版權法律說明:
TAAZE 單純提供網路二手書託售平台予消費者,並不涉入書本作者與原出版商間之任何糾紛;敬請各界鑒察。
退換貨說明:
二手書籍商品享有10天的商品猶豫期(含例假日)。若您欲辦理退貨,請於取得該商品10日內寄回。
二手影音商品(例如CD、DVD等),恕不提供10天猶豫期退貨。
二手商品無法提供換貨服務,僅能辦理退貨。如須退貨,請保持該商品及其附件的完整性(包含書籍封底之TAAZE物流條碼)。若退回商品無法回復原狀者,可能影響退換貨權利之行使或須負擔部分費用。
訂購本商品前請務必詳閱
退換貨原則、
二手CD、DVD退換貨說明。