svn diff輸出格式詳解
在衝突解決一節結束後,我們的main.c檔案的內容如下
1 #include <stdio.h> 2 #include "add.h" 3 #include "sub.h" 4 5 int main() 6 { 7 printf("5 + 10 = %d.\n",add(5,10)); 8 printf("15 - 10 = %d.\n",sub(15,10)); 9 //kris's test 10 printf("kris: 12 + 28 = %d.\n",add(12,28)); 11 //sally's test 12 printf("sally: 60 - 33 = %d.\n",sub(60,33)); 13 return 0; 14 }
下面,我們做一些修改,具體如下
1 #include <stdio.h> 2 #include "add.h" 3 #include "sub.h" 4 5 int main() 6 { 7 printf("5 + 10 = %d.\n",add(5,10)); 8 printf("15 - 10 = %d.\n",sub(15,10)); 9 //kris's test 10 printf("kris: 32 + 28 = %d.\n",add(32,28)); 11 printf("kris: 15 - 10 = %d.\n",sub(15,10)); 12 //sally's test 13 printf("sally: 60 - 33 = %d.\n",sub(60,33)); 14 return 0; 15 }
修改完後,呼叫svn diff命令,會有如下的輸出,下面就說說輸出中各部分的意思。
root@letuknowit:/home/kris/calc/trunk# svn diff main.c Index: main.c =================================================================== --- main.c (revision 8) +++ main.c (working copy) @@ -7,7 +7,8 @@ printf("5 + 10 = %d.\n",add(5,10)); printf("15 - 10 = %d.\n",sub(15,10)); //kris's test - printf("kris: 12 + 28 = %d.\n",add(12,28)); + printf("kris: 32 + 28 = %d.\n",add(32,28)); + printf("kris: 15 - 10 = %d.\n",sub(15,10)); //sally's test printf("sally: 60 - 33 = %d.\n",sub(60,33)); return 0;
Index: main.c
svn diff可以檢視當前工作拷貝中所有的被修改的檔案,對於每個檔案的diff輸出部分由Index: 檔名的形式進行區分。
等於號後面的內容就是關於main.c檔案的diff情況了。
--- main.c (revision 8) +++ main.c (working copy)
---打頭的是原始檔案,也就是版本庫中的最新版本,或者理解為修改前的檔案
+++ 打頭的是目標檔案,這個就是你修改後的版本
@@ -7,7 +7,8 @@
這裡的-和+分別表示原始檔案和目標檔案,7,7表示從第7行開始的7行,-7,7就是原始檔案的從第7行開始的7行內容,+7,8的意思類似,表示目標檔案從第7行開始的8行內容。結合起來理解就是:
目標檔案從第7行開始的8行內容和原始檔案的從第7行開始的7行內容之間存在差異
printf("5 + 10 = %d.\n",add(5,10)); printf("15 - 10 = %d.\n",sub(15,10)); //kris's test - printf("kris: 12 + 28 = %d.\n",add(12,28)); + printf("kris: 32 + 28 = %d.\n",add(32,28)); + printf("kris: 15 - 10 = %d.\n",sub(15,10)); //sally's test printf("sally: 60 - 33 = %d.\n",sub(60,33)); return 0;
這個就是具體的差異情況了,前面的-號表示需要從原始檔案中刪除的行,+號表示目標檔案中將要增加的行,-號開頭的部分只屬於原始檔案,+號開頭的部分只屬於目標檔案,其餘的是兩者相同的部分。
7 1 1 printf("5 + 10 = %d.\n",add(5,10)); 8 2 2 printf("15 - 10 = %d.\n",sub(15,10)); 9 3 3 //kris's test 10 4 - printf("kris: 12 + 28 = %d.\n",add(12,28)); 11 4 + printf("kris: 32 + 28 = %d.\n",add(32,28)); 12 5 + printf("kris: 15 - 10 = %d.\n",sub(15,10)); 13 5 6 //sally's test 14 6 7 printf("sally: 60 - 33 = %d.\n",sub(60,33)); 15 7 8 return 0;
為了進一步瞭解@@ -7,7 +7,8 @@的意思,上面加上了行號等資訊,第一列的數字是行號,後面兩列的數字表示第幾行。經過標註可以清晰的看出原始檔案第7行開始的7行和目標檔案第7行開始的8行內容了。
相關文章
- git diff 輸出格式詳解Git
- diff詳解,讀懂diff結果
- Linux diff命令詳解Linux
- git diff --stat命令詳解Git
- SVN命令詳解
- top命令輸出詳解
- free -m命令輸出詳解
- SVN命令詳解【轉】
- 格式化輸出
- 格式化輸入和輸出
- 詳解vue的diff演算法Vue演算法
- Vue-diff演算法詳解Vue演算法
- 詳解Java中的IO輸入輸出流!Java
- python基本語法_輸入輸出詳解Python
- MongoDB的mongostat命令輸出詳解MongoDB
- c++ cout 格式輸出C++
- C++格式化輸入輸出C++
- Fluttify輸出Flutter外掛工程詳解Flutter
- Hive格式化輸出資料庫和表詳細資訊Hive資料庫
- MySQL輸出html格式檔案MySqlHTML
- 多種格式資料輸出
- pythonformat格式化輸出PythonORM
- 字串拼接格式化輸出字串
- Python格式化輸出Python
- java日期格式化輸出Java
- SQL*PLUS 格式化輸出SQL
- 詳解虛擬DOM與Diff演算法演算法
- MySQL show status命令輸出結果詳解MySql
- 格式化輸出變數工具變數
- python字串格式化輸出Python字串格式化
- 【Python】格式化字串輸出Python字串
- vue原始碼解析-圖解diff詳細過程Vue原始碼圖解
- MySQL show status命令常用輸出欄位詳解MySql
- 物聯網學習教程——格式輸入與輸出
- C++輸入輸出常用格式(cin,cout,stringstream)C++
- 將輸入的字元轉化為int格式輸出字元
- 轉:SVN中trunk,branches,tags用法詳解
- Go 語言中的格式化輸出Go