Git

4 object(Blob, Tree, Commit, tag)
2Refrence(tag, branch)


master merge hotfix
這種只需要改變參考(refrence)的merge叫做 fast-forward
master merge iss53
C6則是 merge commit,會有兩個 parent commit object






















































new file->commit master->master push to remote master

建議
1.在 local master 再分支 ex. feature branch
2.修改玩 feature branch 並 commit feature
3.switch回 master, 把 remote 端 pull 且排除 conflict
4.local master 再去 merge feature branch
5.解決 conflict 後, push to remote

Browse Reference
1.heads呈現的是目前本地端的所有 Branch
2.remotes內是遠端的 Branch 結構

Create branch
1.在 base branch 上開一個子分支(端看你要修改哪個分支就去Base on 他)

  • 一般要開本地端的分支,就在 Base on->Branch->master
  • 要開遠端的分支(ex.hotfix),則選擇 Base on->Branch->remotes/origin/master


2.successful Git branching model(參考文獻)
  • 主要分支
    • master 主程式(除非重大 bug,則會分出 hotfix 分支)
    • develop 開發分支(用來在另外分支出 Release, feature)
  • 次要分支
    • Hotfixes(由 master 直接分支,馬上修正 bug)
    • Feature(由 develop 直接分支,開發新功能)
    • Release(由 develop 直接分支,開發下一版 Release)

merge 合併

stash/pop 暫存未 commit 的檔案
1.通常要 pull 新資料下來之前,必須 clean untrack file,或將其 stash
2.等pull 並排除 conflict後,在 pop 出來

Revert 還原
1.有檔案誤刪,需要得到最後 commit 版本,就用此功能,可指定還原哪個檔案。
git reset HEAD~3 --hard
git restt HEAD^

reset  (取消 merge)

reBase
1.同樣是合併,與 merge 有差異。

指令縮寫(alias)
git config --global alias.ch checkout //將checkout 縮寫成 ch

checkout
git checkout -b branch or commit
git checkout master --filepath

資料來源
http://www.slideshare.net/ihower/git-tutorial-13695342?ref=http://ihower.tw/blog/archives/6696/

.gitignore 檔案排除

  • 用來過濾掉不需要track的檔案
  • 不在  .git 資料夾內
  • 可存在個別資料夾中
  • 如果 ignore 效果沒出現
    1. 請將要過濾的檔案刪除
    2. commit
    3. 還原檔案



==========================================================

最淺白的說明
http://www.mrmu.com.tw/2011/05/06/git-tutorial-for-beginner/
http://billy3321.blogspot.com/2009/02/github-howto.html
詳盡的中文解說
http://tkg.im.ncue.edu.tw/?p=755
JosephJ的解說
http://josephj.com/entry.php?id=308
初心者git (TortoiseGit) + GitHub使用教學 
http://forums.wasabistudio.ca/viewtopic.php?f=69&t=35793
最詳盡的 git client + server & for windows 教學***
http://wadefs.blogspot.com/2011/10/git-for-windows.html
Git 初學筆記 - 指令操作教學
http://blog.longwin.com.tw/2009/05/git-learn-initial-command-2009/
SVN介紹
http://twpug.net/docs/Subversion/
TortoiseGit 快速入門(21p)
http://www.slideshare.net/jason8301/tortoisegit-intro-in-traditional-chinese
http://www.slideshare.net/josephj/git-the-social-coding-system

進階好讀解說
http://gogojimmy.net/2012/02/29/git-scenario/
Git Git Reviewed by Wild on 4/28/2014 03:46:00 下午 Rating: 5

沒有留言:

沒有Google帳號也可發表意見唷!

技術提供:Blogger.