小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

git diff 四種比較方式

 rongq2007 2020-07-24

https://blog.csdn.net/catchertherye/article/details/49834705

工作場景

在用git進行版本控制的時候,通常會有這樣的需求:
1.我想知道我的工作目錄中都發(fā)生了那些變化,以輔助我的commit操作。
2.當要真正進行提交時,我需要清楚將要提交的內容和版本庫的內容有哪些不同,這樣的提交是正確的嗎。
3.在線上代碼出現問題的時,明確的知道原來有個版本的代碼是好用的,除了進行線上緊急回滾外,我需要知道到底進行了什么操作引起了失敗。
除此之外可能還會有其他的需求吧。

先上理論

那git給我們提供了哪些方式,是我們對自己的修改或者變更了如指掌呢。
1. git diff
顯示工作目錄和索引之間的差異。
2. git diff commit
顯示工作目錄和指定提交之間的差異。比較常見的用法是比較工作目錄于HEAD指向的提交之間的差異,這時需要用HEAD替代commit
3. git diff –cached commit
比較索引(stage)和給定提交之間的差異,其中commit可以省略,如果省略,默認比較的是索引與HEAD指向的提交間的差異。
4. git diff commit1 commit2
比較兩個提交之間的差異。該命令會忽略工作目錄和索引之中的內容,直接比較兩個提交之間的變化。

有說有練

第一步:先初始化一個git倉庫,并作兩次提交,且在工作目錄中進行一些變更:

第二步,開始操作

bingo 初始化工作做好了,來看具體的操作吧:
1.git diff 實例中顯示,工作目錄比stage中添加了一行I’m in the workplace

2.git diff commit 實例中對當前工作區(qū)和HEAD指向的提交進行比較,顯示工作區(qū)比HEAD指向的提交新添加了兩行。

3.git diff –cached commit 實例中,用stage中的文件與HEAD指向中的版本進行了比較,很明顯,我在提交提交之后想readme.txt中添加了一行I’m in stage并將其添加到了stage中。

4.git diff commit1 commit2 比較了HEAD與其上一次提交之間的差異,通過觀察我們初始化的操作,可以發(fā)現,這是完全正確的顯示。

index 56e1883..8adabc7 100644
--- a/readme.txt+++ b/readme.txt
@@ -1,2 +1 @@
 Hello git diff
-hello next commit123456789

小實例,大道理,通過簡單的實例,了解命令背后的真實原理,以促進我們工作中對其的使用,以及解決問題時不那么迷茫。

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多