天天看點

Git diff 常見用法

 Git diff

     用于比較兩次修改的差異

    1.1 比較工作區與暫存區

      git diff 不加參數即預設比較工作區與暫存區

    1.2 比較暫存區與最新本地版本庫(本地庫中最近一次commit的内容)

      git diff –cached […]

    1.3 比較工作區與最新本地版本庫

      git diff HEAD […] 如果HEAD指向的是master分支,那麼HEAD還可以換成master

    1.4 比較工作區與指定commit-id的差異

      git diff commit-id […]

    1.5 比較暫存區與指定commit-id的差異

      git diff –cached [] […]

    1.6 比較兩個commit-id之間的差異

      git diff [] []

    1.7 使用git diff打更新檔

      git diff > patch //patch的命名是随意的,不加其他參數時作用是當我們希望将我們本倉庫工作區的修改拷貝一份到其他機器上使用,但是修改的檔案比較多,拷貝量比較大,

      此時我們可以将修改的代碼做成更新檔,之後在其他機器上對應目錄下使用 git apply patch 将更新檔打上即可

      git diff –cached > patch //是将我們暫存區與版本庫的差異做成更新檔

       git diff –HEAD > patch //是将工作區與版本庫的差異做成更新檔

      git diff Testfile > patch//将單個檔案做成一個單獨的更新檔

    拓展:git apply patch 應用更新檔,應用更新檔之前我們可以先檢驗一下更新檔能否應用,git apply –check patch 如果沒有任何輸出,那麼表示可以順利接受這個更新檔

       另外可以使用git apply –reject patch将能打的更新檔先打上,有沖突的會生成.rej檔案,此時可以找到這些檔案進行手動打更新檔 

學習無他法,唯有持之以恒

繼續閱讀