git 簡易備忘錄
VCS (version control system) 的解決方案之一,話說從前就只能自己保存不同版本的副本,後來有了最初的 RCS,目前開源。至於協同工作呢,一開始就是集中式版本控制嘛,但缺點你懂的,且後來儲存空間不值錢了,分散式系統當然就應運而生。而眾所周知 git 是 linux 之父幾乎以一人之力在十天內開發出來的,乃因原本跟 liux 社群合作的 BitKeeper 結束關係了,所以就自起爐灶。這個故事告訴我們,沒有絕對的壟斷實力,就不要隨便弄別人,特地去查了一下,他現在開源了 XD status 看現在是啥狀況,可 -s 看精簡版 add 多用途: 「開始追蹤」檔案 (就不再是untracted) 「預存」檔案 ( 變成 staged,也就是預備下次commit就會交出去 )( 其實在這步驟會算出檔案內容的雜湊值,會存在.git裡面的我不知道具體位置的 staging area ) 可用 -A 一次添加全部,小寫不能喔 以及做一些其它的事,像是「標記合併衝突(merge-conflicted)檔案為已解決」 .gitignore 針對你永遠不想追蹤的東西可以新建這玩意 ( 不然一直出現在 untracted 看了也煩 ) diff 不帶參數就是檢查 directory 跟 staged 區的差別 ( 所以你已經 add 了就看不到差異 ),用 --stage 可以看 staged 跟 last commit 的差別 difftool 可以外掛一些可視化較強的工具,用 git difftool --tool-help 來搞搞看 commit 把 staged 好的東西提交囉,若你想把下面註解著的狀態內容也放進提交文件的話可以 -v ,若懶得跳編輯器可以直接 -m '提交註解' 若剛剛提交稍有出錯可用 --amend 來覆蓋錯的。重點來了,如果你根本不想精確控制每次要提交的內容,那麼可以 git commit -a -m 'pass step add' ,這樣就會把 tracted 的所有 modified 的內容自己 add 以後幫你提交 log 查看歷史提交紀錄 -p 看修改內容 -2 限制只輸出最後兩筆 --gra