Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Git & Heroku Tutorial @ CCSP 2012F

Johnson Liang
November 07, 2012

Git & Heroku Tutorial @ CCSP 2012F

台大資工 網路及平台服務程式設計 git & heroku 投影片 :: Slides for NTU-CSIE Cloud Computing Serverice Programming.

Licensed as CC BY-SA 3.0.
Entypo pictograms by Daniel Bruce — www.entypo.com
Git Logo by Jason Long — http://git-scm.com/downloads/logos

Johnson Liang

November 07, 2012
Tweet

More Decks by Johnson Liang

Other Decks in Education

Transcript

  1. 0 എܠ஌ࣝ զ၇త೔ৗ ൛ຊ߇੍ ଟਓڠ࡞ Images and concepts are from

    http://git-scm.com/video/what-is-version-control 12年11月22日星期四
  2. ઃఆ਎෼ • git config --global user.name <名字> • git config

    --global user.email <email> • git config --global core.editor vim Ұ ୆ ి ᡵ Ұ ࣍ 12年11月22日星期四
  3. ॳ࢝Խ w DE౸QSPKFDUత໨㑚 w HJUJOJU w ݐཱHJU w ࠶ଧҰ࣍HJUJOJU။෴֖ ֖

    ৽ 䈕 Ҋ ݿ ࣌ git init @ ~/MrOrz/mongolab 12年11月22日星期四
  4. ֓೦   ⏶ ⏶ Working Directory Staging Area Repository

    git status ᙛલ㐫ଶ 12年11月22日星期四
  5. ֓೦   ⏶ ⏶ Working Directory Staging Area Repository

    TUBUVTཫ؃ಘ౸ ੔ݸࢿྉᇄ݁ߏ ᤽ࡏHJUཫ໘ 就是你的檔案 將送進檔案庫裡的檔案們 檔案的前世今生 12年11月22日星期四
  6. 䈕Ҋྨܕ   ⏶ ⏶ Working Directory Staging Area Repository

    ੔ݸࢿྉᇄ݁ߏ 就是你的檔案 tracked files:已納入版本控制的檔案 untracked files:沒納入版本控制的檔案 12年11月22日星期四
  7. 䈕Ҋྨܕ   ⏶ ⏶ Working Directory Staging Area Repository

    tracked files untracked files Create README.md git status mkdir log --> not in git status Tracking “files” only! So where are the tracked files? They are not displayed by default, unless... 12年11月22日星期四
  8. ४උૹਐ䈕Ҋݿ   ⏶ ⏶ Working Directory Staging Area Repository

    !:git add <檔名> ←:git reset HEAD <檔名>  unmodified files untracked files modified files staged files modify existing file git status; add an untracked file modify another existing file git add them git status git reset HEAD xxxxxx git status 12年11月22日星期四
  9. ૹਐ䈕Ҋݿ   ⏶ ⏶ Working Directory Staging Area Repository

    !:git commit <檔名> ←:git reset --soft HEAD^  unmodified files untracked files modified files staged files git log 㑖࢙ه㑚 git commit; git status; git log git reset --soft HEAD^ 12年11月22日星期四
  10.  䈕Ҋత֯౓ unmodified  untracked  modified  staged Working

    Directory git status git log git commit git add 檔名 ฤा 12年11月22日星期四
  11.  䈕Ҋత֯౓ unmodified  untracked  modified  staged Working

    Directory git status git log git commit git add 檔名 ฤा git reset --soft HEAD^ git checkout -- 檔名 git reset HEAD 檔名 12年11月22日星期四
  12. HJUJHOPSF w ༗ࠣ䈕ҊӬԕෆ૝BEE w ฤाثత࢑ଘ䈕ʢYYYdʣ w $$ తCJOBSZ䈕ɺ෺݅䈕ʢPʣ w HJUJHOPSF

    w Ұݸ䈕໊Ұߦ w Մ༻ w ሣࢠ໨㑚ຠ༗Ꮘ  untracked 12年11月22日星期四
  13. ☁ ֓೦   ⏶ Working Directory Staging Area Repository

    ⏶  Remote Repository ⏶ 12年11月22日星期四
  14. ☁ ֓೦ ⏶ Working Directory  Staging Area  Repository

    ⏶  Remote Repository ⏶ Working Directory  Staging Area  Repository ⏶ ⏶ ⏶ 12年11月22日星期四
  15. ☁ ֓೦ ⏶ Working Directory  Staging Area  Repository

    ⏶  Remote Repository ⏶ Working Directory  Staging Area  Repository ⏶ ⏶ ⏶ git@HOST:PATH 12年11月22日星期四
  16. ☁ ֓೦ ⏶ Working Directory  Staging Area  Repository

    ⏶  Remote Repository ⏶ Working Directory  Staging Area  Repository ⏶ ⏶ ⏶ git@HOST:PATH TTI࿈ઢ QVCMJDLFZೝᨽ 12年11月22日星期四
  17. 44)LFZ์࢕෰ث w ෆೳෳ੡౸ଟᰨతᏗߦ࿨ۭന w NBDɿpbcopy < ~/.ssh/id_rsa.pub w -JOVYɿsudo apt-get

    install xclip xclip -sel clip < ~/.ssh/id_rsa.pub w 8JOEPXTɿclip < ~/.ssh/id_rsa.pub 12年11月22日星期四
  18. ઃఆԕ୺SFQPTJUPSZ ☁  已有 Repository  Remote Repository ⏶ git

    remote add origin git@HOST:PATH git remote --verbose Create new repository @ bitbucket git remote add origin 網址 git remote 12年11月22日星期四
  19. ૢ࡞ ☁  Repository  Remote Repository git push origin

    master git pull origin master ೺TFSWFSཫత൛ຊ፛Լိฒ׌߹ซ ೺ిᡵཫత൛ຊਪ্TFSWFS MrOrz/mongolab 底下的 push, pull 開一下 bitbucket 網頁 看變更 12年11月22日星期四
  20. ຊػᔒSFQPTJUPSZ ☁ 當前目錄  Remote Repository ֖ ৽ 䈕 Ҋ

    ݿ ࣌ 介紹協作者 kytu clone 12年11月22日星期四
  21. ຊػᔒSFQPTJUPSZ ☁ 當前目錄  Remote Repository git clone git@HOST:AAAAAA ೺TFSWFSཫత൛ຊ፛Լိ

    ࣗಈࡏᙛલ໨㑚Լɼݐཱ৽ࢿྉᇄ"""""" ֖ ৽ 䈕 Ҋ ݿ ࣌ 介紹協作者 kytu clone 12年11月22日星期四
  22. ຊػᔒSFQPTJUPSZ ☁  Cloned repository  Remote Repository ֖ ৽

    䈕 Ҋ ݿ ࣌ ⏶ 自動記錄 origin = git@HOST:AAAAAA 當前目錄 git remote --verbose 12年11月22日星期四
  23. IFSPLVࢦྩߦ޻۩ w heroku login೚Կ஍ํ౎ՄҎొೖɼ୞ཁొೖҰ࣍ w heroku create <APP 名> w

    heroku logs <-t> w heroku run node TFSWFS୺ࢦྩߦ w heroku config:add KEY=VALUE؀ڥᏓᏐ w /0%&@&/7 %"5"#"4&@63- 12年11月22日星期四
  24. ෼ࢧ֓೦ w HJUDIFDLPVUCኺ໨લ൛ຊ෼ሸ w HJUDIFDLPVU੾׵൛ຊ w HJUCSBODI؃໨લ༗䬟ࠣ൛ຊ w HJUEJ⒎؃ࠩผ 1.

    No conflict case Branch A app.js 前面加註解 commit Branch B app.js 後面加註解 commit 2. Try checkout. 同一個資料夾,可以切 換不同版本。 git diff 看線圖 git branch 12年11月22日星期四
  25. ෼ٱඞ࿨ɿ.FSHF w վෆಉ䈕ҊɺಉҰݸ䈕ҊతෆಉეҬ w ࣗಈNFSHF w վ౸ಉҰߦ w DPOqJDUɻ merge

    A & B! 改 A 和 B 的同一行。 commit。 merge。 conflict 12年11月22日星期四
  26. ෼ٱඞ࿨ɿ.FSHF w վෆಉ䈕ҊɺಉҰݸ䈕ҊతෆಉეҬ w ࣗಈNFSHF w վ౸ಉҰߦ w DPOqJDUɻ w

    ྫྷᯩʂ merge A & B! 改 A 和 B 的同一行。 commit。 merge。 conflict 12年11月22日星期四
  27. ଟਓڠ࡞ http://git-scm.com/video/what-is-git origin/master git pull git pull git pull git

    pull git push git push git push git push 12年11月22日星期四
  28. ଟਓڠ࡞ w ೺ผਓత৽CSBODIൖճՈ w ྫɿ w LZUVሜྃҰࠣመᱛੑత৽ൣྫɼ์ࡏ໊ҝlFYQzతCSBODIɼਪ౸ CJUCVDLFU্ɻ w զᔒ༗FYQCSBODIɻզ૝೺91์্ڈతFYQCSBODIൖճՈɻ

    w զతlPSJHJOzઃҝ֘CJUCVDLFUతSFQPɻ w git fetch origin ፤PSJHJOతॴ༗CSBODIɼୠෆNFSHF w git checkout origin/exp㗞ੜ%FUBDIFE)&"% w git checkout -b exp ݐཱຊ஍୺CSBODIɼ໵ڣFYQ 12年11月22日星期四
  29. ޙՌࣗෛ w HJUQVTIޙHJUDPNNJUBNFOE w DPOqJDU࣌༻HJUHိDPNNJU w ଞෆ။ߋ৽NFSHFIFBE w HJUSFCBTF w

    ᔒࣄผ༻ɻ w HJUDPNNJUTRVBTI w ະိՄೳ။DPOqJDU w HJUSFTFUIBSE൛ຊᥒ w HJUQVTIGPSDF w HJUCSBODI% 12年11月22日星期四
  30. ޙՌࣗෛ w HJUQVTIޙHJUDPNNJUBNFOE w DPOqJDU࣌༻HJUHိDPNNJU w ଞෆ။ߋ৽NFSHFIFBE w HJUSFCBTF w

    ᔒࣄผ༻ɻ w HJUDPNNJUTRVBTI w ະိՄೳ။DPOqJDU w HJUSFTFUIBSE൛ຊᥒ w HJUQVTIGPSDF w HJUCSBODI% w ෆڈ查㕕IUUQXXXOEQTPGUXBSFDPNHJUDIFBUTIFFUIUNM 12年11月22日星期四
  31. End Licensed under CC BY-SA 3.0. Entypo pictograms by Daniel

    Bruce — www.entypo.com Git Logo by Jason Long — http://git-scm.com/downloads/logos 12年11月22日星期四