git diff
출력은 순차적으로 작동하기 때문에 소스 행의 순서에 따라 결정됩니다. 그래서이 게시물의 제목 줄에있는 질문에 대한 답변 ("줄을 다시 정렬하는 방법이 있습니까?")은 단순히 "아니오"입니다.
그러나 귀하의 예를 기준으로 의 주소는입니다.
가의 몇 가지 실제 git diff
출력을 살펴 보자 (! 다행 당신은 예를 제공), 어떻게 these two command line argument control knobs가에 영향을
-Un
, --unified=n
차이점을 생성 n 일반적인 3 대신 컨텍스트의 줄. -p
을 의미합니다.
--inter-hunk-context=lines
하여 서로 가까이 심술쟁이을 융합, 지정된 라인 번호까지 DIFF 심술쟁이의 컨텍스트를 확인.
나는 README
파일로 저장소를 만들고 두 가지를 변경했습니다. 제 1 변화는 라인 (1)에 있고, 두 번째는 다음 라인 9에 표준 git diff
출력 :
$ git diff
diff --git a/README b/README
index 441ad85..0e6fd7d 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-This is a README file
+This is a README file MOD1
which I am using just
for showing some
cases of using
@@ -6,4 +6,4 @@ git diff with
flags to adjust
the amount of
context that will
-be shown.
+be shown. MOD2
가의 세 라인에서 컨텍스트의 양을 감소 -U
를 사용하도록 단지 하나
$ git diff -U1
diff --git a/README b/README
index 441ad85..0e6fd7d 100644
--- a/README
+++ b/README
@@ -1,2 +1,2 @@
-This is a README file
+This is a README file MOD1
which I am using just
@@ -8,2 +8,2 @@ the amount of
context that will
-be shown.
+be shown. MOD2
diff가 보다 짧으며이지만 여전히 일부 컨텍스트가 있습니다. (덧붙여 말하자면, MOD1
에 대한 위의 "위"컨텍스트가없고 MOD2
에 대한 "아래"컨텍스트가 없다는 점에 유의하십시오. 파일에 더 많은 텍스트가있는 경우 보통 git diff
출력은 다소 길어집니다 첫 번째 diff에는 사용 가능한 경우 세 줄의 컨텍스트가 있고, 세 번째 줄에는 세 번째 줄이 있고, 세 번째 줄에는 줄 1이 있고 줄 9는 한 줄 아래에 두 번째 줄이 있습니다.라인 (1)에 변경 아래 문맥 4 개 라인은 DIFF 화물선은 라인 1을 나타내고 있기 때문
$ git diff -U4
diff --git a/README b/README
index 441ad85..0e6fd7d 100644
--- a/README
+++ b/README
@@ -1,9 +1,9 @@
-This is a README file
+This is a README file MOD1
which I am using just
for showing some
cases of using
git diff with
flags to adjust
the amount of
context that will
-be shown.
+be shown. MOD2
이됩니다)
라인 오브 콘텍스트를 늘리면 차이점 융합의 부작용이 5부터 5까지; 9 번 줄의 변경 내용 위에 4 줄의 컨텍스트가 있습니다. diff 행크는 5 행부터 9 행까지를 보여줍니다. 5 호선과 5 호선은 같기 때문에 두 사람이 융합됩니다.
또는 -U1
또는 다소 미친 -U0
(전혀 컨텍스트)를 사용하는 경우에도, 나는 그들이 합류 지점까지, 사이에 제 1 및 제 2 DIFF 화물선을 추가 상황 을 추가 --inter-hunk-context
를 사용할 수 있습니다. -U1
으로 어떤 효과를 얻으려면 --inter-hunk-context=5
이 필요합니다.
$ git diff -U1 --inter-hunk-context=5
diff --git a/README b/README
index 441ad85..0e6fd7d 100644
--- a/README
+++ b/README
@@ -1,9 +1,9 @@
-This is a README file
+This is a README file MOD1
which I am using just
for showing some
cases of using
git diff with
flags to adjust
the amount of
context that will
-be shown.
+be shown. MOD2
이번에는 제 덩어리 2 통해 라인 1을 나타내고, 상기 제 방송 라인 9까지의 8 이제 5 개 개의 라인 3, 4, 5, 6이다 라인-하고 추가 7 및 2 명의 심술쟁이가 인접 해 하나의 diff 행크에 융합된다.
-U0
을 사용하면이 필요합니다. 기본 diff 행크는 1 행과 9 행 전용이므로 2 ~ 8 줄 (7 줄)을 추가해야 합치 게됩니다.
당신이 사용할 수 있습니다 하나 더 관련 옵션이있다 :
-W
,
--function-context
변경의 기능을 둘러싼 쇼 전체. 이러한 파일에는 "기능"이없는 것처럼 일반 텍스트 영어 포함이 특정 README
파일, 들어
,이 옵션은 유용하지 않습니다. -W
의 작동 여부는 파일의 언어와 Git이 해당 언어로 작성된 기능을 인식 할 수 있는지 여부에 따라 다릅니다.