Git Branch

Git Branch

Git 小聚:Git 跟你想的不一樣(Part 1)

F2dcf6633971844e19ca96ea294ba976?s=128

高見龍

June 04, 2018
Tweet

Transcript

  1. (JU᪑你૝తෆҰᒬ 高見龍 1BSU෼ࢧ

  2. ൣྫ檔Ҋ https://bit.ly/2IQEwUR

  3. ࣗզհ঺

  4. a.k.a Eddie 愛現! 喜歡冷門的玩具 Ruby/Rails/iOS app 開發者、講師 Ruby 技術推廣、教育、諮詢 台灣、日本等國內外

    Ruby 技術研討會講者 目前於五倍紅寶石擔任紅寶石鑑定商職務 部落格:https://kaochenlong.com 高見龍 photo by Eddie @eddiekao
  5. 發售中! https://railsbook.tw/

  6. 發售中! https://gitbook.tw/

  7. ։࢝೭લ

  8. ༗ᔒ༗ୈҰ࣍ᡒա (JUṜࡾݸࣈ฼తਓ ໰୊

  9. https://gitbook.tw/

  10. ޻࡞্༗ࡏ༻(JUɼୠ୞ ༗೺(JUᙛ'51ࡏ༻ʁ ໰୊

  11. ိݯɿIUUQTYLDEDPN ʮṜबੋ(JUɼሏ࢖༻Ұछ኷ඬ྄ త෼ࢄࣜᅷܕཧ࿦໛ܕతٕज़ိ௥ ᪦զ၇ሢҊత㚎༰ʯ ʮࠅʂṜཁዎኄ༻ʁʯ ʮෆ஌ಓɼେ֓बੋهҰࠣऴ୺ػ ࢦྩ ɼ ࢦྩᏏҰᏏ䈕Ҋब။ಉ㑊ྃ ɻ

    ೗Ռᚙੜ໰୊ɼઌ೺䈕Ҋઌඋ㟨Ұ 㟨౸ผత஍ํɼ೺ሢҊ䜤ᎃɼવޙ ॏ৽ԼࡌҰ㟨શ৽తሢҊबߦྃ ɻ ʯ
  12. ຊจ։࢝

  13. ൛ຊ߇੍ 7FSTJPO$POUSPM

  14. ! 那個...你有聽過 Git 嗎? 那是什麼? " 啊就一種分散式的版本控制系統啊! # 分散? 版本?

    ? ? ? ?
  15. ॄኄ൛ຊ ཁ߇੍ॄኄ ໰୊

  16. ॴҎɼॄኄੋʮ൛ຊʯ ໰୊

  17. 版本2 版本3 版本4 版本5 版本1 2016/2/8 2016/2/10 2016/5/8 2016/8/22 2016/11/28

  18. ෼ࢄࣜ ໰୊

  19. $
 Sherly "
 Eddie %
 Emily &
 Picasso Octocat 我做好三角

    型囉! 我改了兩個 圈圈! 收到! 收到! 收到! 我刪了一個 方塊! OK, 好! OK, 好!
  20. උ份 ब૾؝༡ፍత࣌ީ။Ṷଘ༡ፍਐ౓Ұᒬ

  21. 㑖࢙ل㑚ٴᨽᎦ ग़ࣄత࣌ީ你။஌ಓੋኺॄኄ࣌ީ։࢝ब༗໰୊ɼ Ҏٴ஌ಓ֘ፙ୭ိഃ

  22. $PODVSSFOU7FSTJPOT4ZTUFN $74  TJODF

  23. 4VCWFSTJPO 47/

  24. ໰୊ੋ

  25. ೗Ռᔒ༗໢࿏ɼ҃ੋ47/త࢕ ෰ثނোత࣌ީศແ๏࢖༻

  26. ᔒ༗໢࿏बෆೳሜDPEFʁ (JU)VCᆦᎃత࣌ީେՈ౎။։؝সత說ՄҎԼ൝ྃ 哈囉, 你好!

  27. (JU

  28. -JOVT5PSWBMET GPSNBOBHJOH-JOVYLFSOFM TPVSDFDPEFJO photo by Krd

  29. Ұఆཁ༻ऴ୺ػࢦྩ嗎

  30. None
  31. ෼ࢧ #SBODI

  32. ሣ෼ࢧతޡղ
 你૝૾தత෼ࢧ௕ॄኄᒬࢠ

  33. photo by Mark Fischer

  34. photo by Caroline

  35. ෼ࢧ୞ੋҰு షࡏ๭ݸ$PNNJU্తషࢴ

  36. ෼ࢧ኷ศٓత ҝॄኄ 

  37. ॄኄ࣌ީཁ࢖༻෼ࢧ

  38. ৽⃧෼ࢧDBU $ git branch cat ᒾࢹ෼ࢧ $ git branch cat

    * master $ git branch -d cat Deleted branch cat (was cb96971). ႟আ෼ࢧDBU
  39. ੾׵౸DBU෼ࢧ $ git checkout cat ੾׵౸EPH෼ࢧɼ೗Ռ֘෼ࢧෆଘࡏɼ ။ࣗಈݐཱ৽త෼ࢧ $ git checkout

    -b dog
  40. ߹ซ෼ࢧ

  41. ଖመ෼ࢧੋᔒ辦๏߹ซత 你߹ซతੋ෼ࢧॴࢦ౸త$PNNJU

  42. ߹ซ෼ࢧDBU $ git checkout master $ git merge cat

  43. ߹ซաత෼ࢧՄҎ႟ᎃ嗎 ໰୊

  44. ཁዎኄऔফ߶߶Ṝ࣍త߹ซ 㐫گ

  45. զ؃༗ࠣਓత෼ࢧ౎༗؃ىိ૾ ෼ࢧతʮখࣖ朵ʯઢᅷ໹ɼዎኄ զత෼ࢧ౎ᔒ༗ 就是這種東西 㐫گ

  46. Ҽҝෆधཁ啊ʂ

  47. $ git merge cat --no-ff ඇշ᫚߹ซ 'BTI'PSXBSE

  48. ᚙੜিಥ $POqJDU ྃɼዎኄ辦 㐫گ

  49. ࢖༻3FCBTF߹ซ

  50. photo by UGA College of Ag & Environmental Sciences

  51. e076c8 35c42e b43d89 f17acb 76ccce 981ad3 dog cat master HEAD

    $ 3FCBTF߹ซ
  52. 35c42e 76ccce 981ad3 dog master b43d89 f17acb cat HEAD $

    git rebase dog 3FCBTF߹ซ
  53. f17acb b43d89 35c42e 76ccce 981ad3 dog master b43d89 f17acb cat

    HEAD $ git rebase dog c871e3 ab12cd cat HEAD 3FCBTF߹ซ
  54. 3FCBTFෆੋႩԼష্

  55. ཁዎኄऔফ ߶߶Ṝ࣍తSFCBTF߹ซ 㐫گ

  56. ଖሏৗݟ㐫گ

  57. ༗ࠣൺֱػີత檔Ҋզෆ૝์ࡏ (JUཫ໘Ұىඋ份 㐫گ

  58. HJUJHOPSF https://github.com/github/gitignore

  59. 你ෆখ৺೺ாᥒີᛰሜࡏ๭ݸ檔 Ҋཫɼఏަࣕ׌ਪग़ڈྃ 㐫گ

  60. $ git filter-branch --tree-filter "rm -f config/password.txt" ਑ሣ㑌ݸઅᴍ႟আಛఆ檔Ҋ

  61. ਫ਼ਆෆ޷ɼෆখ৺༌ೖྃHJU SFTFU)&"%?IBSEࢦྩɼ檔 Ҋؐٹಘճိ嗎 㐫گ

  62. ௐ閱SFqPH $ git reflog $ git reset --hard 823520ed ճ౸SFTFU೭લతઅᴍ

  63. લҰఱᔒਭ๞ɼෆখ৺೺ؐᔒ߹ ซత෼ࢧ႟ᎃྃɼٹಘճိ嗎  㐫گ

  64. ௐ閱SFqPH $ git reflog $ git checkout -b new_branch_name 823520ed

    ࢖༻ಹݸઅᴍ၏ग़৽తCSBODI
  65. ҝॄኄ༗࣌ީ။ਪෆ্ڈʁ

  66. ख䳾ଠຫ

  67. ຊိෆ૝༻ Ṝটతʂ

  68. ߋଟ㐫گ୊ɼ੥ჩ閱 IUUQTHJUCPPLUX

  69. ⾼高⾒見見龍 Blog Facebook Twitter Email Mobile https://kaochenlong.com https://www.facebook.com/eddiekao https://twitter.com/eddiekao eddie@5xruby.tw

    +886-928-617-687
  70. (JUখঞ

  71. ࢑ଘეҬ
 4UBHJOH"SFB ޻࡞໨㑚
 8PSLJOH%JSFDUPSZ Ṷଘݿ ຊ஍ 
 3FQPTJUPSZ HJUBEE HJUDPNNJU

    HJUQVTI HJUQVMM HJUSFTFU HJUSNDBDIFE Ṷଘݿ ԕ୺ 
 3FQPTJUPSZ
  72. 暫存區域
 Staging Area 工作目錄
 Working Directory 儲存庫(本地)
 Repository git add

    git commit git reset git rm --cached 儲存庫(遠端)
 Repository git push git pull $ git config --global user.name "5xruby" $ git config --global user.email "hi@5xruby.tw" 設定: $ git init 初始化: $ git add FILENAME 把檔案加到暫存區域: $ git status 查看狀態: $ git commit -m "add index.html" 提交: $ git log 檢視紀錄: $ git reset HEAD^ 取消最後一次提交: $ git branch 5xruby 新增分支 "5xruby": $ git branch 檢視目前分支: $ git branch -d 5xruby 刪除已合併分支 "5xruby": $ git checkout 5xruby 切換分支到 "5xruby" : $ git merge 5xruby 合併分支 "5xruby": $ git remote add origin REMOTE_URL 新增遠端節點 "origin": $ git remote -v 檢視遠端節點: $ git remote rm origin 刪除遠端節點 "origin": $ git push origin master 把 "master" 分支內容推往 "origin" 節點: $ git pull origin master 把遠端 "origin" 節點的 "master" 拉回本機並進行合併: