2013年3月21日 星期四

Git 使用筆記

比較

  • git diff -- files
    比較當前工作目錄下的檔案(尚未加入索引 staged) 和上次 commit 的差異, 省略 -- files, 則比較整個工作目錄
  • git diff –-cached -- files
    比較當前工作目錄下的檔案(已加入索引 staged) 和上次 commit 的差異, 省略 -- files, 則比較整個工作目錄
  • git diff HEAD -- files
    比較當前工作目錄下的檔案(不管是否已加入索引 staged) 和上次 commit 的差異, 省略 -- files, 則比較整個工作目錄
  • git diff branch -- files
    比較 branch 的 files 和當前工作目錄的差異, 可以省略 -- files, 則比較整個分支
  • git diff branchA branchB -- files
    比較 branchA 和 branchB 的差異, 可以省略 -- files, 則比較整個分支
  • git diff branchA…branchB -- files
    比較 branchA 和 branchB 的共同父支與 branchB 的差異, 可以省略 -- files, 則比較整個分支

 

分支

  • git branch
    查看有那些 branch
  • git branch branch_name
    建立以目前分支為基礎的新分支 branch_name
  • git checkout branchA
    取出/切換 branchA
  • git checkout branchA –- files
    取出 branchA 下的 files 並替換當前工作目錄下的檔案, 若 branchA 改成 HEAD 則取出目前分支上次 commit 的檔案 (放棄修改, 復原用)
  • git branch –m branch_old branch_new
    重新更名分支, 將 branch_old 改成 branch_new

 

其它

  • git rm --cached files
    不再追蹤 files , 但保留檔案在當前目錄
  • git reset –hard HEAD 放棄修改, 還原至上次 commit. (所以修改皆會不見)

 

Git 參考網頁:

Git Community Book 中文版
Git 初學筆記 - 指令操作教學
Git 教育訓練課程投影片 (2012)
gitignore
Git Repositories
GITHub
Bitbucket

沒有留言: