Git Memo

還魂藥Git

  • 兩個方法建立repository
    • git init:沒有資料夾會創建一個以repository為名稱的資料夾
    • git clone:從既有的專案取得檔案
  • 基本用法
    • git diff:比對差異
    • git log -p:查看commit的結果(把差異也顯示到命令提示字元上)
    • git add .:把異動加到暫存區()
    • git commit -m “[init]在這裡打上異動”
    • git status:查看commit狀態
    • git checkout 1234567(七位以上commit-id) #還原到哪一個版本
  • 異動的三個狀態
    • 修改(modified) => add改變狀態到staged
    • 暫存(staged) => commit改變狀態到committed
    • 提交(committed) => log -p看修改紀錄
    • 還原(checkout) => checkout 1234567
  • git log
    • –oneline:全部一行顯示
    • p:查看異動內容
    • –all顯示所有
  • git tag
    • 在當前的分支中建立tag,和commit一樣也可以加上描述
    • 應用情境:非常複雜的節點
    • -a v1 -m “第一版完成”
      • a:annotation(加了之後訊息比較全面)
    • –delete v1
    • checkout v1
  • git show v1(標籤名稱)
    • 列出所有commit和tag標籤的描述
  • git remote
  • git push
    • origin branch
  • git pull
    • git fetch && git merge
    • 同步資料
  • git merge
    • 上面的異動是自己的
    • 下面的是已經在master上面的異動