一般分類: 暢銷精選 > 科學科普 > 電腦 
     
    玩真的!Git?GitHub實戰手冊-coding實境、協...
    編/著者: JesseLiberty
    出版社:旗標
    出版日期:2022-10-20
    ISBN:9789863127314
    參考分類(CAT):
    參考分類(CIP): 電腦科學

    優惠價:9折,522

    定價:  $580 

    無法訂購
    分享
      買了此商品的人,也買了....
    定價:390 元
    特價:90折!351
     
    定價:590 元
    特價:95折!561
     
    定價:420 元
    特價:90折!378
     
    定價:500 元
    特價:90折!450
     
    定價:650 元
    特價:90折!585
     
      | 內容簡介 |
    內容簡介
    根據知名開發者論壇 Stack Overflow 的最新統計, 有 83% 的開發者會使用版本控制 (version control) 工具來管控程式, 當中更高達 93.87% 是使用 Git 這套工具來做;而用 Git 通常也會接觸的 GitHub 網站更被視為求職重要的技術履歷 & 線上作品集, 市場說了算, 熟悉 Git、GitHub 絕對是程式開發者避不掉的!

    在學習 Git 的管道上, 市面不乏一些教學書, 網頁文章當然也是隨便搜都有, 不過依小編親身體驗, 大部分教學內容多以一些陽春的文字檔來演練 (小編心聲:示範程式版本控制為什麼不拿真正的程式來 demo!), 當然, 用陽春範例來回實驗 Git 指令絕對是「風~平~浪~靜」, 但那不叫學, 只是玩玩指令而已!

    要學 Git ✕ GitHub, 就用這本最有開發「臨場感」的書來學吧!

    【用真正要做版本控制的程式做 demo, 跟陽春的實驗教學說掰掰!】

    本書透過作者日常的程式開發案例, 帶讀者一窺開發者是如何善用 Git、GitHub。書中展示如何用自己的程式做版控, 你不會看到「123測試」、「aabbcc」這類實驗文字檔, 陽春案例很難感受最好在什麼階段建立版本, 或某一程式版本中有重大 bug 該怎麼應對..., 你絕對不希望將 Git 用在自己的程式時再來直視種種難題!

    為了真實體驗開發情境, 本書除了命令列的指令教學外, 也會示範如何用 Visual Studio、VS Code...等程式開發工具來操作 Git, 還會示範如何活用 GitHub 做多人雲端同步協作。

    你終究要把 Git 用在自己的程式上、操作自己慣用的開發工具、甚至加入團隊開發的行列, 跟著本書「真槍實彈」演練一遍才會學得深刻!

    【真正從「做」中學!而不光用「看」的】

    小編的第 2 個學習體驗是, 很多教學內容受限於情境難以產生 (尤其涉及多人合作、或者解決版本合併衝突的操作功能), 想照著做時你手邊根本沒有雷同的情境, 也就無從驗證自己操作起來會是什麼結果。

    為此, 本書在介紹功能操作前, 對於如何快速建構出操作情境都會稍做提示, 無非希望你動手做做看;若需演練「一人分飾多角」的多人協作功能, 也分享如何做才不會造成閱讀的混亂感, 學習本書時一定可以感受到作者精心設計的種種巧思!

    【施威銘研究室監修, 針對原書進行大量補充, 提供學習經驗】

    最後, 本書所有內容都經小編實際演練過, 書中針對原書進行大量補充, 並適當添加註解, 例如學 Git、GitHub 一開始不太熟, 很容易在建立情境、演練功能時就把儲存庫弄的很混亂、影響後續操作 (混亂時就不得不乾脆放棄然後重建一個, 超花時間...)。

    書中小編會以過來人的經驗, 引領你一開始就把「如何回復」這個學習的強心針學到手, 如此一來無論任何功能都可以放心勇敢去試!諸如此類的分享, 希望您的學習之路能夠紮實、順利。歡迎一起加入 Git ✕ GitHub 的世界吧!
    本書特色:
    □ 起手式就跟 GitHub 連動, 最符合現況的開發 workflow
    □ Python、網頁前端程式、Java、C#..., 想管控什麼程式都適用
    □ 除了命令列學 Git 外, 也教你在 Visual Studio、VS Code...等開發工具做版控, 更貼近開發實境
    □ 學習一開始小編就教你安心的回復技巧, 勇敢嘗試各種功能都不怕!
    □ git status/log/show/rebase/rebase -i/reset/branch/add/commit/push/pull/stash/amend/cherry-pick/notes/tag/diff/bisect/blame...所有功能都精心設計演練情境, 充份掌握 Git 指令使用時機
    □其他實務內容:
    ‧5 個 Git ✕ GitHub 操作關鍵區域
    ‧提交 commit 的最佳時機建議
    ‧避免合併衝突的操作建議
    ‧利用 GitHub 的 Pull Request 完成多人協同檢視、合併
    作者介紹
    作者簡介:
    Jesse Liberty

    微軟 MVP、StoryBoardThat 的首席開發工程師。已出版 "Programming C#" (O'Reilly) 等眾多程式技術書, 在 Pluralsight、LinkedIn Learning、Udemy 和 Packt 等處提供培訓課程, 亦為廣受歡迎的 Yet Another Podcast 主持人。

    jesseliberty.com
    Twitter:@JesseLiberty
    Podcast:jesseliberty.com/podcast

    目次
    目錄:
    第 1 章 序章
    1.1 認識版本控制 (version control)
    1.2 可以用 Git 來管理的程式
    1.3 操作 Git 的各種工具
    1.4 取得 Git
    1.5 完成個人資料設定

    第 2 章 建立儲存庫 (Repository) 並用 Git 開始管控
    2.1 建立 GitHub 雲端儲存庫
    2.2 建立本機儲存庫
    2.3 在任一本機儲存庫建立程式, 開始用 Git 管控
    2.4 從其他本機儲存庫 pull 異動
    2.5 push mine, pull yours 的操作演練
    2.6 commit 的相關建議

    第 3 章 五個 Git 常用區域以及分支 (Branches) 概念
    3.1 使用 Git 的 5 個關鍵區域
    3.2 分支 (Branches) 功能
    3.3 儲存庫的延伸操作

    第 4 章 檢視 commits 內容並合併 (merge) 分支
    4.1 合併前檢視 commits 內容
    4.2 透過 GUI 工具合併分支
    4.3 解決合併時發生的衝突 (conflict)
    4.4 認識合併時的 Git 訊息
    4.5 避免合併衝突的幾個建議
    4.6 利用 GitHub 的 Pull Request 功能完成多人協同檢視、合併
    4.7 協同開發實戰觀摩

    第 5 章 rebase、amend 和 cherry-pick 指令
    5.1 rebase 合併功能
    5.2 用 amend 修正 commit 的內容
    5.3 用 cherry-pick 做選擇性合併
    5.4 綜合演練

    第 6 章 用 Interactive rebase 修改 commit 歷史紀錄
    6.1 在程式開發工作中使用Interactive rebase
    6.2 Interactive rebase 實戰觀摩

    第 7 章 製作儲存庫副本 (mirror)、notes 與 tag 等實用指令
    7.1 製作儲存庫副本
    7.2 利用 notes 指令添加 commit 的說明
    7.3 使用 tag 指令註記關鍵的 commit

    第 8 章 建立指令的別名 (alias)
    8.1 alias 指令的使用介紹
    8.2 查看建立 alias 後的 config 檔內容

    第 9 章 log 指令的進階用法
    9.1 備妥 LogDemo 範例程式
    9.2 各種實用的 log 指令參數
    9.3 自訂 log、show 所顯示的參考資訊

    第 10 章 用 stash 指令把工作存入暫存區
    10.1 便利的 git stash 暫存機制
    10.2 用 clean 指令清除工作區的異動內容

    第 11 章 用 bisect 和 blame 指令揪出有問題的 commit
    11.1 用 git bisect 找出 bug 源頭
    11.2 用 git blame 列出逐行修改軌跡

    第 12 章 回復內容、檔案救援…等常見 Git 使用問題
    12.1 commit 的訊息寫錯了
    12.2 剛送出的 commit 中忘記加入變更的檔案
    12.3 想要撤銷 (undo) 先前送出的 commit
    12.4 分支的名字取錯了
    12.5 不小心將異動內容 commit 到錯誤的分支
    12.6 發現誤刪檔案, 而且老早就送出 commit 了...
    12.7 回復到先前某個 commit 時間點的檔案內容