2018 Fall s40723238 黃語晨 分組網站

補充 << Previous Next >> 組員操作影片

git指令

Git 新增檔案

Git 刪除檔案

Git 修改檔名、搬移目錄

Git status 看目前的狀態

Git Commit

Git 產生新的 branch

Git checkout 切換 branch

Git diff

Git Tag

Git log

Git show

Git reset 還原

Git grep

Git stash 暫存

Git merge 合併

  • Straight merge 預設的合併模式,會有全部的被合併的 branch commits 記錄加上一個 merge-commit,看線圖會有兩條 Parents 線,並保留所有 commit log。
  • Squashed commit 壓縮成只有一個 merge-commit,不會有被合併的 log。SVN 的 merge 即是如此。
  • cherry-pick 只合併指定的 commit
  • rebase 變更 branch 的分支點:找到要合併的兩個 branch 的共同的祖先,然後先只用要被 merge 的 branch 來 commit 一遍,然後再用目前 branch 再 commit 上去。這方式僅適合還沒分享給別人的 local branch,因為等於砍掉重練 commit log。

指令操作

  • git merge <branch_name> # 合併另一個 branch,若沒有 conflict 衝突會直接 commit。若需要解決衝突則會再多一個 commit。
  • git merge --squash <branch_name> # 將另一個 branch 的 commit 合併為一筆,特別適合需要做實驗的 fixes bug 或 new feature,最後只留結果。合併完不會幫你先 commit。
  • git cherry-pick 321d76f # 只合併特定其中一個 commit。如果要合併多個,可以加上 -n 指令就不會先幫你 commit,這樣可以多 pick幾個要合併的 commit,最後再 git commit 即可。

Git blame

Git 還原已被刪除的檔案

Git 維護

Git revert 資料還原

Git Rollback 還原到上一版

以下與 遠端 Repository 相關

Git remote 維護遠端檔案

抓取 / 切換 Repository 的 branch

刪除 Repository 的 branch


補充 << Previous Next >> 組員操作影片