git checkout
主要有三個作用:
第一個就是切換分支。例如你從遠程倉庫clone下來所有的源代碼,你git branch一下會看到你通常是在master,如果你想切換到某一個分支上呢?git checkout <branchname>
第二個就是放棄對某個文件的修改。例如你想放棄對某個文件Hello.cpp的修改,git checkout -- <Hello.cpp>
第三個就是 新建 一個分支,git checkout <-b> <branchname>,不加-b的話只 新建 不切換到新的分支上,加-b 新建并切換到該分支上
git reset
主要是取消上一次的操作,具體用法有很多,說兩個:
第一個取消merge,git reset --hard ORIG_ HEAD ,這樣會退回到merge前的代碼。
第二個就是取消commit,git eset? HEAD ~< num > <-soft/-hard>,取消上 num 次的commit
第三個是將文件從stage(追蹤的庫)中移除,git reset HEAD <filename>