etckeeper를 사용하여 특정 파일의 차이점이나 최소한 이전 버전을 확인하려면 어떻게 해야 합니까?

etckeeper를 사용하여 특정 파일의 차이점이나 최소한 이전 버전을 확인하려면 어떻게 해야 합니까?

그래서 나는 사용하고 있습니다관리자를 기다려주세요내 컴퓨터에서 KDE와 함께 Debian 9.1을 실행하고 특정 파일(또는 아직 구현되지 않은 경우: 이전 버전)의 차이점을 보고 싶습니다. 어떻게 해야 하나요?

답변1

기본적으로 with는 git 저장소 etckeeper이므로 /etcgit 도구를 사용하여 내용(및 변경 사항)을 볼 수 있습니다. 예를 들어 다음을 사용할 수 있습니다.gitk(설치 후) 저장소의 기록을 찾아보세요. 특정 파일에 집중하려면 명령줄에서 해당 파일을 지정할 수 있습니다.

cd /etc
gitk apt/sources.list &

당신은 KDE 사용자이기 때문에 다음을 찾을 수 있습니다.qgit더 나은.

답변2

나는 단지 git logand git show또는 을 사용합니다 git diff. 예를 들어

# git log --oneline /etc/squid/squid.conf
907df30 saving uncommitted changes in /etc prior to apt run
a612769 daily autocommit
6d45b99 saving uncommitted changes in /etc prior to apt run
0f21707 daily autocommit
9a95a9b saving uncommitted changes in /etc prior to apt run
b2518f4 daily autocommit
338b4a7 daily autocommit
862d5e6 committing changes in /etc after apt run
ff6a8fd daily autocommit
2d64d79 saving uncommitted changes in /etc prior to apt run
7e3bb0e Initial commit


# git diff a612769 907df30 /etc/squid/squid.conf
diff --git a/squid/squid.conf b/squid/squid.conf
index 0e08217..e630ed9 100644
--- a/squid/squid.conf
+++ b/squid/squid.conf
@@ -7876,9 +7876,3 @@ forwarded_for off
 #  not all I/O types supports large values (eg on Windows).
 #Default:
 # Use operating system limits set by ulimit.
-
-#httpd_accel_host virtual
-#httpd_accel_port 80
-#httpd_accel_with_proxy on
-#httpd_accel_uses_host_header on
-

파일의 특정 개정판의 전체 내용을 원할 경우 git ls-tree(파일 blob의 sha1 가져오기)를 사용하여 git cat-file출력합니다. 예를 들어

# git cat-file blob "$(git ls-tree a612769 /etc/squid/squid.conf | 
                       awk '{print $3}')" > /tmp/squid.conf.a612769

관련 정보