산열을 모르면git에서 파일의 마지막 변경 사항을 보십시오

1616 단어 difftutorialgit
git diff는 두 번의 제출 간의 차이를 나타낼 수 있다.마지막 커밋에서 마지막으로 변경한 경우 git diff HEAD~1 HEAD -- <filename>를 사용할 수 있습니다.
그러나 대부분의 경우 마지막 변경은 마지막 제출에서 이루어지지 않는다.그것은 이전에 n차 제출에서 제작되었다.git log -- <filename>를 사용하여 마지막으로 변경된 커밋을 찾을 수 있습니다.이것은 별도의 절차를 도입했다.😅
실제로 너는 git log -p로 대체할 수 있다.만약 우리가 다음과 같은 설정을 가지고 있다면.우리는 b의 변경 사항을 검사해야 한다.
git init

echo "a1" > a
echo "b1" > b
git add .
git commit -m "1st commit"

echo "b2" > b
git add b
git commit -m "2nd commit"

echo "a3" > a
git add a
git commit -m "3rd commit"
만약 우리가 git diff HEAD~1 HEAD -- b를 사용한다면, 그것은 두 번째 제출과 세 번째 제출을 비교하기 때문에 b 아무런 내용도 표시하지 않을 것이다.
만약 우리가 git log -p -- b를 사용한다면, 우리는 산열을 제출할 줄 모르는 상황에서 b의 모든 변경 사항을 볼 수 있습니다.
commit 5bb2c7acf3ba237f7c3f2b367996e92dd10b271f
Author: Franz <xxx>
Date:   Sat Sep 19 12:08:34 2020 +0800

    2nd commit

diff --git a/b b/b
index c9c6af7..e6bfff5 100644
--- a/b
+++ b/b
@@ -1 +1 @@
-b1
+b2

commit bd6508390bcb0f305a9e3e1f9a393d874df419c9
Author: Franz <xxx>
Date:   Sat Sep 19 12:07:54 2020 +0800

    1st commit

diff --git a/b b/b
new file mode 100644
index 0000000..c9c6af7
--- /dev/null
+++ b/b
@@ -0,0 +1 @@
+b1
마지막 변경 사항만 보고 싶으면 git log -p -1 -- b를 사용할 수 있습니다.
그리고 차이점을 검사할 때 상호작용 모드로 전환하지 않으려면 --no-pager를 사용할 수 있습니다. 실행만 하면 됩니다git --no-pager log -p -- b.

좋은 웹페이지 즐겨찾기