2016-07-28 67 views
0

我在GIT相當新的,我有以下疑問正確使用git的差異的--staged應該比較臨時區域內容與上次提交。關於如何正確比較暫存區域內容和使用GIT的上次提交有些疑問?

所以我獲得此輸出:

$ git diff --staged 
diff --git a/game.js b/game.js 
index 49bf5ea..0783175 100644 
--- a/game.js 
+++ b/game.js 
@@ -421,6 +421,7 @@ Ship = function() { 
    } 
    if (KEY_STATUS.space) { 
     if (this.delayBeforeBullet <= 0) { 
+    this.delayBeforeBullet = 10; 
     // added to fix the bug !!! 
     for (var i = 0; i < this.bullets.length; i++) { 
      if (!this.bullets[i].visible) { 
      SFX.laser(); 
@@ -539,6 +540,7 @@ BigAlien = function() { 

    this.delayBeforeBullet -= delta; 
    if (this.delayBeforeBullet <= 0) { 
+  //if (this.delayBeforeBullet = 10) { 
     this.delayBeforeBullet = 22; 
     for (var i = 0; i < this.bullets.length; i++) { 
     if (!this.bullets[i].visible) { 

[email protected] MINGW64 ~/Documents/WS_vari/version-control/asteroids ((3884eab 
...)) 

那麼究竟意味着這個輸出?我認爲,這意味着,在臨時區域我加這兩條線:

1)

+ this.delayBeforeBullet = 10; // added to fix the bug !!! 

2)

+  //if (this.delayBeforeBullet = 10) { 

,我不會在有上次提交。

它是我的推理是否正確?

+0

是的,你的理解是正確的 – Leon

回答

1

是的,但更準確的說,在臨時區域中,您有一個具有這兩個額外行的文件版本。

暫存區域包含完整的文件,而不僅僅是與其他文件的區別。它還有其他文件的完整副本;它們與HEAD提交中的文件版本相同,因此git diff不顯示它們。